Archive for April 2007

Second Annual Silicon Valley Ruby Conference

In addition to the MySQL Conference & Expo 2007, which I just registered for (yes, its not too late, register now!), I also registered for the Second Annual Silicon Valley Ruby Conference. Its at The Tech Museum in San Jose (I honestly have no idea where that is from the Hyatt Santa Clara, but I’m sure a nice taxi driver will), and of things that will clearly interest me are:

Day 1
9:15am – 10:15am Full-Stack Web App Testing with Selenium and Rails – Alex Chaffee
12:30pm – 1:30pm Business Scripting Languages – Asuman Suenbuel and Murray Spork
2:40pm – 3:40pm ActiveRecord – Evan (Rabble) Henshaw-Plath

Day 2
9:15am – 10:15am Making and Breaking Web Services with Ruby – Chris Wanstrath
10:20am – 11:20am Twitter – Blaine Cook
1:35pm – 2:35pm Mongrel Handlers – Ezra Zygmuntowicz

Everything else, I’ll be learning about. Can’t wait to spend the weekend all pumped with the Ruby community. Guess I’ve got some reading to do this week, on the long plane ride there. Incidentally, I just picked my tickets up, so will be in the Bay Area from the 20th right till the 28th of April so if you want to meet, drop me email (colin[at]mysql[dot]com) or SMS/call(expensive) +61412593292.

Looking for a bargain N800 in the USA – Froogle best?

Seeing that I’ll be in United States next week (or rather this weekend), I figured it’d be nice to find an N800. It retails for USD$399, at all the CompUSA outlets within the San Francisco region. I thought that maybe, Google’s Froogle tool might assist, but have been pretty disappointed to find that the cheapest available from a reputable dealer seems to be USD$349.99 (from Popular Electronics, in Chicago).

Is Froogle the best to search for bargains in the USA? Can I find a cheaper N800 in San Francisco?

That aside, Froogle is a rather cool tool. Its got some amazing sorting facilities (sorting by relevance or price, which is important for bargain hunters), and if you enter a city, state or zip code (post code), it also provides a map (directly out of Google Maps) of stores in the area. Rather nifty, I must say. And of course there are also sponsored links (AdWords) on the page. All in all, if you’ve not visited it, do pay it a visit. Not so useful in Australia, where something like ShopBot might be handier, but clearly something for the folk at Google to think about bringing to the Aussie market.

Technorati Tags: , , , ,

Is open source the bubble 2.0 waiting to happen?

Rod Johnson, author of the Spring framework, thinks open source is hot right now, but its a “bubble” ready to burst, according to an article titled What Makes An Open Source Project Successful? by Charles Babcock.

Most open source projects are supported by an army of volunteers who buy into the hype, but “capitalism will inevitably reassert itself” and developers will find they need to put more effort into steady jobs and private lives, leaving “open source zombies”–unsupported, unmaintained projects–he predicts.

This is true, with many a project, that hasn’t built a successful ecosystem. Keep in mind that with the gazillion text editors out there, not all stand the test of time, like Emacs and vim do. Capitalism is always going to win hands down, because money in its essence is important to survival. Go back to Maslow’s Hierarchy of Needs, and realize that open source developers too, need to drive a car, have a roof over their head, start a family, and put food on the table[1].

So how does open source fund itself? Venture capitalists are active in the market (apparently $160 million has been pumped into OSS companies in the last 12 months), but they always want a return on investment, usually within 2-5 years. If customers alone can’t offshoot the ROI, there’s always going public.

Its great to note that MySQL and JBoss are mentioned, all of which are company backed, thanks to the selling of services, or added value. They help hire people working on the project, and of course, fund them for doing such work.

What caught me was the fact that JasperForge had 30,000 registered developers. As someone actively involved in MySQL Forge, I was a little shocked, so I had to mosey over, and double check. As of this writing, 30,735 registered users exist on JasperForge, but these include forum posters! I breathed a sigh of relief (go journalistic inaccuracies!).

