I have a confession to make. Sometimes, when I’m trying out an unfamiliar open source component, I cheat. Even if the software I’m working on will deploy to Linux, I’ll sometimes develop it on Windows first.
Why? Because on Windows, an open source component is likely to come with an installer that just works. That’s a huge advantage. The game of software development is dominated by the evaluation of available components and the selection of those that best meet needs. To play well you must be able to evaluate and select as easily and quickly as you can.
On Unix/Linux systems, component tire-kicking often isn’t so easy or so quick. There may be binary installers for individual components, but when you start combining things, you’ll often need to build from source.
Now, I have the utmost respect for the release engineering that enables what’s called the “configure, make, make install dance.” During this dance, a component learns about its environment and then builds itself accordingly.
It’s an extraordinary thing to see, and when it works — as it quite often does — I marvel at the mind-boggling complexity that is being managed in this way. But the dance can also veer down a slippery slope. I have spent more hours than I care to admit ferreting out dependencies and adjusting build scripts.
Companies such as SourceLabs and SpikeSource are now tackling that problem, and I expect they’ll do well. I don’t mind tackling it myself when the effort is an investment in something I’ll use over the long haul. In those cases, I feel empowered knowing that I can tweak the source code — something I’ve done only rarely, but that was critical on those few occasions. I feel even more empowered knowing I can rebuild for another environment.
It’s disheartening to invest such effort in a component that turns out not to be one you’re going to use. So, I cheat when I can. Or perhaps — if Larry Wall is right when he says that the three great virtues of a programmer are laziness, impatience, and hubris — I am just admirably lazy and impatient. Either way, if the Windows culture of instant gratification offers the fastest route, I’ll take that shortcut.
I’m agnostic, mind you. Any shortcut will do. When I first began working with the combination of libxml2 — a popular XML toolkit — and Python, Windows was the path of least resistance. Nowadays there’s an RPM (Red Hat Package Manager) package that makes things equally easy on many RPM-based systems. The odd man out, ironically, is OS X.
When it comes to instant gratification, the Macintosh generally outshines Windows. But little of that shine reaches the basement where open source developers dwell. If you want to use libxml2 and Python together, OS X may be the most awkward place to do so. No less a wizard than the XML god James Clark has struggled with the procedure, and it was the Web page he felt compelled to write that got me up and running on a new PowerBook.
Although LAMP (Linux, Apache, MySQL, Perl/Python/PHP) is often synonymous with open source, Windows can be a solid leg supporting the platform. The rising popularity of PHP on Windows servers is one indication of this trend. To zealots in both camps this may look like an unholy alliance, but I live in both camps and it makes perfect sense to me.
This whitepaper explains the terminology and concepts behind Data Replication technologies and establishes some sizing rules through worked examples. Learn the new paradigm in disaster tolerance—protect data anywhere.
Download now »Server virtualization is a popular option for dealing with mounting datacenter costs. Another equally promising approach is the use of an Application Delivery Controller. Citrix NetScaler provides a low-cost way for organizations to reduce their server count and accrue cost savings from a reduction in space, cooling, power and personnel.
Download now »
The emergence of WLANs has created a new breed of security threats to enterprise networks.
Included in HP ProCurve WLAN solutions is security technology that alleviates threats from WLANs through:
* Monitoring wireless activity inside and out of the enterprise
* Classifying WLAN transmissions into harmful and harmless
* Preventing transmissions that pose a security threat to the enterprise network
* Locating participating devices for physical remediation
Effectively address data protection challenges, implementing solutions that help store and protect businesscritical data while cutting costs and improving efficiency and reliability.
Download now »
Sign up to receive InfoWorld Resource Alerts
