Search Results

Search found 20500 results on 820 pages for 'software engineering'.

Page 597/820 | < Previous Page | 593 594 595 596 597 598 599 600 601 602 603 604  | Next Page >

  • How do you map a solo press of a modifier key to its own function or mapping on Windows?

    - by Conrad.Dean
    Today on hacker news there was a clever article on custom shortcut keys. The author talks about a technique for remapping a modifier key such as CTRL to ESC if CTRL were pressed without a modifier. This is useful in vim because of how often you need to press ESC. Another technique he describes is mapping the open parenthesis, ( to the left shift key, and ) to the right shift key. If another key is pressed when shift is held down, the shift key behaves normally. The author describes the software he uses on OSX, but is there a way to do this on Windows? I've heard of AutoHotKey but it seems to only fire macros when simple keys are pressed, rather than the conditional state switch that this would require.

    Read the article

  • Does aria2 support write small files in batch?

    - by Jon
    I'm using aria2 to download 8 million jpg from flickr. Each image is about 100KB. I got a list of urls of these images in a txt file, the format is: http://farm2.staticflickr.com/1070/1151334893_5a8e7f77f4.jpg I'm wondering whether aria2 support writing small files in batch? Say write 100 image to disk when all of them are download in the memory, not just write every single file when the download is finished. Because I think writing in batch will better protect my hard disk. Or do you have other software or opensource code to recommend?

    Read the article

  • Is the development of CLI apps considered "backwards"?

    - by user61852
    I am a DBA fledgling with a lot of experience in programming. I have developed several CLI, non interactive apps that solve some daily repetitive tasks or eliminate the human error from more complex albeit not so daily tasks. These tools are now part of our tool box. I find CLI apps are great because you can include them in an automated workflow. Also the Unix philosophy of doing a single thing but doing it well, and letting the output of a process be the input of another, is a great way of building a set of tools than would consolidate into an strategic advantage. My boss recently commented that developing CLI tools is "backwards", or constitutes a "regression". I told him I disagreed, because most CLI tools that exist now are not legacy but are live projects with improved versions being released all the time. Is this kind of development considered "backwards" in the market? Does it look bad on a rèsumè? I also considered all solutions whether they are web or desktop, should have command line, non-interactive options. Some people consider this a waste of programming resources. Is this goal a worthy one in a software project?

    Read the article

  • How to swap ctrl and fn key on a MacBook Pro running Windows 7 via Boot Camp?

    - by hobbes3
    There are sooooo many discussion on the internet about swapping the fn and ctrl key on a MacBook Pro. On the Mac side, a new software called ReMap4MacBook does a perfect job swapping the two key. But on the PC side (specifically Windows 7), I can't really find a definitive answer. Most post refer to this article but I read the loooong article and followed the instructions to no avail. I remember there used to be a program (maybe it was on XP) that not only swapped the two keys but it also controlled the fans on the MacBook Pro. But I can't remember the name and I also recall that that program stopped being updated like years ago. EDIT: It's called Input Remapper. So I am hoping there exist a simple program that I can simply run to swap those two keys.

    Read the article

  • my sweet old VHS collection

    - by microspino
    Which is the best procedure and digital format to resurrect my old VHS library i a way I can see It on my LCD TV? I have a not so big collection 100 VHS I have plenty of storage I have a network media tank (A110 popcorn Hour but I can also purchase a new media center if needed) I have an old working VCR (but again I can pick a specific one new if you think It's better to save quality) The VHS cassette collection seems to have retained a good quality over the years. Of course I have some computer (either mac and pc) to do the process. Which software do I need/miss? Please give me some advice.

    Read the article

  • which vista services can be disabled with impunity?

    - by GwenKillerby
    I use Vista on a HP pavilion DV2 laptop. When I look through all the services my laptop starts, it really seems there's way too much of it. I multi boot with XP and 7. Both startup in 40 seconds. Vista takes four minutes. Is there some software that can determine which services I don't need? On 7, there's no propietary HP stuff at all, yet it seems to run fine. Because all these service, there's a LOT of them and some just sit there doing nothing, monitoring for updates I don't really need or want or need to know about the second they're available. my laptop is the only computer i use at home, there's no home network, aside from the modem-router, which is cabled, not wifi. Take for instance Parental controls, and stuff for people with bad eyesight, Tablet PC. I really never use any of that stuff. Hope this question is specific enough. thanks, Gwen.

    Read the article

  • How to adopt scrum agile methodology for a small .Net team

    - by Thabo
    I am working on a small product based company developing .Net applications. There is a small team with 5-6 developers. I am a person responsible for planning everything. But my primary role is Software developer. Now our current project is very unstable because of poor organization. Today my boss called me and told to submit a report about required resources, appropriate methodology, required man power and their salary scales to make the current project success. I know I don’t have enough organization skills and I need to go deep in my programming skills. So I need to focus only in the development. So I can’t manage the project anymore. Now I am searching some other ways to make ongoing development success. My questions are What is the suitable agile methodology to my team? Is Scrum is suitable for above mentioned scenario? If we adopt Scrum, what we have to do next? (I think hiring new one to manage the project is more suitable. So we have to get Scrum master and some other developers.) Are there any resources (books, Blogs and etc) to get some tips and advices to solve this problem? If Scrum is not a suitable methodology for our scenario, what else can be more suitable methodology to adopt? Can anyone give a good solution for my problem?

    Read the article

  • Failed to fetch *.deb Size mismatch, then packages with unmet dependencies [solved]

    - by user113907
    I recently bought the wonderfully looking and reviewed Amnesia The Dark Descent and I'm trying to install it. The first time I tried to download it, I had to stop in the middle of the download (may have broken something). The second time I tried to download, at the end of the download it gave me the following error: Failed to fetch https://private-ppa.launchpad.net/commercial-ppa-uploaders/amnesia/ubuntu/pool/main/a/amnesia/amnesia_1.2.1-0ubuntu2_i386.deb Size mismatch Now, whenever I try to download it, it gives me this error: The following packages have unmet dependencies: amnesia: Depends: libalut0 (>= 1.0.1) but it is not going to be installed Depends: libc6 (>= 2.4) but 2.15-0ubuntu10.3 is to be installed Depends: libfontconfig1 (>= 2.8.0) but 2.8.0-3ubuntu9.1 is to be installed Depends: libfreetype6 (>= 2.2.1) but 2.4.8-1ubuntu2 is to be installed Depends: libgcc1 (>= 1:4.1.1) but 1:4.6.3-1ubuntu5 is to be installed Depends: libopenal1 (>= 1:1.13) but 1:1.13-4ubuntu3 is to be installed Depends: libsdl1.2debian (>= 1.2.10-1) but 1.2.14-6.4ubuntu3 is to be installed Depends: libstdc++6 (>= 4.1.1) but 4.6.3-1ubuntu5 is to be installed Depends: libxft2 (> 2.1.1) but 2.2.0-3ubuntu2 is to be installed Depends: zlib1g (>= 1:1.1.4) but 1:1.2.3.4.dfsg-3ubuntu4 is to be installed I already searched the net and ran a few command line commands. Ex: sudo dpkg --configure -a sudo apt-get install -f Or configure the software packages to download from Main instead of the local UK server. But I'm really not figuring out a solution. I have a fresh install of the latest LTS (12.04). The only non-standard thing so far is that I installed gnome-shell (?) because I really can't stand Unity. Help would be much appreciated. I am currently more than entertained enough with World of Goo and Command & Conquer, but I will want to play Amnesia in the close future.

    Read the article

  • How can I use a computer as a router and send all client traffic through anonymous proxies?

    - by Terrapin
    Is there a way that I can setup a spare box as a router on my network, and route client traffic through a proxy in order to hide my location? Specifically, I would like internet traffic to/from my Roku Box to be routed via proxy, but there is no proxy support built in to the Roku. So I would like wire my Roku directly my computer's second NIC, and force all traffic through a proxy. What kind of software and hardware setup will I need? Also, which anonymous proxy service are best for this purpose? I'm not interesting in full anonymity or encryption. I simply want to mask my location while providing the best possible throughput.

    Read the article

  • Mac OS X Server 10.6.6 "disables" CPU in VMware Fusion

    - by wjlafrance
    Hello! I installed Mac OS X Server 10.6.0 in VMWare Fusion the other night and it worked perfectly, until I ran Software Update. I upgraded to 10.6.6 through the combo updater, and now when I start the VM it says: "The CPU has been disabled by the guest operating system. You will need to power off or reset the virtual machine at this point." I've switched the operating system in the options to OS X Server 32bit, 64bit, and even to Windows 7, and nothing has worked. Does anyone have any ideas?

    Read the article

  • Cannot assign port 4 to WAN on TP-Link WR740N by DD-WRT wiki

    - by Victor Sergienko
    I'm following the DD-WRT instruction to get TP-Link WR740N v3's Port 4 on a different VLAN, but this doesn't happen. First, I have no "Setup VLANs" settinngs tab in DD-WRT v24-sp2 (07/20/12) std r19519. I can get Internet on Wi-Fi if assigning eth1 to "WAN Port", but then all Ethernet ports get on the same VLAN and any wired connection grabs the DHCP address and Internet connection from router. When following the "old" instruction, if I run, say, nvram set vlan2ports="2 5*", should there appear a new interface, vlan2, in ifconfig, after ifconfig vlan2 up? It doesn't - does it mean there is no support for different VLANs in my software/hardware? What am I missing? Is it impossible to create more VLANs on TP-Link740?

    Read the article

  • Update fails to Install

    - by FirmTech
    I get the below error when I try to install updates using Software Updater: Not enough free disk space The upgrade needs a total of 81.3 M free space on disk '/boot'. Please free at least an additional 15.9 M of disk space on '/boot'. Empty your trash and remove temporary packages of former installations using 'sudo apt-get clean'. What should I do? firmtechnologies@FirmTechnologies:~$ (ls -l /boot) total 155801 -rw-r--r-- 1 root root 1158016 May 3 01:30 abi-3.13.0-24-generic -rw-r--r-- 1 root root 1161713 May 8 01:31 abi-3.13.0-26-generic -rw-r--r-- 1 root root 1161713 May 15 20:07 abi-3.13.0-27-generic -rw-r--r-- 1 root root 1161764 Jun 4 22:57 abi-3.13.0-29-generic -rw-r--r-- 1 root root 165510 May 3 01:30 config-3.13.0-24-generic -rw-r--r-- 1 root root 165538 May 8 01:31 config-3.13.0-26-generic -rw-r--r-- 1 root root 165521 May 15 20:07 config-3.13.0-27-generic -rw-r--r-- 1 root root 165544 Jun 4 22:57 config-3.13.0-29-generic drwxr-xr-x 5 root root 1024 Jun 6 14:31 grub -rw-r--r-- 1 root root 29091568 May 7 21:31 initrd.img-3.13.0-24-generic -rw-r--r-- 1 root root 29094684 May 12 12:24 initrd.img-3.13.0-26-generic -rw-r--r-- 1 root root 29095678 May 18 10:57 initrd.img-3.13.0-27-generic -rw-r--r-- 1 root root 29093700 Jun 6 14:32 initrd.img-3.13.0-29-generic drwx------ 2 root root 12288 Apr 30 17:11 lost+found -rw-r--r-- 1 root root 176500 Mar 12 13:31 memtest86+.bin -rw-r--r-- 1 root root 178176 Mar 12 13:31 memtest86+.elf -rw-r--r-- 1 root root 178680 Mar 12 13:31 memtest86+_multiboot.bin -rw------- 1 root root 3372643 May 3 01:30 System.map-3.13.0-24-generic -rw------- 1 root root 3377429 May 8 01:31 System.map-3.13.0-26-generic -rw------- 1 root root 3377429 May 15 20:07 System.map-3.13.0-27-generic -rw------- 1 root root 3378267 Jun 4 22:57 System.map-3.13.0-29-generic -rw------- 1 root root 5776416 May 3 01:30 vmlinuz-3.13.0-24-generic -rw------- 1 root root 5790912 May 8 01:30 vmlinuz-3.13.0-26-generic -rw------- 1 root root 5790912 May 15 20:07 vmlinuz-3.13.0-27-generic -rw------- 1 root root 5792544 Jun 4 22:57 vmlinuz-3.13.0-29-generic

    Read the article

  • Ubuntu server hangs on reboot "could not stat resume device file"

    - by matnagel
    Instead of booting into the running system this machine stops and on the terminal I can see a message: could not stat resume device file /dev/sdb5 When I attach a keyboard and press enter the boot continues and the machine comes up like normal. But it's essential that this machine comes up under most circumstancs alone. There never was something like a "resume" on this machine. I tried several times to reboot, but this does not happen on all boots, I can not find a pattern here. There is a software raid running on the box. This is the syslog during boot: http://privatepaste.com/ff0fd0a51c/sdabfjahfgasjkgfu4gfsdzjcgfafasdjfhgasdcjfgauzfgafasgdufzg How can I get rid of this boot failure? We do not need resumes and best would be something that works here and now.

    Read the article

  • Ask the Readers: How Do You Monitor Your Computer?

    - by Jason Fitzpatrick
    Beneath the shiny case of your computer and GUI of your operating system there’s a lot–CPU utilization, memory access, and disk space consumption to name a few things–you can keep an eye on. How do you keep an eye on resource utilization and more on your computer? Image available as wallpaper here. Whether you’re carefully managing a small pool of RAM, making sure your abundant apps don’t bog down your processor, or you just like having an intimate view of what’s going on in the guts of your computer, we want to hear all about the tools you use to do it. How and why do you monitor your computer? From disk use to case temps, any kind of monitoring is fair game. Sound off in the comments with the how and why of your monitoring arrangement and then be sure to stop back in on Friday for the What You Said roundup to see what tricks and tools your fellow readers are using to keep an eye on their hardware. HTG Explains: How Antivirus Software Works HTG Explains: Why Deleted Files Can Be Recovered and How You Can Prevent It HTG Explains: What Are the Sys Rq, Scroll Lock, and Pause/Break Keys on My Keyboard?

    Read the article

  • Is there a program that compares image files and reports if they are exactly the same pixel-wise?

    - by Nathaniel Drake
    I'm making a regression testing suite for some rendering software. I need to be able to load an image file (PNG or TGA, ideally) and compare the pixel values to a standard approved image. I'd like it to be command line driven too, so I can make a batch file to run all the tests. All the compare utilities I have found so far either show differences (I just need it to fail if they are different) or compare all the bytes, meaning that meta-data will trigger a fail. Anyone got any suggestions? I am not a coder, and can only barely cobble a batch script together. Thanks for any suggestions.

    Read the article

  • Open Source Projects for Beginning Coders?

    - by MattDMo
    After working as a molecular biologist at the bench for many years, I lost my job last year and am thinking about a career change. I've been using open-source software and doing Linux system administration since the mid 90s, and have written/improved some small shell/Perl/PHP scripts, and am very comfortable building from source, but never progressed to creating non-trivial programs de novo. I want to move to actually learning real programming skills and contributing back to the community, with the possible eventual goal of getting into bioinformatics as a career in the future. I'm a stay-at-home dad now, so I have some time on my hands. I've done a lot of research on languages, and have settled on Python as my major focus for now. I'm set up on GitHub, but haven't forked anything yet. I've looked around OpenHatch some, but nothing really grabbed me. I've heard the advice to work on what you use/love, but that category is so broad that I'm having trouble finding any one thing to get started on. What are your suggestions for getting started? How do you pick a project that will welcome your (possibly amateurish) help? With a fairly limited skill set, how do you find a request that you can handle? What are common newbie mistakes to avoid? Any other advice?

    Read the article

  • Monitoring Baseline

    - by Grant Fritchey
    Knowing what's happening on your servers is important, that's monitoring. Knowing what happened on your server is establishing a baseline. You need to do both. I really enjoyed this blog post by Ted Krueger (blog|twitter). It's not enough to know what happened in the last hour or yesterday, you need to compare today to last week, especially if you released software this weekend. You need to compare today to 30 days ago in order to begin to establish future projections. How your data has changed over 30 days is a great indicator how it's going to change for the next 30. No, it's not perfect, but predicting the future is not exactly a science, just ask your local weatherman. Red Gate's SQL Monitor can show you the last week, the last 30 days, the last year, or all data you've collected (if you choose to keep a year's worth of data or more, please have PLENTY of storage standing by). You have a lot of choice and control here over how much data you store. Here's the configuration window showing how you can set this up: This is for version 2.3 of SQL Monitor, so if you're running an older version, you might want to update. The key point is, a baseline simply represents a moment in time in your server. The ability to compare now to then is what you're looking for in order to really have a useful baseline as Ted lays out so well in his post.

    Read the article

  • Jetty8 virtual hosts

    - by Martin
    I have a server JAR that is deployed once per customer, it is the API server for their software package. To that end, the port for each API instance must be the same, so that anything programmed against it can always find it. Each instance is deployed on a different domain name The problem I'm having is that, even when using a SelectChannelConnector and setting the host property, I can't get two instances to run simultaneously, I get a BindException with "Address already in use". I suppose my question is: can Jetty do this, or do I need to do some external re-writing, or is there a better way I can go about achieving the same ends? Thanks.

    Read the article

  • Longlasting Macport installation

    - by user10826
    Hi, I use Macports on Mac OSX to install some software. But there are somethings that I find very strange. For instance, yesterday I installed some app. and the it needed to get gcc43 and compile completely from source! It took a lot of time, although now everything works right. I understand that compilation of everything in the gentoo spirit is eomthing nice, but in the Mac case, not necessary. There are ony sole hardware variations, so it will be easier to get the binaries. I wonder if Macporst can be forced to get the binaries when available and therefore avoid these time consuming compilations. Thanks

    Read the article

  • Experienced programmer, beginner at web design, tools for effective maintainable web design? [closed]

    - by Clinton
    I do quite a bit of programming in my work, which I'm comfortable with, but recently I've being trying to do some web-design for non-work related reasons. I've got a Drupal site up and running, and added some content. But they all look fairly basic. Header with some content. It doesn't look particularly polished. Anyway, as an example, what I wanted to do was make some "bubbles", each with some text in them. From a programmers point of view, say: bubble(question_text, answer_text) might expand to a box with some border, with "Question: " + question_text then "Answer: " + answer_text. Of course I'd have lots of these bubbles, but I'd like to change their look and feel in one place, so simple HTML would be a maintainable nightmare. I also want to lay them out on the screen in some fashion. I was thinking a mixture of javascript and CSS, or possibly use PHP which Drupal uses. On the other hand, I fear I might be taking a 1990s approach to this, and that there's actually tools available now that make this process a lot easier. I'm just wondering what the best approach to this sort of task is? Should I be using offline web design software and copying the code to Drupal, and if so, any recommendations? I'm sorry if my question is a bit vague, because I'm not really sure what question I should be asking. I'd appreciate if you answer and comment, and I'll try my best to be more specific as I understand more.

    Read the article

  • Secure Coding Practices in .NET

    - by SoftwareSecurity
    Thanks to everyone who helped pack the room at the Fox Valley Day of .NET.   This presentation was designed to help developers understand why secure coding is important, what areas to focus on and additional resources.  You can find the slides here. Remember to understand what you are really trying to protect within your application.  This needs to be a conversation between the application owner, developer and architect.  Understand what data (or Asset) needs to be protected.  This could be passwords, credit cards, Social Security Numbers.   This also may be business specific information like business confidential data etc.  Performing a Risk and Privacy Assessment & Threat Model on your applications even in a small way can help you organize this process. These are the areas to pay attention to when coding: Authentication & Authorization Logging & Auditing Event Handling Session and State Management Encryption Links requested Slides Books The Security Development Lifecycle: SDL: A Process for Developing Demonstrably More Secure Software Threat Modeling Writing Secure Code The Web Application Hackers Handbook  Secure Programming with Static Analysis   Other Resources: OWASP OWASP Top 10 OWASP WebScarab OWASP WebGoat Internet Storm Center Web Application Security Consortium Events: OWASP AppSec 2011 in Minneapolis

    Read the article

  • How to tell if OpenGL is really working in Ubuntu 10.04

    - by Jonathan
    I have a lenovo S9e running Intel integrated graphics. Here is my lspci output related to the graphics: 00:02.1 Display controller: Intel Corporation Mobile 945GM/GMS/GME, 943/940GML Express Integrated Graphics Controller (rev 03) Subsystem: Lenovo Device 3870 Flags: bus master, fast devsel, latency 0 Memory at f0580000 (32-bit, non-prefetchable) [size=512K] Capabilities: [d0] Power Management version 2 I want to know how I can make sure OpenGL support is running in full on an Ubuntu 10.04 installation. I have a few hints to think that it is not: The "Desktop Effects" will not load Apps such as stardock, when attempting to use OpenGL rendering, will display black boxes instead of transparency In the games Pioneers, the number-tile icons are suspiciously just black circles Windows games running with Wine will only support software rendering, not hardware rendering When I boot into a Knoppix LiveCD, the desktop effects do work, splendidly, meaning compiz detects my computer as capable. My problem with troubleshooting is that Canonical has basically eliminated the conf-file-based mechanism of X11 as far as I can tell, thus making it even harder to ensure graphics modules are loading properly. How do I debug and test OpenGL on m Ubuntu 10.04 installation?

    Read the article

  • Why didn't cable select work?

    - by jldugger
    I got roped into doing tech support for a friend of the family. Obviously I'd already failed to hide my powers, ala Penny Arcade. Anyways, the guy bought a DVD burner OEM from Microcenter, and asked me to install it. So I stopped by before and thought I'd be slick and use Cable Select on the jumpers. I didn't get a chance to test it before it I had to leave, and it seems that this didn't work. I came back this week to investigate, and he explains he's confused how none of the software he downloaded was able to burn. So on a whim I switch it to explicit master / slave, and it starts working fine. Whoops. Well, at least it's not the extra crap he found and downloaded for free from the internet. Why doesn't setting both jumpers to Cable Select solve this?

    Read the article

  • Project Jigsaw: Late for the train: The Q&A

    - by Mark Reinhold
    I recently proposed, to the Java community in general and to the SE 8 (JSR 337) Expert Group in particular, to defer Project Jigsaw from Java 8 to Java 9. I also proposed to aim explicitly for a regular two-year release cycle going forward. Herewith a summary of the key questions I’ve seen in reaction to these proposals, along with answers. Making the decision Q Has the Java SE 8 Expert Group decided whether to defer the addition of a module system and the modularization of the Platform to Java SE 9? A No, it has not yet decided. Q By when do you expect the EG to make this decision? A In the next month or so. Q How can I make sure my voice is heard? A The EG will consider all relevant input from the wider community. If you have a prominent blog, column, or other communication channel then there’s a good chance that we’ve already seen your opinion. If not, you’re welcome to send it to the Java SE 8 Comments List, which is the EG’s official feedback channel. Q What’s the overall tone of the feedback you’ve received? A The feedback has been about evenly divided as to whether Java 8 should be delayed for Jigsaw, Jigsaw should be deferred to Java 9, or some other, usually less-realistic, option should be taken. Project Jigsaw Q Why is Project Jigsaw taking so long? A Project Jigsaw started at Sun, way back in August 2008. Like many efforts during the final years of Sun, it was not well staffed. Jigsaw initially ran on a shoestring, with just a handful of mostly part-time engineers, so progress was slow. During the integration of Sun into Oracle all work on Jigsaw was halted for a time, but it was eventually resumed after a thorough consideration of the alternatives. Project Jigsaw was really only fully staffed about a year ago, around the time that Java 7 shipped. We’ve added a few more engineers to the team since then, but that can’t make up for the inadequate initial staffing and the time lost during the transition. Q So it’s really just a matter of staffing limitations and corporate-integration distractions? A Aside from these difficulties, the other main factor in the duration of the project is the sheer technical difficulty of modularizing the JDK. Q Why is modularizing the JDK so hard? A There are two main reasons. The first is that the JDK code base is deeply interconnected at both the API and the implementation levels, having been built over many years primarily in the style of a monolithic software system. We’ve spent considerable effort eliminating or at least simplifying as many API and implementation dependences as possible, so that both the Platform and its implementations can be presented as a coherent set of interdependent modules, but some particularly thorny cases remain. Q What’s the second reason? A We want to maintain as much compatibility with prior releases as possible, most especially for existing classpath-based applications but also, to the extent feasible, for applications composed of modules. Q Is modularizing the JDK even necessary? Can’t you just put it in one big module? A Modularizing the JDK, and more specifically modularizing the Java SE Platform, will enable standard yet flexible Java runtime configurations scaling from large servers down to small embedded devices. In the long term it will enable the convergence of Java SE with the higher-end Java ME Platforms. Q Is Project Jigsaw just about modularizing the JDK? A As originally conceived, Project Jigsaw was indeed focused primarily upon modularizing the JDK. The growing demand for a truly standard module system for the Java Platform, which could be used not just for the Platform itself but also for libraries and applications built on top of it, later motivated expanding the scope of the effort. Q As a developer, why should I care about Project Jigsaw? A The introduction of a modular Java Platform will, in the long term, fundamentally change the way that Java implementations, libraries, frameworks, tools, and applications are designed, built, and deployed. Q How much progress has Project Jigsaw made? A We’ve actually made a lot of progress. Much of the core functionality of the module system has been prototyped and works at both compile time and run time. We’ve extended the Java programming language with module declarations, worked out a structure for modular source trees and corresponding compiled-class trees, and implemented these features in javac. We’ve defined an efficient module-file format, extended the JVM to bootstrap a modular JRE, and designed and implemented a preliminary API. We’ve used the module system to make a good first cut at dividing the JDK and the Java SE API into a coherent set of modules. Among other things, we’re currently working to retrofit the java.util.ServiceLoader API to support modular services. Q I want to help! How can I get involved? A Check out the project page, read the draft requirements and design overview documents, download the latest prototype build, and play with it. You can tell us what you think, and follow the rest of our work in real time, on the jigsaw-dev list. The Java Platform Module System JSR Q What’s the relationship between Project Jigsaw and the eventual Java Platform Module System JSR? A At a high level, Project Jigsaw has two phases. In the first phase we’re exploring an approach to modularity that’s markedly different from that of existing Java modularity solutions. We’ve assumed that we can change the Java programming language, the virtual machine, and the APIs. Doing so enables a design which can strongly enforce module boundaries in all program phases, from compilation to deployment to execution. That, in turn, leads to better usability, diagnosability, security, and performance. The ultimate goal of the first phase is produce a working prototype which can inform the work of the Module-System JSR EG. Q What will happen in the second phase of Project Jigsaw? A The second phase will produce the reference implementation of the specification created by the Module-System JSR EG. The EG might ultimately choose an entirely different approach than the one we’re exploring now. If and when that happens then Project Jigsaw will change course as necessary, but either way I think that the end result will be better for having been informed by our current work. Maven & OSGi Q Why not just use Maven? A Maven is a software project management and comprehension tool. As such it can be seen as a kind of build-time module system but, by its nature, it does nothing to support modularity at run time. Q Why not just adopt OSGi? A OSGi is a rich dynamic component system which includes not just a module system but also a life-cycle model and a dynamic service registry. The latter two facilities are useful to some kinds of sophisticated applications, but I don’t think they’re of wide enough interest to be standardized as part of the Java SE Platform. Q Okay, then why not just adopt the module layer of OSGi? A The OSGi module layer is not operative at compile time; it only addresses modularity during packaging, deployment, and execution. As it stands, moreover, it’s useful for library and application modules but, since it’s built strictly on top of the Java SE Platform, it can’t be used to modularize the Platform itself. Q If Maven addresses modularity at build time, and the OSGi module layer addresses modularity during deployment and at run time, then why not just use the two together, as many developers already do? A The combination of Maven and OSGi is certainly very useful in practice today. These systems have, however, been built on top of the existing Java platform; they have not been able to change the platform itself. This means, among other things, that module boundaries are weakly enforced, if at all, which makes it difficult to diagnose configuration errors and impossible to run untrusted code securely. The prototype Jigsaw module system, by contrast, aims to define a platform-level solution which extends both the language and the JVM in order to enforce module boundaries strongly and uniformly in all program phases. Q If the EG chooses an approach like the one currently being taken in the Jigsaw prototype, will Maven and OSGi be made obsolete? A No, not at all! No matter what approach is taken, to ensure wide adoption it’s essential that the standard Java Platform Module System interact well with Maven. Applications that depend upon the sophisticated features of OSGi will no doubt continue to use OSGi, so it’s critical that implementations of OSGi be able to run on top of the Java module system and, if suitably modified, support OSGi bundles that depend upon Java modules. Ideas for how to do that are currently being explored in Project Penrose. Java 8 & Java 9 Q Without Jigsaw, won’t Java 8 be a pretty boring release? A No, far from it! It’s still slated to include the widely-anticipated Project Lambda (JSR 335), work on which has been going very well, along with the new Date/Time API (JSR 310), Type Annotations (JSR 308), and a set of smaller features already in progress. Q Won’t deferring Jigsaw to Java 9 delay the eventual convergence of the higher-end Java ME Platforms with Java SE? A It will slow that transition, but it will not stop it. To allow progress toward that convergence to be made with Java 8 I’ve suggested to the Java SE 8 EG that we consider specifying a small number of Profiles which would allow compact configurations of the SE Platform to be built and deployed. Q If Jigsaw is deferred to Java 9, would the Oracle engineers currently working on it be reassigned to other Java 8 features and then return to working on Jigsaw again after Java 8 ships? A No, these engineers would continue to work primarily on Jigsaw from now until Java 9 ships. Q Why not drop Lambda and finish Jigsaw instead? A Even if the engineers currently working on Lambda could instantly switch over to Jigsaw and immediately become productive—which of course they can’t—there are less than nine months remaining in the Java 8 schedule for work on major features. That’s just not enough time for the broad review, testing, and feedback which such a fundamental change to the Java Platform requires. Q Why not ship the module system in Java 8, and then modularize the platform in Java 9? A If we deliver a module system in one release but don’t use it to modularize the JDK until some later release then we run a big risk of getting something fundamentally wrong. If that happens then we’d have to fix it in the later release, and fixing fundamental design flaws after the fact almost always leads to a poor end result. Q Why not ship Jigsaw in an 8.5 release, less than two years after 8? Or why not just ship a new release every year, rather than every other year? A Many more developers work on the JDK today than a couple of years ago, both because Oracle has dramatically increased its own investment and because other organizations and individuals have joined the OpenJDK Community. Collectively we don’t, however, have the bandwidth required to ship and then provide long-term support for a big JDK release more frequently than about every other year. Q What’s the feedback been on the two-year release-cycle proposal? A For just about every comment that we should release more frequently, so that new features are available sooner, there’s been another asking for an even slower release cycle so that large teams of enterprise developers who ship mission-critical applications have a chance to migrate at a comfortable pace.

    Read the article

  • Windows Phone 7 event

    - by Dennis Vroegop
    This might not be of interest to anyone living outside of the Netherlands, but I still wanted to share this. On march 10th the dutch .net usergroup dotNed (of which I am chairman) organizes a LAN party together with the company Sevensteps. Sevensteps is a big player in the Surface area: they are one of the few companies whose applications are part of the standard tools you get when you buy a Surface unit. They were also present at the CES in Las Vegas earlier this year to introduce the SUR40, as mentioned in my previous post. But they do not only develop software for the Surface, they also do a lot of interesting things on other platforms. One of these is Windows Phone 7, or WP7 in short. Sevensteps and dotNed have joined forces to organize a free full day event where we will develop a WP7 application. The people attending will be developers (experienced and not so experienced on WP7), designers and all other sorts of people you’d expect in a project team. The day will start around 9.00 am and will end when the app is finished. We will form teams of both experienced and not experienced developers so that we can learn from each other. Each team will have their own task to perform, and in the end all parts will be assembled to form a killer WP7 app. As with everything that dotNed does this event is free for everyone. Microsoft will pay for dinner, Sevensteps will provide the room, lunch and ideas (and their expertise of course) and the rest is up to us! So if you are in The Netherlands that date, and you feel like hanging out with other WP7 or wannabe WP7 developers, join us! For more information (in Dutch) see http://www.dotned.nl Tags van Technorati: wp7,dotned

    Read the article

< Previous Page | 593 594 595 596 597 598 599 600 601 602 603 604  | Next Page >