Best Practices

We share our best practices to help every visitor to become a better dev.

Mathieu Poissard

3-Way Merge or Merge Commit: Why Is It Better Than a 2-Way Merge?

What is a three-way merge? If that's something common now, let's understand how it works. To do so, let's discover some examples, and its advantage over 2 way merge

Hugo Escafit

Code Coverage: Everything You Need to Know

What’s the difference between high-quality and poor-quality code? The answer can usually be found in testing. Testing is one of the most important aspects of software development because it ensures bugs and errors get caught during and after a project’s development cycle. One of the most essential tools

Charly Laurent

Clean Python: Names

What is Clean Code? Clean Code is a book written in 2008 by Robert C. Martin. It compiles a lot of knowledge to help every developer write Clean Code. But what is "clean code" exactly? A code considered "clean" is code that: 1. is easy to

Hugo Escafit

GitHub Storage Limits: What Are the Alternatives?

GitHub gives developers an incredible amount of free functionality to use as they build on the platform. Storage of their code is one of many things developers likely take for granted on GitHub. However, not just anything can be stored in a repository on the platform. GitHub has a few

Mathieu Poissard

Chrome Extensions: our Top 10 for GitHub Users?

Finding the right Chrome extension might not seem like a particularly important thing to do, but it can make a huge difference to your daily to-do list if you often interact with GitHub's website. Instead of devoting time to tedious tasks that pop up all the time, you

Hugo Escafit

The best Git branching strategies

The perfect Git branching strategy can help your development team get more done with fewer mistakes and minimal code-loss catastrophes. However, a bad choice of branching strategy in Git can quickly frustrate your team members, slowing down development considerably in the process. The strategies below each have their strengths and

Hugo Escafit

GitHub Code Review Best Practices

Contributing code to projects hosted on GitHub can be a great way to leverage distributed development processes and a remote working paradigm to the fullest. But what happens when your code contributions need to pass a sniff test before they make it into the main codebase? That's precisely

Mehdi Abaakouk

On API Keys Best Practices

APIs are everywhere. They became ubiquitous over the last years and every startup building a product is now ordered to offer them. They became a major selling point for any SaaS business. Engineering and product teams focus on the design of their API, from top to bottom, making sure they

Hugo Escafit

GitHub Security Best Practices

Managing a project on GitHub has its challenges. For many, mastering the entire Git workflow alone is enough to keep them busy for quite some time. However, beyond the basics of pulling, merging, commenting, and rebasing, super important security details loom like specters on the horizon, threatening to eradicate your

Julien Danjou

Our 10 Heroku Tips & Tricks

Since its inception, the Mergify [https://mergify.com] engineering team decided to focus on its product and not spend time building infrastructure. It made a lot of sense as we started as a small team of two engineers with low resources and that the first version of Mergify was an

Hugo Escafit

How to Increase Software Developer Efficiency?

There isn’t a universal formula for software developer efficiency. If there were, sprint cycles wouldn’t be so chaotic with the next deadline always looming like a dark cloud. There are, however, tried and proven strategies for maximizing efficiency in software development. Consider these implementations for your next sprint

Hugo Escafit

4 CI/CD Best Practices

Continuous integration, delivery, and deployment (CI/CD) offer software development teams a holistic means of meeting more milestones in less time. This is generally accomplished by simplifying complex and tedious, yet overwhelmingly redundant tasks through targeted automation. Once simplified, continuous integration, delivery, and deployment processes work to support development initiatives