DEV Community

Cover image for The Pareto Principle applied to software engineering
Mark Jivko
Mark Jivko

Posted on

The Pareto Principle applied to software engineering

How to create an automated web browser:

πŸ”Ή Study Electron.js
πŸ”Ή Study React.js
πŸ”Ή Make the two play nice together
πŸ”Ή Abandon react-redux and write your own
πŸ”Ή Create an SDK, and make it self-documenting
πŸ”Ή Make sure all events are native (isTrusted flag is true)
πŸ”Ή Create an IDE from scratch
πŸ”Ή Make the SDK and IDE play nice together
πŸ”Ή Create a modules system
πŸ”Ή Create a public API for the modules
πŸ”Ή Create an I/O system
πŸ”Ή Create a command-line interface

And even though you obsessed over UX all this time, the app still feels uninviting, for lack of a better word.

πŸ‘‰ Then one weekend, add the ability to record automations with point-and-click. πŸͺ„ Boom! Magic.

This is some version of the Pareto Principle in action. Even though a minority of actions produce the majority of the consequences, you really can't skip the work.

I could not have added the recording feature without first building everything else.

And moving forward, this pattern will repeat. Most of the effort that goes into uindow will go unnoticed. But from time to time, users will say "wow" to magic that can only happen because of the invisible work.

Uindow is a free, and source-available automated web browser. You can check it out on GitHub.

uindow

Top comments (0)