How do you come up with a product name? or a business name? Naming products is a hard but learnable skill. There are agencies that provide names-as-a-service. ZinZin’s existence corroborates the idea that naming can be distilled into a repeatable process. When you’re feeling stuck, it helps to have a process. Prolific creation is the
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.
Name Your Next Product With This Exercise
Squads: The Cure for Indie Isolation
Since reading this essay, I can’t stop thinking about the concept of squads: people working independently in an interdependent fashion. If you are curious about what squads are, how they can be helpful, or about starting or creating one, this is for you. I encourage you to read the whole essay, but here’s a quick
Birds Aren’t Real: The Lies of Tech Twitter
Deep Forest TechExploring Tech’s Deep ForestBirds Aren’t Real: The Lies of Tech TwitterSocial media can give developers a false sense of the tech landscape, especially if they are newer and don’t have as much real-world experience. understanding why requires understand what drives tech content. The new drives social media Social content is propelled by novelty.
Exploring Tech’s Deep Forest
Most software is invisible, and most tech companies aren’t noteworthy. I call these and the people that run them the deep forest of software
SaaS Under The Surface
Building a Software-as-a-service(SaaS) is much more complicated than it looks on the surface. Creating a piece of software that you charge other people money for means that you have added an order of magnitude more complex than an application used for internal purposes.
Production Ready Season 1 Summary
Everyone has their pandemic hobbies. Some people bake bread, others play Animal Crossing, I started a podcast. I’m looking for ways to connect with people online and have more conversations about the “non-technical side of software development.” I enjoy coding, but I’m tired of most of the discussions about it. “how to do X in
Move Fast, Break Things, Slow Down
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,
Scrum: Tempo Codified
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.
Thinking In 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.
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
Is Your Engineering Focus on Product or Craft?
There are two types of developers in this world, those who care about the product they produce and those that care about doing their craft well. You can tell them apart by how much they ask “why?” Traits of a Product Engineer I was first introduced to the idea of the product developer here: The
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
My best developer interview experience
I read frustration online, but I don’t see a lot of positive experiences. I wanted to share the best interview experience I’ve had, as I feel it could be a model for other companies.
How software can be racist (and what you can do to stop it)
Software is powerful, and we, as people who make software, have power. Software can be racist, and we all have a responsibility to use our power to stop it.
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
How to position an element at the end of a flexbox row
Flexbox rows may not work quite the way you think. If you want to have a row of elements, and you want to align one element at the end of the row, many CSS rules won’t work. Floats do not apply to elements using flex, so you can’t use a float:right like you would inside
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.
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
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
Blog Posts As Bets: An Expectancy Analysis of Publishing Content
When I shared a story about getting clients via content, I received some feedback I wanted to address, paraphrased here: “The example given about the Angular article seems like sheer luck. There are hundreds of similar articles on the web that have no traction. What’s the real difference between an article that leads to an offer
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.
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
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
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
Writing Tools: 12 Tools I Use For Publishing Content Today
One of everyone’s favorite ways to procrastinate it to futz with tooling. Well never fear, I’m here to help! Here’s a look at the current stack of tools I use to create, publish, and share content. Evernote – My Primary Tool Evernote is where most of my work happens. I use Evernote to keep research,
The Struggle of Marketing To Skeptical Developers
Selling software is an exercise in convincing the buyer that what your software can do is worth the cost, and they can trust you to deliver. It boils down to a comparison; however, when your software is aimed at solving problems for developers, the math gets more complex. Developers buy with time and risk, not
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
Should You Write Longform Articles or A Shortform Series? – Reader Question
Yasawi over on Dev.to asks: “If I have a big topic to blog, Should I make it into a series of blogposts under same title or different title?” This is a great question and one that doesn’t have one correct answer. There are benefits to post large, authoritative pieces of content. These tend to be
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
How Do I Complete Against Other, Better Bloggers? – Reader Question
I received this question from a reader and dear friend, and I know they aren’t alone in feeling this way. I really want to start writing about code + architecture, but whenever I think of a topic I want to write about, I’m inundated with thoughts of “so many people have written about this and
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
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
Get Value From Content Without Traffic
Here’s a secret about technical blogging: You don’t have to play the “get thousands of page views” game if you don’t want to.
Why Do They Call It “Serverless” If It Runs On A Server?
Serverless computing still relies on code running on servers, so why did everyone decide on this nonsense name? It makes sense once you understand the connotation. Let’s take a look a closer look at the term so we can make sense of it. What the heck is serverless? If you aren’t familiar enough with the
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
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.
How to Use useEffect (and other hooks) in Class Components
Learn how to use useEffect and other hooks inside of class based components.
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.
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
Which version of JavaScript is “Vanilla JavaScript”?
There are so many different versions of JavaScript floating around, and browser support is always changing. How do you know which features you can use without transpiling or some kind of build step? Correct Answer: ES6 (a.k.a. ECMAS 2015) is supported in all major browsers. In April of 2017, all major browsers added support for
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,
Get Out Of Your House & Out of Your Head With A Coffee Cowork
To people who don’t work remotely, it sounds like a dream job. Stay in your pajamas all day; no commute, no distracting open floor plan static. People don’t think about the downsides: The isolation, the loneliness. Left unchecked, extended periods of working from home are a mental health hazard. Isolation leads to depression and anxiety,
How to Update Content Based on URL params; No Libraries Required
If you’re a frequent user of Netflix or Amazon, then you’re familiar with how they use what they know about you to tailor their platform to your tastes. Personalization is an effective marketing technique. It makes you a more engaged customer, and more likely to get out your wallet. But you don’t have a team of
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
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
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
How to Apply Design Principles To Your Marketing Initiatives
I want to review a quote from Mike Monteiro’s book, You’re my Favorite Client: — So let’s look deeper into the design process, with a giant caveat. Every designer claims their own process… But whether you’re working on an agile or a waterfall process (or smartly between the two), all processes break down to some version
Process Documentation: The First Step to Eliminating Tedious Work
Looking for ways to spend less time doing parts of your job that you hate? You have three options: Eliminate. Delegate. Automate. I’m a minimalist. I like to take a Marie Kondo approach in business and life. Tasks get on out plate more quickly than they get off, and we don’t always stop to reflect
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
How to Share Your Google Analytics With Your Consultant
Providing access to your Google Analytics account can allow consultants to gain insight and help you find better ways to collect data and make smarter decisions within your business. 1.Go to analytics.google.com Log in with your Google account. Do not share your Google account username and password with anyone for any reason. EVER. 2.
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”.
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.
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
Step 1. Automate Keyword Research; Step 2.Gain 10,000 New Leads; Step 3: Profit
The Problem Optimizing Amazon listings requires hours of tedious research and calculations to find the best keywords. To solve this problem, Seller Labs was looking to launch Scope: it’s innovative market research and keyword optimization tool. They saw an opportunity to help sellers do a better job at optimizing their listings. The market for Amazon Seller tools
Should You Repeal and Replace Your Legacy Code Base?
tl,dr: no, you shouldn’t. The United States Senate is on the brink of making a huge mistake. And it’s the same mistake that sinks software companies every day. They want to rebuild a project from scratch. It happens at software companies all the time, typically with new teams. They see a project full of legacy code that
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
Overcome the Fear of Transitioning to Full Time Freelance
Have you considered quitting your job and becoming a freelancer? Has your startup shut down and now you are forced to consider becoming a freelancer to pay rent? Going out on your own is a scary proposition, but the rewards are worth it:
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 .
How to Hide a Secret Landing Page from Google in WordPress with Yoast SEO
Let’s say you create a special offer for a particular audience, event, or your mailing list. You can “hide” the page by not including it in any navigation, and usually, Google won’t pick it up. However, if you want to be extra sure, you can do so with the Yoast SEO plugin. You only need
On Gross Potential Income and F*** You Money
Pre-S Warning: This week’s post contains crass language. If kids are nearby, you may want to cover their ears.
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
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,
Reduce Scope Creep with This One Question
Scope creep is inevitable in software projects. But that doesn’t mean that all scope creep is inevitable. When a client asks you for functionality that wasn’t in the original spec, why are they asking for changes? There can be several causes.
How to Make the Time for Your Side Project
Before I started my consulting practice, I had product aspirations. I bought about 25 domains, every time thinking this one was going to be the project that I would ship. But I Didn’t.
How to Make an AJAX Request Without Using Frameworks or Libraries
There are a lot of JavaScript frameworks out there these days. It makes it harder to choose a front-end development workflow when starting a new project and write code that’s portable between different projects. Also, using a complex framework to solve a simple problem adds unneeded complexity and risk to a project, which makes getting that
10 Reasons Projects Fail, According To Science
Here are the top reasons software projects fail, according to a report by the Standish Group. We’ve touched on these throughout the book, but I wanted to provide a quick refresher.
How to Create A Developer Portfolio When You Can’t Show Your Work
It can be difficult to stand out from the crowd of other developers, especially when a potential employer can post a job posting online and have dozens of proposals from developers overseas offering to do the same job at sub-minimum wage prices. How can you compete?
Building Chrome Extensions: A 15-minute Overview [Video]
Case Study : How I Increased Email Signups By 481%
In December of 2015, during a local Finish Day Event, I launched a new version of my site, GlennStovall.com. This case study is a breakdown of the rebuilding process, why I did, and the results I achieved. I decided that publishing more content was going to be a larger part of my business in 2016.
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
Bringing Mobile Marketing to Thousands of Athenians
The Problem Wagglez came to us with a vision for a local discovery and coupon app that helps travelers in new cities find the places that locals love best. They were in a time crunch to launch, and needed someone who could come in and quickly coordinate with a young development team.
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
Applying a Fresh Coat of a Paint to Enterprise Storage Monitoring
The Problem Network storage company Coraid powers some of the most renowned enterprises. They were bringing a new product to market that needed some finishing touches to the website front-end and performance. They needed a creative development crew that could transform their existing interface into an easier to use, cleaner tool to help monitor server
How Borrowing Magnolia Brought the Sharing Economy to the Wedding Industry
The Goal The founders of Borrowing Magnolia wanted to help the modern bride plan her dream wedding on a budget. They also knew of many newlyweds had dresses that would sit in the closet collecting dust for years to come. They wanted to help people turn their old dresses into an asset, and help brides
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,
What Every Entrepreneur Needs to Understand About Risk
All businesses are inherently risky. Human beings are terrible at understanding and quantifying risk. Since most entrepreneurs tend to be human beings, this causes problems. Without having a clear picture of what risk is, how to identify it, and how to quantify it, making correct decisions about your business can be hard. The biggest cognitive
How to Remove the Hash From Angular Routes in Rails
When building client-side applications, your URLs are prepended with a hash. Removing this can make your routes more user-friendly and more easily crawled by search engines. Here is how you can remove the hash from your routes in an Angular app built on Ruby on Rails, and use the standard URL structure.
SaaS Development Tools: 18 Tools To Build a SaaS Product Today
It seems like these days everyone wants to build a software as a service app. The siren’s call of monthly recurring revenue is hard to ignore. SaaS products are a complex undertaking. I’ve worked on them before and seen how all the moving parts have to interact. There are plenty of SaaS Development tools, libraries,
How I Used Writing to Double My Freelancing Rate As a Programmer
When I left my job to become a freelance programmer, I was charging $50/hr in the beginning. I met other freelancers, consultants, and agencies in town, and a few of them charged $150/hr. Even the agency that I had worked at previously billed my time at $120/hr, which means that my level of programming
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
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
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,
Page [tcb_pagination_current_page] of [tcb_pagination_total_pages]