uzyn.com rhythimic codes

Dream Theater’s Upcoming Album Announced →← PHP-GTK or GTK+?

A Little Story On Ping.sg

After Nexus2007, one of my projects, Ping.sg, has got some attention by the local technology and blogger community. There have been a lot of discussions and blog posts that are comparing Ping.sg to Tomorrow.sg, some positive, some not quite. Well, it’s natural to be comparing these 2 sites as currently both of them are probably the biggest blog aggregators in Singapore.

I’m not going to comment on that as enough comments have been thrown around, but I would like to tell a little story on how Ping.sg came about and why I am building it.

The idea to build Ping.sg started when I was bored one night more than 2 years ago and I wanted to read some general blogs by Singapore bloggers. At that time, Tomorrow.sg has already been up and has been functioning pretty well. But as a bored student, I wanted to read something more leisurely and probably more to my interest. So I thought of starting a ping service for Singapore bloggers. I wanted to have a group feature, so that bloggers can create their own interest groups and follow each other’s blogs more easily. At that time, I wanted to find NUS students’ blogs to read, but I couldn’t find any blog directory that is close to that. Even if there is a categorized Singapore blog directory, there is no way I could’ve known which one has just been recently updated.

Thus the Ping.sg project started a few months later, with myself alone doing the coding, in PHP and Javascript (AJAX), doing the designing, XHTML + CSS, and coming up with the name and logo. I did an alpha version of Ping.sg on vanilla PHP with an AJAX-enhanced homepage so that users wouldn’t need to keep refreshing to see the latest entries. At that time I was using trackback or manual entry (filling in form) for entries submissions as it was easier and more straight-forward on my part. The engine wouldn’t need to visit users’ blogs to grab the latest entries. Early users of Ping.sg would still remember the use of trackback and manual form (which was known as PingIt!) to ‘ping’ at that time. I didn’t launch the alpha version as I hadn’t done the user model (registration, login, etc).

Later on as the code gets more and more complicated, and at that time I have also just learned the use of a PHP web framework known as CakePHP by building an application for a client on it. I decided to rebuild the whole thing on CakePHP as CakePHP makes projects more managable. So I went on and rebuilt the whole thing, from the ground up, and managed to get most of it working after about 2 weeks of hard work and constant encouragement from my girlfriend. Even though the basic functions of the site was already working, including the AJAX live page, the main feature which I wanted to build Ping.sg for, ie. the group feature, hasn’t been done. Nonetheless, I decided to launch Ping.sg on July 4th 2006 with basic features and simple design and vowed that I would continue to develop it as it grows.

Cobaltpaladin is a friend of mine and I told him about it. He liked the idea and he submitted it to tomorrow.sg, hoping that the project to get noticed. It was featured on tomorrow.sg and it did get some early adopters. Most of the early adopters liked the idea of the project and some decided to blog about it (links to the early blogs). Bernard even decided to interview me on SGEntrepreneurs about this.

After that the site just grows steadily. About a month into the launch, I redesigned the logo a little into what it looks like today. Coded the AJAX shoutbox so users could interact a little bit (previously there was no way users could say hi to each other). Created the ideas section so users could suggest some features they would like for Ping.sg. Coded XML-RPC server to enhance userability so that Ping.sg engine would automatically visit users’ blogs upon updates notification.

A few months later, I grew bored of my initial design and decided to get Veron to design for Ping.sg. With the complete redesign, and after a few weeks of testing of the XML-RPC server, I decided it’s time to get it out of beta and call it v1.00. I paid Veron using my own money for her design and later self-coded XHTML + CSS and also did most of the extra features that I wanted to package with v1. Unfortunately, even though I wanted to also include the ‘group’ feature along with v1, I couldn’t get it done on time as too much time was spent on recoding the template than actual logical programming.

Most members liked the new look and some of them came up with the idea to have a launch party-cum-meetup session. Hence, we had our first meetup. It was fun as we finally put the usernames to faces. Ping.sg continues to grow after that. Thanks to the users’ support. I would normally try to help them as much as I could if they had any problems, fix any discovered bugs, and try to implement new features on my free time.

Until today I still enjoy improving the site from time to time, rolling out new features when it’s ready and then announcing it on Ping.sg Official Blog. And I’m doing this along with my undergraduate studies and freelance work as a web developer. I’m doing this not that I feel that tomorrow.sg needs to be improved, nor is it flawed. I confessed that I read tomorrow.sg everyday and in fact I also have another project which also relies on editors, Gratisvibes.com. I started Ping.sg simply for my love of technology, my love of creating things, my love for innovation, and also for myself to kill time by reading newly-updated blogs when I’m lazy.

There you go, a little story on how Ping.sg came about. I’m sure the long time users of Ping.sg would have known all these as a lot of them actually grew with the site. For all the comparisons that people are making with Tomorrow.sg, I don’t actually care so much. I like Tomorrow.sg for filtering out the noise and I will continue to read them. I also like Ping.sg for the absense of filter and for the speed of it. It’s amazing how often I get bored in a day. Now with Ping.sg, I could just hit F5 on the homepage and get new stuff to waste time on almost every 5 minutes.

I will continue to build Ping.sg. My to-do list for this project is still pretty long, and no prize for guessing what’s the next feature that I’m building.

My project ideas list has also been constantly expanding. I did lost one of my notebooks that I write my ideas on a few years back. To the person finding it, have fun building them. Since then I already have made another list of ideas which I hope I could find time to build some of them again. Ping.sg was one of them on the list, so was the TODAY feed.

I just love to make things.

March 27th, 2007 / Trackback