Some early programmer names are familiar to even the most novice of software developers. You may never have seen a line of code written by Bill Gates, or written any application in BASIC (much less for the Altair). But you know Gates' name, and the names of a few others.
Despite its complexity, the software development process has gotten better over the years. "Mature" programmers remember how many things required manual intervention and hand-tuning back in the day. Today's software development tools automatically perform complex functions that programmers once had to write explicitly. And most developers are glad of it!
When big companies release new software, they launch it with lots of hoopla: press tours, technical conferences, free T-shirts. Open-source projects, even the well-known ones, generally release their major new versions with a lot less fanfare. The FOSS (free and open-source software) community is often too busy coding and testing to bother with marketing, even when the new "point release" of the software is really remarkable.
Several weeks ago, Lynn Greiner's article on the state of the scripting universe was slashdotted. Several people raised their eyebrows at the (to them) obvious omissions, since the article only covered PHP, Perl, Python, Ruby, Tcl and JavaScript. As I wrote at the time, Lynn chose those languages because hers was a follow-up to an article from three years back. Plus, most IT managers are familiar with at least one of those well-known scripting languages, even if they haven't personally written a line of code in one of them.
Developers who adopt the Google App Engine for their cloud computing platform today may fear data lock-in, since the only way to import or export data is using a Python-based API. Google is working on a tool to improve data exchange to improve data portability.
"We have come into real contention [for mindshare] in the enterprise," said Tim O'Reilly, CEO at O'Reilly Media, in his keynote address at OSCON, last week's Open Source convention in the US. "So we should be patting ourselves on the back, right? I'm not so sure."
In many ways, managing a developer is just like managing any other employee. Developers want managers who'll help them solve business and technical problems, who'll protect them from unnecessary office politics and who will help them meet their personal career goals. But programmers are...different. Like musicians, these creative folks can alternate between big-picture thinking and persnickety detail in a heartbeat. They can be sidetracked by silly toys, and convinced to work overtime by the promise of pizza and a T-shirt. Trying to understand and motivate these people can drive managers-particularly nontechnical managers-to distraction.
Probably the only technical qualification to put Joel Cohen, a writer and associate producer of The Simpsons, in front of the keynote crowd at the Red Hat Summit in June was that Red Hat Enterprise 5 was used to render some of the animation in The Simpsons movie. But Cohen had surprisingly deep-and quite entertaining-advice about innovation and the creative process to offer the conference attendees.
Open-source solutions used to be adopted quietly by company boffins who snuck in an Apache Web server or an open-source development tool suite under the philosophy "It's easier to get forgiveness than permission" (not to mention "It's easier to do it with open-source tools than to get an IT budget").
"It used to take four people five days to test the software every month," says Kevin Bingham, vice president of IT at Arizona Federal Credit Union. "Now, we can do it in six hours."
Agile methodologies for software projects can help organizations create better software faster. Yeah, yeah, you've heard that before. Here, experienced programmers explain the key ingredients to make those goals achievable
Yesterday, at the MIX08 conference, Microsoft released the first beta of Internet Explorer 8 (IE8), which is available for immediate download. It promises several technical enhancements-as well as several philosophical improvements. After a session demonstrating the technical underpinnings of the beta release, the initial community response was, in the words of one developer, "Sweet!"
Meetings are hard enough to run when the participants are all in the same room, fighting over the last chocolate doughnut. But any meeting you call, nowadays, probably has at least one person attending who works in a remote location. In some cases, everyone in the teleconference is dialing in. You may be great at orchestrating an in-person meeting, but running an effective teleconference requires new skills.