How I Became the Quarter-Time Head of Marketing at Gumroad as a New Grad SWE

On Friday, September 4th, 2020, I logged into my job as a software engineer, flattened some bugs, received a strong first-sixty-days performance review, and ended the workday at a reasonable hour, gently entering a long labor-day weekend. Four days later, I resigned from what was my first SWE job out of college after just twelve enjoyable weeks to take a quarter-time role in marketing making even more money. What happened?

Writing for Software Developers Financial Performance

This post reports income and expenses from creating Writing for Software Developers. I update the post every so often, unless I forget.

Building the Writing for Software Developers Landing Page

This post outlines the decisions I made while implementing the landing page for Writing for Software Developers and logs changes to the page over time.

Marketing Writing for Software Developers

I sold $15,000 of Writing for Software Developers in its first 24 hours with no pre-existing audience. I sold over $23,000 of the book in its first month. This post details everything that I did to make these sales.

The Writing of Writing for Software Developers

I wrote my first book, Writing for Software Developers, in six months. This post details every step of the process. Read about the initial idea, the interviews, the writing process, the editing stage, and putting it all together for publication.

Notes from an Informational Interview with Corey Simmonds and Alex Mitchell of 0260 Solutions

Corey Simmonds and Alex Mitchell, who do technical consulting with 0260 Solutions, generously gave a friend and me an hour of their time to discuss the business and technical aspects of running 0260. I’ve prepared notes from our conversation with their insights in the following areas: cash on hand, working with people, becoming “T” shaped, choosing tools, and working with clients.

Defining Technical Tutorials and Topic-Based Articles

I write technical content. My work appears in programmer-focused publications and on technical corporate blogs. After writing more than twenty pieces, I have come up with a useful, if somewhat arbitrary and nebulous, distinction between two types of technical content. A Project-Based Tutorial has sample code as its main focus, while a Topic-Based Article develops a general idea.

Improving Technical Tutorials by Providing Sample Data

Let’s say you’re writing a technical tutorial. If you have a sample application in your article, you should also include sample data. In Django, you can distribute sample data using fixtures.

Making Useful Charts and Diagrams when you Suck at Drawing

I write technical articles. As part of that work, I make charts and diagrams to explain concepts to my readers. I also irredeemably suck at drawing and my handwriting defaults to illegible. Nevertheless, I manage to deliver useful diagrams with my articles that explain complex ideas with intuitive visual metaphors. I’m able to do this because most aesthetic properties are not relevant to a diagram’s usefulness, and the ones that are can be achieved relatively easily. I harbor no delusions about any ability to show you how to become a better artist. I do believe that you can use a few simple techniques to create more effective graphics at your current level of skill.

Transcribing Audio without Automation or Outsourcing

Recently, I had tens of thousands of spoken words that need to be transcribed into written text. “Hang on,” you might be thinking, “why would a college student who, by all accounts, spends his time on reputable pursuits such as Python, need to convert audio into text?” While I was doing interviews for my book, I transcribed about 8 hours of audio, a process that took somewhere between 24 and 32 hours of very focused work over the course of a month or so. Here’s what I learned in the process.

What I Learned about Style and Writing from Watching Bruce Lee

Style has a triple meaning in martial arts. Lee cut this knot by describing the “style of no style.” To Lee, everyone practiced a different art, thus everyone practiced the same art: the practice itself is the art. Lee’s perception of art survives the changing of language, content, and context because the style is not the substance.

Generating Topics for Technical Articles

A couple of weeks ago, I was minding my own business on a Sunday morning when I received a cold email from an editor to write for their online publication. I opened up my trusty ideas.txt only to find it devoid of topic suggestions, so I developed an exercise for developing quality ideas that helped me generate 20 solid pitches to use over the coming months in a single planning session, and I hope it will be useful for you as well.

Computers and Poetry

The year was 2018, and I did not want to write a poem. Specifically, I did not want to write a net, an interpretation of a Shakespearean sonnet first imagined by Jen Bervin. I had to do so as part of an assignment, but instead I wrote a program to generate them for me according to the constraints of the form.

How to Write a Technical Article

Every great writer writes stories, and so do all of the good ones. Technical writers are not immune from this requirement, nor are we barred from the tools of the craft. Stories have conflict. Our writing has characters, these characters have motivations, desire outcomes. Despite this legacy and these tools, technical writing is often held to a lower standard than even the humble blog post…

Black Belt, White Belt

When I was five years old, my family moved to Des Moines and my parents signed me up for TaeKwonDo. In college, I practiced with friends as the facetiously named “Grinnell Fight Club,” a mostly boxing-based organization. This summer, I have been practicing Brazilian Jiu Jitsu three times a week. I have taken powerful lessons from the integral similarities between martial arts that this range of experience has revealed to me.

Archiving a Wordpress Blog with Web Scraping

My mother wrote a blog, Overneath it All, for many years. Goodreads has an archive as far back as 2015, but she wrote from well before that, starting in 2011. In January 2019, she decided to shut the blog down after not writing for it for six months, but she wanted an editable archive in case she wanted to use anything from it in the future. At her request, I scraped the entire blog into a giant Microsoft Word file…

My First Open Source Contribution

I put almost every line of code that I write outside of work on GitHub. Anytime I make a public repository, I make sure to stick a license on it so that people can actually use the contents; usually I use MIT, sometimes Apache 2.0. Thus, I could say that I have published thousands of lines of open source code across dozens of projects. However, most of that code is pretty useless to other people, so I don’t go around saying that…

How to Succeed and Thrive at a Hackathon

One of my first times coding outside of class was at a hackathon during my first year of college. It was late February, and we drove through a snowstorm to an industrial building near the Iowa State University campus. Inside, we checked in at a folding table, and fortunately the person handling registration didn’t examine my ID carefully, as I was 17 at the time. For the next 36 hours, two friends and I developed a client-side JavaScript isometric map maker, trimap. As I started from essentially zero knowledge, I had no choice but to learn more in that weekend than I had in the preceding weeks of Introduction to Computer Science combined. What we made is, without a doubt, a terrible piece of software, and to this day I am inordinately proud of it…

My Software Developer Bucket List

This is a living document. The list will be updated accordingly as I have new ideas that stick around for a while and, much more infrequently, as I actually do anything on this list. Currently the list stands at 8 to do and 2 done…