Category Archives: Technology

My Favorite Open Source software

open source word cloud on chalkboardI have a love-frustration relationship with open source software. I could never say I hate it, because I don’t. I am however painfully aware of not only how many bad open-projects are out there, but how many almost-great ones there are that come tantalizingly close to making the grade. We still haven’t reached the point, for example, where you can put a Linux desktop in the hands of the average consumer without good Sysadmin backup. Contrast that with the millions upon millions of windows systems in the hands of the Technologically challenged that continue to work. I wish it weren’t so, but it is.

Ubuntu has made strides in this area with their 10,000 paper cuts project but there is still a long way to go. Many open-source projects remain too geeky and too buggy for mainstream success. On the other hand, there are some astounding successes that continue to give me hope. Without going into problems inherent in open-source vs traditional proprietary development (I’ll leave that for another day) I’d at least like to mention the applications that have made my life better, or have even changed the world. Don’t worry there is a poll at the end for you to choose your own favorite. As always you can sound off in the comments as well.

My top 10 list of open source that really works. Criteria are it works well but doesn’t require you to be an uber-geek. At least not a sysadmin. You might be an uber-geek in your area of expertise, such as video or database. I expect a few people to complain about the criteria, but I think one of the biggest problems for the open-source movement, especially Linux and Android, is that they can’t gain traction with the mainstream because they not only have the option for radical configuration, but the requirement for the same. Most people have software to solve some particular need, not to play with the software itself. Yes, I know there is a group out there that loves playing with stuff for it’s own sake, and that’s OK – there’s nothing wrong with it. But recognize that it’s a minority position and that most people just want stuff to work.

Many will disagree with the list, but that’s not really possible – it’s a list of MY favorites, not yours. 😉 Feel free to mention yours in the comments though – maybe I’ll change my mind. There’s a poll at the bottom.

Top Ten Open Source Projects

In no particular order

Apache web server
Who can deny that Apache has changed the world? It’s a really great, really powerful web server. But it also just works out of the box. You’ve gotta love it. I’ll bundle Tomcat into this since I almost always use them together as do many others. You can use them separately if you want.

Ubuntu Linux
Who could miss putting Linux on a list like this? Currently my favorite flavor is Ubuntu. They have a simple installation, streamlined updates, a commitment to fixing annoyances, and more. They work well from desktop to server to virtualized JeOS environments (meaning Just enough Operating System). (More on JeOS at a later date).

MySQL
Having a good, powerful yet simple database available without massive cost and unencumbered by crazy licensing is probably one of the unsung heros of the modern web. Without data-driven websites we’d all still be reading static text articles. Again, MySQL can be tweaked ad nauseum, but also works well essentially out of the box for people who don’t want to waste time. I hope that Oracle keeps this gem alive. [Update 2011-10-04]Oracle has
released performance updates to MySQL[/Update]

Eclipse
In the bad-old days we used to have a variety of expensive, annually updated development environments on Windows. On Unix it was mostly command line – open four windows, one each for edit, compile, run, debug. Tools had to work hard to integrate, and tool vendors made difficult choices about what environments to support.

Eclipse being not only free but open with a well designed API let us move from working on our development environment to working on the projects we wanted. I used to spend a lot of time keeping my Emacs (with VI plugin!) working with all it’s crazy plugins. My favorite Eclipse flavor happens to be MyEclipse because it has so much useful stuff built into it. Probably most of it I could find somewhere, but this way I can just install what I need in one shot and it just works.

Standard disclaimers about working for Parasoft aside, I never leave home without Jtest plugged into my Eclipse for testing my java code even though it’s not open source.

Bugzilla
You can’t build great software without having a good bug-tracking system, and while Bugzilla is open-source / free, it remains one of the best. It has enough features for most organizations, is light-weight, and easy to use. It also has a well-published API with all kinds of nifty clients and plugins being created for it. For example, I have one on my iPad that in some ways is better than the web interface.

WordPress
What’s the web without blogging, self-publishing, storefronts, etc.? WordPress makes it easy for everyone to start a site without being an HTML expert. I have been using it after doing things by hands for years, and I’m starting to rethink some of the other projects I’m working on. I know some will think Drupal at this point. It certainly has a large following as well, perhaps even larger. But I prefer WordPress for it’s absolute usability. I’ve played with Drupal and was just never comfortable deploying it for real life. For most people, WordPress may be a better choice, I know it is for me.

VLC
I’m one of those people who has my computers integrated into my home entertainment system. I prefer living without silly disks and other dinosaur media. Years ago I moved away from music CDs, and I’m close to being done with DVD and blu-ray. The great thing about VLC is that it will play any video format you have. Really, anything. No messing around with plugins, codecs, video frame rates, and all that geeky stuff. Just right-click your video file and “open with VLC” and you’re off and running.

