How to write versions for software?

A version number is formed by 3 parts, [major.minor.patch]. Each part is formed by numbers depending on updates and developers style to version code. For example: [1.5.1]. The major is modified when there is a major change in the App. The Minor is for new functionalities in the major update. Patch is updated for bug mixes or little changes.


Software versioning.

The procedure of giving a name or number to a specific part of the software. It’s main goal is to organize and keep track of the states of the software. The project can have an internal version number or a project code name.

How to use the internal versioning number for releases.

Every time you have an update major or minor you have to equal to zero the smaller one. Example, [1.5.1] with patch update would turn to [1.5.2], then with a minor [1.6.0]. When a big change is coming up with a major update it turns [2.0.0].


  1. Start at 1.0.0.
  2. Keep track of all the changes produced.
  3. Commit each update with a clear record of every change.
  4. Give users the possibility to check what each update will modify in the app.
  5. Start versioning before production stage.


  1. Better User Experience (UX).
  2. Improves Developers organizations.
  3. Facilitates new developers who come in the middle of the project.
  4. Structures the project and makes comparing with the past easier.
  5. Good for planning and proyección.

How to use a project code name.

It consists in assigning a code name to a project it is used to give a project an initial identification, to create a unique name in a business for the project, maintain a project in secrecy because of constant change of the code name and it helps create a buzz once launched for customers.


Versioning is not more than a name. Nobody should blow their mind with this part of the project. Just use what's simplest for you and your business. Internal versioning numbers are a “must” many times. In my experience, Flutter and android had it as a pre-established method.