php code screenshot

June 21, 2020 2 min to read

Lessons learned from software development experience

Category : Hobby

Here is a list of software development rules that I have developed for myself over the years of practice.

1. Start with small things, then expand them

As when creating something new, and when adding functionality to ready-made systems, I always start with a very simple version that does almost nothing of the necessary functions.

Then I expand this solution step by step until it becomes what was originally stated. I have never managed to paint in plan all the details already at the start.

Instead, I better and better understand what you need to get during the development process and use this knowledge in the project.

I like these words of John Gall: “Any fairly complex system that works, somehow evolved from a simple system that worked in one way or another”.

2. Change something one at a time

If during development a program starts to fail on some test or some function stops working, it is much easier to find the reason if you changed the code in only one place.

In other words, it is better to use small iterations than trying to do everything all at once. Do one thing, make sure it works, repeat.

This also applies at the level of commits to the version control system. If you need to refactor, then before adding any new feature, first commit the changes for refactoring, and only then (in a separate commit) add this feature.

3. Add logging and error handling in the early stages

When I set about developing a new system, one of the first things I do is add logging and error handling. Both of these things are beneficial from the very beginning of the project.

In any program that has more than a couple dozen lines of code, you need to know what happens during execution. And especially this data is important when something doesn’t work as planned.

Roughly the same thing with error handling – since exceptions can still not be avoided, and they will be thrown throughout the life of the project, why not start processing them systematically at the very beginning?

4. Each new line of code must be executed at least once

Before you finish work on any functionality, you need to test it. After all, otherwise how do you understand that she is doing exactly what she should? Often the best option for this is automatic tests, although there are other options.

In general, it doesn’t matter how, but the main thing is that every line of code you write should get control. It can sometimes be difficult to reproduce the necessary conditions to go into all branches of the code…
 
Continue reading the article and learn more about software development on Life Is An Episode website.
 
 

You may also like these articles

  • How to choose a bicycle
    These days, we all generally linger on all the available options whenever we go to buy anything because of the influx of variety and more advancement of technology.If you wish to purchase the best suited bicycle for yourself then below is a guide on how to choose the pe...
  • No time to lose heart: 8 things on social networks that will cheer you up
    We’ve all been feeling a little down lately, and the current coronavirus pandemic is to blame. Staying at home under quarantine conditions is important, but easier said than done; being home for so long can get suffocating, and at times there’s nothing more we want than...
  • How to make money from your hobbies
    Almost everyone has something they’re good at outside of work. These hobbies can be turned into your main source of income if you’re passionate, resourceful and driven.You can even turn your hobby into a business in its own right. Depending on your skill you could freel...
  • Native apps vs hybrid apps vs web apps
    The moment you decide to invest in a mobile app, you will be faced with deciding which type of app to build. Today, we will be diving into mobile apps and the difference between native, hybrid, and web apps. So, what app should you build?Well, that depends on a lot of c...

Leave a comment