Coding like a human (part 2)

Pedro Costa
4 min readApr 15, 2020

--

Not like a hero…

This is the part two of a collection of two articles. If you haven’t read the first part, go here.

Working more time doesn’t mean you care more about your company or get more work done. In this second article, you will see five more principles that could increase your productivity and will help you become a better engineer without the need of making extra hours over the night.

Don’t be the Hero

A lot of times it’s better to be a quitter than a hero. For example, let’s say you are thinking that a task can be done in two hours. However, you’ve been at least four hours doing the job and you are still only a quarter of the way done. The natural instinct is to think “I can’t give up now, I’ve already spent four hours on this!”. So you go into hero mode. You’re determined to make it work and shut yourself off from the world. If you already spent too much time on something that wasn’t worth it, walk away. You can’t get that time back.

Be motivated

The worst thing we can do is to waste time. Time is precious and limited. A while ago I started a new job. It seemed to be my dream job. Good money and awesome project. But in a week I saw that it was not. For several reasons. It wasn’t the company’s fault, it just wasn’t what I expected. I had to resign. What impression did I create doing that? It was hard to say goodbye in such a short time? Yes, but I did it and I’m convinced it’s better than wasting everyone’s time. Don’t work without inspiration. As Jason Fried and David Hansson wrote in their book Rework: “inspiration is a magical thing, a productivity multiplier, a motivator. But it won’t wait for you. Inspiration is a now thing. If it grabs you, grab it right back and put it to work”.

Good enough is fine

A lot of people get off on solving problems with complicated solutions but we should look instead for the best relationship between maximum efficiency and less effort.

Whenever working on something, ask yourself “is there an easier way?”. Problems are usually pretty simple and can be solved with simple solutions.That means there’s no glamorous work. You don’t get a chance to show off your amazing skills.

You just build something that gets the job done and then move on. This approach may not earn you oohs and aahs, but it lets you get on with it.

Avoid meetings

Meetings are toxic and probably are the worst interruption we can have. They often are mandatory and include at least one person who inevitably gets his turn to waste everyone’s time with nonsense stuff.

It’s important to know how to decline certain invitations. We have all been in meetings where we were not helpful in any way. Furthermore, in most meetings there is no need to have the entire team present. Invite as few people as possible and set a timer. I don’t know what happens to you, but I stop listening to anything after the first 45 minutes.

I am not saying that all meetings are useless. One of those I consider to be good examples are the stand-ups, a daily meeting that involves the core team. It’s one of the fundamental parts of agile development, but it’s often the most misunderstood. Not only do they take too long but also are confused with a place where we should report our work to our manager or team lead. Don’t forget, in daily meetings you should only answer three questions: 1) What did I work on yesterday? 2) What am I working on today? 3) What issues are blocking me?. Also don’t forget you should speak to your team, not only to your manager.

Learn to say NO!

People avoid saying no because confrontation makes them uncomfortable. But the alternative is even worse. You drag things out, make things complicated, and work on ideas you don’t believe in.

Don’t be afraid of saying no. Just be honest and explain why. People are surprisingly understanding when you take the time to explain your point of view. You may even win them over to your way of thinking.

Conclusion

Adding something is easy but adding value is hard. Is this thing you’re working on valuable? If not, stop it! You need to be able to improvise. Sometimes you need to say something like “we’re going in a new direction because that’s what makes sense right now.”

Perfectionism can be paralysing. Always show the latest version of what you’re working on, even if it’s not done yet. Believe me, it’s ok if it’s not perfect.

Everyone should feel safe enough to be honest when things get tough. We should talk to our mates the way we speak with our friends. Explain things as if you were sitting next to them. Avoid jargon or any sort of corporate speaking. Stay away from buzzwords when normal words will work just fine.

Remember, there are no heroes. All of us, sooner or later, do some type of crap and that’s why we should know how to apologise and take responsibility. A good apology has no conditional “if” phrase attached. Provide real details about what happened and what you’re doing to prevent it from happening again. And it seeks a way to make things right.

--

--