Joseph Roque

👋 I’m a mobile developer living in Vancouver. Sometimes I work on personal projects, sometimes I go for runs, and sometimes I blog about things.

Development Log, November 2024

Joseph Roque

2024/12/03

This month I wrote a meager 4,251 words for NaNoWriMo, added a few new statistics to the Approach app, and started prepping for Advent of Code.

NaNoWriMo

As I do every year, I attempted to complete NaNoWriMo this November. The goal of NaNoWrimo (National Novel Writing Month) is to write 50,000 words over the course of a month, averaging 1,667 words per day, on one’s way to finishing the first draft of a novel.

I’ve always loved writing, though I generally stick to much more short form writing, but I still aspire to write a novel someday. NaNoWriMo humbles me every year, as I realize just how much of a commitment it is, and, more than that, how hard it is to write something good!

I do enjoy the few writing sessions I get out of it each year though. I generally have some semblance of an idea going in, and then after a few days I lose interest in that idea and move on. I’m still searching for the novel idea that’ll make me want to keep writing.

Approach

Approach is the 5 Pin Bowling app I build for iOS and Android. This month I didn’t spend to much time on it, instead preferring to focus on Advent of Code, but I did finish a few small tasks.

Adding High Series of X Statistics

One of the most useful things about Approach is the statistics it offers, reporting on a variety of aspects about your bowling and you’re improving or where you need to focus your game. These statistics can be charted as a series of points, or accumulated over time to a singular value.

Approach has a system for calculating the statistics, which queries the user’s games, and passes the games to a set of objects which perform calculations based on the properties of the game, and return the final statistic values. This makes it fairly quick and simple to add new statistics into the app.

This month, a user noted that there’s a “High Series of 3” statistic, tracking the highest total series the user has bowled for a series of 3 games. But often leagues are 4 or even more games, and there was no way to measure improvements in those leagues.

Therefore, this month I added a number of statistics for “High Series” of 2 up to 20 games.

Advent of Code

December 1st marks the beginning of Advent of Code, a month-long coding challenge that releases a new puzzle at midnight EST each night, where coders all over the world attempt to parse the puzzle and determine a solution as quickly as possible.

I’ve been doing Advent of Code since it first launched in 2015, and I’ve built up a small library of helpful utilities over those years. However, they’re all written in Python because I used to use Python a lot more back in those days, for work or personal projects. But I rarely write Python at all anymore. In fact, the last time I wrote any Python was actually during last year’s Advent of Code. I’ve found that it leads to me spending too much time remembering the intricacies of Python’s list comprehension, or the syntax and tools of my own library.

This year, I’ve decided to attempt to solve all the days using Swift, my preferred language of choice. I spent some time in November converting my personal CLI tool for running the challenges from Python to Swift, and have also converted a number of my personal utilities over to Swift as well.

I post all my Advent of Code solutions on GitHub, and this year will be no different!

I’ll have more of a write-up on how it goes at the end of the month!