Pitfalls of writing software alone

I’ve published a new story on the Coding with Empathy blog. Here’s an intro.

The power of one

There’s nothing like being able to work on a project by yourself and having complete control of every single aspect of the solution. Everything from the front-end stack to the storage. Using the latest and greatest frameworks and libraries. This is heaven for any software developer. But regardless of any of the above technology-focused aspects, there is one major advantage being that single developer, namely: speed! But there are pitfalls when writing software alone.

When a developer knows every aspect of a system, they have a mental map of the code and the problem domain. They know how the code flows, how business rules are implemented, the architecture and sometimes even the line-numbers of specific functions! Having this mental map is a tremendous advantage, but is only possible because there is no need to communicate with other developers.

Being socially unacceptable

Being the only developer that delivers and end-to-end solution also leads to a feeling of great pride. It’s like being superman. The feeling that people can throw anything at you and you can get it done. Bring on any challenge and you will be up for it. Confidence in your solutions and decisions.

Everything isn’t really shiny in solo-town, though. For many, this ever-growing feeling of confidence can spill over to overconfidence which leads to a larger ego. Egos require constant feeding, and may lead to many interactions that don’t end up going your way in the long run. When challenged you have so much confidence in your approach or opinion that you completely ignore others perspectives. You enter tunnel-vision mode and may end up discussing or even arguing to get your point across. This could be with other developers, leaders, users or even clients. Just because you believe you know what’s right in a given circumstance, doesn’t mean you can force the solution on others. Doing so will alienate everyone else in the process then you’ve started digging a hole in which you’re going to find hard to climb out of.

Some leaders adore these people. They come in, say harsh words that force change then move to the next project. This may be a very efficient way of getting ones point across, but it’s definitely not the most effective in the long run considering all the people who are forced into a decision. Being right doesn’t give you the right to be inconsiderate.

Continue reading on the Coding with Empathy blog.


Starting an empathic journey

As part of my quest to be exceptional, I’ve been searching to discover what I’m passionate about as a software developer. I feel a pull in so many directions, but I guess that’s natural given our profession and the diversity we’re exposed to.

Some people have found their calling and are producing wonderful content that provides tremendous value to others. What I’ve been wanting to do is figure out what my special sauce is. What is that I can bring to the table that can provide some value to others and at the same time not drown out in all the noise?

Well, you’re here and you’ve read the title, so you may have guessed it already: Empathy

I am no sort of expert on this, but I find myself fascinated and attracted to the concept of infusing empathy into all aspects of software development. I care about my craft, and I care about boosting my career. But even more I care about doing so with a softer approach than what is out there already. I hope to create a site with an empathic view to the challenges new and experienced software developers face.

Please feel free to reach out if you have any ideas / thoughts / recommendations on this topic. I would also like to hear from any of you that don’t see value in a site like this.

So I’d like to welcome you to an empathic journey: http://codingwithempathy.com