Unit testing: Why you aren’t convinced (and what to do about it)

Unit testing scepticism can come from bad experiences, acknowledging these can help us to see the true benefits of unit testing.

When it comes to unit testing most people fall into one of two categories. Unit testing advocates and unit testing sceptics. The reasons there are unit testing sceptics can often be from bad test implementations. Created by unit testing pitfalls.

test code

On being and hiring an apprentice

When it comes to being an apprentice: autonomy trumps skill.

We are often an apprentice. Whether that’s joining a new team with a new business domain. Or joining a new job that requires new skills. This means that we’re at the mercy of needing someone else to guide us. Leaving us in the dark, trying to make sense of everything.
 
As I move between clients often I find myself in the apprentice space a lot. And then wondering what approach is best. Ask lots of questions or hardly any? What amount of interaction makes sense?

Why so many miss the point of scrum.

A few months ago I failed to explain why we're missing the point of scrum. Now, armed with the works of Tao Te Ching I'm taking another shot.

Communication is at the heart of everything we do. But doing it well can be difficult. One of the goals of this blog was to practice communicating. Trying to make a point in the most impactful way possible. Sometimes I’ve tried metaphors, sometimes lists and sometimes being plain esoteric. I’m not sure which way is best. It’s definitely an art.

Want to become more agile? Ask yourself these 3 questions.

 
Agile is something we are, not something we do. That means in order to be agile, we must embody traits. To keep us on track with these traits, we can ask ourselves questions. These questions ensure our software is easy to change. And hopefully, this means we stand a better chance at delighting our customers.

Stoicism: A software developers guide.

Many of life's issues are already solved. That means we can learn incredible lessons from the past ... here are my top 5 ideas from the stoic philosophy and how you can leverage them too.

Most problems have happened before. If we search back in history far enough, we’ll find someone overcoming a problem we now have. Stoic philosophy (Stoicism), when studied can give us many of the answers to problems we already face. I am only a beginner when it comes to Stoicism. But I’ve already had benefits leveraging some of the learnings from their teachings.
 
Rather than spending your time reading the works and figuring out how they apply to you. I’ve distilled 5 of the top lessons, from the perspective of a software developer.

Changing Javascript framework: 4 questions to ask yourself before doing it.

With new framework options always on the horizon it pays to make sure our upgrades are well justified. New frameworks don't solve systemic issues. To make sure we're upgrading for the right reasons, we should ask the right questions.

Javascript framework

“What good does it do you to go overseas, to move from city to city? If you really want to escape the things that harass you, what you’re needing is not to be in a different place but to be a different person.” Seneca, Letters from a Stoic
In this letter, Seneca was highlighting that running from a problem, does not solve it. You must be careful to understand that where you’re running from might not be the problem. The problem might even be you (in this case, your team/business). Before we make that leap and change where we are, we need to address ourselves. And our own potential shortcomings.
 
There comes a time with our software teams where a thought flashes through our mind: “Should we change framework?”

Does your agile team have a “learning disability”?

It has been argued that the best determinate of a businesses success is based on it's ability to adapt and learn. Whilst building a "learning organisation" sounds desirable, it is distinctly abstract. We're going to look at 3 concrete "learning disabilities" that prevent teams from operating optimally.

The term learning disability is taken from Senge’s The Fifth DisciplineIn the book, Senge discusses how to transform organisations into what he calls “Learning organisations”. Organisations that are quick to pick up new skills and responsive to change. To become one we must recognise what Senge calls “learning disabilities”.
 
Learning Disabilities are behavioural traits that teams exhibit. These traits cloud our ability to learn and grow as teams. Out of the seven total three, in particular, I know will resonate for developers.

An inside look at my favourite apps

A list of my favourite apps from productivity and mindfulness to budgeting and finance.

I’m always getting asked “wait, what is that app?” when someones peering over my shoulder as I work. So I figured it was about time to unleash them all. A list of my favourite apps from productivity and mindfulness to budgeting and finance.
 
Here is a list of my current apps that I use in my day-to-day life. They cover pretty much everything from productivity to finance. You should come away with at least one hidden gem in here I’m sure!

Creating a powerful online presence with a platform

Having a website, blog, portfolio or stackoverflow profile is common amongst software developers. Yet, by thinking about our online presence as a Platform we could be achieving greater results. But what is a platform? And why would we want one?

My journey with Platform all started a few years ago when I read Key Person of Influence. It ultimately prompted my intrigue with writing. Blown away by the ideas in this book I had to dig deeper. This is when I discovered books talking about similar concepts:
I recommend them all.
 
The concept of Platform can apply to every type of software developer career. It doesn’t matter if you: want to work full time, start a business or go into management … The concepts of Platform apply no matter your career vision.