So, something that’s really amazed me since starting this channel is
the amount of support you all have shown me.
What really blows my mind is that a few people have even sent in donations.
It’s taken me awhile to get to these, and even longer to figure out how I wanted to
show them off, but it’s time for the first NCommander mail call, where we do a mini-episode
for each item that has been sent in, so, without further aude, let’s get right to it!
So the first package comes from Fnord66 from
SoylentNews.org, and is a bunch of floppy disks!
In all seriousness, this, along with a second item he sent were the first donations sent
to this channel as sort of a “getting started” pack.
While I’ve shown the DOS 6 floppies, and the Brief Text Editor before, the rest is
new so to speak.
In short, we’ve got a full set of the legendary 90s compiler Borland C++, as well as a disk
labeled DESQView.
When I originally received this package, there were also some low destiny disks that came
along for the ride but they’re a friend who needed them to reinstall a system.
I’m not going to cover the DOS floppies here, since well, I’ve used these in a TON
of videos, but let’s go through the rest.
I actually don’t know that much about Borland’s development products so this is more of an
exploration, and initial reactions sort of video.
instead of a more in-depth look ...
I’m going to get the ThinkPad out for this which is still running Windows 95 fresh off
the HP Jornada video.
I’ll start with Borland Brief since, no pun intended, this will be brief.
Brief is a full screen text editor, and as I understand it, it was relatively popular
in the pre-DOS 5 days, since prior to that point, DOS only shipped with EDLIN.
Installation is very straight forward, with autoexec.bat and config.sys updated for me,
although since this is a Windows 95 system, I did have to reboot by hand.
This isn’t the first time I’ve used Brief; it made a cameo back during the Graphical
File System video, and while I didn’t find it hard to use, it’s not entirely intuitive either
For instance, I accidentally quit to desktop while trying to save a file!
I know that Brief was sold as a standalone package, but I’m not certain if it was included
with some version of the Borland development tools as well.
Still, it’s a perfectly serviceable editor, and I’ll probably use it on any system running
early DOS since it’s a massive step up from EDLIN.
In short, it’s a very welcome addition to my collection, and I expect it will make future
appearances down the line
With the Brief appetizer taken care of, let’s
move onto the main course.
Since people seem to get a kick out of feeding me floppies, I’ll point the camera at the
ThinkPad directly, and hopefully through the magic of DaVinci Resolve, make the passive
matrix LCD actually look decent on camera.
While I know a bit about Borland tools by reputation, I’ve never really used them,
so this is pretty much all new to me.
For those who aren’t familiar with early DOS development, Borland was essentially one
of the kings of with its Turbo Pascal and Turbo C products dominating the low-cost market.
Later on, they had specific products for DOS, Windows and OS/2 combined with support libraries
for those platforms.
I had assumed that these product lines were entirely separate, but as it turns out that
at least in Borland C++ 2.0, Windows Support was included in the box.
After examining the settings, it was just a matter of feeding the floppy disks and running
through the install process.
After installation, the README file was displayed
and I found a few interesting tidbits of information.
The Windows support included in the box is for Windows 3.0 and there’s a special version
of Turbo Debugger included for it.
Afterwards, it’s time for a reboot.
[Startup Chime]
After remembering the wonderful Windows startup chime, it’s time to investigate a bit.
No new icons were added to the Start Menu, but I had a heap of new utilities in BorlandC
directory.
BC opens the famous Borland C IDE.
SInce it’s pretty much traditional at this point, I wrote out a quick hello world program
in C++.
However, this is a pre-standard compiler, so there are no namespaces for one, and second,
I have apparently forgotten that a newline is endl.
After the necessary Googling, I got Hello World to build!
Afterwards, it’s time to explore a bit more.
Looking at the tools, I was a bit surprised to find what appears to be Microsoft’s resource
compiler instead of a Borland reimplementation.
That, and a quick examination of windows.h suggests that Borland indeed licensed at least
parts of the official Windows SDK for this package.
One thing I didn’t find however was the famous Borland’s OWL.
OWL, standing for Object Windows Library was basically Borland’s answer to Microsoft’s
Foundation Classes, and essentially existed making Windows programming more tolerable.
The missing OWL aside, there was your usual inclusion of various demo applications, and
I was able to build a 16-bit Windows app without issue.
However, Turbo Debugger for Windows was incredibly glitchy, likely due to the fact that 95 is
far newer than what it was intended for.
For one, the Windows cursor and the DOS one were showing up at the same time.
I also noticed that when leaving Turbo Debugger, I had GDI corruption on screen.
I may need to set up a period correct machine and play with this a bit more.
For this brief dive, I didn’t do any debugging, but I do question how well this could have
worked in practice.
Until Windows 95, Windows used cooperative multitasking, which meant any single application
could crash the system, and the few times I’ve had to hook a debugger up to the 16-bit
versions of Windows, it was a two machine affair.
Early Windows development fascinates me, so it might be a good weekend project for a later date.
Beyond that, I think that covers the penny tour of Borland C, and brings us to the last
disk in this set, DESQView.
DESQView, made by Quarterdeck Software, is
one of quite a few multitasking DOS solutions, and probably one of the more fondly remembered ones.
Quarterdeck Software was essentially the premiere line of DOS enhancement tools, but its market
share was eroded by both DR-DOS, and Microsoft’s own tools.
While I was able to install DESQView under Windows 95, I had to drop to DOS Mode to actually use it.
After loading it up, I get the DESQView menu, and the ability to load applications.
Multiple DOS applications can be loaded side by side, so for instanceI can open up EDIT,
then QBASIC, and even overlay Brief on top.
DESQView also supported macro recording, and could even juggle the 16-bit versions of Windows if installed.
All of this is done through the DESQView menu which is accessed by pressing Alt by itself
which is a relatively simple interface for managing and accessing applications.
DESQView itself had a fascinating history, with multiple revisions and rewrites, including
a X11 compatible version known as DESQView/X
I’m currently trying to track down a boxed copy of DESQView and DESQView/X for a more
in-depth exploration in the future.
I especially want to compare it to IBM’s TopView.
Still, I think that will do it for a quick overview for now.
Next up is this sealed copy of Microsoft’s Visual C#, which is also from Fnord66.
Visual C#, as the name might suggest is a component of Microsoft’s Visual Studio line
of development tools, and was basically one of two introductory tools to programming for
Microsoft’s .NET environment.
.NET could be best summed up as Microsoft’s answer to Sun’s Java Runtime Environment
and was also intended as a replacement for many of the legacy interfaces that had accumulated
up to this point.
It also helped remove dependence on the x86 architecture, since .NET code was compiled
to bytecode, and not raw machine opcodes.
This was seen as especially important, since industry wisdom was that Intel’s new 64-bit
Itanium architecture would be the “next big thing”.
While this future didn’t quite come to pass, .NET still is a major cornerstone of Microsoft’s
product line.
I do like collecting old development tools, and in this case, this boxed set will likely
be very helpful when I make a video on .NET’s predecessor, MSJVM, and Visual J++.
While it might be a while before I make that video, I was kinda excited to unbox this in
it’s own right.
This package was quite heavy, and I knew from experience that Microsoft generally included
quite a few pack-in goodies, and on that note, I wasn’t disappointed.
At the top of the pile was this book providing an introduction to the C# programming environment.
This wasn’t too surprising since Microsoft had just released C# to the general public,
and this would be an important first step to onboarding new developers.
I flipped through it a bit and it seems to be a relatively good primer on the language.
Continuing through the pile, next up is this quickstart guide, which just outlines how
to install Visual C#.
There isn’t much to say about it, but one thing of note is that this version of Visual
C# was also available on DVD.
I had been under the impression that Microsoft didn’t start using DVDs for software distribution
until much later, but it appears I was wrong on that account.
Putting aside this quickstart guide, we then come to this box labeled “Visual Studio
.NET Resources”.
Onpon unboxing this box within a box, the first thing I spotted was the usual set of
adverts for things like .NET books, and Crystal Reports.
There was also this coupon for dotfuscator, which is a tool meant to help osculate and
complicate reverse engineering.
.NET binaries.
Those are pretty typical finds for these types of packages, but what I didn’t expect were
these giant posters.
They appear to be a comprehensive API reference for the .NET environment subdivided by component.
These posters are so large, I couldn’t unfold them properly at my desk, instead I had to
lay them out on the floor to show you all.
They honestly feel like something I’d see posted in a classroom.
I’m not the biggest fan of programming in C#, so I don’t think I’m going to hang
these, but they’re really neat regardless.
Finally, we come to the last but definitely not least important item: a hefty collection
of CD-ROMs.
The first one is the Visual C# installation disk, which, you know, shouldn’t be a surprise.
The second is though, is the strangely labeled “Visual Studio .NET Prerequisites” disc.
Just saying that name alone is a bit of a mouthful, but there is a deeper meaning here
that we’ll explore in a bit.
Next up, we have the three CDs representing an offline copy of Microsoft's .NET MSDN library.
These are especially welcome because Microsoft has an extremely annoying tendency to delete
old information off their website, and depressingly,
these reference discs are often the last surviving
documentation for legacy Microsoft products.
I suppose there’s a silver lining in that it’s a lot easier to archive these than
any potential dead tree documentation.
Finally, rounding out the set, we have a pressed copy of Service Pack 4 for Windows 2000.
There’s not much to say about it beyond that!
With that last disc out of the way, the unboxing was complete, and it was time to install.
To that end, I decided to spin up a new Windows 2000 Professional VM.
I generally have relatively fond memories of Windows 2000, and even now, I still think
it's a high point in Windows history.
VirtualBox still supports Windows 2000 out of the box, and I was able to go through the
installation process without a hitch.
After installing the VirtualBox Additions CD, we’re ready to install the main event.
Inserting the Visual C# disk brings up this installation wizard which has four simple
steps.
Right out of the gate though, we’re greeted
with a warning that certain prequistates components
are missing.
More specifically, it wants IIS, and FrontPage Server Extensions for web services development.
I don’t intend to explore web development in this video, but it’s easy enough to install
IIS to make the installer happy.
After the requistate trip to Add/Remove Programs, we’re prompted to install even more prerequisites.
In this case, the installer wants that Visual Studio .NET prerequisites disk that I talked
about before.
I’ll let that install, and explain just what this disk is providing.
Earlier versions of Visual Studio had each programming environment such as FoxPro, and
Visual Basic be it’s own independent tools.
The migration to .NET was Microsoft’s first major effort in unifying all of its tools
into a common framework, which nowadays is referred to as the Visual Studio Shell.
The idea was that you would install the basic shell environment, and then whichever Visual
Studio products you owned, such as Visual C#.
The shell environment was intended to provide a more consistent environment for developers,
as well as allowing ISVs to create their own tools for extending Microsoft’s products.
In practice, this was not a smooth migration, and I strongly remember the Visual Studio
environment being a fairly buggy mess until 2005.
With that tangent aside, let’s back to the installation.
As is the Microsoft tradition, the Prequestates disc required us to reboot the machine before
we could continue..
With all the grunt work out of the way, we’re now ready to install Visual C# proper.
This is a fairly anticlimactic process, which basically just involves inserting the disk,
and clicking through a few prompts.
This is followed by the .NET MSDN Library installation.
It’s rather impressive that the full documentation set eats up 1.9 gigabytes.
I should note that this isn’t even a full dump of MSDN: it’s merely the C# components.
The MSDN installation merely asks for all three disks, and then we’re returned to
the main “four step” wizard to install updates.
Unfortunately, Microsoft update servers have gone away in the 18 years since this box set
was made.
While I could hunt around for hotfixes and service packs, I think we can start playing
with Visual C# “as is”.
Jumping into the Start Menu, we can see that we have “Microsoft Visual Studio .NET 2003”.
If we had multiple Visual Studio products, such as Visual Basic .NET installed, we’d
be able to access them all through the Studio interface.
This is why parts of the UI appear unnecessarily complex at first glance.
Since we seem to be up and running, the next step is to create some Hello World programs,
one graphical, and one text based.
As to be expected, the console based Hello World is pretty simple to say the least.
It’s really just a call to System.Console.WriteLine.
After compilation, we can clearly see that everything is working.
In contrast, a graphical Hello World environment is slightly more involved.
By loading up the Windows application template, we get this drag and drop interface for creating UIs.
This is what Microsoft calls WinForms, and its their solution to enabling rapid prototyping
of desktop applications.
In many ways, this is essentially a reimplementation
of the classic Visual Basic 6 environment.
One thing I did run into is that the Visual Studio interface was somewhat uncooperative,
and I had some trouble placing elements down on the template.
This was a fairly blunt reminder that 2003 was not a high point for Microsoft’s development tools.
I could have added more functionality, but it’s a rather good showcase of how rapidly
you could prototype an application’s user interface.
Now, I’m pretty sure most of you watching would be curious if these binaries would work
“as is” on modern versions of Windows.
.NET took quite a long time to mature, and Microsoft support for early versions of the
framework is somewhat hit or miss.
To be honest, I didn’t actually expect this to work, but for the sake of SCIENCE, I copied
these binaries over to the Windows 10 installation on my laptop.
I suppose it’s to Microsoft’s credit that these binaries work “as is”.
I don’t know if this is due to intentional backwards compatibility, or just an example
of “it works by accident”.
Finally, I will note that I can run these binaries under Linux with Mono, but I do get
a warning about the framework version.
Maybe at a later date, I’ll look into a more in-depth stress testing of .NET’s backward
compatibility.
While there’s quite a bit more I could say about Visual C#, and the .NET framework in
general, I think this a good enough overview for this mail call.
As usual, if you liked this content, please like and subscribe.
If you really liked this content, consider hitting that bell, or perhaps even supporting
me on Patreon.
The overwhelming support for this channel has been amazing, and there are plenty more
things I hope to share with you all.
It’s on that note that this is NCommander, signing out, and wishing you all a pleasant day!