Hlavní obsah

Software Development News, Internet, World Wide Web

Foto: web

World Wide Web

One of the original anti-virus programs from the late 1980’s and, in my view, set the path for much of the innovation that followed, particularly with heuristic approaches

Článek

This is a slight departure from my normal security and risk management topics, but is something I’ve been getting more interested in. There are now a myriad of books like „A History of the World in 100 Objects“, the original BBC podcast and many others in this genre across a range of subjects.

This got me thinking about what are the computer programs, or more correctly overall software systems, that have changed the world. Everyone will have their own opinions, perhaps strong opinions, of what should be on this list. First, to help determine what this list might be we should set some criteria for inclusion:

  1. Societal Impact. It has to have had a broad societal impact either directly in what it does or the other software it enabled.
  2. Self-Contained. It has to be relatively well defined / self-contained. While few important software systems can truly be considered to be a, literal, computer program we should bias toward this as much as possible.
  3. Precursory. It set in motion a range of similar variants, perhaps being the original in its category that spawned many other implementations, or even a whole industry.

I have subdivided these into some broad categories so it’s not just one long list.

Operating Systems

  • OS/360. The iconic IBM mainframe operating system that was the architectural breakpoint between what came before and what came after, whether it was VSE, MVS, VM or OS/390, all were spawned in some way from OS/360.  The challenges of its development are the wellspring of the lessons in Brooks’ The Mythical Man-Month.
  • Multics. The precursor to pretty much all operating systems that we use today.
  • VAX/VMS. Ok, I’m putting this in mainly because I spent a few years building various applications on VMS and I really enjoyed the platform and everything about it. But, seriously, I think VMS and DEC’s other platforms provided that path out of the mainframe, before PCs and well before distributed computing. This opened up a whole array of applications like process control systems that needed more power than micro controllers but less than a mainframe. Indeed, Dave Cutler brought a lot of lessons from VMS into Windows NT (see next point).
  • Windows. The operating system that made the PC revolution happen (along with MS-DOS). Some of you might remember the early days of the personal computer that were a plethora of different proprietary operating systems (by the way, this is a great book on the topic of Digital Retro) that were all displaced by Windows. It is specifically worth calling out Windows NT as the pivotal transition from the classic desktop O/S to what became server class capabilities. But, let’s not dwell on putting TCP/IP into Windows 95.
  • Linux. I debated with myself whether to just list this as Unix, or even the original AT&T Unix, and hence bring in all the variants like BSD, HP-UX, Solaris, AIX and all the other flavors that were built off each other. However, while all these got extensive use in various industries it was Linux that swept them all away. It also swept away many proprietary O/S’s and delivered not only the pervasive enterprise and cloud environment we have today but also Android for mobile devices, itself derived from Linux / SE-Linux.
  • iOS. It’s hard not to mention iOS, despite it being an amalgamation of various other O/S components and kernels but it’s hard to debate, along with Android, the extent to which this has revolutionized mobile computing.

Programming Languages & Software Lifecycle Management

  • C. There were a number of pervasively used programming languages that emerged in the 1960’s and 70’s such as Cobol and Fortran but I think it’s fair to say that C, whether it is because of Unix and the related Internet ecosystem, became more widely used and in turn (for better or worse) begat a whole stream of variants (e.g. C++) and ultimately replacements with more memory safety properties, but many things trace lineage to C.
  • Java and the Java Runtime. Java, and it’s various associated run time environments on end points of various scales and enterprise server infrastructure, was a departure from prior approaches and, despite its massive deployed code base in many organizations, is really on this list for the approaches it spawned and the languages and run times that build on its original innovations.
  • Basic. Basic has to be on this list despite it having little true significance in deployed code bases. But, something that introduced 2 or 3 generations of people to computer programming at an early age is consequential.
  • Python. Similarly, in the modern era, and actually in massive real world use cases, Python has become the language of choice for millions, and maybe even billions will have some passing use as part of their education.
  • Git. There are clearly a plethora of IDEs, version control systems, packaging and deployment environments but I don’t really think any of them truly stand out enough to be something that “changed the world” in itself - except for Git and all that came of it.

Communication / Network Stacks / Internet

  • IBM VTAM (in SNA). The original software-defined network (sort of) and network programming services interface coupled with a full protocol stack. Its influences, again for better or worse, but mostly better are still felt across the industry.
  • Novell Netware / IPX. Ultimately swept away by later versions of Microsoft LAN Manager and, of course, TCP/IP implementations. The effects of Netware, IPX and related protocols and services such as directory services on the ecosystem echo today in many products.
  • Ethernet. Some might consider this more hardware than software, but of course fundamentally this is an array of software that drives this link layer protocol and all its variants that became dominant and displaced Token Ring, FDDI, ARCNET and others.

Máte na tohle téma jiný názor? Napište o něm vlastní článek.

Texty jsou tvořeny uživateli a nepodléhají procesu korektury. Pokud najdete chybu nebo nepřesnost, prosíme, pošlete nám ji na medium.chyby@firma.seznam.cz.

Související témata:

Sdílejte s lidmi své příběhy

Stačí mít účet na Seznamu a můžete začít publikovat svůj obsah. To nejlepší se může zobrazit i na hlavní stránce Seznam.cz