Tuesday, June 02, 2009

finding the perfect flight search api

I'm hunting for the right flight search api to bring flight results into Routefriend. We've been mainly testing with travelfusion, but many of the search results come up in british pounds. Cleartrip also appears to have a nice one, but with search results in rupees.

The best so far would seem to be Kayak's API, however we hit some bugs in testing. It appears the API is no longer supported...it's not linked from the Kayak labs site anymore.

Microsoft's new search engine, bing, has flight search and an API. I'm not clear yet whether the flight search results are accessible through the API. They are blocked from scraping via a robots.txt exclusion.

Anybody know of other good flight search APIs?

Tuesday, March 24, 2009

from mysql -> simpledb

I'm experimenting with migrating our database from MySQL to Amazon's SimpleDB. Why would I wander from the secure confines of such an established technology?
  • Simplicity: Database administration is a can of worms. SimpleDB means I don't have to worry about indexing, sharding or scaling.
  • Cost: I get to shut down my MySQL server instance, saving $75 / month (hey, every little bit counts.). In addition, I won't have to worry about the costs of launching and managing more servers as Routefriend scales. The SimpleDB costs are negligible.
  • Flexibility: SimpleDB is a schema-free database. It is easy to do anything on the fly, including creating and deleting tables ('domains'). This offers some interesting new algorithmic possibilities for Routefriend.

Thursday, March 19, 2009

IE compatibility finally achieved

I've just spent the last two days getting Routefriend to work on IE. In the end, problems I was having were traced to two sources:
  • the array.indexOf() javascript function isn't supported by IE7
  • the GLatLng() function from the Google Maps API requires initial latitude, longitude values in IE7.
The Google Maps API issue was especially complicated to debug as the javascript code is minimized...so errors come up, for example, as problems with "c()" as opposed to "GLatLng()".

Tuesday, February 24, 2009

routefriend dance

My talented ex-roomate Ryan started a company called Euclid Media that let's you insert brands into pre-existing videos. Check out the Routefriend dance, then try Ryan's technology yourself!

crowdsourcing a logo

Routefriend is long overdue for a logo and a decent design. After considering a few options, we've opted to crowdsource our logo to the creative 99designs community. There is a one week, $350 contest up now.


Friday, February 20, 2009

routefriend infrastructure

Unnoticed by non-techies these past few years, it has become easier and easier to build a web-based application. Free, easy-to-use tools for development and hosting have significantly reduced the barriers to getting a web app developed and off-the-ground.

At Routefriend, we're taking full advantage of these innovations. Our infrastructure:
  • Python with Django framework - We chose this initially to be compatible with Google App Engine. However, Google App Engine has significant obstacles at present for serious web application development. Principal among these are (1) no multithreading, (2) inability to install c-based libraries like lxml, and (3) short time-out limits for requests limit the scale of behind-the-scenes computation.
  • MySQL - We're using this popular relational database for now. However, as much as possible, we're moving things that can be cached to memcached and exploring scalable key-value databases such as SimpleDB from Amazon.
  • Amazon Web Services - Amazon's cloud hosting solutions, EC2 and S3, provide a flexible pay-as-you-go solution ideal for a bootstrapped startup. The best aspect of EC2 is its scalability for when traffic increases. The downside is, the price is much higher than more limited hosting solutions from godaddy or webfaction. For a web and database server I currently pay $0.50 per hour which adds up to a few hundred dollars monthly. It's not much, but it is Routefriend's biggest expense.
  • Google Maps API - Routefriend's map-driven user-interface leverages the awesome power of Google Maps for geocoding and map-based presentation.
  • jQuery - It's called "The Write Less, Do More Javascript Library". That about sums it up. It makes javascript even easier and allows impossibly slick plugins. My favorite is the datepicker.

Wednesday, February 18, 2009

kick off

Welcome to the reborn davidmarc.us blog!

I'm a Connecticut-based entrepreneur, starting a company called Routefriend. My mission is to bring all modes of transportation together into a common network. It works great, and I hope to keep you updated here as Routefriend inches closer to launch.

If you'd like to reach out to me, please email davidmarcus@routefriend.com.nonsense.ru