As we continue our celebration of “30 years of CODE Group,” we travel forward five years from last issue's installment of “the Antique CODE Show” and look at our industry, and the world in general, 25 years ago (or so). The late 90s were an interesting time for our industry. Compared to five years earlier, the internet had rapidly become mainstream. Although hardly anyone outside the software industry had heard of it in 1993, hardly anyone had not heard of it by 1998.

Netscape was the dominant player in the browser market, one of the hottest areas of software development, back then. So much so, that this is generally thought of as the era of “the great browser wars,” with Microsoft pushing into the market with Internet Explorer and going as far as - gasp - bundling the browser directly with the operating system. Although it's unthinkable today that any PC or device wouldn't support direct internet access, back then, this was enough to cause 20 U.S. states to file antitrust charges against Microsoft. The aim was to “determine whether the company's bundling of the browser with the OS constituted an unfair monopolistic practice.” Although it was initially ruled in 2000 that Microsoft had violated antitrust laws and the company was ordered to be split into two entities, that ruling was later overturned on appeal, and Microsoft was allowed to continue operating as a single entity (although under some limitations that affected the organization for a long time to come).

But it wasn't all about Netscape and Microsoft. The music industry was turned upside down due to the emergence of Napster, a peer-to-peer music sharing system that unraveled the business model of the entire industry. At the height of its popularity, Napster had 80 million registered users who happily shared music for free (and arguably illegally) with their peers, until the service was shut down in 2001. At the time, artists that topped the charts included names like Britney Spears, the Backstreet Boys, and Eminem. It's hard to say which songs were the most shared, but Madonna and Elton John songs were up there, and the artists were also among the more outspoken against the practice of peer-to-peer sharing for free. Eventually, the Metallica vs. Napster lawsuit was the start of the end for the service.

The late 90s were also a great time for moviegoers (which included me back then). Films such as “Titanic” (1997), “Saving Private Ryan” (1998), and “The Matrix” (1999) were among the most popular. It's hard to believe that it's been a quarter century since their release. Among the most important software companies that got established in the late 90s was Google (September of 1998). Although it's hard to believe that James Cameron finished “Titanic” more than 25 years ago, it's even harder to believe that Google is younger than this movie, as it's difficult today to imagine a world without Google.

Politically speaking, times were a bit simpler, as our main concern was Bill Clinton's love for cigars and interns. Internationally, nuclear tests by Pakistan and India were the hot topic. The Good Friday Agreement in April of 1998 brought an end to the violence in Northern Ireland. In science and medicine, we hadn't yet completely decoded human DNA, but on the upside, Viagra was approved by the FDA in March of 1998. If you're a reader who was already in the industry back in 1998, this development may have more significance for you today than you imagined back then.

This was also the heyday of the dotcom bubble. The internet had grown rapidly, and everyone wanted to invest in the wildest ideas. Venture capital investment went through the roof and so did IPOs. Very few had solid ideas of how any of this was going to make any money, but “the new economy” didn't bother much with such detail. Who cares, when you can party like it's 1999? The NASDAQ stock exchange grew five-fold in those years, until it all blew up and it plunged from a peak of $5,048.62 on March 10, 2000, down to $1,139.90 on October 4, 2002 (which takes us almost into the timeframe of the next article). Among the biggest and most visible losers of the dotcom era are Pets.com, Boo.com, Kozmo.com, and eToys. However, there weren't only losers. Amazon.com, eBay, Google, and several others, are not just still around but have grown into some of the largest and most influential companies on the planet. I guess our ideas weren't all crazy in those days after all.

Absent from the list of influential companies in the late 90s is Apple. Teetering on the brink of bankruptcy, Steve Jobs had just returned to Apple in 1997. Even Microsoft invested $150 million into Apple in August of 1997, which, in hindsight, was probably not insignificant as a factor in the survival of the company, as it helped stabilize the finances of the company and allowed it to subsequently go on to develop new products such as the iMac and the iPod. But that was all still in the future and Apple clearly wasn't very cool in 1998, except for some niche markets, such as desktop publishing. (When we released the first issues of this magazine, it was all done on Macs.)

Talking about CODE: As far as CODE Group goes, we were around as a small but growing consulting and training organization. Our headquarters had already moved to Houston, Texas. We did a lot of consulting and training and were very active in Windows and internet-based development and had started architecting systems that weren't just object-oriented, but we were starting to think about component-based multi-tiered systems, rather than just “network enabled” software. This was a big deal at a time, and ultimately lead to the “CODE” brand, which originally stood for COmponent DEveloper. CODE Magazine hadn't published its first issue yet (because the overall CODE Group organization goes back further than the magazine), but this is when we first had the idea of publishing a developer magazine that didn't just focus on a single programming language (such as Visual Basic Programmer's Journal, FoxPro Advisor, or C/C++ User's Journal) but covered software development at a larger, more technology-oriented level. The idea was laughed at by many at the time, but has served us very well ever since.