I have no desired to continually reconvert my videos to different formats to accommodate new devices and VLC let’s me just watch what I want. Again, it even works on iPhone and iPad, for all those who think you have to have Apple format video through iTunes.

Plex / XBMC
Plex is just a Mac fork of XBMC. From my experience, they seem to have improved on the original, but I haven’t spent enough time on the XBMC/Windows side to really be sure. This is the media-server equivalent of what VLC does for a single device. Basically you point it to the drive(s) where you store your videos, music and photos. It sets up a server which can speak DLNA so that your “usual” media server clients can use it, like Playstation, Samsung TV’s, Xbox, and more. You can also run a hard video line from your computer to your TV for an even better experience. This is one of those things that will ultimately lead to people cutting the cable. It has a plugin architecture and people are continually adding what they call “channels” which are really wrappers around existing web-based content such as Comedy Central, CNN or Aljazeera. You’ve got to try it to really understand, but it’s amazing.

Gimp
For those who need high-power image editing and manipulation, this is your gnu-alternative to those expensive programs out there. Maybe this one isn’t for the faint of heart, but for those familiar with image editing, it’s no problem to use. I’ve moved almost completely to Gimp and don’t expect to pay for other image editing programs in the future.

Firefox & Thunderbird
Firefox and Thuderbird, both from Mozilla, are definitely starting to feel dated where once they seemed cutting edge – sorry guys. I hope you push back to the front. But I cannot discount the contribution they’ve made to the world. I was once a dedicated Firefox user, but now it just looks clunky compared to others. If it wasn’t for Firefox we’d probably all be stuck with lousy browsers where instead we have several choices now. Thunderbird let us escape from the horrible enterprise email monoliths before full Ajax web-based email clients made it easy to live without a local mail client. Kudos, Mozilla.

Open Source Honorable Mentions

Projects that just didn’t quite make the top ten, although many would probably make the top 20. You’ll notice a recurring theme that I left many out because they’re just too wonky or complicated for everyday use or for “regular” people.

Apache Commons
I love Apache Commons. It has more cool useful libraries than I can count that keep me from inventing the wheel. However I suspect that it’s not used nearly as often as it could be. I almost put this in the top 10, but decided it’s probably too limited in use as well as scope – only developers feel this. Or maybe end-users should count as well? I can’t decide. But I can’t live without it either.

OpenOffice
I have to admit I’m a fan of anything that keeps the world from a single provider for office tools. But my experience with OpenOffice is frequently that it’s not quite there yet. There are some annoyances in conversion to/from the MS Office files that I have to use in my everyday life, and this means I just can’t rely on it. I wish I could. But I see improvements being made, such as a native OSX client rather than relying on an Xserver, so I have hope.

source control. There are a lot of good programs out there, but for most projects this will not only do the job, but do it well. By the way, it’s free of course. Why do people still pay for that big heavy source control program? You know the one I’m talking about.

Hudson / Jenkins
Continuous integration and build automation are very useful to software development. I find these tools useful for automation in general as well – goodbye Cron! It used to be just Hudson and then there was a split. Honestly I don’t know which one is a better choice right now – feel free to voice your opinion. I’m still using Hudson because I’ve gotten used to it. Probably you can’t go wrong with either.

Maven
Maven is a big improvement over “make” that we all used to use to build our software. It’s really the next generation of Ant, which is a great thing in itself. This one comes with a caveat though – there is a certain religious fervor that can cling to some Maven users. Using Maven can lead to lost productivity if pushed to extremes. And the “convention over configuration” mantra is a nice idea, but really the same is true if you simply do things in a standard Eclipse configuration. In practice it means “if you totally reconfigure all your development projects and source layout and builds to do what we think is good, you won’t have to reconfigure them”. We used to call that “my way or the highway”. Caveat emptor. Used properly, Maven will make your life better, used indiscriminately it will be painful.

Android
Android isn’t really free, and at least the current release isn’t really open. But still, it’s a nifty idea. I’ll ignore for a moment the potential IP issues until they get resolved in court one way or another, but having a strong mobile OS to compete and drive innovation helps everyone. Awesome.

Audacity
Audacity has a lot going for it. The times I’ve tried it I’ve always suspected it would probably do what I need, but it was tough to figure out. I think it’s still just too wonky for regular people. I suspect it will remain that way, as simple audio editing is becoming more and more available, even on our smartphones. Those who do heavy audio editing may disagree – let me know.

VNC
VNC is a remote desktop technology that works on Unix including Mac. It comes in a lot of varieties such as RealVNC and TightVNC – on the Mac it’s actually baked in as the native remote desktop. It’s a great idea, but obviously there are more people using Microsoft’s remote desktop, so I couldn’t put it int he top ten. But I use it all the time – maybe Microsoft will give up their proprietary ways and switch, but holding your breath is probably not a safe bet.

