Table Of Contents
Notes on writing as a software engineer.
Hone your craft
To hone 1's craft, you need to explore it in different ways. My craft is creativity on the web. I began exploring this area by making web pages. This involved learning design & programming. When I got to a level of competency with these skills, I needed to explore the area through more lenses. Writing is 1 of those lenses.
Communication is a valuable skill that you can train
Communication is hard. A common misconception is "Of course I'm a good communicator, I've been doing it all my life". In my experience, a lot of problems result from this misconception. Part of the above statement is true, “I've been doing it all my life”. Whatever your goals, you will need to communicate. Depending on your skill level, these parts of your journey can slow or quicken your progress. The more you write, the better you become at writing, the better you become at communicating.
Document your journey
I live my life by following my passion. I use a digital garden to document that journey. I make it public, showing people what I discover. This builds credibility & an audience. Opening new paths that otherwise wouldn't happen if you traveled in private.
I like Chris Behan's approach to writing, using the single-responsibility principle:
- An article should have 1 big idea.
- Each paragraph should have 1 small idea that contributes to the big idea.
- Each sentence should contribute to the small idea.
I approach content like poetry, every word comes at a cost. I draft sentences as dot points & ensure each has a clear purpose & communicates it.
I don't use an introduction or conclusion that summarizes what you are about to read & what you read. These techniques echo learning through repetition. Getting something to stick by repeating it. My experience as a teacher has shown me there are better ways. Cut down on the content & make what remains stick. People who saw the 1st Star Wars didn't need the plot points summarized at the start & end to remember what happened. It used the approach of story to reach its audience.
I have read a lot of advice about finding your voice. Your unique writing style. Attempting to create your style while writing blurs your focus. When writing, I only focus on 1 thing, communicating the idea in the best possible way. Michelangelo didn't attempt to paint like Michelangelo. He attempted to paint good. By doing that, over time, his style emerged.
I do use techniques from other writers that are effective at communicating. When reading, if I come across an effective technique an author has used, I screenshot & keep it in a scrap book. For example, how Scott Galoway introduces content about the potential of Apple's assets. He uses a metaphor (with image) of a gun loaded with bullets marked with icons.
When writing, I only focus on 1 thing, communicating the idea in the best possible way. I don't have a specific audience in mind. If I did, I would begin to manipulate the content to serve them, blurring my focus. When I write, I write for myself, to reflect.
For me, writing is about exploring an area of interest. Creating content begins by consuming it. I have a list of Google Docs, named by topic. For example, WebAssembly, design-color, design-typography. Whenever I'm exploring & come across a piece of content of interest, I screenshot & add it to 1 of these files.
When I sit down to write, I add notes to these snippets such as:
- summarizing the ideas it's communicating,
- add questions the snippet raised,
- identify links to other snippets &
- pull out quotes that effectively communicate an idea.
This forms the basis of an article.
The End Goal
The purpose of writing is communication. If you’re trying to communicate, I don’t think it’s effective to restrict yourself to only 1 approach. An idea may be 70% communicated through text. Tweaking the text to reach 71% may be like getting blood from a stone. However, adding an image may get you 95% there.
My experience as a teacher lead me to the idea the communication approach must match the content. An idea echoed by Jonathon Blow. Imagine trying to communicate the math idea you can add numerators if they have the same denominators. Back in the time of Euclid, this is how it was communicated:
Since then, mathematical notation was invented, allowing us to communicate the same idea in a more effective way:
The browser allows for a range of communication approaches:
- interactive widgets
Allow the content to dictate which approaches to use. This is why I created my own digital garden rather than using a service like dev.to. Although I would get more reach, the approaches at my disposal would be restricted. My focus is not to maximize reach but to communicate ideas in the best possible way.