Learning a new coding language

When I start learning a new coding language, I work through the same set of exercises each time. They are my coding kata, problems I know the answers to in several languages now, where the goal is to get the same results each time.

Exercises in ascending order of difficulty:

In a console/terminal window, display the number of days until Christmas this year, or a date that is meaningful to you.
Getting input from the user, display the number of days between two dates.
Write that output to a file, including whether the year you chose is a leap year or not.

Concatenate two user-entered words together, output to a console (string manipulation).
Count the number of a specific letter in a phrase (e.g. “The quick brown fox jumps over the lazy dog” has 3 of the letter e).
Count the number of a specific letter in a phrase entered by the user

Starting from a user-entered number, display “99 bottles of beer on the wall,” counting down to “No bottles of beer on the wall, go to the store and pick up some more.” (loops and control structures)

Display the factorial of a user-entered number (recursion)
Display the cube of a user-entered number
Display the cube root of a user-entered number

Return a true/false for if a given month/year combination has a Friday the 13th.
Count the number of Friday 13ths in a given year (always 1-3, never 0 or 4).
Display which months this year have a Friday 13th, using the system locale for month names (system information, loops).

Get the latest weather data on Mars from https://maas2.jiinxt.com/ (JSON file access and parsing).
Display the latest Martian min and max temperatures in Celsius and Fahrenheit.
Display the current Martian Sol (a Sol is the Martian equivalent of a day).

Now, May 2018

Thinking about
Back to recruiting, and also professional development. In a mostly flat organisation, how to you give people a career path? My company has more of a cargo net than a ladder.

Stimuli and input
Read “Never Split The Difference” by Chris Voss, and “How Emotions Are Made” by Lisa Feldman Barrett. Both books are in a similar place to “De-escalate: How to Calm an Angry Person in 90 Seconds or Less” by Douglas Noll.

I’m thinking a lot about communication styles, truth and trust in communication, and how to make it safe for people to give honest feedback to those around them, including up, down, and across the cargo net.

Craft and unnecessary creating
I’ve completed a 10epi (ends per inch) woven scarf with sport-weight yarn, and finished a 12epi kitchen towel in unmercerised 8/2 cotton doubled for warp and weft. Working on a 7.5epi scarf with doubled Wollmeise for warp and feltable grey worsted yarn for weft. Finished a hat for male with a sizeable noggin, which felt like it took forever but was just over a week.

Exercise and health
Still working on the pushups, I can do six full-length on my fists now. I know the next step is full-length, on my fists, one leg crossed over the other. I see my instructor doing those.

New Mac build

I got a shiny new Mac laptop for work use this week, and was thinking about the stuff you put on a machine to make it useful. This is my current set of necessary-for-work software:

Homebrew (to get everything else)
Git (to get code in progress)
Node.js (to get npm, and all the other hundreds of node modules)
Java (trying v9)
Gradle (was a PITA to get working, needed manual config)
IntelliJ IDEA community edition (to make sure Java and Gradle are both working, took some tweaking)
Visual Studio Code (nifty for JS work)
MS Office and OneDrive
The Slack app

It is a very different list to a few years ago. Android Studio isn’t currently needed on the work machine, Sublime was supplanted by VS Code, and Node is a relative newcomer.

Now, 11 November, 2017

Thinking about
Recruiting, training, and how to propagate a good company culture across locations so you get siblings instead of clones. I would like to see offices that incorporate the best of the local area and the home office culture.

Stimuli and input
Chewed through “The Rook” by Daniel O’Malley to get a fiction fix. I stopped listening to Robin Dreeke’s “The Code of Trust” because the superlatives about his code didn’t feel justified and I felt like the book was getting arrogant in its delivery. Finally finished Seneca’s “Letters from a Stoic” in paper, it is on my re-read list.

Craft and unnecessary creating
I am a weaver! Got a 20in Ashford Knitter’s loom with a 7.5 dent heddle and I’m experimenting with different gauges of yarn in the warp and weft. Christmas knitting is completed.

Exercise and health
This year I have gone from not being able to do proper pushups, to doing 20 of them, now I’m working on pushups from my fists with knees on the ground. That feels like progress. I’m also ten pounds lighter than on August 2nd when I started experimenting with a mostly Paleo diet.

Norfolk Rusks

Back in the distant past in Britain, there was the Yorkshire Television company, who had a show called Farmhouse Kitchen. I went to university with two volumes of recipes from that show in books that were copyrighted in 1975. This is an adaptation of one of those recipes to be more Paleo-friendly.


Makes about 13 rounds

  • 10oz almond flour (might need a bit more if dough is very wet)
  • 0.5 tsp salt plus a “good pinch”
  • 1.5 tsp baking powder
  • 2.5 oz butter
  • a beaten egg

Mix the dry ingredients, then rub in the butter until you have a breadcrumb-like mixture. Add the beaten egg and fork the dough around until it is one lump. Roll out the dough to about 10mm thick and cut into rounds. The dough will be sticky and resist rolling, I put some all-purpose flour on the work surface and that helped.

Put the rounds on parchment paper on a baking tray. Put the baking tray in the freezer for 10 minutes to chill the dough. Set the oven to 400F.

Bake the rounds for 15 minutes, or until golden brown on top and bottom.

These turn out as pleasant, buttery, slightly crumbly, savoury cookies. You could add herbs (rosemary, or Herbes de Provence) to add flavour. I was craving cookies and these are a gluten-free version.

Eclipse 2017

Using a tree as a pinhole camera, these were taken a bit before the eclipse and fifteen minutes before totality.

Traffic stopped, everyone was out and looking at the sky. Even though the sun was down to a tiny sliver, it was still almost full daylight. Then the light dimmed and it looked like dusk right after sunset. It wasn’t pitch dark but the lights at the gas station across the street suddenly looked a lot brighter.

We got a minute and a half of totality, then a line of sun was visible and we were back to almost full daylight.