Broke:
Broken: The art of broke in action
Productivity tools: The new meeting
I have been thinking about this for some time. Why is everything broken? Not everything is exactly broken but in tech, not everything is working as it should or as originally designed. The number of hiccups, roadblocks, stopping work to solve a problem with the app or system I am working with, and popups everywhere telling me there is an updated version of something available is on the rise and is becoming an anchor to the forward motion of what technology is trying to do here in our world. The world we live in is very tech-driven and sold as smart. For most of the technology that is available today, it works. As designed, delivered, and sold to us. There is power, convenience, and agility in the massive stack of code and hardware we call a smartphone. It is an amazing time to be alive and see the outstanding work that is being done.
But what about things that for a lack of a better word broke? They work, but the little things do not, or become difficult, stop us from the action we are taking, change a workflow abruptly, add a few more steps to a simple process, look better but work poorly, or just cease to function or disappear entirely.
Just a little background. I am a senior software developer and work heavily in the manufacturing arena where the stakes are high, competition is on fire, and data is king. The business requests and 24/7 high availability environment demands that things work, can be automated, have no errors, and are delivered on time with support and backup. Precision work teamed with getting the right fit on the first attempt is the goal I shoot for and I have a demand and requirement on the tools that I use to do my job and execute my work to make things work.

But you can be anyone in any situation with any technology to notice the following things. When the pressure is off, and time can be spent, the “broken” things are like a speedbump in a parking lot. You see it, slow down, cross them front tires first, then the back ones, and then move forward. If the situation is different, say like on an expressway at the upper-speed limit, where a speedbump is unwelcomed and could provide a negative set of scenarios and actions to follow.
And Here is Another Message:
It is easy to find some examples as things are obvious once you see them. Messages, messages, messages everywhere. Remember pop-up ads on the internet? They were so much of a problem that the entire browser industry re-tooled to put in pop-up blockers and every anti-virus package had “pop-up blocker” protection. And they are back, but in a kinder and friendlier format, popping up after you have been on the site for just a short while asking if you would like to take a survey, give away your email address, or ask how your experience was. They are like mosquitos on a balmy summer night and just do not quit.
Messages pop up on my computer and phone like a toddler starved for attention. Sure, I can change the settings, but with the next update, my settings get reset somehow and I either get everything or nothing.
What I think is happening are the results of a few things while individually are outstanding achievements in software and systems development combined with the agility skills of super-effective deployment organizations. How can that be bad or a problem? It is not either. But in multi-verse of the end-user screens and experience, the cocktail of technology is starting to slow us down in micro-steps.
Applications used to be easy to know what their purpose was and what they were supposed to do. The best ones even with a hundred options allowed an individual to execute either a single or several well-defined actions that got a user from point A to point B each and every time. Once learned by the user, the interface would only change slightly along with new features that came packed into each update or upgrade. Even with each change, point A was always point A and point B was always there waiting to be reached.
The Development Engine:
That sounds simple, but it is quite complex. In the big ecosystem of applications and using computing devices to do things, we have survived quite well with only a few bumps and flat tires along the way. In software the law of natural selection is true. The winners win and the losers lose.
At no other time in application development has there been such advancement in how applications are built. This includes many practices, methods, environments, systems, platforms, frameworks, and a hundred other things. Aside from the technical stuff are project managers, program managers, managers (I use that term loosely), programmers, salespeople, marketing folks, and decision-makers.
Writing this blog post has left me with more questions than answers and it is difficult to wrap this up like a perfectly crafted article or post. At some point I need to stop writing because you will stop reading, so here are a few things to discuss, converse, and toss around. If you are not in the software business bear with me for a moment because it is at this level the break happens.
Think along with me here:
Can an application become too big to work well?
Does adding more features to address the competition actually bring more value?
In some cases, does updating something break more things and remove more value than what was just added?
Does faster and seamless delivery of code cause more issues?
Conclusion:
As a professional developer and one that is very serious about the craft, I have to wonder if all the things we have done to improve the work, the code, the data, and how it gets from point A to point B and then shipped is actually cracking the foundations of more things than we realize. Right now, I am just thinking aloud here as I write this blog post. I will keep thinking and digging in to find out why everything is broken. Maybe I can fix a few things along the way.
