Don't Forget to Plant It!

Google Reader, Remixed

Up until now, Google Reader has been very effective in keeping me caught up with my subscribed feeds, but as my number of feeds continue to grow, the limitation in the Reader UI is becoming more and more apparent.

Since the thought of going back to the classic 2- or 3-pane reader makes me want to stop reading RSS altogether, I decided to give the Google Reader API a shot and see if I could come up with a UI that would better suit my reading habits.

The result of a few days of work resulted in this Reader FP bookmarklet. While there’s still a lot of work to be done to make this the UI I originally envisioned, it is currently usable for me as a replacement for the current Google Reader UI. Here are some of its features:

  • The colors are a little softer on the eyes
  • The fonts are larger (again better for my eyes)
  • The main column shows all the post and their contents (up to 20 entries), this allows me to scan the contents of more the than one post at a time.
  • The second column shows the titles of all the posts, group by the feed. A Mark All as Read functionality is available for those feeds that I only occasionally read.

The idea here is to use the second column to scan all available posts by title, and to take out anything I’m not interested in reading. For those feeds that only occasionally have posts I want to read, I use the Mark All as Read functionality to get rid a lot of post quickly.

It’s looking pretty good so far, and I have a couple more features I plan to add - keyboard shortcuts, saving/starring posts. I’ve only tested this bookmarklet on Firefox - I seriously doubt it would work in IE.

Here’s a screenshot of what FP looks like:

Flock + Tails = Flocktails

The weekend before last, I took the time and ported my Tails Firefox Extension to Flock, the result of which is Flocktails. The biggest improvement was moving the extension from display microformats on the sidebar to Flock’s topbar, which makes a very significant visual difference:

As you can see, I also changed the view to display only one microformat at a time, which now gives me some room to add some extra information/functionality if I chose to.

In other Tails happenings, Robert de Bruin combined my Tails extension with the export functionality of Smartzilla into one extension, and it looks pretty good, so check it out.

Distributed Development With VMWare

If you ever needed to quickly build a distributed environment for development, consider using the free VMware Player. This last Friday, I was working at Panera and needed to test some distributed aspects of our application, so I took a shot at using the Browser Appliance VM as my server. Since the Browser Appliance is just a stripped down Ubuntu installation, you can use the Synaptic Package Manager to install the necessary libraries for development (the Getting Started Guide provided by VMware has instructions on how to use the Synaptic, as well as information on getting root privileges on the VM).

The trickiest part was installing Java on Ubuntu, which requires some tricks since Sun’s Java for Linux is packaged as an RPM. Overall, this is a nice setup, since this allows you to create a nice and portable client-server environment. It also nicely avoids any issues with developers stepping over each other which occurs when working on the same development server.

MyPlaces Update and Self-consuming Microformats

I took the effort and modified the MyPlaces script to support both the Yahoo! and Google Maps APIs. I also fixed a problem with the generator application not working in IE.

I like the idea of having a webpage consume its own microformat - whereas common usage of microformats indirectly benefit the author (through aggregation), with this script I was able to provide immediate benefit to the author for using microformats. Maybe the key to more widespread adoption is to provide more apparent benefit for authors.

Using Microformats to Plot My Favorite Places

Currently, the most popular use of microformats is to export them to their native formats, (hCards -> vCards and hCalendar -> iCal), but there’s really should be more utility for microformats than that.

Here’s one neat thing you can do - I created a little application that will allow you plot and describe places on a Yahoo Map easily using the hreview and geo microformats. Generate the HTML from the application, slap it on your own blog (with your own Yahoo! Application ID of course), and away you go. To modify the web plots, just revise your HTML and reload.

Check it out and let me know what you think. I used it to plot some places around my neighborhood where I like to eat.

The Fight for Rails for Java Is a Good One.

I couldn’t agree more with Chris on the reasons for a Rails-like framework for Java.

