It’s summer which means graduating Computer Science majors are starting new jobs. Any time I’m working with someone straight out of college I give them two pieces of advice read these 3 books and use a word replacer.

The books are a common suggestion but the word replacer requires some explanation. At any new job your main task for the first few months is to get up to speed. Up to speed on the tech stack, up to speed on company lingo and up to speed on the domain. If you’re lucky most of these terms will be defined in a glossary somewhere, if you’re unlucky you’ll have to ask your cubemates for definitions (which you should write down and then share with the next new developer). Either way it takes time assimilate the hundreds of terms that are used throughout the company. This isn’t a bad thing since having a common language allows easier communication. It’s called ubiquitous language in Domain Driven Design.

The problem is when writing a design doc, bug report or how-to experienced people don’t insert the definitions, since they’re assumed to be common knowledge of everyone who’s reading the document. As a new person you don’t have all of that context in your brain so reading these docs involves a lot of breaking your flow of concentration to go and look up what a FooBarCollater is and how it works with the FizzBuzzFilter. Ideally people who needed the full definition or context would have it seamlessly while people who already know all the context wouldn’t have to read extraneous verbiage

This is where a word replacer comes in handy

A word replacer is a type of Chrome extension that looks for certain words and replaces all occurrences. The two most famous are Millenial to Snakepeople which replaces terms for millenials with variations of snake people and Cloud to butt which turns turns phrases like like “cloud services” to “my butt”. There are also chrome extensions that let you create custom replacements. For example I use Word Replacer II.

So whenever I start at a new job or a new team and I’m reading through documenation/bugs/email and I come across an unfamiliar term I’ll look up the term and come up with a short explanation of it. Then I’ll add that entry to word replacer. Then whenever I see the term again I don’t have to try to remember the term or have to look it up. An explanation has been inlined for me.

For example say you had the the following words

Word Explanation Replacement Text FooService which generates bar reports, deprecated and replaced by ThudService FooService, which generates bar reports, deprecated and replaced by ThudService, Baz a desktop app to see bars Baz, a desktop app to see bars, ThudService which generates bar reports and fnords ThudService, which generates bar reports and fnords,



Then when the PM assigns me a ticket that reads

Migrate Baz from using FooService to use ThudService

I instead get a ticket that reads

Migrate Baz, a desktop app to see bars, from using FooService, which generates bar reports, deprecated and replaced by ThudService, to use ThudService, which generates bar reports and fnords,

Which is obviously much easier to read.

A couple things to note