Handbrake
If you work with video files, such as ripping your movie collection, converting it to play on your Playstation, Xbox, PSP, iPod, smartphone, etc. then this is for you. It’s a powerful, full-featured open-source video conversion program. But suffers from nearly terminal geekiness. Out-of-the-box settings yield mediocre results compared to what a really good video file should have. Going beyond that requires an extreme amount of esoteric knowledge, and even at that it can be tricky to repeat at a later date. If you know video you can really enjoy this, if you’re a beginner you might get lost.

MediaWiki
We’ve all used Wikipedia. This is the software behind it. Lots of great things are being done around the web with wikis, but even without all that, you only need to look at Wikipedia to see how amazing this can be and has been. There are still some core issues that need to be worked out with the idea of canonical encyclopedia coming from a wild open community.

As you’ve probably figured out by now, there is some really great stuff coming out of Apache and Sourceforge. I haven’t covered Google much here because they’re more on the free application side in many cases though they do manage a lot of open-source as well – it’s worth a look both as an end-user (gmail, etc) and as a developer.

Lies, Damn Lies, and Predictions

[Rant on]
Is it just me, or is anyone else bothered about all the rumors and predictions that seem to dominate the technology news stream? I would hazard a guess that more top articles in the technology space are gossip or guesswork than actual reporting.

Crystal Ball / Glaskugel

Part of this trend, perhaps the most annoying part, is the tendency to take the guesses of other people (predictions,forecasts,…) and report them as fact. Recent examples from the news:

“Sorry Android, iPad to Dominate Tablet Sales Until at Least 2014”

which should have read “Gartner has forecasted that the iPad will Dominate …”

Asia Pac app-gasm to hit five billion this year

meaning “Ovum analysts forecast that…” But the article even reads “The Asia Pac app market will hit 5 billion downloads by the end of the year with revenues from mobile phone apps poised to reach $US871 million.” It’s only several sentences later that you find that this is a prediction.

“Unemployment to stay above 10% in state through 2013”

which might mean “Government analysts are predicting that…”

Android To Beat iPhone in Download Stakes

This one uses weasel phrases like “Research points to” to avoid admitting it’s a prediction until the next paragraph. Such analysis may indeed turn out to be true, but it’s reported as if it’s already fact. Closer inspection usually reveals flaws in such predictions as well, for example in the app store battle, percentage growth rates are extrapolated as constants. Give that the Android marketplace is smaller than the Apple (AAPL) one, it has a lower numerical growth rate at times, but always a higher percentage growth rate. So if you project that rate as constant into the future you get monstrous numbers that are of course ridiculous. Numerical quantities of actual increase in apps on a regular basis are far more accurate. If you take those numbers, and look at their rate of increase, you can make a much more reasonable estimate of what will happen.

You see how easy it is to get confused in the details of these predictions, which frequently turn out to be wrong though that isn’t discussed as much. But to report such as fact is lunacy. If you get a chance read Future Babble: Why Expert Predictions Are Next to Worthless, and You Can Do Better by Dan Gardner. It’s very interesting.

Most of these examples come from the mobile space, which at the moment may be worse due to Apple mania, but the problem is pervasive.

The second annoying one is another case of truly bad journalism. In the rush to be the first to report, endless nuances are gleaned from seemingly innocuous statements. The more ethical writers will explain that they’re making a leap of faith, but more often than not, the leap is taken as fact. For example the recent noise based on Al Gore saying that new iPhones are coming. Headlines read:

“Al Gore Lets Slip Secret IPhone Launch Details”, “Gore’s loose lips let new iPhones slip”, etc. What Gore said was “the new iPhones coming out next month”. Based on other rumors (that may or may not turn out to be true) that there will be two new iPhones coming next month, people construed Gore saying “iPhones” to mean two models. One could just as easily construe this to mean that a lot of iPhones will be sold. Maybe Gore just meant “You’re all going to have your iPhones”. Who can say? Sure, you can speculate and such nonsense, but you could just as easily throw a dart at a dartboard to get such accurate forecasting.

I understand the lure of reporting first, of being the first one to figure things out, or speculating about what may happen. The issue isn’t the speculation, but rather the attempt to pass speculation off as truth. As a reader, I tend to be critical in choosing who and what I read so that I have some chance of seeing the real trends. I look for realistic assessments, and try to understand the methodology. If it’s suspect, fine, but if it’s suspect and disguised, then I have a problem with that source. Open honest coverage is in everyone’s benefit.
[Rant off]

Google and Motorola – What Will Googorola Do?

