Showing posts with label Open Source. Show all posts
Showing posts with label Open Source. Show all posts

Wednesday, August 14, 2013

Open Content...

I hope this is the start of something big...

The Getty Museum announced its “open content” program, and released hundreds of high resolution images into the public domain.  You can browse the released images on a rather nicely done web page.  The preceding link will show you all the open content digital images of paintings by Rubens of the natural world.  It's easy to change those filter settings to whatever you'd like to see.  If you click on the title of any image shown here, you'll get a page that lets you download it, in awesomely high resolution.

Bravo, Getty Museum!

Tuesday, January 1, 2013

Public Laboratory...

Here's an interesting stab at “open source” science, with some intriguing projects already...and here's another project that was inspired by the Public Laboratory...

Friday, November 23, 2012

Beautiful Free Icons...

Adam Whitcroft has open-sourced a collection of beautiful minimalist icons, scalable and suitable for web design.  There's an interesting backstory about why he made it free.  Basically, it boils down to this: he built the collection to see it used, not to make money.

Thursday, April 19, 2012

Audiophile 24 bit DAC ... Open Source!

A DAC for reproducing digital music, designed to plug into a PC's USB port, with specs and listener reviews that match the very best products on the market – for around $100 (instead of around $10,000).  This nicely complements the already available open source amplifier.  Awesome stuff!

Friday, September 2, 2011

TileMill...

Here's a new open source map editing program.  I haven't used it myself (yet!), but it sure looks interesting...

Saturday, February 6, 2010

Friday, October 16, 2009

Just for Java Geeks...

IntelliJ's IDEA (my favorite Java IDE) has gone open source.  Woo hoo!

Sunday, August 19, 2007

Open Source

Steve K. sent me an email yesterday, containing this response to something positive I'd said about open source software:
From your mentioning of open source, I’m kind of gathering that you’re a fan of it. I’m not sure I am. It seems like often when I’m looking for a solution, the open source world wants me to download the latest source code, plus the source to 3 other open source projects that this one depends on, and then compile the whole mess to get it going. I usually don’t want to mess with all that. I know there are exceptions to this.
I've seen this general kind of perception from quite a few people before, and I vaguely remember when I first started using some open source software I had a similar reaction. It's just so darned different than the commercial software world, where all the software comes neatly packaged (usually in a box!), with manuals that follow a general convention, and so on.

But different isn't always bad, and I've come to truly appreciate the differences in open source software – to me, the pros far outweigh the cons. And with experience and practice, it turns out that many of my initial perceptions – like the ones that Steve K. still has – weren't true at all.

For example, the issue about needing to build open source software from the source code. By definition, this is possible to do with all open source software. However, I use many packages on a daily basis where I have never even downloaded the source code, much less built it. For example: Tomcat, MySQL, Hibernate, Apache Web Server, MantaRay, JFreeChart, OpenLDAP, Ubuntu, Ethereal, OpenPERL, and many, many more. These include both complete, stand-alone applications and software components. The last time I can remember actually building an open source package from source code was JSON.org's Java implementation, which I extended slightly.

Ok, so maybe I didn't have to actually build these things. So what? Why would I want to use these open source things instead of commercial products?

That's an easy one: because they're better. Just plain better. I don't mean that all open source packages are better than all commercial packages – but the actively worked on open source packages are consistently better.

There's a good reason for this, and it's not magic: visibility. Every line of the source code for an open source package is available for scrutiny by the best software engineers in the world (all of them!). There are no secrets. Open source software cannot hide its dirty laundry behind a corporate firewall or PR machine; it's all there, for everyone to examine. The culture of every active open source project I've ever run into is all about quality – whereas the culture of every commercial project I've ever been involved with (and that's many of them!) is all about time-to-market.

This is a profound difference, and it shows up in another way as well.

Every programmer who's been around more than a few weeks can tell you horror stories about this or that bug they've run into with an operating system or an application. I have personally run into dozens of bugs in Windows, Microsoft SQL, Visual Basic, Norton Utilities, and a long list of other commercial applications. These are very frustrating situations to deal with, sometimes raising challenging or even impossible obstacles to getting your commercial software finished on time and within budget. The vendors tend to not be cooperative in the first place, and even when you can convince them that they've got a bug, you won't have a fixed release in your hands for months or even years.

This problem simply doesn't exist with an actively developed open source project. First of all, there's no mystery about whether there is a bug – you can even go prove it yourself if necessary, by examining the source code. However, I have only had to go that far just one time in many bug submissions to open source projects. By far the most common response from the open source communities has been along these lines:
“Gee, thanks for finding that bug! You're our hero for the day!” Then, a few hours to a few days later, I'll get an email that says “On that bug you submitted – we have a fix, and it's available in this build. Would you test it for us?”

How refreshing is that? My favorite experience like this occurred with MySQL. A couple of years ago, I discovered a bug with CBlobs in their Java SQL driver implementation. I reported it with a code example. Two hours later, I got an email with the binary of a new build attached – and my bug was fixed! The next day that driver revision was posted on the MySQL site. That example is my favorite mainly for its contrast with Microsoft SQL. About five years ago, after a big battle with their support people, I finally got Microsoft to acknowledge a bug in one of the SQL functions. That was the last I ever heard about it, after repeated inquiries over the next couple of years. I've stopped caring about this stupid bug, but the point is that the bug is still there, five years later.

Open source is better. That's why I like it and advocate it. The bumps in the road on open source are real (though getting better all the time) – but they are a small price to pay for the overwhelmingly better quality of the open source products…