Perfectionism, success and simplicity.

One of my biggest frustrations I've encountered in existing software is the lack of sufficient 'power user' tools. There are many programs I love, but with which I find myself frustrated at, for small quirks or the absence of small tweaks I wish were there. When I've built my own software and kept these needs in mind I've often been met with complexity and motivational issues.

I intend to set out a new strategy for development, which I hope will alleviate ALL these troubles. Whether it will will be a test of time.

The best software seems to be great because of it's simplicity, but also it's paradigm

You've heard it a thousand times:

  • Simple software is easier to use, develop and maintain.
  • Features must be absolutely necessary.

Here's my two cents which I feel aught to be beared in mind:

Paradigm and flow should be what stops simplicity from being limiting.

As a programmer you probably are one of the biggest power users of your software

  • For web apps, the console is probably the best way to allow people (in my case, myself) to take full advantage of your software. Design for this.
  • This should also force you to keep your code well structured, accessible and documented.

In a way this is also the same move that lead to Amazon's success in AWS. Having everything in their company accessible under API allowed less work to be done on automatable tasks, and greater ease in building and stitching together systems.

You can probably bend an existing wheel to your needs. Don't reinvent it.

While the constant rewrites and tech stack changes my website has undergone has been a great learning experience, I has only been possible because of my stubbornness.

  • This is not sustainable for other projects. Other people have done most of the work for you, and even if you want something that doesn't quite exist it's always infinitely easier to work of a stable base than to create your own.

Bending seems to be a important word here

Working on spegman's every ref, where I was more concerned with my ability to create content than to perfect it's presentation taught me volumes about this exact issue. Even though I still have frustrations with it, I now understand Jekyll's design choices, and perhaps regret in small part having moved from to this custom setup.