To work with the outside world where business and entrepreneurs lives, you must understand that we are in an alternate universe. For a programmer, playing with technology is fun. We live in a world where building your own server and rolling out your own custom solutions to every problem is something desirable. If something is hard to master and uses bleeding edge technology, it’s even better!
But when you step out in the real world where entrepreneurs of all shape, size and technical skills build businesses and deliver value, they don’t care about what is going on under the hood. When people need a business solution, what they really want is something that makes their job easier. That’s perfectly logical: who would implement a solution that makes their live harder and more unpleasant?
So, considering this, the role of a programmer in the business is to use technology to solve problems for people. Your job is greasing the wheels of business to make sure everything goes smoothly, regardless of the technology involved behind the scene. If your solution slows down people and gets in the way, you failed your client or your employer and this is something that should be a priority for you to fix.
If you don’t fix your software when this happens, people using it to do their work will find a way around it instead of working with it. A tool is pointless without people using it, and if less and less people are trusting your software, the information in it will become unreliable. Software is alive and should evolve with the need of its users: if you don’t care for it, it will wither and die.
Sometimes this will be at the intersection of business needs and fun: a new tablet application for users needing mobility or a new web site that works with the newest browsers. But it won’t always be fun and unicorns: at other times, doing your job means maintaining an old PHP web application that’s used only by a few people, but that is essential to keep the business going. Or it means making sure that your application works fine on old Windows XP desktops that are still in use even if you’re developing in on the latest MacBook.
So, you have a choice: if you want to deal with the outside world and make people glad to have a programmer around, then you need to learn that the best solution is not always the complex one. Yes, this can mean that the solution to their problem is a WordPress installation and not a custom solution that took you a year to code, but your job is to make people happy.
Will you come with me outside?
And for any entrepreneurs reading this, where are we failing you?