Programmer Best Practices — Making Commitments and Coding When Tired

Spread the love

To be a professional programmer, there’re many things that we’ve to do to be a good one.

In this article, we’ll look at how we make commitments, and why we shouldn’t code when we’re tired.

Saying Yes

It’s possible to do everything, so we can’t say yes all the time. There are also plenty of situations where we run into issues with software projects.

Therefore, we got to think twice before committing to anything. There are 3 parts to making a commitment.

First, we say that we’ll do it. Second, we mean what we way. Finally, we actually do what we say we’ll do. There are some people that mean what they say and get it done.

There are some that say they mean them but don’t get it done.

There are even more people that promise things that they don’t mean to do.

We just can’t trust people that don’t mean what they do.

Recognizing Noncommitment

There are things that people say that can identify noncommitment.

Any sentence with ‘need’ like ‘we need to get this done’ is one sign of no commitment.

‘Hope’ or ‘wish’ in a sentence also signals noncommitment.

Also, “let’s” is also the same thing as the other 2.

Once we look for these words, we’ll catch noncommitment easily.

Recognizing Commitment

Commitment can be spotted by saying something will be done by a concrete date.

If it’s said so concretely, then we know that it’ll either be done or not. We can do things that we have full control of. If it depends on others, then we can’t commit to it.

We can, however, commit to other actions to meet our target. We can coordinate with other people that will help us get what we need to be done by communicating with them.

If something can’t be done, then we can still promise something that will bring us closer to the target. We can do actions that bring us closer to done.

Sometimes we just can’t make the date that we set to get something done. We got to tell the stakeholder if we can’t make the timeline that we promised.

If we run into unexpected technical issues, then we can communicate that and decide on the course of action.

How to Say Yes

Using the word ‘try’ signifies that maybe we’ll get something done.

To commit to something fully, we would have a more concrete timeline.


Coding is a challenging and exhausting activity. It requires a level of concentration and focuses that few other disciplines require. This is because we’ve to juggle many competing things at once.

Our code must work. We got to understand what problems we’re solving and understand how to solve it, We also have to ensure that our code is a faithful representation of the solution.

Also, we’ve to ensure that the solution is consistent with the language, platform, architecture, and all the other bits of the current system. The code must also solve the problems for the customer.

We got to check with the customer to see if the solution is actually solving the problems that they need solving. The code also must fit well within the existing system.

The rigidity, fragility, or opacity of the system. It must also be well-managed.

The code must be readable by other programmers. It must be crafted in a way that reveals the intent. It’s hard to do and a difficult thing to master.

Dealing with all these things is hard. They are the necessary concentration and focus for a long period of time. The problems and distractions of working in a team or organization make thins even harder.

If we can’t concentrate sufficiently, then the code will be wrong and have bugs. We shouldn’t code when we’re tired.

Coding When Tired

When we’re tired, we shouldn’t code.

The code we write wouldn’t be good. We probably won’t catch a lot of issues that we can if we have more energy. We might think something works but it might be a fluke since we’re so tired that we missed stuff.

The code quality will probably be poor since we can’t think straight. It’ll just bite us later when we have issues with the code even though it may work.

By John Au-Yeung

Web developer specializing in React, Vue, and front end development.

Leave a Reply

Your email address will not be published. Required fields are marked *