Also of interest, Chris Messina has blogged about The relative value of open source to open services, in where he analysis activeCollab. This software is the open source Basecamp equivalent, with a promise that it will always be free, but apparently is changing the tune of the song. What especially moved me was this comment (that I can’t find on the blog post): “Build a community for the free software during early development and testing, then close it up just as the project matures.” Nasty, I wonder how many open source projects have done this? Its always good to note that forking the project, is also just as easy, but doesn’t promote ubiquity. It also paints the picture to those selling proprietary solutions that the open source ones really cannot be trusted, as they die or have a frequent rate of change.

Jason, the professional brand strategist who commented also has an interesting nugget: “While you’re the driving source behind the project — NOBODY fully owns their own brand. A brand is owned by the community that are a part of it. Without customers, a brand is nothing.”

He’s completely right. Red Hat Linux was a brand, but during the split, they created RHEL and Fedora. Even though there were no community contributions per se, to Red Hat Linux, it was probably the most widely supported commercial distribution that existed in its time; and there was a bloody large community around it. Of course, we won’t get into trademarks now…

What do we take away from all this?

  1. Don’t make promises that you’re going to break (Ubuntu has a promise to always be free, just like Red Hat Linux was, and I hope they keep it)
  2. Build the ecosystem up (Community, is key)
  3. Customers are important (Both to keep your brand alive, and to help you run a successful company)
  4. VC money won’t last forever
  5. Developers are human, and have needs like everyone else (hire them, pay them, feed them, and keep them happy)
  6. Forking is bad, and should be avoided at all costs
  7. Don’t abuse (or misuse) your community (eventhough they don’t pay you, they’re not second class citizens)

[1] – yes, IPO money hasn’t been around for a long time now, I’m sure… The tech industry is still getting out of the previous dot-com burst.

Technorati Tags: , , , , , ,

When to start/stop writing/contributing

I enjoyed Mark Pilgrim’s White Lights Lead to Red Lights presentation a lot, and I took away from it (in what was to be a del.icio.us bookmark, but now a blog post) some thoughts on when to and not to write.

When to write

    * Write when you’re filled with wonder
    * If you wait until you’re an expert, it’s too late
    * Write when you can’t not write

When to stop writing

    * Just before you lose your sense of wonder
    * “Quit while you’re ahead”
    * Burnout is what happens to experts who don’t know when to quit
    * Rebirth

Simple, sensible thoughts. This is not only applicable to writing, but I would think largely to open source contributions/development. The stages when you’re filled with wonder, and contributing the most, is highly fun, but something to heed is when the sense of wonder is gone, quit while you’re ahead. Don’t burn out and just slowly fizzle out of existence (I’m guilty of this, clearly and hope never to repeat it again).

It also amazes me that within a month of learning Python and JavaScript, he started to write books like DiveIntoPython and a couple on Greasemonkey. If only we’d all be as productive…

Technorati Tags: , , , , ,

FLOSS Chick of the Month

Seeing the Mac vs. PC Linux spoofs (thanks Novell!), I believe some people were wondering why Linux was a girl. I saw some comments at various avenues, and I guess Reverand Ted got some flak too:

The general response to us using a woman to play Linux has been positive, and most people say that we did it respectfully and tastefully. (Nevertheless, there have been many disturbingly sexist—sometimes even misogynistic—comments. Whoever writes these awful comments, please get some dignity.)

Its amusing, how people react to this. Let’s put it this way: “chick’s sell”. Look at the Mac Chick of the Month. Does anyone remember Ellen Feiss? Go to any large event that is PC related (E3, PC Fair, etc.) and you’ll notice a lot of ladies, in tight-fitting costumes, trying to flog their products. It works.

I bookmarked, in del.icio.us, the Mac Chick link, and wrote: “Mac Chick of the Month – maybe we need OSS chick of the month? Then again, the LinuxChix might jump all over me for even suggesting that…”

Yes, I actually think its a good idea for a “FLOSS Chick of the Month”. Like cigarette, and liquor companies, we need to sell a lifestyle around FLOSS. We’ve already got a desktop that pretty much anyone can use, now we just need to convert it over. Hardcore gamers are the only one’s that might feel alienated on a Linux desktop, but maybe the “girl power” will win them over :-)

P/S: I’m willing to photograph, and even loan video equipment, though my (FOSS or non-FOSS) video-editing skills leave a lot to be desired.

