Article Archive

This is the list of everything I've ever written. If you want a curated list of my most popular articles, you can find them here. Get updates when new articles are published by subscribing to the newsletter.

Move Fast, Break Things, Slow Down

This entry is part 3 of 3 in the series Tech Tempo

Tech TempoThinking In TempoScrum: Tempo CodifiedMove Fast, Break Things, Slow DownFacebook started with a saying: “Move fast and break things.” Later on, they updated it to say: “Move Fast with stable infrastructure.” Why did Zuck change his tune? First, we need to understand why he had the initial statement. The phrase is common in startups,

​Read More

Scrum: Tempo Codified

This entry is part 2 of 3 in the series Tech Tempo

I can’t think of a more clear example of rhythms in software than Scrum. Scrum is an attempt to codify tempo and wield it as a project management tool. Scrum sets the rhythm with recurring ceremonies: planning meetings, daily scrums, sprint reviews, and sprint retrospectives.

​Read More

Thinking In Tempo

This entry is part 1 of 3 in the series Tech Tempo

A mental model of tempo can help in your sensemaking when joining new teams and starting new projects. Though out this blogchain, I’ll be exploring the concepts of tempo and how they are realized in software development.

​Read More

How to decide when to build software vs. when to buy

All software choices fall somewhere on the build-buy spectrum, & all companies fall somewhere on the ‘tech company’ spectrum. A piece of technology’s ubiquity, price, and proximity to a company’s core competency all play a factor in where it fits on this spectrum. In this article, you’ll learn about what factors go into a build

​Read More

Stop fighting holy wars

There are many “holy wars” in tech, and you’d be best served to stop participating in them. These discussions are bikeshedding: Spending an outsized amount of time and energy on trivial details. And when talking in public, they don’t paint you in a good light. In sport, they can be fun. However, I think getting

​Read More

Quarantine Work is Not Remote Work

I’ve worked remotely for nearly a decade: Either self-employed or at a job, it was always completely or partially remote. I can count myself as blessed during the current situation; I have a full-time job in an industry that hasn’t taken much of a hit. My job, knock on wood, is safe. I know others

​Read More

The Dangers of Content Platforms

Platforms are a useful tool, but it dangerous to use them as the primary home for your content. If you want to start publishing, you aren’t required to set up your own domain and personal site. There are platforms available now that allow you to post instantly, but I strongly suggest that you set up a site you own from the beginning.

​Read More

Which Shapes To Write? A Guide to Choosing Content Forms

How you write, what you write, and where you write should change based on your current goals. Your content strategy should be fluid. When setting goals, this is why it’s good practice is to review periodically. Here are some ways you can adjust your writing practices based on what you want to achieve.  Pieces of content can serve

​Read More

Side Hustle to For Investment, Not Income

If you have a side hustle, How much money does it bring in compared to your job? Have you considered the possibility that you could one day quit working for others and instead work for yourself? It can be hard to imagine moving from employment to making money solely off of things you create, especially

​Read More

An Actionable Definition of “Content Strategy”

While publishing more is almost always better than publishing less, it would be better not to publish randomly. For years, I fell into the trap of writing was Rochelle Moulton calls “a flea market of ideas.” The only overarching topic was “what Glenn is interested in this week.” Other times I’ve seen companies create content for content’s sake.

​Read More

5 Ways to Carve Large Pull Requests Into Bite-Sized Ones

Substantial, complicated updates break software in large, complicated ways. Smaller, simpler changes break in smaller, simpler ways. It would help if you considered applying the “ship more, ship smaller” mindset. It’ applies the single responsibility principle to your pull requests. Avoiding large pull requests also means avoiding arduous code reviews and delayed deployments. Here are five patterns

​Read More

Case Study: 1 Talk + 1 Article = 2 New Clients

Occasionally you get lucky and catch a wave in your career. Technologies come and go. If you adopt new technology before it crests, you can position yourself as someone proficient with that technology and can set yourself up for some great opportunities. Here’s how it happened in my career once. Why I Learned AngularJS Early

​Read More

How To Improve Documentation For New Users

