At work, our security standard requires us to change passwords several times a year. It is usually hard for us humans to build a random strong password, and regenerating it every few months was a hassle. The developers also had to update passwords in their local credential stores, sign out of several apps so passwords would synchronize. Sometimes I wished I could use the password for a longer period.
So, earlier this year, when the news of passphrases arrived, I rejoiced. Passphrases are really long passwords, so they are more strong. I saw it as a relief to the nuisance. I would only need to change passwords fewer times. I happily joined the band as soon as the program was offered.
Did it solve the old problem? Yes. But now, I was entering a really long passphrase several times a day in several places. What used to be a mechanical activity then became a tedious, error-prone ritual, and I wished I could go back to the old setup.
Old problems need new solutions. But new solutions do bring new problems.
It seems that we are going in circles. Does this mean we have to live with old problems? How can we create new solutions despite the fact that it will cause problems?
Reduce the pain
But when we build new solutions, we can be diligent about the value it creates and the pain it causes. The new problem should cause less pain than the old problem or at the very least it should be manageable. No one would trade otherwise.
Often we lose track of the problems we faced and solved, so we end up solving them again and again. Some are simple and it is easy to assess and avoid. But some will take a long time or even centuries.
Create significant value
Let us look at a complex problem. One of the finest inventions of the past century was the automobile. It disrupted our mobility and remained at the center of growth for nearly 100 years. But you can also assure yourself that they also brought as much disaster as prosperity.
We, humans, are in search of prosperity through new solutions. We seem to bite the bullet and endure the challenges.
Make it accessible
Another example is Cloud. A decade or two ago, large companies had their own infrastructure, data centers and there were numerous resources purposed to build and deploy. It acted as a competitive advantage to large enterprises. The cost to build, scale, and maintain was a huge barrier to small companies.
Fast forward, there are several cloud offerings from IaaS to Paas to SaaS. Any new entrant can get the same capability as the large company with a few clicks of a button and it would cost peanuts in startup expense. Though it is still a maze and adds more responsibility to the developers, it is still worth the pain.
so, next time when you are evaluating your options and deciding solutions, embrace the fact that it will create new problems but you still can bring a smile to your user.