In case you haven’t followed any tech industry news in the last several days – Google (GOOG) and Motorola Mobility (MMI) have agreed on an acquisition to the tune of .5 billion. Some are calling them Motoroogle, but I prefer Googorola, especially since Google is the one doing the buying – their name should come first.

This is a pretty big step for a company like Google that is essentially a software play. Naturally people are asking what’s it all about. In order to figure out what may come out of this we need to try to understand why Google would buy a mobile hardware company. Unfortunately, the truth is there is no way to really know what Google was thinking. There are a couple of prevailing theories.

Patent Protection

One is that Google sees this as a way to protect Android intellectual property against patent suits, especially from Apple (AAPL) and Microsoft (MSFT). Larry Page mentioned this in the Official Google Blog on Monday. Many pundits and analysts have lined up behind this theory. In fact it was mentioned by almost every single android manufacturer.

End-to-end Production

The other popular theory is that Google wants to be able to reproduce the capability of full ecosystem offerings like phones from Apple, Rim, and HP. This gives Google the chance to control the hardware, software, user-interface, and in short the complete user experience. This is a straight-on attempt to duplicate the popularity of the iPhone.

Analysis

While I have to agree that the patent protection side is at least part of the reasoning, I am doubtful that it’s the only reason. Recall that during the recent hissy fit between Google and Microsoft re the Nortel patents, it came out that Google had the chance to be part of the winning consortium, but choose against it. Google claimed that it was smoke and mirrors on the part of Microsoft, since if it was part of the group it couldn’t use the patents to protect against a lawsuit by the co-owners of the patents. However, it’s undeniable that they also couldn’t be sued by the co-owners of the patents over the same said patents. Clearly they were after something other than just protecting Android.

In addition, Apple has been moving forward in their suit against Motorola. Florian Mueller has discussed this in depth over at Foss Patents. Obviously if Motorola can’t protect themselves from suits by Apple, they can’t protect Google and Android either.

This leads us to the other alternative – Google wants to build phones. This will be clear to all soon enough. Either Google will divest themselves of the phone-building part of Motorola, while keeping control of the patents, or… they will start building phones. If they divest, then what they claimed was all they’re after, and you can quit reading now. But the interesting part is what happens if they do start building phones.

One can’t deny that Google hasn’t gotten a lot of traction with their Nexus phones. On the other hand, the iPhone is the single most-popular smartphone out there. Anyone who wishes to seriously compete with them needs to take a serious look and try to understand how they’re succeeding. Leaving conspiracy theories about fan-boys etc aside, the conventional wisdom is that Apple’s ability to control the software and hardware gives them a serious edge in end-user experience. Let’s presume for a moment that this is at least part of why Google would spend such a premium on Motorola.

The question then is how does it all work? Google can isolate Motorola, run them as an independent company, and treat them on a level playing field with all other phone vendors. This is what Google is claiming so far. I don’t see it happening – if that’s the plan, why spend so much? This would essentially make it a pure patent play, and in that case the price was simply too high. More likely Google will feed Motorola first, possibly even giving them exclusive access to extra functionality. Given Motorola’s past success with popular phones from the RAZR to the DROID, I expect this could be a pretty big hit. It sounds very interesting to me.

End result then is the next step. What does it mean for android and android customers? Well, if you’re a Samsung or HTC phone fan, you might want to start checking out what Windows has to offer, because I expect both of them will be adding Windows to their stable. I don’t expect they’ll drop Android, but I won’t be surprised to see them pay less attention to it.

If you’re a Droid fan or Nexus fan, lookout. This could be a truly amazing set of phones coming from Google and Motorola working together in an unfragmented way. I’d be pretty happy right now if I was a Droid user.

As for Android itself, well it depends on how it all plays out. If Google starts competing with their hardware partners, then they will look for alternatives. Microsoft has a chance here to really make a great competitive offering at a great price. It might even end up being cheaper to license Windows than to pay royalties on Android. This could be the thing that they need to really finally get Windows Mobile off the ground. Android will survive as long as Google needs it and uses it, but it’s day’s of dominance in the mobile space may be numbered. Ironically, in an attempt to compete, Google may be strengthening a major competitor in Microsoft. Only time will tell.

[Update 2011-08-17]
One other possibility is that Googorola is interested in set-top boxes. It makes sense.
[/Update]

[Update 2011-09-29]
The Justice department is is asking for more info about the Motorola deal. This may or may not mean anything, depending on who you ask. Me, I’m not sure, but I don’t think it’s overly serious.
[/Update]

[Update 2011-10-06]
So Intellectual Ventures has filed a patent infringement suit against Motorola Mobility. Apparently Motorola’s patents can’t even defend themselves. So much for the “Google only wanted their patents” theories.
[/Update]

[Update 2016-03-12 – Google has long since spun Motorola back out – so their IP play didn’t really work and they never really leveraged the hardware capabilities of Motorola]