Monday, August 9, 2010

August Already?? and Google Latitiude

I was figuring I'd spend a lot of time on the house and the automation system while I was job hunting, but it didn't turn out that way. It's been about 6 weeks and I really haven't done a whole lot. I did finish up most of the trim for the flooring, but I had to stop and find some flexible quarter-round to go along the bottom of our staircase (which has a full 180 degree curve on one side). I did pick some up from Trimster, but I haven't thought much about how to stain it, so it's sitting around.

As for automation stuff, I've been revamping our AJAX based floorplan GUI. Given all my free time, I've been reading up on CSS3 and jQuery and have completely re-written large portions of the code. My HTML page used to have markup, JavaScript and CSS all mixed together, but now I've gotten everything updated to typical coding standards, with the HTML page containing only the markup, and the CSS and .js files have grown significantly. It's definitely much neater to read now and should make maintaining and updating it easier as well. I figure at some point, I will migrate it to HTML5 and that will be another major overhaul, but for now, I'm very pleased with the new CSS and jQuery things I've learned.

When Google Latitude first came out, I put a placeholder at the bottom here, but had so many things going on, I forgot all about it. This thread reminded me about Latitude tracking and with the wife planning a 5-day roadtrip with a girlfriend, I finally decided to get off my butt and implement some tracking (with her permission of course! :)

First off, we need to get a public badge for Latitude - you can find out more here. We already have Google Maps on our cells so we just need to enable Latitude on the app. Next, we need an automatic trigger to start Latitude tracking. We use RFID tags in the cars and bluetooth on our phones for tracking, so when someone's phone and a car are gone, we can start the Latitude tracker.

The tracker is just a perl script that periodically fetches the Latitude badge's JSON feed and parses its information (latitude, longitude, timestamp, reverse geocode info). That information is stored in a MySQL table that is reset for every new trip. Finally, I've written an AJAX page that fetches the location data from MySQL via PHP and shows each data point on Google Maps with a line connecting the points. I plan to post more details as I debug this new feature.

Finally, I am about to close a deal to join an early stage startup. The company is in a very promising space and is at the right stage for me to be able to contribute a great deal to the product development. However, early stage equals long hours, but I'm ready for another startup. HA stuff will just have to be put on the backburner...

No comments:

Post a Comment