This blog runs on Jekyll, and I generate my post templates using Rake commands. When getting set up on a new laptop I ran into a new issue: $ rake draft["blog title"] zsh: no matches found: draft[blog title] Apple changed the default shell from bash to zsh back in 2019 with macOS Catalina. zsh helpfully tries to expand the square bracket...
This is a really small programming “style” best practice that came up at work last week. TLDR; don’t pre-concatenate strings in Java log calls! I’m working in Java now after a long stint in Scala-land. I used Java in university and at my first few internships but haven’t worked in it since then. So, there are a lot of coding conventions and best...
I built a Slack bot with a coworker for our internal company hackathon. It was….an experience! Here are some notes that might be useful to other folks. Our team runs a company-public “help” channel, which is meant for folks outside of our team to ask questions. Unsurprisingly, many of these questions are repetitive, and answering them is a drain...
I subscribe to several Patreons that offer paywalled video content. Some of these are reference materials that I might want to re-watch over and over again, and I find it annoying to have to stream them when I could just download the videos and have them available offline. There are loads of sketchy Chrome and Firefox extensions that purport to...
My organization typically interviews in pairs: two interviewers, one candidate. This is beneficial for several reasons: it helps interviewers calibrate against each other, it frees up one person to take notes while the other asks a question, it helps the candidate meet more potential coworkers during the process. Sometimes it also creates an...
If you’ve delved into programming-for-art before, chances are that you’ve encountered Processing. It’s a phenomenally successful tool for coding for visual art. Processing describes itself as “a flexible software sketchbook and a language for learning how to code within the context of the visual arts”. It’s based loosely on Java, but it ships...
Software engineering is more than just coding. I hear a lot of questions from early-career engineers about what exactly constitues “work”, and how they’re expected to spend their time. They might say things like: “I feel like I didn’t get anything done today. I didn’t write any code, I just did a lot of project planning.” “I spent a lot of time...
Accessibility and ability are both complex spectrums. Many venues that claim to be “ADA accessible” aren’t actually accessible for all attendees with disabilities - or, perhaps, they’re only partly accessible. As an example: I have intermittent mobility limitations and chronic pain. When I did a batch at the Recurse Center in its former location,...
Software estimation is one of those tasks that can feel like a distraction from the “real” work of engineering. In practice, though, I’ve found that making reasonable estimates for engineering tasks is a really useful - if mysterious - skill. So let’s talk about it! I work on a team of ~8 engineers at a large company. Many other teams depend on...
I’ve continued to build on my experiments with two-dimensional generative art using Clojure. Here’s my latest batch of experiments: procedural generation of some squiggly lines. My favorites from this set look sort of like fractal street maps. It starts from a handful of seed points, and then grows outward, avoiding collisions and gradually...
Workplace accommodations can be a fraught topic - what are you legally entitled to? How do you figure out what’s reasonable? How do you manage the emotions around needing help? I’m pretty happy with how I handle my illness / invisible disability / whatever-you-wanna-call-it at work these days, and thought I’d share some notes on what has and...
Recently, I needed to add a new feature to an unowned codebase at work. What do I mean when I say unowned code? I think of unowned codebases as having a few qualities: There are no planned improvements or changes to the code. The original author(s) are unavailable for questions. (Perhaps no longer working for the company, or nobody knows who...
I spent the last week learning Clojure and generating jigsaw puzzles as part of my one-week programming retreat at the Recurse Center. Why jigsaw puzzles? I was motivated by two things: first, I wanted a good-sized language-learning project. Secondly, I was heavily inspired by the amazing, beautiful, intricate jigsaw puzzles produced by Nervous...
This year I read 44 books by 24 different authors, including one 15-book series. Most importantly, though - this year I really dove back into reading for fun. Fifteen of those authors were female, and nine were male; 75% of the books I read were by female authors. When I first started tracking my numbers on this I was habitually reading works...
I’m going to be participating in the Recurse Center one week mini-batch in January. Recurse Center describes itself as “a self-directed, community-driven educational retreat for programmers in New York City.” For the mini-batch, my proposed project was to 1. learn some lisp and 2. generate SVGs of jigsaw puzzles, for laser cutting. Why these...
Today I made myself a sandwich. Two slices of toasted rye, fig jam, turkey, swiss, pickles. The ingredients arrived from FreshDirect this morning. I had to open the door. Unbox the groceries. Put them in the fridge. Open the bag of sliced bread. Plug in the toaster. Put two slices of bread into the toaster. Open a cabinet door, take down a plate....
This post brought to you by my shiny new drawing tablet! I decided to gift myself a tablet for my birthday. I like making doodles of things - I remember information better that way - and I’m also always envying @b0rk’s drawings. So, this is me, giving it a test run. When I first started learning Scala, the underscores everywhere were one of the...
this is just to say I have deleted my account from facebook which you probably noticed and worried about please, celebrate with me - I feel so free and so calm. …I’ve received several concerned messages from folks who noticed that I’m not on Facebook anymore. I deleted my account! It felt really good. If you need to get in touch, you can probably...
When talking about the computer science research papers with other software engineers, I get a lot of comments to the effect of, “Neat! I wish I read papers, but … (I don’t).” Many of these comments were followed by “…and I feel some imposter syndrome over the fact that I don’t.” Do software engineers and/or professional programmers read CS...
I’m a trained software engineer, but I am decidedly an amateur when it comes to working with physical hardware and building circuits. I’m juuuust teetering on the edge of self-sufficiency when it comes to physical computing projects and circuit-building: I can comfortably program an Arduino; I can stitch together existing tutorials and remix them...