txt/hack.txt

<0 minute read | 2024-08-16
Hacking: The penult step of simplicity
====================================

That sounds rather contradictory, doesn't it? Hacking, the act of cobbling together solutions from unintentional parts, would be the antithesis of simple, elegant solutions. A hacker can't help (or maybe he can) an inefficent part; the true art is the complete malleability of rigid parts.

Hacking is the much needed precusory work to a complete solution. Once you strip away the superfluous, you are able to truly assess the nature of the solution.
Generally one would;
1. Create a prototype
2. Bug test
3. Bug fix
4. goto #1

Hacking gets you a non-zero amount of #1; you're necessarily doing less work.

The astute observation is that hacking requires things to hack on, and that hacking is thus an intermediate step towards elegance. People break things all the time, hacking is just the profession. Hacking is the necessary coupling between different interations and intentions in programs. Good programs acknowledge this, and make the hackers' life easier (think the entirety of UNIX).


Post Script
===========
Some jumbled graphical representations

Typical coupling:
Prototype -> Hack -> Elegance
                  \____ Hack -> ...

Hacking is a iterative processs:
Hack -> ... -> Hack -> Elegance

One man's elegance is another man's prototype:
Prototype <-> Elegance
           |_____ Hack -> Elegance

-------------------
Last Edit: 2023/06/09
txt://#