There are many aspects of my life I could improve. I could be spending less time, less money, less effort. But I can’t address all of these improvements at once. Where do I start?
This is a known problem, also known as the Theory of Constraints. Software engineering has a solution. The idea is to find the bottleneck and unblock it.
For example, let’s say you’re not very productive at work because you attend too many meetings. You can ask the inviting individual if you’re really needed in those meetings. If meetings aren’t productive, make suggestions to improve them or ask for them to be cancelled. Maybe a few meetings could be grouped into one.
Another example would be having a really good internet connection but an underwhelming router. Upgrading your internet connection further would not improve your internet speed. Upgrade your router.
Your computer may be slow. You may be advised to switch from an HDD to an SSD. Or to add more RAM. But really, you should find out what your limit, or bottleneck, is. Are you at 100% memory usage? Upgrade your RAM. Is your computer doing a lot of read/write operations? An SSD would boost your performace.
You may find you’re taking out the trash several times a week. Maybe getting a bigger bin would save you time.
Are you rushing out in the morning only to find out to have to stop at a gas station to fuel your car? Try keeping the tank full rather than half full. Fill it when you’re not under pressure so that when you want to rush, you can.
How often have you wanted to do something, only to find out you can’t because another task had to be addressed first? Those cases are good candidates for optimisation.
Most things can be improved. You will likely not be able to improve them all. Spend your limited resources wisely. Find the bottleneck.
And keep improving!
2 thoughts on “99 Bottles Of Beer On The Wall”
There is the 80/20 rule. It applies to many things. It also applies to blockers. 80% of your blockers are coming from 20% of your bottlenecks!
LikeLiked by 1 person
That’s so true. It’s a great rule of thumb. Was just looking at the APK size for a client, and 90% of the size was in the graphics assets. Optimising anything else would be a waste of time. Even a crazy 50% optimisation on the rest of it (unrealistic, mind you) would only lead to a 5% improvement overall. A 10% size optimisation of the graphics assets, by comparison, would lead to a 9% overall improvement!