Why Write Good Pull Requests?

By on in Development

What is a pull request?

Pull requests let you tell others about changes you’ve pushed to a branch in a repository on GitHub. Once a pull request is opened, you can discuss and review the potential changes with collaborators and add follow-up commits before your changes are merged into the base branch.

Github

Many development teams use pull requests as a way to control and socialize the code changes made for a given project. They serve as documentation for the development process as well as a tool to discuss and review the changes. They can also inform future developers about the reasoning behind a particular implementation or coding pattern by including notes about the current state of things when the pull request was originally submitted.

Continue reading …


Don’t Drop the Ball on the Demo

By on in Product Management

Every once in a while an embarrassing product demo gets captured in the media and we all hold our collective breath as the latest source of escalated hype plummets back down to the ground. A version of this happened a few weeks ago when Tesla attempted to show off the “armor glass” on its new Cybertruck model by slinging a metal ball at the window, leaving CEO Elon Musk blinking in the limelight as CRACK,  glass shattered to the floor.

Well, that was not supposed to happen…

Continue reading …


Ground Control to Major Tom: How to Excel in Remote Research

By on in Design, User Research

There is never a ‘good time’ to do research, but we can at least all agree when and why it is necessary for strategic product decisions. What happens when the only research you can fit in your project is remote – with participants and with a co-located team? Before you cringe, pull your hair, or just laugh – here are some techniques we learned during our recent engagement with DailyPay.

Continue reading …


The Best of Both Worlds: HTML Apps & Svelte

By on in Development, JavaScript, Open Source, Rails

At Carbon Five we try to be agile about our technology choices and pick the simplest tool for the job at hand. That means that even in 2019, the era of React and Redux and GraphQL and all the other fancy tools for client-side web applications, sometimes the best tool for our clients is a good old Rails app, serving HTML.

Often the vision for the project pushes us towards a Single Page Application instead — maybe the app is going to be highly interactive or include realtime data, or the client is already invested in a front-end framework. In those cases, of course, we’ll reach for React or Angular or Vue. But for the traditional CRUD app that just needs to show some data and let users update it, a small team of experienced Rails developers can get an idea to market incredibly quickly.

Continue reading …


Changes Requested

By on in Development, Process

Each team has their own tolerance for what is and is not a reason to request changes on a PR and block it from being merged. This may be rooted in process, fairness, and expediency, and may be a company or team decision. Whatever your personal philosophy may be, the team as a whole and often the company has to come to some sort of consensus as to what constitutes a reason to block a PR. Over time, I’ve gotten a little more “block happy” and I’m going to talk about some of the advantages and pitfalls of blocking, and give you a mega list of reasons you might want to block a PR.

Continue reading …


Map vs Path

By on in Design, Process

It’s a simple idea that can help your digital product take shape; when a user enters your system, do you hand them a map or a path? What’s the difference? Great question, and in this case, the metaphor is pretty literal.

Continue reading …

Optimizing Performance in React 16.8

By on in Development, JavaScript

In smaller projects, React offers snappy performance – the virtual DOM diffing means updates can happen quickly and for the most part, things just work. But, particularly when you’re dealing with large data sets, things can bog down as every render loop causes many unnecessary renders of components which have not actually changed.

React Dev Tools comes with a profiler that can help pin down the problem, and React 16.8 came with some features to make it easier to improve performance of functional components. But to use these tools effectively you need to know what the problem is and how to find the culprit.

Continue reading …

Creating a Data-Informed Culture – SF Product Talk Night Recap

By on in Events, Product Management

“Data is ubiquitous technology. We’re constantly collecting it, manipulating it, and trying to monetize it.” – Jess Starr, Product Manager, Okta

Carbon Five San Francisco hosted Product Talk Night to discuss the different ways data and business intelligence can impact product development and business growth. Our guest speakers included: 

Continue reading …