I grew up learning to program in the late 1980s / early 1990s. Back then, I did not fully comprehend what I was doing and why the tools I used were impressive given the constraints of the hardware we had. Having gained more knowledge throughout the years, it is now really fun to pick up DOSBox to re-experience those programs and compare them with our current state of affairs.
This time around, I want to look at the pure text-based IDEs that we had in that era before Windows eclipsed the PC industry. I want to do this because those IDEs had little to envy from the IDEs of today—yet it feels as if we went through a dark era where we lost most of those features for years and they are only resurfacing now.
If anything, stay for a nostalgic ride back in time and a little rant on “bloat”. But, more importantly, read on to gain perspective on what existed before so that you can evaluate future feature launches more critically.
Julio Merino
Fast forward to today, and the most popular text editor among programmers is a website running in Chrome in a window. No wonder most popular applications are Electron trashfires now.
Times sure have changed.
Small correction:
RHIDE is *not* DOS only. I have used it on Linux for a long while, and even today binaries (very old ones) are offered on their project page:
https://sourceforge.net/projects/rhide/files/rhide-linux/1.5/
Unfortunately for all of us, it was a passion project of a single person. And like many other open source projects after that passion fell off, nobody else took over the mantle.
Happy new year to all of you! May it be another great one!
On the topic, I do not share the “before everything was better” sentiment shining through.
Yes, everything was slim but so was functionality. And I don’t want to get back to that spartan “no hints, no semantic structure, no syntax highlighting, no formatting, no VCS” next editors. A today’s git/mercurial plugin alone has more LOCs than the Borland IDEs at that time.
But you are also right point out that Electron hazard and as always its a certain “stay away company” rearing that horse. Good thing is: you have choice!
Last but not least, imagine someone arguing about X/Wayland saying “Nobody willing to maintain” and then getting sentimental about ancient IDEs when majority seems to jump on the VS Code band wagon. Maybe majority or popularity are rarely good reasons for anything.
Off-topic: Steamboat Willie (first appearance of Mickey Mouse) entered the public domain.
I mean, yes, I know it was supposed to, but still feels a bit unreal that you can copy a Mickey Mouse movie and not be hit with a DMCA complaint by Disney.
Somebody uploaded it to YouTube pretty much the moment copyright expired.
I remember playing around with QuickBASIC. The TUI IDE was indeed very easy to use, and productive at the same time. Later I used Geany for most text editing and scripting tasks. But we did lose something along the way. Ease of use, discoverability, lack of distraction. OTOH, maybe the added complexity and contexts of the Internet and GUIs and frameworks make such TUI-based IDEs less useful for today’s needs.
It’s easy to look through rose coloured glasses at the past, but I won’t be going back to a TUI IDE, not even for something as simple as the most basic MCU.
Many of us probably futz around in Arduino IDE from time to time, a bit of experiment here or a what if there, but the minute we want to do anything serious we are out of there and that is the harsh reality. How basic am I prepared to get if I needed to, perhaps Dev-C++, perhaps, maybe Thonny on a very low end SBC, but even RaspberryPIs will run VS Code now. Then there is that whole suite of “OOB it’s not an IDE” type editors like JEdit and Notepad++, “Programmers Editors” they call them! ( It’s not an IDE people. )
I do appreciate those who have spent a decade of their career remapping keyboards to launch the most extensive selection of macros on the planet in VIM using two keyboards, ten fingers and ten toes, but it’s not for me! But I concede that I’m hypocritical, because I know we’ve lost something.
Ah, yes, Borland TASM. I very much liked that environment. For awhile there I was even using MultiEdit, although I am not sure it qualified as an IDE. Still, it was a great editor.
Drunkula,
Ah, yes, Borland TASM. I very much liked that environment. For awhile there I was even using MultiEdit, although I am not sure it qualified as an IDE. Still, it was a great editor.
Yes! It went hand it hand with turbo debugger (worked great with both turbo C and TASM). Their DOS tooling became obsolete, but they did text user interfaces so well that IMHO they would still be better than the windows GUI interfaces that would follow years later. if it were still supported I would still be happy to use it today over MS style tooling. Alas, it turns out that quality is less important when you command a monopoly that can take the market by force.
I still have ISO archived of TASM, C++ 5.0, Builder and other similarly aged utilities from the last 3 or 4 decades, archived for perpetuity and maintained for the purpose of support and cross reference. Actually, behind my desk in the bookcase sit any number of reference manuals, user guides and self help books for all sorts of Borland based products.
While they continually diminish in number there are still actually industrial and medical systems built using these tools that remain operating today, hopefully air gapped. At least once a year I find myself spinning up a VM look into an issue, mostly to design or identify a replacement card, daughterboard or chip, the falling cost of small powerful FPGAs has helped a lot. I gather / hope there are academics somewhere that act as Software / IT archaeologists, like most old stuff maintaining the sources, installers, documents is only part of the issue, you have to retain the knowledge as well. Perhaps becoming a repository of this fading knowledge would actually be a very useful task for AI instead of inventing more IP defeating retail or industrial waste based on the web of lies.
cpcf,
I had borland manuals as well. Sadly I had to get rid of them and nobody local wanted to take anything. Books become obsolete and now days everyone goes online, but there was a time the borland assembly reference manual was extremely handy.
I did work on one of those legacy DOS systems for an HVAC company until around 2020. I don’t imagine I’ll be encountering any more, but who knows…if I can get a job out of it then I wouldn’t mind doing it again. I am in my element with low level programming
I think it will be mostly enthusiasts rather than professionals. The reason we still have mainframes is because the mighty IBM never stopped backing them, but this isn’t the case with DOS and the prospects for professionals died much faster.
Regarding AI, you might be onto something here. I don’t imagine AI writing/maintaining DOS programs has much commercial merit in and of itself, haha. However once we have an effective AI that can write software for linux, that same AI could probably get repurposed to handle all kinds of legacy work as well.
Having a dedicated TUI IDE and skipping having to configure a text editor would be nice, but having a consistent interface (vim and spacemacs) is better.
I’ve compared Neovim and Spacemacs (Emacs) to the JetBrains Goland and PyCharm, and I like Neovim and Spacemacs better (this probably says more about my coding projects then it does JetBrains honestly). Neovim and vim-go works really well for Go, Perl, and Shell Scripting after configuration, and Spacemacs is really great for Python, YAML, ASCIIDoc, Markdown, and just about everything else I’ve thrown at it.
Spacemacs really shines in that it supports layers. Preconfigured, mostly, extensions for various languages and formats which can be hot loaded as needed.
Which is, I guess, the point. Vim/Neovim and Emacs are great after configuration (**after configuration**), but there aren’t many projects which provide Out-of-the-Box configs for various languages.
For Vim/Neovim, there is SpaceVim which provides a Spacemacs like experience, but the Vims don’t support hot loading, as far as I can tell.
I haven’t tried Doom Emacs.
Yep, neovim or spacemacs in tmux over SSH works rather well as a remote desktop, and there will be more resources free since there isn’t a GUI with 12 different web browser instances running.
It’s an easy way to develop a cross-platform application, provided Chromium has been ported to the OS. I don’t like it either, but I also like Linux being a supported platform.
Flatland_Spider,
Those are fine of course, I use VIM today, but those are unix-centric preferences. Borland’s IDE was actually consistent with wordstar, a prominent word processing package for DOS.
I like syntax highlighting but generally dislike editors that try to do more, like auto formatting. I actually end up deleting these features from the local install because I type what I mean and don’t like editors overriding input. Of course it’s all subjective and people have different opinions on this.
I use SSH everywhere and it works fantastically for my console use cases. Not only for console, but port forwarding and remote file access are great SSH features as well!
It’s not my preferred approach either. For all the importance we’ve put into browser technology, I kind of wish browsers weren’t based on javascript and such a cumbersome DOM. Alternatively I wish javascript were a better foundational language. While it is obviously turing complete, javascript is really not an ideal compiler target for other languages in large part because it was never designed to be used as an intermediary language.
Such a fascinating journey back in time! Thom Holwerda’s exploration of the pure text-based IDEs from the late 1980s/early 1990s is a nostalgic treat for those who grew up in the world of constrained hardware and coding magic. It’s intriguing to compare the functionality of those old IDEs with today’s sophisticated counterparts. The evolution is impressive, yet it raises questions about the features we ‘lost’ along the way.
powerapps training
The rant on ‘bloat’ hits home for many of us who’ve seen the transformation in the industry. Looking forward to gaining a fresh perspective on the roots of IDEs and how it shapes our evaluation of future feature launches.