The Technology Landscape

Windows 98 was the operating system many of us used at the time. It tends to be a somewhat less prominent release of Windows, between the major milestones that were Windows 95 earlier, and the subsequent and excellent Windows XP. However, Windows 98 was a very solid version of Windows that improved on Windows 95 in a variety of ways. Internet Explorer 4.0 shipped out of the box and was a very solid browser that supported (and pushed forward) the latest version of HTML. It's easy to forget that Microsoft was instrumental in making browsers and HTML more of a real development environment, supporting JavaScript, VB Script, and a DOM (Document Object Model), which allowed programmers to interact with elements on the page in ways that were previously unthinkable for what used to be a simple document and text display mechanism with hyperlinks. In 1998, if you wanted to look at a modern website, Internet Explorer was a good choice indeed, as Netscape had an increasingly hard time keeping up with Microsoft.

The other parts of the operating system were impressive too. USB was supported for the first time, which was a great step toward simplifying the world of peripherals. All of a sudden, it became a lot easier to use printers, scanners, and cameras. Windows 98 had also improved support for devices such as sound cards, video cards (we didn't call them GPUs back then), and modems (yes, we were still dialing up to the internet and paying horrendous phone bills). Windows 98 was also much faster than Windows 95, with improved memory management and disk caching. The GUI (graphical user interface) of Windows 98 was similar to that first released in Windows 95 (Figure 1). That means a lot of “battleship gray” applications, as well as a Start Menu that wasn't searchable. All in all, Windows 98 was a great choice as an operating system for a user's PC.

Figure 1: The Windows 98 Desktop with File Manager
Figure 1: The Windows 98 Desktop with File Manager

As far as hardware is concerned, users hardly ever had PCs with more than 32MB of RAM, sporting an Intel Pentium processor (Figure 2). Spinning hard disks with 4GB of storage was the norm. If you were modern, your software was installed from a CD-ROM drive. The speed of that drive mattered, and if you wanted to be among the cool kids, you needed a drive that was “24x or faster.” You probably also looked at an SVGA CRT monitor back then. That's right kids: We were looking at 800x600 pixels of resolution back then, and we loved it! Now get off my lawn!

Figure 2: A typical setup of a PC running Windows 98, sporting both a 3 ½-inch floppy drive and a CD drive
Figure 2: A typical setup of a PC running Windows 98, sporting both a 3 ½-inch floppy drive and a CD drive

But Windows 98 wasn't the only Microsoft operating system that was popular in the late 90s. Microsoft also continued to develop Windows NT as the operating system of choice for enterprise servers. NT4 was released in 1996 and would be heavily in use for a long time to come. It was built on NT 3.5 and NT 3.51, which had introduced the 32-bit kernel and a new file system (NTFS), and Active Directory. It's a great operating system, and we still use the successors of much of that technology in modern versions of Windows today. Many developers even opted to use NT4 as the operating system of choice for their development machines back then. It was a bit clunkier for end-users than Windows 98, but it also had a very solid core. For technical people, it wasn't a bad trade-off at all.

This was also when laptop computers became far more popular and mainstream. Although they'd been around for a while, it wasn't until the late 90s that I started experimenting with using a laptop as my main workhorse machine. I still switched back and forth between that approach and more conventional desktop setups (especially for gaming) but having laptop computers with decent horsepower and reasonably good color displays just hadn't been a thing much earlier.

Speaking of gaming: Looking at popular titles, this was when we started recognizing key players and brands that still have significance today. Valve released Half-Life (later, Half-Life 2 was the start of Valve's now dominant Steam gaming marketplace) in 1998. StarCraft eventually sparked competitive gaming and eSports. Unreal by Epic Games was where the Unreal Engine originally came from. Ensemble Studios (basically Microsoft) released Age of Empires, and Bioware gave us the first Baldur's Gate game (Figure 3). This might confuse you because 2023's game of the year is also Baldur's Gate, but that's the successor to the classic game. Both are highly recommended to any avid PC gamer.

Figure 3: The isometric (and very low-res and fuzzy) goodness that is Baldur's Gate 1 in 1998.
Figure 3: The isometric (and very low-res and fuzzy) goodness that is Baldur's Gate 1 in 1998.

But PC gaming wasn't all there was. Sony had already released their PlayStation brand a few years earlier, and Microsoft was hard at work on the first Xbox, which was to become a competitor to PlayStation 2 as well as Nintendo's GameCube, which itself was a successor to Nintendo's successful Nintendo 64 (Figure 4). Games like Mario Kart were all the rage on that platform but would ultimately be surpassed by the amazing next-generation experiences provided by the Xbox and the PS2. But that was still in the future.

Figure 4: The Nintendo 64 was one hot gaming device in the mid-to-late 90s!
Figure 4: The Nintendo 64 was one hot gaming device in the mid-to-late 90s!

Software Development

The world of software development in the late 90s was both in flux and also relatively calm, in hindsight. It didn't seem like it at the time, because we had to come to grips with the realities of the internet and many software developers were still wondering whether this graphical user interface experience was actually good for business applications and many DOS die-hards were still holding on by the skin of their teeth. But the debate had pretty much been settled for most of us then: Windows desktop apps were what serious developers were building, and you just couldn't ignore the internet either. We were developing what seemed to be relatively sophisticated interactive web pages at the time through the use of ISAPI web-server extensions. Just imagine the power: Rather than writing static files with a .html extension, the user could hit a URL and a piece of code could respond, figure out what the user wanted, and send back a string of HTML that was generated on the fly! It seemed as though we'd touched the future (and so we had!).

If you were truly daring, you even dabbled in XML, which was a newfangled standard based on angle-brackets that kinda looked like the then-still-new HTML, but it had more structure. To what end, many people wondered? There was much speculation about web browsers being able to make more sense of XML than HTML, but many doubted its potential. I remember sitting in a keynote at a sizable computer conference in the Netherlands, where the presenter questioned the point of XML and predicted it would go nowhere. He also predicted many other things, such as the demise of Microsoft. He questioned the concept of “visual” development (as in Visual Basic or Visual C++). Literally none of his predictions came true. I forgot the name of the presenter, but I often wondered what became of him.

The most popular programming languages of the late 90s were Visual Basic, C++, and Java. There were also many second-tier languages that achieved a wide degree of popularity, such as Visual FoxPro, Delphi, Pearl, and Python. Some of these rose from there, while others were either at end-of-life or lost significance. A good example of the latter is Visual Basic, which had its heyday in the world of Windows desktop application development. It's clear that its approach to software development has been among the most impactful contributions in business application development, period. It still continued to do so for several decades and into the world of .NET, even when C# took the crown of being the most popular language in the Microsoft .NET ecosystem.

C# itself was born as a brainchild of Anders Hejlsberg in the late 90s (and publicly announced in the summer of 2000). Anders is considered the father of many programming languages and has clearly had a dramatic impact on programming languages in general. He's the original author of Turbo Pascal and the Chief Architect of Delphi. Once he joined Microsoft as a Technical Fellow, he created C# (originally codenamed Cool) in an effort to fix some of the shortcomings of Java. He also later created the popular TypeScript language to fix the shortcomings of JavaScript. On a more personal note, Anders is also one of the most impressive yet nicest people I ever had the pleasure of working with (full disclosure: I worked for the Microsoft Visual Studio team as a contractor in the late 90s, but my personal involvement with C# was not huge).

Although Microsoft had been very strong in Windows development tools, with the main workhorses being Visual Basic, Visual C++, and Visual FoxPro, Microsoft had also originally missed the boat on the internet wave, thinking its own competing Microsoft Network (MSN) had a real chance of competing with the internet (and also CompuServe) as a walled garden within the Windows ecosystem. You can be forgiven for not remembering MSN as a separate technology. The technology is, in fact, so obscure, that I had a hard time finding any screen shots, and I had to settle for the login screen (Figure 5). In an attempt to catch up, Microsoft released Active Server Pages (ASP) as a technology, and Visual InterDev as a development environment for it. It was a first attempt to create an IDE for web development inspired by the ideas established by Visual Basic. The IDE was also shared with Visual J++, which was Microsoft's version of a Java development environment.

Figure 5: The login screen to Microsoft's ill-fated competitor to the entire internet was called “The Microsoft Network.” The name survives as MSN, which is now one of many web sites.
Figure 5: The login screen to Microsoft's ill-fated competitor to the entire internet was called “The Microsoft Network.” The name survives as MSN, which is now one of many web sites.

Although neither Visual InterDev nor Visual J++ were around long (and the logo was one of the better parts of the whole Visual InterDev suite, as seen in Figure 6), these two products still laid the foundation for what would ultimately become one of the most successful software development IDEs and environments ever: Visual Studio for Windows. Visual Studio was the first IDE that was language- and technology-agnostic and allowed developers to stay in the same IDE, regardless of whether they wanted to develop in Visual Basic, C++, C#, or quite a few other languages, and regardless of whether they were building for Windows, the Web, or many other platforms of the future. However, as we're looking 25 years back to the late 90s, none of this had happened yet, and Visual InterDev and the first version of Active Server Pages is all we got. I don't miss those days.

Figure 6: The Microsoft Visual InterDev CD sleeve
Figure 6: The Microsoft Visual InterDev CD sleeve

That sums up where we were 25 years ago from a software developer's point-of-view. We were on the cusp of a lot of changes, but we hardly realized it back then. Nevertheless, a lot of the things we will look at in the next article, when we look back 20 years, was the inescapable future based on what was built in the late 90s. And let's not forget that the late 90s is also the birth of Clippy, the not so beloved grandfather of the popular ChatGPT.