Communication, Developer growth

Quit blaming others. It’s your fault!

When working in a team trying to deliver software things don’t always go right. Quite often they actually go wrong. Sometimes though they go so wrong that there are consequences for others. And when things go wrong, someone is to blame.

It’s natural to protect yourself and make sure all attention is on the next person by blaming and pointing. Perhaps you just sit idly and let others deal out blame and this helps you get by on a day-to-day basis. If you and the people around you are dealing out blame, you aren’t only making it bad for those around you, but for yourself.

Continue Reading

Agile, General

“just add an if”

You’re talking about a new feature that’s being planned and prioritized to the dev-team. It’s straight-forward enough, but you sense that it’s latching on yet another feature to an existing long chain of functionality. The team has some reservations to expanding the feature chain even more before doing some adjustments to how it’s been architected to keep this maintainable. That’s when you hear from the product owner: “Just add an if…”. Continue Reading

Developer growth

Chatting with Scott Nimrod about Software Development and Social Intelligence

Scott Nimrod invited me to a chat, which I gladly accepted. We speak about experiences and social intelligence in Software Development. I hope you find value in the converation. It’s available on youtube here: Talking to Pavneet about Software Development and Social Intelligence.

I first came across Scott in his interview on the Developer on Fire podcast. This happened to be one of the first podcasts I left a comment on. We are now twitter friends, and supporters of each others’ work. Scott has a focus on Software Craftsmanship and a wonderful drive to achieve great things. Check out his blog and multiple interviews (after you hear our chat of course ?).

Scott’s Resources:

I would love to hear your thoughts on our conversation and any value you may have recieved. Reach out to me directly with you thoughts, questions or criticisms. Or leave a comment below.

Communication, Developer growth

Use Emoji to improve communication in your distributed team??

You’re sitting there, writing code for another feature request and a message pops in. You know it’s important, since it’s a direct message. You glance at the notification and see the words:

Dev: “You broke the build…”

You click the notification and get taken to the 1-on-1 chat, where you read:

Dev: “You broke the build, you fix?

Short and to the point. An efficient message. Perhaps not the most effective though, since you’re sitting there and scratching your head. You’re feeling annoyed. Not because you broke the build, nor that this person let you know about it. It’s because you can’t seem to get hold of the feeling of the person behind the message.

Are they irritated? Maybe mad? Possible stressed out? None of the above? The uncertainty of this can easily put you in a negative state of mind, and that won’t help with collaboration. Continue Reading

Developer growth, Practice Empathy

Leading teams with Empathy -Providing Psychological Safety

As a technical team lead, you are in a unique position to facilitate the growth of your team or watch it spin out of control. You can run it with an iron fist or meekly get overrun by strong forces. You can encourage psychological safety or allow watch things fall apart in a toxic environment.

What makes or breaks a team? How can you bring out the best in the people around you? What can you do as a technical team lead to ensure the success of your team, and as an extension your product? Continue Reading

Craftsmanship

Capturing Intent – Making sense of code

Picture the scenario: You are staring at the computer screen and scanning the lines of code that fill it. You scratch your head and think: Why?

You debug the code, step-by-step and see a method call that sticks out like a sore thumb. It’s doing an out of process call to another subsystem before the code has completed its job in this method.

Why is that out of process call made there? There’s no documentation explaining why. Moving it to the end of the method makes more sense, but then everything breaks. WHY? 

image01

As a software developer, you might have experienced situations like this. You’re looking to fix a bug or extend a feature and you stumble over code that just doesn’t make sense.

You can see what it’s doing, even understand how it’s works, but you just can’t understand why.

In this post I’ll show you why making the extra effort to capture the intent of the code is so important. Continue Reading