Author Archives

Please, you wretched cookie-cutter forums of the internet, you can do so much better.

Once upon a time I answered a question on LinuxQuestions, a slow, ugly website that uses vBulletin–your average, run-of-the-mill, commercial, PHP-based forum software. I couldn’t just answer the question, I had to create an account, and give them an email address. Without warning, they started sending me weekly emails, reminding me how awesome they are, [...]

Compiler code generation: just flatten the tree

I spent some time tonight working on the compiler I am writing for my own education. I started this project while only understanding bits and pieces of what it takes to write a compiler, but I am quickly learning more. Various texts on compilers start with creating a simple calculator program that takes a string [...]

Create your own programming language for great justice

In an earlier post I wrote my wish-list for the perfect programming language (for me.) I believe most programmers have a perfect programming language in mind. It usually goes something like this: “I really like the object model of language W and the functional aspects of language X and the syntax of language Y. It [...]

Genie: Write Python-like code that runs as fast as pure C

There is an article on the Postabon Blog titled “Make Lisp 15x faster than Python or 4x faster than Java.” In his benchmark, which is a tightly nested loop doing some trigonometric calculations, he achieves speed similar to Java with unoptimized Lisp and a 4X speed increase over that with some Lisp optimizations. He also [...]

Moving on from visualizations

I am beginning to question the appropriateness of visual aids in professional software development. When I only occasionally had to look at database structures and test out SQL queries, I used tools like phpMyAdmin and MySQL Workbench which provide GUI visualizations and click-friendly database management. I now look back at those times in the same [...]

Getting Things Done

I work at a very small software company that has as clients other small businesses. We do custom software. In 2010 that means we do web development. We bid on projects, complete the projects we get, fix any bugs for free for 6 months, and charge a very competitive hourly rate for new features. We [...]

My Programming Language Wish-List

I write custom software for a living. It’s usually fun, sometimes challenging, often tedious, but overall gratifying in a number of ways. One of these ways is that I get to be creative and build my own tools that help me write better software that is quicker to write, easier to support, and is more [...]

My life without God

This is awkward.
Most of my family and friends consider me to be a devout Christian. Mostly they believe this because that’s what I’ve been until relatively recently. I have a few things to get off my chest about this and to set the record straight.
I was raised in a very devout and loving Christian home. [...]

Root.js : A Skeletal MVC Framework for Node.js

OK, by skeletal, I mean absolutely no fat whatsoever. What you are about to witness is merely an illustration of a thought. Here’s the thought: I want to do serious server-side web development with JavaScript and Node.js. Why? Node.js is a convergence. The creation of Node.js was precipitated by several phenomena including the rise of [...]

Node.js and JSON Template : A delicious pairing

I recently blogged about the virtues of Node.js and my personal desire to use JavaScript on the server. Well, I decided to start putting the pieces together. First of all, every good web framework needs a template system. I found JSON Template, a simple enough template system written in JavaScript and intended for client-side HTML [...]