Category Archives: Computer Science

Sublime Editors

I’ve been hunting for an IDE for a while now. I’m using IntelliJ IDEA for work and I love it, but it’s definitely more complex (and more expensive) than my personal projects will allow. I’ve used lightweight editors for a long time (Notepad++, Crimson) and they’re great for some things, but I’ve found myself more and more impressed by the power of an IDE with really good navigation tools.

Recently I’ve been learning vim commands using (which is worth the money just for being a good puzzle adventure game if nothing else) and I’ve been trying out vim itself as well as popular IDEs that have vim plugins – Emacs, Eclipse, Netbeans. Unfortunately, nothing has been an easy fit. I’m sure I could get accustomed to any of them over time, but I kept looking in case there was something better out there.

That’s how I stumbled across Sublime Text last night. How has nobody told me about this before?

  1. It’s fast, like the lightweight editors I used to love.
  2. It’s pretty, especially in fullscreen or distraction-free mode.
  3. It has an integrated VIM mode.
  4. It’s got excellent navigation tools built in (the “Go to anything” command is awesome).
  5. It’s got a great plugin community and plugin management tools.

My total time for setup was probably an hour – that’s download, install, finding and installing three or four helpful plugins, configuring vintage mode, and importing my current project. I’m going to give it another couple days of trial first, but I think I’ll end up dropping $70 on this editor.

In the process of looking for IDEs I also stumbled across WriteRoom, a little $10 text editor that’s equally pretty. I used its distraction-free mode to write a blog post on the train this morning.

I’m usually pretty gung-ho about free software, but I have to admit a significant leap in the aesthetic quality of these paid (but affordable) editors. I might be a convert.

Reflection: Crawford’s Art of Computer Game Design

I’ve just finished The Art of Computer Game Design by Chris Crawford (1984) – the Kindle edition with chapter endnotes added this year. This was a pleasantly focused little book. Continue reading

Productive Programming

This presentation by Jonathan Blow is gold: Programming Aesthetics learned from making independent games.

His premise: Game programmers (especially those working independently or on small projects) have to be at least ten times more productive than the average programmer: They have to write more code, better code, and do a whole bunch of stuff on the side, too. How do you become ten times more productive?

His answer: Don’t be fancy. More precisely, “Impulses to optimize are usually premature.” That means staying away from special algorithms, advanced data structures, and one-use functions until you actually need them. The code may be poor from an academic point of view, but it will work reliably, be maintainable, and take less time to write.

Jon’s definition of a good game programmer:

  • Gets things done quickly.
  • Gets things done robustly.
  • Makes things simple.
  • Finishes what he/she writes.
  • Has a broad knowledge of advanced techniques, but applies them only when necessary.

I’m curious to see how this idea plays out as I get into school.

Say No to Online Censorship!

Here in the United States, we’ve really got a thing for free speech and free press. It’s in the first amendment to our constitution:

Congress shall make no law respecting an establishment of religion, or prohibiting the free exercise thereof; or abridging the freedom of speech, or of the press; or the right of the people peaceably to assemble, and to petition the Government for a redress of grievances.

Recently, a website called Wikileaks has been attacked for releasing government secrets, and it’s been abandoned by many of its key supporters like Amazon and Paypal. Public opinion seems to be swinging against Wikileaks. The Electronic Frontier Foundation sees this as an attack on our freedom of speech.

I’m posting this to note my support for Wikileaks and open internet. Visit the EFF to see how you can say no to online censorship, too.

Kindle Development Kit in Beta

For a while now, I have been the proud owner of an Amazon Kindle. My only complaint has been what a closed platform it is. Reading books is awesome, but there’s so much potential in this little device…

Just today I learned that the Amazon is accepting applications for KDK Developers. What’s that? We can write custom applications for the Kindle? Heck yes! Where’s my Frotz port?

Intial reactions on Kindle Active Content and the KDK itself seem to be very positive. It uses Java. Everyone knows Java. I’ve applied to the beta and hope to be prototyping Kindle games soon!

Heroes: Hans Rosling

I love this guy. He takes huge piles of numbers and turns them into concise, eye-opening animations that reveal surprising truths. He’s like a living, breathing, Swedish Hari Seldon, peering into our future through the power of numbers. We need more Hans Roslings!

Watch all his TED Talks:

The Good News of the Decade (October 2010)
Global Population Growth (July 2010)
Asia’s Rise (November 2009)
Let My Dataset Change Your Mindset (August 2009)
The Truth About HIV (May 2009)
New Insights on Poverty (June 2007)
The Best Stats You’ve Ever Seen (June 2006)

Minecraft Life

I’ve officially caught the Minecraft bug. I was persuaded to try it by the series over on Rock, Paper, Shotgun and two days later I’m entirely taken by the possibilities.

I started with a little cave just behind two trees that had grown together (it helped me find it after venturing out) and have mostly been digging downward since then. It was pretty dull until I dug through the roof of a dungeon, complete with treasure chests and a monster factory. Since then I’ve connected to a huge system of underground caverns, and it just keeps going!

All that, and I haven’t done any overland exploring yet. This game is huge.

Book-Style Annotations in Microsoft Word 2007

I’ve been testing some games for the upcoming IFComp, and when I test I like to send an annotated transcript back to the author. I puzzled for a while over the best format to use, and decided that I wanted to imitate my favorite annotated classics with a kind of two-column layout. The original transcript would be a wide column on the left, and my annotations would be a narrow column on the right. I was frustrated to discover that neither Word nor support this kind of document!

Continue reading

IFComp 2010 Coming Soon…

Last year I had great fun playing and reviewing all of the games entered in the annual Interactive Fiction competition. Well, judging for this year’s IFComp starts in about a month, and I highly recommend that you get on board. Register at the website as a judge, so you’re ready when the games come out!

If you really want to get involved, you can help authors test their work by registering at Or if you’re passionate about the comp itself, you can donate a prize for this year’s comp.

Big Databases

Gamasutra has a sweet article up by Kjartan Emilsson, giving an overview of the challenges involved in running single-shard MMO EVE Online. Apparently the whole thing is built around a single 1.4TB relational database that gets hit 175 million times per day. This team really knows their stuff.