Doing the work

(This is a post mostly about art but I swear there’s a moral in here for all you tech readers, or at least a discounted therapy lesson.)

As you may have noticed from these latest posts, at the beginning of this year I decided to “do more art”. This went really well for a couple of months: I was making new shit; I was pumped; I felt competent. Around September I stopped feeling competent and got hit with a smol existential crisis which, in retrospect, I’ve seen a million times in my engineering career. I was looking at all the artists I follow and respect and where they were in their art career and I freaked out because I was nowhere near their level. They all seemed to have an art voice and a big following and know exactly the kind of art they wanted to do. I 100% did, and still do not. So naturally what I took from this was that I sucked and I should just quit making art.

The problem with this kind of crisis is that it’s very much a “can’t see the forest from the trees” situation. The obvious response from someone on the outside would have been “Monica, stop. You’ve been literally doing this for 6 months and these people have been doing it for years. If you want to get to their level you have to just keep doing the work they did for all that time and you too will get there”. And thankfully, that’s exactly what my friend Adam said when I asked him to hold my feelings over zoom wine.

Productivity is a fake idea

Hilariously, this is also the advice I always give to the junior developers I’ve mentored in the past, but didn’t think of giving to myself. When you start in your career, or even when you start on a new team, you need to adjust your expectations of what being “productive” or “good” means, or else you’re going to have an emotionally bad time. Your team lead that has been working on that team for 3+ years will obviously know more about it than you. Your friend who’s been writing JavaScript for 10 years will most likely write JavaScript faster than you, if you’re new to it. Someone who runs marathons will run longer without dying than me, a person who runs out of breath going up a hill.

These are only value judgements if they meet your priorities and expectations. Not being able to run a marathon does not make me a lesser artist (but it does make a lesser athlete, a metric I am blessedly not interested in pursuing). Not being able to write JavaScript makes me a worse engineer only if my expectation is to be a senior JavaScript engineer, but not if my expectation is to be a junior SQL engineer. This is why “being junior” isn’t a value judgement – you can be a fantastic and overachieving junior engineer, but still a junior because you’ve been only doing it for 3 weeks.

So what I was feeling wasn’t actually “I am shit and I should quit this” but “for my current priorities, I feel like a lesser artist because my expectations are much higher than my current technical abilities”.

The way you get out of this rut is either by adjusting your expectations (“I don’t want to be a good at SQL so it’s fine I only know how to do a select *”, a thing I have said out loud before), or adjusting your experience (“in order to be a better runner I should start small with a couch to 5k program, and stick to it to get used to it”, a thing I have absolutely never said but immensely respect anyone who has).

Quality vs. quantity

Adam also told me an anecdote about a ceramics professor who told half of their class they’d be graded on the amount of work they produced, and the other half that they’d be graded on one thing they picked as “the best thing” they’ve made. Spoilers: at the end of the year, the people who were graded on quantity also produced ceramics that were of higher quality than the other group’s. Churning out work leads you to learn from mistakes, get better at things mechanically, so that you can focus more on the rest of the bits. Once you have the basic JavaScript syntax down and you don’t panic at writing a for-loop, you’re more confident that you are a programmer. Feels obvious right?

Amazingly, it didn’t feel obvious to me last month, even though in 2018 I went through a very similar existential crisis and “solved” it by churning out a whole inktober project.

Now do the work

This is your sign that if you’re feeling equally down about a skill you expect, or want, to be better at, you should probably sit down and make a plan about how to level up. For me, it looked like this:

a grid of 3 columns, 4 rows, where each cell is shaded with something like vertical lines, a cross hatch, dots, squiggly lines, etc.

Step 1. Improve the basics: get better at writing JavaScript that I can then use when I do make art; have a better set of basic utilities and examples. Look at all the ways I can now fill boxes, when before I could only fill them with solid colours or gradients!


a grid of 8x8 cells where each cell is filled with a random number of squiggly lines

Step 2. Keep churning things. I started with a fixed grid, and filled every cell with every new shading style I wrote, to see which look cool together.


a recursively subdivided grid, where each cell is filled with many parallel straight lines at 45 degrees

What if the grid isn't even? Shout out to the grid og, Mondrian.


a grid of 8x8 cells, where each cell is a quarter of a circle, in any of the 4 orientations, filled with a grid of dots

What if the grid isn't of squares?


a recursively subdivided grid where each cell is filled with a set of two or three either horizontal or vertical rectangles with squiggly outlines. this alt is very bad and i am sorry.

What if each cell is a grid?


None of these are amazing, and I wouldn’t call any of them “art”, but it does mean that with minimal effort I went from this generative landscape on the left that I wasn’t particularly inspired by, to this one on the right that is looking like it might go somewhere. More on these landscapes when I finish step 3: stick with a project until it is done, not until you get bored of it (because doing the work is never as exciting as starting something new).

a very abstract looking landscape of 5 overlapping mountain ranges and a big sky. they're all filled in solid colours. a similar landscape but each mountain range is filled by a grid of black dots of different densities.
« A HashiConf art collab