The earliest memory I have of ‘programming’ is in the early/mid 90s when my father brought home a computer from work. We could play games on it … so of course I took the spreadsheet program he used (LOTUS 123, did I date myself with that?) and tried to modify it to print out a helpful message for him. It … halfway worked? At least I could undo it so he could get back to work…

After that, I picked up programming for real in QBASIC (I still have a few of those programs lying around), got my own (junky) Linux desktop from my cousin, tried to learn VBasic (without a Windows machine), and eventually made it to high school… In college, I studied computer science and mathematics, mostly programming in Java/.NET, although with a bit of everything in the mix. A few of my oldest programming posts on this blog are from that time.

After that, on to grad school! Originally, I was going to study computational linguistics, but that fell through. Then programming languages (the school’s specialty). And finally I ended up studying censorship and computer security. That’s about where I am today!

But really, I still have a habit of doing a little bit of everything. Whatever seems interesting at the time!

Racket Roguelike 9: Daedalus' wrath!

I think by now it’s well past time that we got to adding a bit more content. So far, here’s what we have (bolded entries we actually used in day 8):

  • entities: rat, goblin, bomb, bomber goblin
  • armor: leather, chain, plate, enchanted
  • weapons: club, dagger, battle axe, longsword, magic sword
  • potions: health potion
  • coins: copper, silver, gold, platinum
  • levels: forest, caves

We can do better than that though!

read more...


Swap list nodes

It’s been rather a while since I’ve worked out a Programming Praxis problem, but they posted a new one yesterday, so now seems as good a time as any. The problem is relatively simple:

Given a linked list, swap the kth node from the head of the list with the kth node from the end of the list.

Since all lists in Scheme are linked lists, that part seems easy enough. To make the problem a little more interesting however, I’m going to work it out in a purely functional manner: no mutation.

read more...


Ludum Dare 26 - VTanks - Results

The voting period for Ludum Dare 26 has ended, which means that now we have some results! Before I post my own, take a moment to check out the overall leaders. Given that there were 2346 games submitted (1610 in the compo and 736 in the jam), there are bound to be some real gems in there.

read more...


Racket Roguelike 6: Dig deeper!

Moria… You fear to go into those mines. The dwarves delved too greedily and too deep. You know what they awoke in the darkness of Khazad-dum… shadow and flame. – Saruman, Lord of the Rings

Today, we dig too deep.

read more...


VTanks for Ludum Dare 26

So when I got home, I decided that I really didn’t want to miss another Ludum Dare. Granted, there was only about two hours left in the competition. I’m good, but I’m not that good. 😄

Also, I really wanted to make a web-based game, which meant either write another game in Java (suboptimal) or learn how to write a game in Flash or JavaScript. Nothing like a last minute decision to use an unfamiliar framework and write a game in less than 24 hours. 😄

In the end, I did it in six.

read more...


Racket Roguelike 4: Slightly smarter critters!

A very minimal update today, since the many, many early May conference deadlines are fast approaching. But despite there only being a few lines of changes, already we are starting to get a bit more character to the game. Essentially, today we want to make the enemies smarter and add a bit more explosive sort of attacks.

read more...