Thursday, May 25, 2006

Everything social

I originally wrote this post on May 24 but it has been sitting as a draft ever since.

Ever since I returned from the MySQL users conference, things have taken a turn for me. I find myself so incredibly busy with projects that often it gets past 3:00 AM before I get to hit the bed. Of course that means I haven't been able to keep up to date with my emails.

I have a couple of projects under the hood going on. For one, I am busy launching the next version of Adoppt which will make things much easier to understand ;). Also, I am busy in simplifying the navigation and working on the email and invite system.

When I built Adoppt, I had just one thing in mind, to make it as user focused and friendly as possible (to keep the spirit of Web 2.0) and to this day that remains my goal. Many thanks to all those who provided me with valuable feedback on the project. I agree it is one of the most ambitious projects that I have undertaken to date.

In addition to Adoppt, I have three other projects in the pipeline. All use MySQL of course.

First, someone recommended sometime ago that I add PlanetMySQL to my RSS reader. The problem is that while I tested out many RSS readers, I don't have one that I particularly like. The reason being that I always wanted to code a RSS aggregator with my own hands.

Call me crazy but that's what I love to do. Code.

So about 10:30 pm yesterday night I sat down with my wife Michelle thinking of a domain name for my RSS reader and aggregator. After about thirty minutes of brain storming, we finally settled with

After securing the domain, I modified my hosts file (so I won't have to wait for the DNS propagation) and started making my RSS aggregator.

Around 3:00 AM I felt the aggregator was in decent enough position for me to start adding RSS and ATOM feeds.

Today, I ran into an issue of sorting feed entries when retrieving from MySQL. Since the latest items in a feed are shown first (and entered first in the db) I couldn't immediately come up with a way of retrieving them in the exact order in which they were received from the feeds. At that point I had two options

1. come up with a way of taking the publication date in various feeds (in a huge variety of formats) and try to make sense out of that, or
2. create a batch system where everytime I start parsing feeds for new content, I assign it a batch number which is then stored with each entry retrieved. That way I can query by specifying "ORDER BY batch_id DESC, id"

Now I know there must be a better way of doing this (and I would love to hear about it). But the good thing is that for now it works great.

The second project I am working on is a simplified version of Adoppt that allows for social bookmarking. If you guessed that the domain for my project is, then you are quite right. I have had the domain name for quite some time and so this weekend I finally decided to sit down and get it closer to completion as well. Thanks to Ruby on Rails, my wife and my work on Adoppt, I was able to extract and simplify the interface for in about two days of work.

In a nutshell, allows a user to

1. make friends
2. see what their friends are bookmarking
3. subscribe to any member's bookmarks (without becoming a friend)
4. make blog posts
5. edit their bookmarks easily using "in place editors" and AJAX.

Now, I need to work on finalizing the preliminary chapters of my Pro Rails book and send it to the editor. Hopefully he will like what he sees (and reads) and I will move one step closer to getting the book published. And oh yes, all the people who were kind enough to be my beta readers, I have not forgotten you and will be fulfilling my end of the promise soon.

And the third project? Oh, well let's just wait for now and see. Hint: I am working on it with another Planet'eer.

For now, you can check out my social bookmarking home page.


No comments: