<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Mark Jivko</title>
    <description>The latest articles on DEV Community by Mark Jivko (@markjivko).</description>
    <link>https://dev.to/markjivko</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3931154%2F809c73ff-9047-4306-b9ea-71320b559d66.jpg</url>
      <title>DEV Community: Mark Jivko</title>
      <link>https://dev.to/markjivko</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/markjivko"/>
    <language>en</language>
    <item>
      <title>The Pareto Principle applied to software engineering</title>
      <dc:creator>Mark Jivko</dc:creator>
      <pubDate>Thu, 14 May 2026 14:25:16 +0000</pubDate>
      <link>https://dev.to/markjivko/the-pareto-principle-applied-to-software-engineering-5ajf</link>
      <guid>https://dev.to/markjivko/the-pareto-principle-applied-to-software-engineering-5ajf</guid>
      <description>&lt;p&gt;How to create an automated web browser:&lt;/p&gt;

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

&lt;p&gt;And even though you obsessed over UX all this time, the app still feels uninviting, for lack of a better word.&lt;/p&gt;

&lt;p&gt;👉 Then one weekend, add the ability to record automations with point-and-click. 🪄 Boom! Magic.&lt;/p&gt;

&lt;p&gt;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.&lt;/p&gt;

&lt;p&gt;I could not have added the recording feature without first building everything else.&lt;/p&gt;

&lt;p&gt;And moving forward, this pattern will repeat. Most of the effort that goes into &lt;a href="https://uindow.com/" rel="noopener noreferrer"&gt;uindow&lt;/a&gt; will go unnoticed. But from time to time, users will say "wow" to magic that can only happen because of the invisible work.&lt;/p&gt;

&lt;p&gt;Uindow is a free, and source-available automated web browser. You can check it out on &lt;a href="https://github.com/uindow/uindow" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt;.&lt;/p&gt;

&lt;h1&gt;
  
  
  uindow
&lt;/h1&gt;

</description>
      <category>webdev</category>
      <category>productivity</category>
      <category>opensource</category>
      <category>automation</category>
    </item>
  </channel>
</rss>
