Sofware Development Best Standard Industry Practices

Denis Lafontant
3 min readJan 21, 2022

How to build standard software from scratch and increase efficiency and productivity

A developer working from home — Source: freepik.com

What is software development?

To begin we must define what is software development which is literally different than coding. Software development refers to a set of computer science activities dedicated to the process of creating, designing, deploying, and supporting software, according to IBM. Whereas coding is the process of writing code to execute a specific task.

From that perspective, we can see how complex it is to write good software and without a doubt, some standards are expected according to the industry at a specific moment. To ensure code quality in this process, some activities are vitals, and it requires a precise methodology to reach that goal. This is exactly what we will figure out step by step in this article.

1- Set up a good workflow

A good workflow implies a system that allows the team to collaborate efficiently, it is one of the predominant factors for increasing productivity. GitHub provides great documentation, but I am more a fan of Git-Flow, as I consider it as my best branching strategy. It helps me automatically isolate work in different types of branches, and as a bonus I always set my develop branch as default, leaving the master branch for releases.

2- Always use linters

Linters automatically analyzes your code looking for problems, it is an improvements tools and helps you compare your code from the industry standard. Some developers try to avoid linters at any cost, it is understandable because sometimes it creates confusion as did many tools at the first try, but as long as you know how to use it or get used to it, it will become a powerful ally. Using linters help you to diagnose and fix problems which will result in fewer problem in production. It also checks for adherence to coding standards, a codebase that has a consistent code style is easier to read and understand. Linters provide more than that, if you have not used it yet, give it a try now.

3- Test first code after

Really! Without a doubt yes. Honestly, it sounds weird to me at first, and then I realize how important it is to write tests first. You want your code to behave exactly how you wanted it then code first. It is not rational to write tests after coding, doing so will simply modify the test to match the code instead of coding properly to pass the test Because the opposite will require modifying the code, which is not that fun. Your code is running fine why should I bother myself for testing? But the real question is, does your code behave as it should be? You will know the importance of testing especially when adding a new feature or upgrading your application. For the purpose, I suggest sticking to Test Driven Development(TDD) and Behaviour Driven Development (BDD) methodologies for better results.

4- Comment your code

Teamwork requires interaction, reading code sometimes can be stressful for such reason it is always good to write brief and descriptive comments in your code to guide other developers and increase understanding. Talking about comments, please always remember to remove comments codes from your codebase, it makes it difficult to read and lowers understanding. You don’t want to drive your teammates crazy, right?

5- Documentation

Well, that’s a must! For me, this is what separates the average developer from the great one. Documenting your work should not be so hard if you truly understand what you are doing. Basically, a strong and descriptive README file is also good, but when dealing with API’s you will need more than that. An undocumented work is like a riddle, and time is the most valuable asset, and people don’t like wasting it.

Conclusion

A software development project is complex and requires many resources. Having a working app is not the only thing that matters, but it should be also architected in a way that fosters productivity and efficiency. Following the best practices in the industry is what will keep you on top.

--

--

Denis Lafontant

Full-Stack Web Developer, Mentor, former Programmer Analyst for the Haitian National Police, Law graduated.