Sunday, September 20, 2009

Next JUG SIngapore meeting and introducing a new hack

Well, this blog is way overdue but life has been a little busy in the last few days and hence I have been lagging behind a lot of things including blogging. My sincere apologies for the same. Now, coming to the point.

Last Monday (14th September) was JUG Singapore's September meetup. The attendance was much better than previous one and pretty much everybody from the last one ended up here too. The attendees was a good mix of hackers, managers, managers-of-hackers and so on.

We actually had Sun Microsystem's office and hence we could do a couple of presentations and discuss in peace. The first presentation was by David, who spoke about a Java VXML based voice browser he developed back in 2001. He explained the purpose, architecture, gotchas and ran us through the essential libraries required for something like this.

I spoke about Marvin, a new hack I have been working on. Its essentially a twitter trend analyzing engine, finding out trends which people are positively or negatively describing or they are being neutral. Once the trends are found, I just link them to the news and photos of that trend. These are being brought in through YQL. The whole system is built on Java and hosted on Google App Engine. There are a few interesting challenges I tackled, which I shall blog later. If you are impatient, you can grab the presentation deck or email me or comment here. The hack is open as an alpha and feedback is most welcome.

The discussions were very interactive with lots of questions and loads of feedback. I hope we can keep the momentum going on this group. You can try to attend the next meetup on October 26th.

Wednesday, September 2, 2009

[Hack]: Chess runner

As I wrote a while back, I spend quite some time playing chess on the iPhone using Glaurung app. The interesting feature is that it sends out email of your game describing the game in the Algebraic Notation. I mentioned at the end of the blog that I wanted to have a simulator/runner, that basically runs the entire game when this email is fed to it. I couldn't find one online - so I built one.

The easy part is to take the data, store it, parse it and the simple UI I built for making the moves work. What is infinitely more complex is to understand the moves in the algebraic notation and changing the status of the board. The problem is that the notation only tells you where something is to end up at, not where it originates from - and that has to be computed by you based on your previous board state and a complex set of rules.

The one that I built looks ugly in code presently (and hence not sharing right away), but it works, including moves like castles and en passants. The UI itself is just two pages - one to feed your game and another to run it. If you want to embed the "run" page, you can do that too by adding "&nfh=1" to the end of the page URL.

So check it out at http://www.shreeni.info/chess/index.jsp or check out one of my wins.