Documentation has to fill the roles of onboarding new users as well as supporting existing ones. It has a marketing role when people read your documentation to get a sense of how your product works. Before signing up for a new product, I look at their API documentation. Chances are I will need it at

​Read More

What’s The Best Publishing Cadence?

If you’re starting a new blog or other publishing habits, how often should you be publishing?  My recommendation is to publish regularly, and as frequently as you can manage it.  The most frequent I’ve seen by individuals is daily. Seth Godin is famous for his daily blog, which has over 7,000 posts and counting. Seth

​Read More

Code is a Liability

The most valuable conversations I have with product leaders are the ones where I fire myself. Sometimes the best solution is not writing more code. Writing code comes with tradeoffs worth considering before starting a new initiative. All code, even perfect code, requires maintenance. Maintenance includes more than repairs when needed. It also includes hosting

​Read More

How do You Make Technology Stack Choices?

It’s something we all do from time to time, but I’ve never thought about codifying how to do it effectively. I get irked by articles like “React vs. Angular vs. Vue.” It’s not a competition. There is no “right” answer. There is only the best choice given the context and constraints of the decisions. What’s

​Read More

How to Choose Your Blogging Platform

There are more tools and channels for publishing content online than ever before, but getting started is also more daunting than ever. It’s because of the paradox of choice. Heightened anxiety caused by more choices leads to analysis paralysis. Tools should be used to enable your work, not deter you from it. If you want

​Read More

A Holistic Guide to Marketing Page Optimization

When people talk about optimizing their site, they could mean a few different things. Are they talking about performance? Are they tracking a certain engagement, such as email signups or clicks on a call-to-action? These go hand in hand. Bugs and performance issues will cost you sales and signups. The same goes for Usability. The

​Read More

Set & Achieve Your Goals Using OKRs

Plenty of people will tell you the importance of setting goals. What people don’t tell you is how to choose, set and accomplish them. In Measure What Matters, John Doerr lays out OKRs, an approach to goals to tackle these challenges. It’s used by tech industry juggernauts Google, Intel, Adobe, and Intuit and others.

​Read More

The Budget is Set. Now What?

Projects are sometimes doomed long before any designers or developers are brought in. Your work will never provide value or even see the light of day if you are working on something where the only possible outcomes are failure and mediocrity. But some can be saved. You can make it work. Your career will be better off if you can learn to avoid these projects and work within given constraints.

​Read More

Moving Fast Without Breaking Things

Why is speed important?  One of the most common recurring conversations I had with startup founders was how to get products and features out the door faster. Typically, all is running smoothly until it’s time to actually push your work out into the wild. People want to buy the poster that says “move fast and

​Read More

Choose Your Next Article Topic With This Exercise

When I fall out of my writing habit, most often it’s because I can’t decide what to write about. Choosing an article topic can be paralyzing. Here’s an exercise I use to come up with new topics. Afterward, the issue is not that I have too little to write about, but too much. When coding,

​Read More

Why I Quit Freelancing

After a second full-time stint, I’ve decided to seek full-time employment opportunities. I’ve had a few people ask me why I’ve made this switch, so here’s my reason why. First, to clarify:  I don’t mean to put freelancing as a profession or those who make that career choice on blast. I have plenty of friends

​Read More

Freelancing vs. Employment — When to Go Solo and When to Join a Team

Most creatives freelance at some point. Either as extra nights-and-weekends work, filling gaps between jobs, or building your own business. I advocate for learning the basics of doing client work. It gives you immutable job security. If you know how to find clients and profitable work, you’re never unemployed. The ability to fend for yourself provides freedom. At some point, you’ll face

​Read More

What is a Marketing Developer?

When surgery was invented, the job title “surgeon” came with no modifiers. It didn’t matter what needed to come off or go in, you could see the same person. As medicine advanced, the job splintered. More knowledge meant increased complexity which necessitated specialization. Soon you would see one person for your war wounds and a

​Read More

How to Run Losing Split Tests and Still Win

By showing different variations of a product or feature to segments of your audience, you can quickly learn what works and what doesn’t. There’s a reason that every major tech company such as Google, Apple, Uber, etc. Use split testing as a part of their design and research process. Done correctly, you can learn about

