/tinyletter

The Programs of the Week of Ludum Dare 37

This Week’s Program: Dec 5 - Dec 9

I just realized that last week I got Friday’s date wrong in my tinyletter. Oops.

Tonight at 21:00 UTC-5:00 is when the Ludum Dare 37 begins. Ludum Dare is probably the most well-known game jam. Its notoriety stems in large part from the participation of Notch, the creator of Minecraft and “men’s rights advocate” (see also: complete asshole). I have decided not to participate in this Ludum Dare. I think it requires a level of planning and commitment that I am currently unable to deliver. I do intend to do it at some point, but I hope to have some more experience under my belt and more tools at my disposal. It feels like a bummer to bow out, but I know that if I deluded myself up until the last minute into thinking I could actively participate, it would have been a bigger bummer when reality eventually set in. There’s a lot to learn between now and when I would feel competent enough to jam.

Not a lot of progress on hive-city this week. I took some time to think critically about how I approached the code and began a little refactoring. Vera, my amazing wife and frequent This Week’s Program presence, has been taking an intense, week-long Data Analytics course at General Assembly. Data (either big or small) has never been a strong suit of mine, and so I’ve spent time this week riding her coattails, picking up some tricks in Excel and SQL. I’m so proud of her. She is a self-determined, disciplined learner, and I’m more of a lazy noodler. I’ve found that a lot of programmers look down their noses at Excel, but it is an incredibly powerful tool. One highlight from my second-hand data apprenticeship has been discovering and using csvkit. I’m still not a strong data person, but knowing what is possible opens so many doors.

b565ddd3b1168b7018361b24d3931404c9e3940d

On Monday, I finally added a Tinyletter index to my personal website. Look at all those words!

ab0efefbf4ab5e654aa7e8f58278f670c8d58b84

Back in hive-city. Last week I created the Roll Msg. This week, I use that to execute all Instructions, even those that don’t use Dice.

a99174aed4ddb3336d36adc8979ffc7134f65022

I also start my refactoring effort. Here, I’m slowly teasing out the GameState concerns into a new module, Game.

The idea here is that there’s a lot going on in the Game, but I want to reserve my Main module for taking in user input and executing updates to the Game state. There’s also other stuff beyond the Game — there’s Gang creation, potentially a little tutorial thing, maybe login stuff… I think that the Game shouldn’t be aware of mouse clicks or keyboard actions, but just making sure that the game state is advancing. This is also where I introduce having two players.

This is just the beginning, and I’m letting some of this code emerge. If you look closely, you can see my enthusiasm for this project waning.

8266bd89a3eb7ea22db16dba5df28ac82eb6d432

I add csv-mode to my Emacs setup. I haven’t used it yet, because all my data is too big.

📊 Mark