How to Overcome a Fear of Writing: A Programmer's Perspective
Computer Science Writing My-Life-Philosophyš„ āI hate writing and I never want to do it again.ā ā Nathan Laundry 2013 to 2020
And Iām not alone. In Computer Science a lot of us wear our disdain for writing as a badge of honour. Honestly, thereās a sense of comradery in our shared hate for writing. Iād go so far as to say, in the undergradās natural habitat ā the lecture hall ā you can identify Computer Science students by the distinct groan they emit when an essay is assigned.
A huge part of why I chose to study Computer Science was to avoid writing all together. Growing up I sought out interesting word play in songs and poetry, but highschool Englishās waves of essays on Shakespeare and uniforms scared me away from literature almost altogether. Not only that, I grew jaded by what felt like arbitrary and subjective grading schemes ā English class was always my lowest mark. Faced with continued failure I sculpted a story to protect myself; itās all subjective, effort doesnāt lead to success in writing, I should focus on better things. Thatās nonsense of course but I was 16, cut me some slack.
When I finally got to the University of Guelph, equipped with my hate for English class and seeking out academic perfection, I only took classes without essays on the syllabus. For four whole years I stuck strictly to programming and applied mathematics classes, cementing a path through my degree without writing a word. It worked, and I loved it ā¦ that is, until I decided to do research.
š”I didnāt actually hate writing, I was afraid of it.
Research is how writing finally caught up to me. You can conduct all the brilliant studies you like, but if you donāt publish it, itās like it never happened.
When I sat down to write my first paper, staring blankly at my the blinking cursor on my screen, I felt a wave of panic wash over me ā I didnāt know what to say or how to say it. Thatās when I realized I didnāt actually hate writing, I was afraid of it. I was a bad writer (Iām still not great), and I had been running from it since highschool. Despsite my fear I was and am determined to do meaningful research. Thatās when I set out to improve.
So, thatās what weāre going to talk about today. How do we, as programmers who have either avoided writing or even fear it, improve and learn to enjoy it? Whether you just want to stop freezing up every time you have to write an email, want to write better documentation, or publish your first paper, hopefully these tips can help you like theyāve helped me.
š Donāt try to improve your writing, try to increase your comfort
Iām not a poet or a journalist. My writing doesnāt need to be incredible, it just has to effectively communicate my ideas. For that reason, I set my target at comfort, not perfection.
The anxiety I felt around writing was so strong and I had done such a good job justifying it to myself, that I didnāt write anything for 4 years! Before we can even think about becoming good writers, we have to be comfortable practicing. With this in mind, all the techniques for practicing writing are going to be based in things that we as programmers are already confident in doing and do regularly. This way we can quell our nerves by focusing on content that weāre comfortable with. The improvements will come with consistency and time.
šļø What Do I Write?
āI donāt know what to write about.ā I hear my friends and colleagues say this all the time. So letās start there. Hereās 3 quick and easy places to begin writing.
š§ Teach what you know. Document what you do. Curate what you learn.
š§āš« Teach
You consider yourself a decent programmer. Youāve got some languages and frameworks under your belt. Maybe youāve even got some side projects on your github or a research project youāre developing. Youāre ready to teach by writing about the things you know.
As a programmer in the industry onboarding new hires, or a grad student leading a pack of volunteer undergrads, weāre in the perfect positions to write about what we know. Start by writing out guides and FAQs in a lab/company wiki whenever someone asks you something. Have you recently helped someone set up their development environment? Write that up for the next person. Solved an interesting bug? Add it to the FAQ. These little tasks can break the ice and begin the habit of writing.
If you want to take it a step further, you can publish full guides to a website like Medium. Tons of authors do it. Hereās an example of a guide on how to setup a web stack with react and django which many of you will likely already know how to do.
š Document
Weāve all been there. Clone the repo, ācat readme.mdā ā¦ āughh ā¦ okay.ā
Documentation is not only one of the easiest ways to start reading, itās also one of the fastest ways to make your coworkers fall in love with you. By adding to documentation for the projects we work on, we can practice writing in a way that helps the people we work with. You can start small by fleshing out the dev environment set up process or go big and map out the projectās architecture. Whether weāre new to a project or a founder, thereās always some valuable way to grow its documentation.
Hereās a great repository dedicated to nothing but documentation. If youāre looking for some inspiration, or a place to put your documenting skills to work, here you go.
šŖ¢ Curate
These articles are both easy to write and serve a valuable purpose.
Research and programming are both practices that require life long learning. As we go about gathering articles, youtube tutorials, and reading the man pages, we can document our learning processes and summarize what we learn. Not only does it help us reflect on what we learn, curating lists of quality resources is a great way to contribute to communities and help others learn too.
I do this with books I read here, and with other sources in my newsletter here.
ā Finding time to write
This is the second biggest complaint I hear ābut Nathan, I donāt have time to write!ā Yeah, I get it. Life is busy and thereās not enough time for everything. Thatās why Iām a big advocate for integrating writing into our existing habits.
Remember, our driving principle is to establish comfort writing. The best way to do that is to create a habit of writing. For developers and researchers I think thatās most easily done by building it into the way we document projects and our learning process. By integrating it into things we already spend time doing we avoid the feeling that we need to find extra time to write.
All of the writing goals I listed earlier are built around things we likely already do as developers and researchers. Teaching new hires and undergrads is part of the job, documentation of new functionality can be added in to pull requests, and learning about your field of research or a new framework is already on the todos list. Instead of starting out by committing to hours of writing alone in your bedroom, tack on an extra 10 to 15 minutes to your existing tasks to write about them.
Conclusion
I started off with a fear of writing, but necessity drove me to overcome that fear. The way Iāve done that is to integrate writing into my routine tasks. I started off by writing emails, documentation, tutorials and FAQs to build up my level of comfort writing. As my confidence grew, I took on more and more writing and Iāve ended up with this blog. By no stretch of the imagination am I a world class writer, but Iām leaps and bounds ahead of where I was when I started. Thatās what matters most to me, that when I need to, I can communicate my ideas.
Cheers,
Nathan Laundry
join my email newsletter #GuidingQuestions here https://guidingquestions.nocodeletters.com/
If you liked this post you may like my previous 2:
Breaking Down the Literature Review
From Undergraduate to Masters/PhD: How to Handle the Mindset Shift
If youāre curious how to manage all those opportunities try my Notion Template for managing weekly todos
https://nathanlaundry.com/notion-templates/weekly-sprint-template