​Read More

Using Growth Initiatives To Increase Focus

Is your marketing department allergic to project management? Here’s a strategy that might help you reign in the chaos a little bit: Morphing my vague marketing tasks into discrete, measurable projects: I call them growth initiatives. Others call them experiments, which I don’t use here because when I say that people tend to think “A/B testing”.

​Read More

The Difference Between Marketing and Growth

Marketing and Growth are two terms have different meanings depending on company culture and context. Here’s how I think about the difference: Marketing is the discipline of increasing the number of eyeballs on you. Marketing is focused on lead generation; building email lists, getting people to sign up for free trials, and general brand awareness.

​Read More

How to Write More Analytics Friendly Code

Why Does Tracking Matter?  Software built for business should be useful to the consumer and valuable to the company that produces it. To optimize software towards these ends, you need a way to track results. No analytics tool does this out of the box. You can install Google Analytics and see how many monthly visits you

​Read More

How do You Create a Portfolio Before You Have Clients?

Clients buy based not on what you can potentially do, but what you have already done. A portfolio showcases previous accomplishments, but if you’ve been doing work for a company, you may have an NDA or non-compete clause in your contract preventing you from showing off your work. Having a portfolio reduces the risk of hiring

​Read More

It’s Never About Your Slide Deck

Hey there, I’d like to share a story with you about my first conference talk, back at the end of September.   The First Day September 28th, I arrive in Norfolk, Virginia for the speaker’s dinner. Brennan invited all of the speaker’s out to a fancy restaurant before the opening mixer at the Double Your Freelancing Conference .

​Read More

Tiny Rock Side Hustle

Mother works in Elberton, GA, The Granite Capital of the World at a local Quarry. Here is their #2 best selling product: Tombstones. I love companies like this, invisible enterprises that build something important to everyone. But this isn’t a letter about tombstones; this is a letter about their all-time #1 bestseller: Gravel. If you ever think

​Read More

Breaking Out Of The Bad Client Cycle

Working with bad clients puts your business in a vicious cycle. You start out meeting with a client that sets off your Spidey sense a little. You need to pay rent this month, so you agree to the work against your better judgement. You end up working with a client that belittles you, doesn’t trust,

​Read More

A Guaranteed Strategy to Get Your First Clients

Getting clients as a freelancer is like a catch-22 problem. If you ask other freelancers how they find clients, they typically say “word of mouth” or “referrals.” How are you supposed to get referrals without previous work? Getting started seems impossible. If you are thinking about starting a freelance business, you need to be proactive

​Read More

A Simple Solution for Complex Software Estimation

The Problem For Tangent Solutions, a growing software products company, the biggest hurdle they faced was a lag time between contracts. Due to the scale of software and complexity in orchestrating development teams, software products often encountered problems like going over budget and missing target deadlines. They needed a solution that made complex estimates more

​Read More

How to Survive Feast or Famine Cash Flow

One part of the freelancing puzzle I haven’t solved yet is keeping cash flow stable. Here’s a lifetime graph of my revenue, month, by month: There’s a lot of peaks and valleys. Good clients, bad clients, late payments, upfront payments. Sales slumps. Family emergencies. It’s all there. About a year after I became a freelancer,

​Read More

How to Test Controller Concerns in Rails 4

Concerns are a new feature that was added in Rails 4. They allow to clean up the code in your models and controllers. They also allow you to share functionality between models or controllers. However, they can be a bit tricky to test in isolation. In this article, I want to show how you can

​Read More

AngularJS: an Overview

AngularJS is a JavaScript framework made by Google for building complex client-side applications. Angular’s killer feature is ‘directives’ that allow you to extend HTML by creating tags and attributes. Angular projects have a somewhat different structure than other JavaScript MVC frameworks, but it can be highly modular and easy to maintain once you understand the

​Read More

My Eureka Moment With Regular Expressions

Regular expressions are a tough cookie for most programmers to figure out. They are terrifying to look at with their daunting syntax. There is also nothing quite like regular expressions anywhere in programming. Programmers may learn to hack together basic regex expressions, or how to cut and paste some they find online for their needs,

​Read More