| ▲ | ValentineC an hour ago | |||||||||||||
Commit Strip seems to be down, so here's the Wayback Machine version: https://web.archive.org/web/20260521130338/https://www.commi... | ||||||||||||||
| ▲ | jiggawatts 42 minutes ago | parent [-] | |||||||||||||
I was just thinking of this exact comic, which is etched into my brain for some reason. The obvious counter to this is that we've been going through this evolution of increasing abstraction as developers for nearly a century now. In the 40s and well into the 60s, most code was written either as straight up machine code or an assembly language. MS DOS is almost entirely assembly. UNIX ushered in the era of "high level" portable languages like C, Fortran, and Pascal that some developers hated because they felt like they were losing the fine-grained control that they had with assembly. The compilers just "weren't as good" as humans at optimisation! Then the compilers got better and people started using garbage-collected languages like Perl, Python, Java, JavaScript, and C#. Similarly, many people bemoaned the lack of control over memory allocation, lower efficiency, etc. We're simply stepping up to the next level of abstraction. Look at it this way: decades ago when I first discovered C++ templates, it felt like waving a magic wand in the direction of the computer. It blew my mind that I could simply substitute "float" instead of "double" in between some angle brackets and the compiler would write reams of code for me! We simply have better magic wands and more powerful spells now. | ||||||||||||||
| ||||||||||||||