Here are some ideas for cool projects; send us some of yours.
Nick Petreley, our fearless Editor in Chief, had joined me at my favorite restaurant and watering hole, Alideia dos Piratas for an evening out. As the music played and the young folk danced the night away, Nick and I talked about the Linux community and all the interesting things that have happened there.
Nick had declared this month as Cool Projects month for the magazine. Traditionally, the focus had been Home Projects, but he rationalized that although a lot of home projects are cool, the name Home Projects was too limiting. Robotics and wearable computers, for example, are cool, but not necessarily home.
Even before I knew that this month would be Cool Projects month, I had started thinking about what makes a software project “cool”.
My “cool” thought processes started with an article by Kathy Sierra called “Professional vs Passionate” at the site headrush.typepad.com/creating_passionate_users/2006/11/two_simple_word.html.
Although this particular article focuses on how we sometimes discard the raw passion people feel when they shout out words not normally found in polite society and how companies change when they trade in their sandals and T-shirts for the suits and ties of the Professional, the article also touched on the concept of what is cool. One example given was: “kid-at-airshow-seeing-an-F16-on-afterburners-rip-by-so-close-it-makes-your...”
Some of you may have been a “kid at the airshow” and had that feeling of cool as the plane made the ground shake.
Now, this coincided with some thought about computer conferences and tradeshows and why people do or do not go to them. Certainly, some people go to conferences and tradeshows to find existing solutions to existing problems. Other people go because they are curious about what is going to be a solution in the next one or two years. Still others go to find out new and novel things (cool stuff)—things that may never turn into a product or service or things that may be suitable only for such a small group of people that no one sees a commercial opportunity for them. Nevertheless, they're cool.
Lately, some of the conferences I've attended seemed to be concentrating on the existing solutions, and less on the forward thinking and cool stuff.
Of course, cool is in the eye of the beholder, and it seems to change over time. In my early days of programming, choosing a new algorithm to solve a problem and having the program take half the time to get the same answer was cool. Today, this has less of the feeling of the F-16, but it is still important.
So, I went out to my user group and asked, “what's cool?” I received several responses before the mailing list moved away from the original question onto a discussion of one topic that someone thought was cool.
Some of the ideas were:
NCID: a system for obtaining, displaying and even speaking caller-ID information.
MythTV, Plutohome and LinuxMCE: various systems for recording, storing and playing back TV programs, video, music, pictures and home automation.
Automation of testing procedures to cut production testing time by a factor of four and to cut down on human error.
Each one of these projects might be considered cool by various people. Although automating a testing procedure might not sound like an F-16 flying at 200 feet above you, it might be a project that would get some people excited and try to implement that solution right away. Other people may not have any interest at all in these projects.
Just as I was about to turn away from the responses to my query, someone mentioned the site of C Data Solutions, Ltd. (www.cdatas.com/index1.html), where a computer was being built out of CompactFlash Modules. Now I admit to being a gear-head, particularly when it comes to very small systems, but when I saw this, an F-16 flew right over my head.
A couple of months ago, I mentioned the Gumstix folks (www.gumstix.com) in an article. Both Gumstix and the C Data Solutions systems share some of the same characteristics—they're tiny and low power, yet programmable through our favorite operating system. I see them, and I get excited over what they could do. However, I don't remember seeing any projects at any of the recent conferences I attended using these types of systems, and I think that is a shame.
At a tradeshow recently, I saw a very nice sponsored area where high-school and college students were trying to get their robots to maneuver a maze and do some simple tasks. The students were all in teams of three or four people, had their own colors, flags and work areas. The teams were changing their programs and even doing hardware changes to their robots right at the event. This event was not about selling some product or even solving some problem. It was about watching students work together in teams and solve problems as teams. It was an exciting time, and it was cool, both for the students and for the spectators.
Realizing that you, my readers, and I may never agree on what is cool or why we think it is cool, I will make a request. Write to me at firstname.lastname@example.org, and tell me about existing FOSS projects that you think are really cool (and why), or what would make a really cool project. If you have ideas for a really cool contest or conference activity, send those too. I will roll them up and post them on the Linux Journal Web site.
But, as you formulate your idea, please make sure to duck, so the F-16 will miss your head.