(I’ll appreciate constructive comments, especially from the women, but if you’re going to flame me, I’m going to laugh out loud, and then paste it online. Oh wait, the comments are already online.)

Technorati Tags: , , , , , , ,

WordPress: Plugin architecture makes it great, but a long way to go for release engineering

I especially enjoyed reading Steve Yegge’s blog rant, titled The Pinocchio Problem. If you haven’t read it, you should, as he believes that world class software systems have two things in common: an extension language and a plug-in system.

Updating WordPress a couple of days ago (this is now becoming a regular chore, spanning over 14 steps, not all of which can be automated (deactivating plugins, reactivating them in the correct fashion to not watch them bomb), I was thinking about the WordPress plugin architecture. Its very nifty, allowing one to make WordPress just rock totally harder. Some that I can’t live without are:

  • The AdSense Manager – after implementing the Sidebar Widgets plugin, this is now a necessity, otherwise I won’t get AdSense on the sidebars
  • Akismet – I hate spam, and I’m sure, you do too
  • del.icio.us widget – its always nice sharing what I read with all of you, thanks to the Sidebar Widgets
  • Feedburner Feed Replacement – redirects my default rss feed, to feedburner
  • Flickr Widget – with the Sidebar Widgets, there’s no way I’m displaying the usual flickr widget, without maintaining an out-of-tree sidebar.php, which I don’t want to be hacking on regularly
  • Sidebar Widgets – very cool stuff, that you see on WordPress.com, finally for all of our consumption
  • WordPress Database Backup – because sometimes, dumping the database bores me

The plugin system probably makes WordPress one of the best pieces of blogging software out there. In fact, WordPress has made Matt, the most popular Matt in Google! The sheer energy of all the folk using and developing on WordPress is amazing, as I witnessed at the inagural WordCamp 2006.

It amazes me, that companies regularly, commercially offer WordPress hosting. They come up with these “1-click installs” and upgrades, that I’m wondering what I’m doing wrong with upgrading WordPress regularly. Sure, most of the 14 steps I stated earlier, include silly things like cd’ing to the correct directory, moving it and so on – all of which are script-able. But the plugin deactivation, and correct activation (like, you don’t want to start the Flickr Widget without the Sidebar Widgets, which would seem the alphabetical thing to do, but clearly make the plugin system whinge), as well as running the upgrade itself, happens via a Web browser. Manual intervention to me, sucks.

Now, on to release engineering. We users get a lot of WordPress releases. A PHP blogging system, looks like it can be a lot of work, if you’re going to manage multiple blogs. Or websites – I’m starting to see a lot of websites that are just blog based, with pages that link to “permanent” content. Companies are doing this, regularly now. I’m of the camp, that its a big mistake, as good ‘ole HTML is probably better for a website (fine if you need sidebars, a standard top toolbar, etc… – use Apache SSI, or a little amount of PHP templating). The announcement list, is one that everyone running WordPress should be on (ditto, with MediaWiki, but I’ll save that rant for another day – though most of what I mention about the plugin architecture, also plagues MediaWiki).

A good plugin system, will have a mechanism to provide updates. Firefox has this – at the very least, when you upgrade Firefox, it looks for newer plugins. When you upgrade WordPress, you could still be running age old plugins. And when you manually check to see if these plugin versions match, sometimes the websites themselves aren’t too direct without you using your mouse and hovering over a link.

I find some plugins critical – Akismet, so my comment spam level stays down, to a manageable state. I’ve been bitten by an update before, that I didn’t know about. Easy fix? The moment you feel you’re getting too much spam, visit the website to look for an update. Too manual for me. Just recently, the AdSense Manager – over a span of a couple of weeks, there have been two releases. One of which, is significant enough to warrant an update – the Google AdSense ID was not being passed to Google. Suddenly my traffic stats at Google, for the blog, seemed to drop to zero.

What’s missing with WordPress, is a plugin updater. With release engineering such that one can run a SVN checkout version of the Sidebar Widgets, and have to visit a website to get the latest code from HEAD for the Flickr Widget, it would rock, if an updater regularly spidered the SVN repository and informed you if there was a new release, or something sitting in HEAD (okay, trunk, whatever).

Technorati Tags: , , , , , , , , , , , , , ,


i