In many ways, I see a lot of similarities between this struggle and the one between POJO’s vs. EJB: a struggle between robustness vs. simplicity. This has been a hard realisation for me because whereas I was a big opponent of EJB’s, I’ve always been (and still is) a huge supporter of Struts. However, when you see how easy it is to build applications on frameworks such Ruby on Rails, it becomes pretty clear that the cost of innovating in Java is currently way too high. Nowadays, whenever I want to build up a new application to test out ideas, I’m not doing it in Java anymore - it just doesn’t get me to where I want fast enough. For the most part, web application frameworks are just a means to an end; if you’re spending too much time there you’re just jerking off.

And the unfortunate thing about not using Java is that as you build up your application, you find yourself missing the vast array of Java libraries and tools out there today. On the flipside, Java misses out on the new ideas garnered from a developer’s late night binges of inspiration. We need to be removing the obstacles and making sure that we developers get access to the heart or the Java platform quicker and easier.

In a lot of ways, I see Ruby on Rails and its like as a disruptive technology, and applaud those in the Java arena looking to embrace it. It is pretty chaotic right now, with a new framework popping up every few weeks or so, but eventually there will be one or two that will rise to the top.

Can Coworking Places Work in Atlanta?

I’ve been spending approximately one day a week for the last couple of weeks working out of Panera in Smyrna, I can’t help to think that coworking places would work here in Atlanta. Throughout the day, the place is frequently visited by laptop toting patrons that can’t get enough of good food and free wi-fi.

Panera seems to do a decent job of damming the flow of us wi-fi leechers by limiting the access to power sockets, but the demand is still strong nonetheless. But I wonder: can you make a profit from a place that has unfettered network access?

Some ideas that could make it work:

Offer more office services. Offer some basic Kinko-esque services like printing and faxing. Also, some basic networking and VPN services could make it easier for people to connect to other coworkers or to their actual office.

Provide a variety of work environments. While I do like the coffee house environment of Panera, I think it would be important to offer areas for people to work in private. You could offer some on a first come, first serve basis, and offer others on a permanent allocation or time-sharing plan. Something else that would be appealing would be conference rooms with teleconferencing equipment available for rent, because every time I’ve been at Panera I’ve seen people having some kind of interviewing session or having work/lunch meetings (today I actually saw someone using a projector pointed at the back of an executive pad).

Offer opportunities for companies to access your patrons. A healthy coworking place could be a healthy focus group for companies to do introduction to or research on their products. Of course, the trick would be to introduce this without alienating your patrons.

Get subsidies from the state and/or local governments. Atlanta annually ranks high in terms average commute time; the average miles per Atlantan per day has been estimated at approximately 30+ miles. The city has been funding all kinds of projects to lighten the transportation burden - opening coworking places across the suburbs of Atlanta should be cheaper than most of those projects. Also, governments could encourage the usage of coworking places by offering tax benefits for participating companies.

Sell the employees on the idea. This idea have been experimented many times, but my belief is that they haven’t really stuck because they were too much like offices, except without the coworkers you know and with strangers instead. Coworking places should to some extent resemble coffee houses (but with the office amenities detailed above) to encourage socializing and the feeling of community. If you can convince the employees of its benefits, they will sell it to their employers.

My Microformats Extension

In an effort to further understand and explore the potential usefulness of microformats, I’ve been spending some time creating a Firefox extension that will indicate when a website contains microformats.

Its pretty basic so far (with only support for hCard and hCalendar), but I’m pretty happy with the results. Developing a Firefox extension is a real PITA, but very rewarding when you see the results in action.

Tails Firefox extension

A Graph of 2005 Software Development Job Trends

After some tweaking of a graph originally created by a member of the ST-J Java Group, this is what I think is the most accurate representation of 2005:

This graph was creating using Indeed.com’s niftly Job Trends tool. What does it say? Not much really - to me it seems as though the software development market is pretty healthy.

And what about Ruby? I’m not sure it reveals anything - I suspect that its flatness has more to do with the hiring behavior of Ruby shops than anything else.