Just start with the Simplest Thing
I started coding school 42 Singapore’s core curriculum about two months ago.
This week, I started the ft_printf assignment, which is to recreate the printf function in C. The assignment requires your function to behave like the original printf, which reads format modifiers (e.g. “%c” for characters, “%s” for strings, etc.) and flags (i.e. options for the function). I had no idea how to do this.
I turned up on Tuesday, feeling a little nervous since it has been a while since I touched any C code. I spent the day reading about the assignment, watching YouTube videos (which were helpful), and… procrastinated.
I felt stuck. Yes, watching the videos got me thinking about how I could approach the problem, but there’s a difference between knowing of a solution, vs. knowing a solution by starting… and I hemmed and hawed for the rest of that afternoon, as my mind got caught up in all the details of what I should do (“where should I use the va_arg in my function? Should I call the va_list here or later?” “wait, how would I know when I’m at the end of the struct?” were just some of the questions which occupied me.
In the afternoon, a friend came by and chatted with me, and I asked him for advice on how I should proceed. He spent about 15 minutes talking to me, but the crux was the most brilliant advice (which I had forgotten): “just start with the simplest thing: get your printf to print out a plain vanilla string, without any of the format modifiers or flags. Then build it up from there.” By the end of the day, I had gotten a working version out, and clocked this as a win.
The next morning, I turned up at school still feeling apprehensive. What I did on Tuesday was trivial: what’s ahead of me is not so easy…and I still felt stuck.
But instead, what I did was to just do the next simplest thing.
And when that was done, I did the next simplest thing.
The next few hours were a bit of a blur, as I simply built up the function incrementally.
It’s so simple and straightforward, and I had completely forgotten it in the panic of the moment: just start with the simplest thing.
Then do the next simplest thing.
Momentum is such a blessing.
And that is also what I’m doing with this Substack newsletter of mine: just starting with the simplest thing.
Lesson of the Week
When stuck, just find the simplest thing, and just start with that.
Then work on the next simplest thing.
Repeat.
Thought Provoking Question
What is the simplest thing you can start on, in the face of being blocked?