Friday 1 November 2019

Programmers Are F%$!ing Lazy

It's true.  As Moore's Law still holds true after 50 years and processors double in speed every two years, hard drive density also loosely follows this trend with storage capacities generally also doubling every two years, programmers have just gotten plain lazy.

Let's look at the general hardware requirements needed to run everyone's favourite GUI of choice, MSDOS2019 aka Windoze xx.  While I accept that the hardware requirements are for much more than the basic window manager (that's why M$ has so many anti-trust law suits...) it's still an obscene trend of resource-hunger that comes from people developing in high-level languages instead of lower level C or indeed optimised bits of assembler here and there... But oh no, everything is now written to be hardware-agnostic - everything is now abstracted and interpreted and built on layer upon layer of crap.  Entire operating systems are now being written in fucking Java for fucks sake.  That's like building a house with toblerones and porridge instead of bricks and mortar.

Below is listed the Windoze version, recommended base processor/speed, recommended base amount of RAM and lastly free HD space:

Windows 95                      386             4 MB    120 MB
Windows 98                      486 DX2 66 MHz  16 MB   300 MB
Windows Me                      Pentium 150 MHz 32 MB   400 MB 
Windows NT
Windows NT 3.51 Workstation     386, 25 MHz     8 MB    16 MB   90 MB
Windows NT 4.0 Workstation      486, 33 MHz     12 MB   ?       110 MB
Windows 2000 Professional       133 MHz         32 MB   128 MB  650 MB
Windows XP                      233 MHz         64 MB   128 MB  1.5 GB 
Windows XP 64-Bit Edition       700 MHz Itanium         1 GB    ?       6 GB[5]
Windows Server 2003             1 GHz (x86) or 1.4 GHz (x64)    128 MB  256 MB  2 GB (x86)4 GB (x64)
Windows Vista                   800 MHz         384 MB (Starter)512 MB (others)
Windows Server 2008             1 GHz (x86) or 1.4 GHz (x64)    2 GB    10 GB
Windows 7                       1 GHz           1 GB (x86)      2 GB (x64)      4 GB    16 GB (x86)     20 GB (x64)     (~6.5 GB for OS)
Windows Server 2012             1.4 GHz (x86-64)        512 MB  1 GB    10 GB  
Windows 8                       1 GHz   1 GB (x86)      2 GB (x64)      4 GB    16 GB (x86)     20 GB (x64)     (~6.5 GB for OS)
Windows 10                      1 GHz or faster processor or SoC        1 GB (x86)      2 GB (x64)      4 GB    16 GB (x86)     20 GB (x64
Windows Server 2016             1.4 GHz 64-bit processor        512 MB ECC

As you can see, the trend for faster processors peaks around 2003, however this doesn't take into account the rise in the number of cores a processor has... The memory footprint for JUST the base operating system is now around 1-1.5GB, with much much more needed to do anything useful.

Compare this to the most excellent creation from David Braben in 1993 - the game Frontier: Elite II.  On the Amiga this came on two 880KB floppy disks - Disk 1 was the game disk and Disk 2 was the save game disk... That's a whole entire universe on a single 880KB floppy disk - all gfx, sfx - everything. In fact the entire executable was a mere 400KB in size due to it being written in assembly language.

It won't be long before we see Windoze 2030 that needs a 200GHz processor and 512TB of RAM just to open a text editor.

1 comment: