Articles on software development

Black computer keyboard
Albert Yi

Albert Yi

Take Command of Your Ruby Code with the Command Pattern

It’s no secret that Ruby trivializes many classic design patterns. What might take 30 lines in Java can often be a one-liner in Ruby. But there’s more to learning a design pattern than reading some pseudo code about Widgets and AbstractFlyweightDecoratorFactory classes. The Command pattern is an abstraction that will be familiar to most experienced

Alice Wenner

Alice Wenner

Why You Shouldn’t Sleep on Ruby on Rails in 2022

First released to the public in 2004, Ruby on Rails is an open source web-application framework written in the Ruby programming language. We sat down with Carbon Five Director of Engineering Matt Brictson to discuss all things Ruby on Rails, including the benefits of using Rails versus an all-Javascript stack, what’s in store for the

Carbon Five-Emojis-Pull Request
Eric Fung

Eric Fung

How to Use Actionable Emojis in Your Pull Request Reviews

Carbon Five has embraced emoji in daily written communication. They carry a lot of meaning in a small package, they inject personality and culture into our writing, and they visually stand out on the page as you scan a document. Pull requests are no exception. Love them or hate them, emojis ensure our pull request

Agile on the Edge Colors
Alice Wenner

Alice Wenner

How To Build Products with Cutting-Edge Technology Using Agile Methodology

During her three years as a software engineer at Carbon Five, Rose Karr has had the opportunity to work on several projects that involve cutting-edge technology. She has found that while working with this kind of tech can be exciting, it also presents a unique set of challenges. In a recent talk, Karr discussed some

Sarah Port

Sarah Port

Redux Minus Redux With React Contexts

When it comes to state management in the front end, Redux has long reigned supreme. With the development of Contexts, we’re now seeing the beginning of an alternative which is brand new, but also capable of being completely familiar for long-time Redux fans. Using React Contexts with Redux-like paradigms is a good way to embrace

Max Pohl

Max Pohl

Think Your Agile Team Might Be Doing Waterfall In Disguise?

Given the rise in popularity around agile development, I thought it would be interesting to explore the most common software development characteristics across the wider tech industry. How are most companies developing and releasing products? How does this compare to what industry leaders are teaching? What can be learned for this exploration?

Prakash Venkatraman

Prakash Venkatraman

Greenfield Projects: Seven Ways to Set Yourself Up for Success

Greenfield projects have a hidden set of needs — and each one can be an opportunity for growth if handled well! But if handled poorly or if not handled at all, these pitfalls can perpetuate and multiply across the lifetime of the project, taking you further and further away from your treasure and further into the endless cave of despair.

Mitch Saltykov

Mitch Saltykov

Story Nanoslicing

It’s the start of a new project for our team, and we’re all excited to get development rolling. The Product Owner’s grand vision sounds great, but how do we get from that vision to the day-to-day detailed stories we’ll need to work on? We’re not about to go off into a cave to build in

Sarah Port

Sarah Port

A Tale of Two GitHubs: A Practical Guide

Let’s say you have two GitHub accounts: one is a work account that you use for professional projects, and the other is for your top secret hacker projects. This can cause problems like trying to push to a repository with an account that doesn’t have access or having the wrong GitHub author in your commits.

Prakash Venkatraman

Prakash Venkatraman

How to Deploy Elixir Releases with Ansible

In my last post, I described how to generate a platform-specific Elixir release. Now, the only thing left to do is to put it on the world wide web. To follow along with this post, you’ll need a few things: An IP address for a remote machine (preferably running Linux) you want to deploy your