Live data from Hacker News

Dealing with abandonware (2024)

blog.hris.to

21–30 of 55 posts

Re: Dealing with abandonware (2024)

#21

Kinda off topic but related. But is it realistic these days to just expect software to write once and run forever? I am a TypeScript/Frontend guy by trade, but I always admire languages like Go. It seems like a simple language that I can write once and maintain forever or once in a blue moon. Everytime I want to write something in TypeScript and then I pull bunch of crazy dependencies, I began to question if it is wo…

> is it realistic these days to just expect software to write once and run forever?

Yes, but you have to put a bit of effort to make it so. For example, if you write your software as a ROM for an early game console (SNES/GBA/etc.), you can probably expect it to run for a very long time, as there will likely be people who want to play Final Fantasy 6 and Pokémon Silver for as long as computers are around.

That's one extreme, but you don't have to go that far. I have some HTML/CSS/JS projects (meant to run locally) from the 2000s that still work totally fine today. Same for Python code from 2010, etc. I wouldn't be surprised if those still worked just fine 50 years from now.

All I do is write code that is meant to run locally first, with very minimal dependencies, only choosing to use conservative/proven technologies.

Re: Dealing with abandonware (2024)

#22

That's real abandonware. These days people gripe and moan about "abandonware" when they have the source code. Oh shit, no new commit in 8 months! Abandonware!

I agree with you. If the source code is there, theoretically is not abandonware, but handed to the community.

Re: Dealing with abandonware (2024)

#23
post #3

Might be illegal to break someone else's proprietary software, no matter how abandoned it is. Try to ask them for source code, with the intention to open-source it. Then you (and maybe others!) can break it whole day long.

> Might be illegal to break someone else's proprietary software, no matter how abandoned it is.

Oh no!

Anyway

Snark aside, what you do locally on your own PC in your own home is kinda nobody else’s business, especially when you aren’t cracking it to share it with others. Pretty sure all the arguments were already hashed out in the ‘80s when VCR companies tried to block recording television to cassette tapes.

Literally nobody cares.

Re: Dealing with abandonware (2024)

#24
The horrors of non-free software...

When I become king of the United Continents, I will make a new rule: If you don't publish high-quality updates for your software for one year, it will become open source automatically.

Re: Dealing with abandonware (2024)

#26

Kinda off topic but related. But is it realistic these days to just expect software to write once and run forever? I am a TypeScript/Frontend guy by trade, but I always admire languages like Go. It seems like a simple language that I can write once and maintain forever or once in a blue moon. Everytime I want to write something in TypeScript and then I pull bunch of crazy dependencies, I began to question if it is wo…

Some software does. If you've worked on SCADA gear it's expected to go into production and then run for 20-30 years without being patched once a month, or, actually, ever.

Someone once asked the author of an at the time widely-used security utility why it hadn't been updated since 1996, and whether it was abandonware. His response: "No, some people just get it right the first time". Just had a quick check and there's a single CVE for it from 25 years ago, possibly from a third-party mod rather than the original code.

Re: Dealing with abandonware (2024)

#27

Kinda off topic but related. But is it realistic these days to just expect software to write once and run forever? I am a TypeScript/Frontend guy by trade, but I always admire languages like Go. It seems like a simple language that I can write once and maintain forever or once in a blue moon. Everytime I want to write something in TypeScript and then I pull bunch of crazy dependencies, I began to question if it is wo…

You seem to be describing how the web dev worked after JQuery but before React. It wasn’t prettier than now.

I agree that the wider NPM ecosystem is a morass of slop and that is technical debt for anyone who wanders into that minefield. But the solution isn’t to assume that there are no bad / unmaintained GoLang libraries. It’s to realize that maintenance, quality, and sustainability need to be first class attributes of every library you choose to allow your project to depend on.

Your proposal will yield lots of LLM near-slop (basically code that works given the original prompt requirements, but will fail to continue working well once some requirement changes, some original assumption is violated, some browser changes are implemented.

Ultimately, the sustainable solution is to have a subset of NPM libraries be extremely high quality, vetted via robust tests and security audits, and are visibly different than the average slop on NPM. Basically a very visible delineation between untrustworthy code and very trustworthy code. Then you should be able to tell the LLM to use only dependencies from that vetted subset.

Re: Dealing with abandonware (2024)

#28
reminds me of my own software I created and was selling online 20 years ago. I lost the source code but people still wanted to buy it. So I sold it for few years (shareware). I had a serial key generator for windows but it was annoying to do this manually.. I wanted to extract the key generation algo so it can be generated automatically after payment. I also tried many disassembly tools like ghidra, but without luck. I decided to stop selling / supporting the software. Nowadays, I still get the occasional mail from people asking where they can buy it, or of there are some updates.

Re: Dealing with abandonware (2024)

#29
post #21

Kinda off topic but related. But is it realistic these days to just expect software to write once and run forever? I am a TypeScript/Frontend guy by trade, but I always admire languages like Go. It seems like a simple language that I can write once and maintain forever or once in a blue moon. Everytime I want to write something in TypeScript and then I pull bunch of crazy dependencies, I began to question if it is wo…

> is it realistic these days to just expect software to write once and run forever? Yes, but you have to put a bit of effort to make it so. For example, if you write your software as a ROM for an early game console (SNES/GBA/etc.), you can probably expect it to run for a very long time, as there will likely be people who want to play Final Fantasy 6 and Pokémon Silver for as long as computers are around. That's one e…

> there will likely be people who want to play Final Fantasy 6 and Pokémon Silver for as long as computers are around

Is Final Fantasy 6 seeing a lot on new players today? Old games are played more by the people who enjoyed them when they were new. Even the landmark games are easily forgotten and younger players will never bother when they have so many modern choices.

Re: Dealing with abandonware (2024)

#30
post #28

reminds me of my own software I created and was selling online 20 years ago. I lost the source code but people still wanted to buy it. So I sold it for few years (shareware). I had a serial key generator for windows but it was annoying to do this manually.. I wanted to extract the key generation algo so it can be generated automatically after payment. I also tried many disassembly tools like ghidra, but without luck.…

You could give someone permission to crack it.

It's pretty clear that the program has utility, otherwise people wouldn't ask.

Giving it to computer cracking groups as a real world program that they can use as a teaching tool has some value too.

I mean, if you you're not willing to take the money for the program anymore, then you have little to lose with this.

(Unless there's some other reason not to do it, brand harm for example, or third-party code that's licensed and that you do not have permission to subgrant reverse engineering work)

Post reply on HN