5 ms·
Woo cgi that’s takes me back. How old is the software running this site? > `cgi-bin/mboard/info/dnathread.cgi?1546,2`
by spdegabrielle 5y ago
Woo cgi that’s takes me back. How old is the software running this site?
> `cgi-bin/mboard/info/dnathread.cgi?1546,2`
- Macha 5y agoGiven that it supports TLS 1.3, (HTTPS at all really, given the age), IPv6, etc., someone has been maintaining it all these years. I have to imagine the dynamic content has long since been statically archived, as I'm not sure I'd trust the security of any late 90s perl cgi script.
- nerdponx 5y agoMaybe they are using Nginx in front of a 90s Perl CGI script?
- b112 5y agoOr, as you suggest, someone over time kept updating the scripts and backend... EG, small changes over time, is often less work than a rewrite. It's not illegal, or insane to use cgi and perl.
- indymike 5y agoEvery day I visit a site that reminds me how durable code really is. I'm starting to see programs that are outliving their developers. In many ways it is surprising given the amount of churn there is in the techniques and tools we use to build software.
- ninkendo 5y agoSomething about CGI and perl always rubbed me the wrong way. On every request, you're spawning a new process from disk, reading the entire script's source code (including everything it imports), compiling it, and running it, just to throw all that away. I do appreciate how simple it is, and how much it inherently frees its own resources, but it seems super wasteful. I'm actually quite shocked how common it was in the early days of the internet.
- psd1 5y agoWhat if I told you that my team does that today, for a million hits a month, and the process it spawns is powershell.
- Macha 5y agoI suspect the site in question has rather less than a million hits per month, and the development staff is more a week of contractor time every couple of years than a full time team. This would make it hard to have a continuity of legacy technology devs and make it more likely that it just gets archived by a future team as that's easier than finding the appropriate expertise.
- bityard 5y agoSpawning processes on unix is very cheap, Perl was very fast, and even back then disk cache in RAM was a thing. It's a perfectly fine solution if your site doesn't need to scale, and most do not.
- ninkendo 5y agoI'm definitely aware, having done a lot of CGI programming in perl myself back then. But nowadays it just seems so strange to boot up an interpreter and start parsing/validating/executing a script from scratch on every request. Even if you have disk cache and fast process launching, it's just a lot of work you have to do each time.
- rabbits77 5y agoPerhaps it’s reasonable to reflect on how performant CGI was and still is. Right now that site is probably receiving more traffic than it ever has before and seems to be ably holding its own against the hug of death. Of course CGI has scaling issues, that is not deniable, but it is still a quite strong technology. I would argue that the main reason to avoid CGI is not for performance reasons, few sites will encounter those usage levels, but rather because CGI coding patterns ultimately end up breaking MVC best practices.
- onionisafruit 5y agoI want to believe that cgi script is running on Arthur Dent’s Macintosh computer and it makes me wonder what model it is.