Ask HN: Examples of desktop software with 20+ years of longevity?
Some desktop apps have been developed for 20+ years and still running and available. There are not many desktop apps with longevity (and rewrites).
Examples of apps still available:
- Quarx: QuarkXPress (1987)
- Corel: WordPerfect (bought by Corel in 1996), CorelDraw (1989)
- Xara: Xara (1994) - a Windows vector illustration app still in development
- Fontlab: Fontlab (1993 for Windows)
- Bare Bones Software: BBEdit (1993)
- UltraEdit: UltraEdit (1994)
- Borland/Embarcadero: Delphi (1995)
- Fantaisie Software: PureBasic (2000 for Windows)
- IBM/Eclipse Foundation: Eclipse (2001)
What other examples of desktop apps 20+ years old and still in development? (Excluding Microsoft, Apple and Adobe examples because everyone recognise their apps.)
This is very normal in the open source world: Half of the desktop software included in a modern Linux distro I was using in the late 90s!
From memory: VLC, GIMP, Blender, Audacity, Firefox, Gedit, OpenOffice, XBMC (now Kodi), FileZilla - the list is HUGE
Find your favourites here: https://en.wikipedia.org/wiki/List_of_free_and_open-source_s...
Emacs is from the 80s. (vi probably older, but it might be considered more different from a modern vim.)
From the wiki:
"The first operational EMACS system existed in late 1976."
Wikipedia says that vi was first released in 1976.
Vim is not Vi. It's a project that initially emulated its behaviour and then extended it. So I would say that Vim is from 1991.
Vim was a fork of the Amiga port of Stevie which was first released in 1987.
Notepad++ is close: https://en.wikipedia.org/wiki/Notepad%2B%2B, 19 years ago. It's text editing engine, Scintilla, is 24 years old https://en.wikipedia.org/wiki/Scintilla_(software)
Staroffice which became OpenOffice and Then Libreoffice would be another
AutoCAD is 40 years old
I love Notepad++. I dual-boot Windows and Linux and on Linux side it's all fancy neovim setups. But when I boot Windows to play games, it's always Notepad++ I use to edit game mods or their configuration etc.
Happy to see it's still maintained, according to Wikipedia, last update this month. Even happier to see it's open source(!?) I can't remember if it was always open source or if it became open source at some point.
On Linux, I use Kate, the (imo superior) Notepad++. It even has vim bindings (which I turn on accidentally and then have to burn the editor with fire until it stops)!
Does Kate have a function list panel that supports Markdown headings? And the ability to define projects that include files from all over the file system rather than just one directory? Those are killer NP++ features for me.
I have similar fond memories. I think it's the first development tool I ever paid for, and I do think I paid for it.
There was another editor that I liked at that time, though, and it's possible I'm confusing which one I paid for. But Notepad++ won in the end.
Photoshop, the grand-daddy, released in 1990: https://en.wikipedia.org/wiki/Adobe_Photoshop
After effects was Aldus in 1993: https://en.wikipedia.org/wiki/Adobe_After_Effects
Cinema4D was released for the Amiga in 1993: https://en.wikipedia.org/wiki/Cinema_4D
Lightwave 3D started in 1990: https://www.lightwave3d.com/
Poser was started in 1995: https://en.wikipedia.org/wiki/Poser_(software)
3DS max in 1996: https://en.wikipedia.org/wiki/Autodesk_3ds_Max
Maya was released in 1998: https://en.wikipedia.org/wiki/Autodesk_Maya
Fusion compositing software has been around since 1996: https://en.wikipedia.org/wiki/Blackmagic_Fusion
OmniGraffle started in 2001: https://en.wikipedia.org/wiki/OmniGraffle
Blender and Houdini are also long-timers.
Is PageMaker (also Aldus) still around?
Aldus was purchased by Adobe. PageMaker was discontinued in favor of InDesign and QuarkXPress, which are both still in development today.
And QuarkXPress launched in 1987
- Mathematica(https://www.wolfram.com/mathematica/scrapbook/) — Still going, and Stephen Wolfram won’t let you forget that
- xScope (https://xscopeapp.com/history) — OK, I’m cheating, 19 years, but still a notable tool in my toobox
- Transmit (https://panic.com/transmit/) — Though it debuted as “Transit”, it’s been going since 1998
I remember the change from Transit to Transmit. That is how long I'm using that app :)
Beyond Compare by Scooter Software.
Beyond Compare is perfect software (in my not so humble opinion). I use it every day.
I used it 20 years ago when I was forced to use Windows and Windows had zero adequate tooling for software development. For 15 the last years I have used only Linux and getting proprietary software feels very remote. I can get more than I'll ever be able to learn with just a single installation command.
I still use IrfanView, which is 26 years old (1996)
Firefox 2004 = 18 years, though I remember using the older version Firebird (https://en.wikipedia.org/wiki/Firefox_early_version_history) already. Thunderbird (July 2003)
And SeaMonkey is still very recognisably the same program as Mozilla Suite 1.0 from 2002.
heh, I was gonna say Paint.NET but that was also 2004; just a year off!
Emacs comes to mind: it has a codebase stretching back to the 1970s and is still actively developed, with a dedicated following of users (myself included).
Emacs is not really the classical desktop-app. It's a terminal-app that just happened to also have a GUI.
I think most people use it with the GUI, and the GUI version has features that the terminal-only version doesn't.
I also use the GUI, because of additional keys supported by it. But like most(?) people, I've deactivated the GUI-elements, as they are pretty useless. But ok, I guess it could be called a desktop-app because of this.
I also routinely rely on the GUI version’s ability to display images inlined in the buffer. It is true that it doesn’t have the UX of other, newer GUIs, but it is still meaningfully different from the terminal version.
Well, technically, this depends on the environment and is also working in proper terminal. But all the proper terminals are AFAIK GUI-terminals, so it's a thin line I guess.
Emacs by default can show images. With Exwm can be your window manager. With EMMS, your audio and video player. With doc-view and even more, with PDF-tools, your document viewer. With Org-Mode, your brain on stereoids. With ERC, your IRC client. With Telega, your Telegram client. With Malyon, your Z-Machine interpreter. With M-x Calc and Gnuplot, your CAS lite. With Maxima and Texlive, your medium CAS with inline equation output and plotting.
I consider any user-facing application that presents its own interface and that a user runs on their own computer a desktop-app. Whether the UI gets rounded corners, animations and smooth scrolling is not important, and neither is whether your UI elements are submitted for display through an Wayland/X11 socket or through command sequences over stdout.
By that logic, any android or iOS-app would be also a desktop-application. As also any DOS-App and anything with curse-interface. What about interactive commandline-apps? Like a database-shell? They also have their own interface, it's just made of text.
Any DOS app with a curses interface is a desktop application, yes. Any terminal tool with a TUI is a desktop application. A command-line tool without an interface (just arguments and pipes) is not, because it does not aim to be interactive. A terminal tool that just asks questions is a bad desktop applications, but simple form apps exist in the GUI world too.
All UIs are made of text and symbolic visual elements. Whether you draw your button with unicode block characters, a GtkButton, a Flutter TextButton, or a HTML <button> does not matter in the slightest from the perspective of being a desktop app or having a UI.
The reason an Android an iOS app is not a desktop app is because it does not run on a desktop. A minor distinction, but the way we use our pocket computers is different from how we use our desk computers and so we distinguish between them. The line gets beautifully blurred once you run the iOS app on macOS or Android app on Windows 11, but humans are bad at categorizing things in ways that remain consistent for more than a few years - just ask any biologist.
> Any DOS app with a curses interface is a desktop application, yes. Any terminal tool with a TUI is a desktop application. A command-line tool without an interface (just arguments and pipes) is not, because it does not aim to be interactive. A terminal tool that just asks questions is a bad desktop applications, but simple form apps exist in the GUI world too.
Ok, fair, but a very unusual definition.
> All UIs are made of text and symbolic visual elements. Whether you draw your button with unicode block characters, a GtkButton, a Flutter TextButton, or a HTML <button> does not matter in the slightest from the perspective of being a desktop app or having a UI.
But it does matter for a _G_UI whether you have actual graphical elements, or just text. There is a significant differences in ability coming with those.
> The reason an Android an iOS app is not a desktop app is because it does not run on a desktop. A minor distinction, but the way we use our pocket computers is different from how we use our desk computers and so we distinguish between them.
Android and iOS do not run only on smartphones. People working on tablets, use them similar to the normal laptop/notebook/PC table-setup. Taking a classical PC-Desktop as the base of your definition falls apart very fast today.
> humans are bad at categorizing things in ways that remain consistent for more than a few years - just ask any biologist.
The established definition of desktop, mobile, gui, tui and commandline is pretty consistent for some decades now I would say.
I would say that the distinction between TUI and GUI - outside "how would I use this tool remotely" - is mainly one for the developer. Take ImGui (https://github.com/ocornut/imgui, an immediate mode GUI library) for example - the examples are much closer to TUI interfaces than a Swift UI app - the only difference between that an a terminal UI would be that the lines are thinner and that text has non-uniform spacing.
Does that make ImGui a TUI? Or make TUIs a GUI? Why are those thin visual lines graphical, if the slightly thicker visual lines drawn by your graphical terminal emulator with support arbitrary color precision and inline image rendition is not?
Maybe the issue is that it there is a terminal emulator to visualize the representation. But if an application that is not graphically heavy and needs an intermediary is a TUI, does that make most utility electron apps TUIs?
The difference between a TUI and a GUI is just an implementation detail, and these do not matter in the distinction of desktop app or not. Heck, some modern terminal UIs are more graphically appealing than some GUI apps.
And remember, the question was about desktop, not GUI specifically.
> The established definition of desktop, mobile, gui, tui and commandline is pretty consistent for some decades now I would say.
Considering that all good desktop apps were TUI apps 3 decades ago, that mobile apps are in their modern form has basically only existed for 1.5 decades, and that running mobile apps as desktop apps and the general merge between the disciplines is only a few years old at most, I'd say that this statement doesn't quite hold.
> Take ImGui (https://github.com/ocornut/imgui, an immediate mode GUI library) for example - the examples are much closer to TUI interfaces than a Swift UI app - the only difference between that an a terminal UI would be that the lines are thinner and that text has non-uniform spacing.
What I see there is a spatial interface with complex layout, z-axis and graphical elements. A bit hard to replicate on a normal terminal.
> Does that make ImGui a TUI?
TUI and GUI are not defined by the actual complexity of a real application, but the environment which gives them theoretical abilities. With a GUI, you can have pixel-perfect control over every element. With a TUI, you are normally limited to character-level of control. Of course can you also use pixels without a desktop, but you would still leave the terminal-environment and enter the framebuffer for this or something similar. Though, to be fair, at this point it indeed can become a bit fuzzy.
> With a GUI, you can have pixel-perfect control over every element. With a TUI, you are normally limited to character-level of control.
So when I have pixel-perfect content render in a terminal emulator through Sixel graphics, and have inconsistent font rendition and problematic CSS box wrapping in a Web or Electron app, does that make the former GUI and the latter TUI? ;)
> TUI and GUI are not defined by the actual complexity of a real application, but the environment which gives them theoretical abilities.
And indeed, this gets to my point. The difference between a GUI and a TUI framework is more akin of the difference between, say, SwiftUI and WinForms, than something presenting a different mental model or experience for users. There are aesthetic differences, but there are just as stark differences between Win32, Aero, Metro and Sun Valley Windows GUI styles.
Sure, modern GUI applications can do more, but no user cares that Outlook could have had pressure-sensitive, angle-dependent Wacom tablet tool integration, and no so user would care that a TUI email client can't.
Or perhaps an operating system just missing a good text editor ;-)
(to be clear, I love emacs, and use spacemacs as my distro!)
I'm sure you'll see lots of examples in answers to your question. You can add millions of not-household-name business programs to the list.
Any OS that has been around a while, and is still active (aka Windows, Linux, MacOS etc) will have lots and lots of long-life software.
It's an interesting dynamic because newer programmers have this impression that "software has a short life-span before it's eclipsed by something new and shiny."
In truth, it's the opposite. Y2K showed us that software literally written in the 60s was still in play (30+ years) and stuff from the 80s (10-20) years was common.
Even today COBOL programs exist, and that was unfashionable 30 years ago.
This idea that you just rewrite everything every 5 years is a complete myth and yet every generation (including my own) has this impression when they start out.
20 years is actually not that old. When I attend conference's and take a straw-poll, many programmers there have a single product that originated in the DOS era, and have been actively built on for more than 30 years. DOS, 16 bit Windows, then 32 bit, even 64 bit, Web, Mobile, the more it changes the more it stays the same.
The opposite is not true. Most software does have a short lifespan.
But there are a few exceptions.
The parasolid geometrical kernel is from the 80's, underlies many of the major CAD products today. Same for Dassault's ACIS and its lineage.
Also: VLC, Matlab, Mathematica, many of the major DAW programs like Cubase
My mind immediately jumped to CAD (that being my domain)
While a lot of packages have come and gone, the heavy hitters have been around a while:The baby of the bunch is DS Solidworks 1995, still 27 years.
Supermemo v7, Piotr Wozniak's spaced repetition (and a bunch of other things) platform, was rewritten in Turbo Pascal in 1993. The most recent version, 18, is an obvious continuation of the same interface (to me, the most striking difference from Windows 3.1 to modern is window decorations).
Reason (music making software). Released in 2000 and still an actively developed code base. Still some code from 23 years ago running in production :)
music software is a full field of long-running products:
Pro Tools: 1991
Logic Pro: 1993
FL Studio: 1997
Ableton Live: 2001
Max/MXP: 1980s, 90s as commercial product
Also notation software:
VLC Media Player is 22 years old
PuTTY SSH client is 24 years old
The mIRC IRC Client is 28 years old
Theatre Manager (https://www.artsman.com/about/) is, depending on how you count, up to 37 years old.
Software I use regularly:
Firefox is over 20 years old if you count Phoenix.
Scribus will reach 20 years in a month
Inkscape will be 20 years old later this year
GIMP is 25
Thunderbird is very close to 20...
VLC is 22
MATLAB is nearly 40 years old, though it's current GUI version is probably 22 years old?
gpredict is 22
ROOT is nearly 30 years old
GNOME is 24 years old
I still use Paint Shop Pro 6. Purchased it in 1999. I still use it today on a daily basis (screenshots cropping, resizing, cleaning, censoring, etc.).
Basically copy-pasted the folder to every new laptop/computer I used since. I tried several other image manipulation tools but always came back to launching psp.exe.
[EDIT: I see many people answered things like Firefox or Photoshop. As I understood your question, you meant software compiled 20 years ago or more and still running on modern computers. Otherwise, yes, I probably can include things like VLC, notepad++, Firefox, Office suite, etc. but it seems to me that is not the initial goal of your question.]
I am sure you are happy with old software from 1999 but have you tried more modern software?
The technology has improved a lot even for basic operations such as resizing or fixing colours.
Probably. Everytime I installed a new Windows I tried using the latest Paint software, but it always felt more complicated for simple operations, whether it was more clicks needed, missing keyboard shortcuts, or one of the few features I use were missing (e.g., resize, resample, crop, upscale/downscale color palette, set color transparency, convert between JPEG/PNG/BMP, lasso, automatic lasso, clone brush, I guess that's all).
The only alternatives I read about is Gimp and Photoshop. I didn't like Gimp's usability at all and Photoshop just seemed too privacy invading.
FL Studio (aka Fruity Loops)
>The first version of FruityLoops (1.0.0) was developed by Didier Dambrin and was partially released on December 18, 1997. Its official launch was in early 1998
I finally released version 2.0 of my own desktop software after 10 years development (Free SQL tool): https://www.timestored.com/b/qstudio-2-05-dark-theme-and-hig... 1.0 supported one database only, 2.0 added postgres/mysql/etc. so felt like the time to bump versions :) It's been the same code base in java that whole time, no big rewrites. I guess it helps that I was working in the SQL area for 5 years before writing the tool, so I knew what I wanted. I must say java/jfreechart/swing have kept working perfectly all this time with very minor changes. The most painful was a)xstream/logging/security vulneribilities causing dependency changes b) misc.sun deprecation, I used internal class DSA for encryption of license keys, had to migrate users to new keys. Changing a contract with users is always painful. I'm very very glad that I automated tests from the start, it's the only thing that catches edge cases I've forgotten after all this time.
Rogue Amoeba: Audio Hijack (2002)
TLA Systems: PCalc (1992)
Flying Meat, Primate Labs: VoodooPad (2003)
C-Command Software: SpamSieve (2002)
The Omni Group: OmniOutliner (2000)
Mozilla: Firefox (2002)
The Omni Group started as a NeXTSTEP consulting company in 1989, they’re pushing 35 years at this point.
Steam! It will hit 20 years this September.
Also some games are crazy old and still developed Dwarf fortress is 2006 (almost 20 years old), Open TTD is 19 years old, probably some others as well.
I work with building automation HVAC software and it's expected to last the lifetime of buildings so it's very common in my industry. Automated Logic WebCTRL in it's present web server form has crossed the 20 year mark and the controllers it is compatible with are in the 35+ year range.
After 45 years TeX (1978)  and LaTeX (1984)  are by far the most popular typesetting system in academic publishing. For example, a vast majority of all papers on arXiv.org are typeset in LaTeX. Thank you very much Professor Knuth !
 https://en.wikipedia.org/wiki/TeX  https://en.wikipedia.org/wiki/LaTeX  https://en.wikipedia.org/wiki/Donald_Knuth
My hobby is working on a 20+ year game engine. Still occasionally delete DOS-only code in it. https://github.com/ArmageddonGames/ZQuestClassic
1.0 / January 2001; 22 years ago
FFmpeg - my favorite video/audio file transcoder.
Initial release in Dec 2000.
FFmpeg 6.0 "Von Neumann" 6.0 was released on 2023-02-27
Edit: I see OP mentions Desktop software. It runs on Linux, Windows and Mac, so I guess that qualifies.
Pidgin deserves a mention - 24 years and still under development. The project has been undergoing a huge rewrite for 3.x, which has stalled visible progress somewhat, but I'm really hoping it will be worth it, as I'm excited to see it supporting modern IM features with protocols such as XMPP.
The lead developer regularly streams live coding sessions and quarterly project updates: https://pidgin.im/post/
AbiWord, Blender, FileZilla, GIMP, LibreOffice (formerly known as OpenOffice, formerly known as Star Office), Opera, PuTTY, Seamonkey (formerly known as Mozilla Suit), Stellarium, Thunderbird, WinSCP
KDE and Gnome probably have some old running apps too. There are many long-running open source desktop-apps I think, because there is no economical stress for its development.
In the commercial section I could name Directory Opus, DEVONthink, Maple, Mathematica, Pegasus Mail, The Bat!, Tinderbox
QuickBooks is 40 years old. It was released in 1983. TurboTax is 39 years old. Microsoft Word was released in 1989. I suspect there's a lot of old Windows software.
modern word and excel really started on the mac, earlier than that.
Panic's Transmit debuted in the late 90s and is still going strong: https://www.panic.com/transmit/
Coincidentally, this post is currently adjacent to one on the Thunderbird logo redesign: https://news.ycombinator.com/item?id=36063943
I worked on some windows software back around 1995 or so that is still in use today.
Apparently we released it in 1997! https://www.amdocs.com/sites/default/files/2021-07/Actix-Ana...
REALbasic / REAL Studio / Xojo ... a derivative of Basic. I first started using it back in '98 to write software for Mac OS 8. It's still around and can now build software for Windows and Linux too.
It's a great language to learn when you're getting started. But I've long since moved on to more low-level, performant, and industry-standard languages.
Right now, other than the browser, the applications open on my desktop are:
GNOME Terminal (lists copyrights going back to 2002)
Notepad++ (running under WINE, first release in 2003)
Claws Mail (2001)
LibreOffice (forked from OpenOffice in 2010, OpenOffice was open sourced in 2000 and was based on StarOffice which was released in 1985)
Intellij IDEA (first release in 2001)
GNOME calculator (lists copyrights going back to 1986)
WinZIP 8.0 goes back to 2000, so I think it's even older than that for earlier versions. Several mentions here of WinRAR, but didn't see WinZIP yet.
I use WinZIP with built-in encryption every day for incremental backups, also for password management (my password manager is a plain text file encrypted via WinZIP).
Does VisualStudio IDE count? I recall using MSVC 1.5 in 1995.
Nastran simulation software
The NASTRAN system was released to NASA in 1968.
NASTRAN software application was written to help design more efficient space vehicles such as the Space Shuttle. NASTRAN was released to the public in 1971 by NASA's Office of Technology Utilization. The commercial use of NASTRAN has helped to analyze the behavior of elastic structures of any size, shape, or purpose. For example, the automotive industry uses the program to design front suspension systems and steering linkages. It is also used in designing railroad tracks and cars, bridges, power plants, skyscrapers, and aircraft.
DB Browser for SQLite (https://sqlitebrowser.org) was first released to the public domain on 2003-08-19. So, it'll be 20 years in a few months time. :)
Those I use which are still in development / actively supported would be...
VLC media player (2001)
Wireshark (formerly Ethereal) (1998)
There are a handful more up-and-comers in the 16-19yr bracket as well. And tons that I still use, but aren't actively maintained anymore.
While not standalone apps, our data publishing plugins for Adobe InDesign (http://emsoftware.com) are now 23+ years old and going strong...
Sony Vegas was apparently released as early as 1999: https://en.wikipedia.org/wiki/Vegas_Pro
The first version of the visual programming language / software vvvv first appeared in 1998:
GIMP, and probably Inkscape
Mach3 CNC https://www.sainsmart.com/products/mach3-cnc-software
Anything CAD related.
AutoCAD comes to mind first, but Siemens NX (Unigraphics) existed before and is still currently sold. Dassault CATIA is another CAD software older than 40 years.
PTC Creo (Pro/E), McNeel Rhino 3d, Dassault Sold Works, Archicad, also are software packages with really long life spans.
You can also include plugins and support tools such as simulation modules, and render plugins. Many of which have been around for 20+ years, but are too numerous to list.
Vmware workstation, released 1999
FreeBSD’s initial release was in 1993, but the original Berkeley Software Distribution it is based off of goes all the way back to 1976.
Total Commander - since 1993
I guess technically you could extend Xara back to 1991 since IIRC it's basically the Windows version of ArtWorks on RISC OS.
RealPlayer media player is still around after at least 24 years, I still use it (but haven't updated in a number of years).
BATS, the video cutting & tagging software used by nearly all MLB teams, has been around since… I wanna say the early-90s.
IDA pro, for disassembly is about 25 or 30 years old. I remember using it back in 2000 or 2002
I'm still using Gnome 2 (Mate Desktop) it was first released in 2002.
I think a lot of b2b ERP software gets to be this old. I know of multiple.
JMP from 1989
PhotoLine (1996, https://en.wikipedia.org/wiki/PhotoLine)
Calibre ~16 years
VLC ~22 years
NetNewsWire, 12 July 2002, almost 21 years, https://netnewswire.com
MailWasher anti-spam is 23 years old and still going strong. https://Firetrust.com
Microsoft Excel - still going strong after 30+ years.
- xterm, a DEC video terminal emulator (1984)
- Xorg itself (2004)
> - Xorg itself (2004)
Xorg is a 2004 fork of XFree86, which is a 1992 fork of X386, first released in 1991.
Basically creative suites:
- Maya 3D
- 3ds Max
- Ableton Live
- Microsoft Office
- SAP ERPs
This was my first thought. I remember using Photoshop in the 1990s.
It's a depressingly short list relative to the amount of software that's been written throughout history.
Cubase (1989) DAW
Finale (1988) Music notation software
foobar (2002), and it's not OSS
Starcraft 1 is over 20 years old and still has cash prize tournaments today.
Some games: Myst, Zork, etc.
SecureCRT (terminal emulator) is still around after at least 24 years.
Logic Pro (1993)
Now it belongs to Apple but it was only acquired about 20 years ago
World of Warcraft is coming up on 20 years in 2024.
Advanced Installer: 20 years old, still getting regular releases.
WinRar is from 1995
NcFTP (ftp client) has been around over 30 years.
Some music software such as Cubase, Logic Pro
My personal favorite: WinRAR (1995).
Bloomberg Terminal, 1982
Bink by RAD game tools.
WinSCP - 23y
And likewise Putty from 1999
Initial release date: February 28, 1995
It's might be easier to list what failed?
CD/DVD writing software is gone, from life, possibly still being developed. Yep still going strong https://www.cyberlink.com/blog/media-player-windows/983/best...