February 2012
1 post
Real-time ASCII/Unicode rendering in Javascript -...
Here is a shot of the latest build.  Gaiapp has added antialiasing and motion blur. Source can be found at my github.
Feb 15th
December 2011
2 posts
Europe Travel Guide for Android is now free
As an Xmas present to all the backpackers lost in Europe, we’ve decided to drop the price of Europe Travel Guide from $0.99 to Free. Since it’s free, we might as well go all the way and open-source the code.  I’m sure the community could add more features like maps and reviews.  If there’s interest I will clean up the code and put it on github.
Dec 4th
4 notes
Rendering the Mauldin Gasket
If you would like to produce some renders of the Mauldin Gasket like the one above, you can check out the C code on my github.  And, set NUM_THREADS = the number of cores on your machine for best performance.
Dec 4th
7 notes
October 2011
2 posts
3 tags
Solving TSP with Ant Colony Optimization (Python)
The TSP asks us to visit all cities in a graph with the least possible cost.  I recently put together a solution to this problem that relies upon the Ant Colony Optimization heuristic.   This method is embarrassingly easy to parallelize: each ant is given his own thread to execute on.  You can check out the code (python) on my github.   I tested it with the Norway graph above (14 cities) and...
Oct 26th
6 notes
3 tags
Playing FLV-wrapped AAC streams from Android
Recently I was involved in developing a radio app a certain mobile provider wants to pre-install on all their new phones.  Near the end of the project, testing revealed that a handful of the new phones had a firmware bug which prevented them from playing MP3 streams (AwesomePlayer would consistently crash).   We tried a few workarounds with so-so results.  The best of these involved writing...
Oct 26th
9 notes
August 2011
5 posts
5 tags
AsciiTracer.js - a javascript Real-time Raytracer
There was a nice reaction to my raytracing demo on reddit and I got great feedback.  One redditor has been helping me optimize the codebase and we’ve open sourced our combined efforts.  Here is a demo of the current build (NB: broken rendering in OS X).  Much smoother. The rendering is nearly fast enough for use in games.  A simple 3D Asteroids isn’t out of the question. If you would...
Aug 25th
18 notes
4 tags
Real-time ASCII rendering in Javascript - Ray...
UPDATE: Here is the demo of the current build.  If you want to contribute to the project, it’s all hosted on github Stepping things up a notch.  I managed to get real-time raytracing working at an acceptable framerate (with ASCII rendering of course).  Play with the demo.   I’m not able to get Chrome and FF to render <pre>’s the same way yet.  At the time of writing the...
Aug 23rd
24 notes
5 tags
Real-time ASCII rendering in Javascript (part 1)
As I approach my high-20s birthday I’m feeling nostalgic for the demo coding days of my youth.  I was never on the level of FC but managed some real time fire demos, plasma, bump mapping etc. I was playing around with ASCII rendering to a <pre> block and it’s fast enough in modern browsers to pull off a reasonably high resolution fractal zoomer:  Demo here.
Aug 23rd
11 notes
4 tags
Second Android App: Europe Travel Guide
Collaborating with Peter, we produced another Android app. Basically, it’s an offline Wikitravel with just the most important European pages.  It’s good for backpacking when you have unreliable internet. Compressing 200+MB of pages down to a 22MB app was slightly challenging.  We ended up extracting all the content from various sections and storing in JSON on the filesystem.  I...
Aug 23rd
26 notes
First Android App: Country-level flight search
Travel sites have consistently annoyed me.  When you want to explore your options for getting from Country A to Country B you’re basically stuck plowing through a drop down of cities.  Using a dataset I found somewhere it was short work to reorganize things into a db that lets you search flights from country to country.  I packaged everything into a Titanium-based Android application....
Aug 23rd