Modder, programmer, and all around tinkerer. Yes, I’m that New Vegas and Deus Ex guy.

You can also find me over at lemmy.sdf.org under the same username. Also kbin.social if it ever comes back from the dead.

  • 0 Posts
  • 33 Comments
Joined 10 months ago
cake
Cake day: December 25th, 2025

help-circle
  • Mostly it’s two things:

    1. COBOL is very good at some specific things that other languages can’t do as well. Not that other languages do them badly, not at all, but COBOL is absurdly efficient for certain operations. You need to do basic math operations on millions of rows of data every minute? COBOL can do that easily. Many other languages can get close to that speed - maybe a few seconds off - but COBOL is often used in environments where a hundred millisecond delay can mean everything breaks. Are there other languages which can match that speed? Absolutely. Are they any of the languages every company wants to upgrade to? No.

    2. COBOL’s best practices are sometimes the literal opposite of what every other language expects, especially when it comes to optimizing code for efficiency. You ever seen Evaluate, COBOL’s equivalent of a switch statement? Rather than being used to Evaluate a variable to check its values, its most commonly used to “EVALUATE TRUE” and then use the WHEN clauses (basically case statements) to check statements or variables that you want to be true. That can be converted to another language directly, yes, but it absolutely will not be efficient best-practices code. Most likely you’re going to need someone - not an AI, not an automated process - to do one-off rewrites to keep the code performance the same. As it is I have never seen any automated tool (LLM or otherwise) convert COBOL without falling victim to this issue.

    There’s also a third issue in that COBOL has some specific minor capabilities that other languages just do NOT, or not to the level of flexibility and efficiency COBOL has. The most common one is COBOL’s “88” picture type (variable) definitions. Think of it like being able to set an automatic evaluation on a variable that returns true if the condition is met, e.g. the variable “05 WS-ERROR-STAT PIC X.” with an 88 of “88 FATAL-ERROR VALUE ‘F’.” would mean you could check “FATAL-ERROR” anywhere in your code to see if the value of WS-ERROR-STAT has been set to “F”. The thing is, this is done basically for free (resource wise) as part of allocation, and furthermore it can be used to get or set, i.e. “SET FATAL-ERROR TO TRUE” will change the value of WS-ERROR-STAT to “F”. You can also use 88s for ranges, e.g. “88 ANY-ERROR VALUES ‘F’ THRU ‘N’.”, though you can’t use them for set operations that way.

    Bottom line: there’s nothing that perfectly recreates its efficiency, the specific way it performs efficiently, and some of its more esoteric capabilities. Anything still running COBOL probably depends HEAVILY on one or all of these things.







  • Pretty much nailed it, but for anyone out there thinking “hey I can do that”…

    Point #1 is hard to do these days as a solo effort. A lot of these piracy groups have massive manpower backing them up, whether it’s a paid business or just a bunch of like-minded enthusiasts.

    Point #2 is a little more doable, but you’ll spend all your time doing that to keep up with the release schedule of these groups. That or you’ll have to rubber-stamp your releases without much quality checking, which will affect #3.

    However, Point #3 is where small enthusiasts can absolutely shine. A great example (though possibly on the more involved side) would be Adywan, who made their name focusing entirely on releasing maximum quality Star Wars releases, recuts, remakes, and remasters. There’s maybe a few dozen releases to their name, but mention that name to any piracy-aware Star Wars nerd and they will know it.

    For as much content as the big names cover there’s lots of stuff that falls through the cracks, whether it’s entirely absent or just present with sub-par quality. Despite how large the Star Trek fanbase is there’s basically one copy of the non-remastered version of The Original Series floating around out there, and it’s a rather ancient encode.



  • Is it? You can have female hormone levels and still have male genitalia. Science is cool like that. And no, people aren’t defined solely by their genitals, but they aren’t solely defined by their appearance either, or their biology. It’s a big mash up of those things and a few more.

    Point being it’s really hard to describe that situation as being solely one or the other. It’s definitely something that needs to be indicated for medical reasons though, but most Identification Documents don’t draw any distinction between sex and gender, much less allow for notation of something like that. Once again, paperwork lags behind reality.



  • And wow! I totally thought those servers went down. I would have bet money that I remember reading about it.

    EverQuest’s servers were slated to go down at least once, but that was when the then-current now-former owners no longer wanted the IP and were trying to sell it. It was less “we are taking them down” and more “we don’t want to spend anymore money keeping these up, but if someone else wants to we’ll sell for a good price.” Someone bought them and the servers stayed up. The game still makes money apparently.


  • EverQuest is still going. So is Ultima Online. My wife’s EQ account from launch is still there with all her characters and goodies. As for the others, people were upset when those were shut down. People definitely weren’t “totally fine” with that.

    There’s another aspect though, in that with MMOs you are paying monthly for a service, and an actual quantifiable one. The servers that run those MMOs (current ones anyway) aren’t light pieces of computer equipment that you could easily run in your home. It’s like going to a bar with a cover charge: you could talk to people at home or drink at home, but you’re paying for doing that at a place with some neat decorations and a lot more people than you’re likely to meet at your home.

    Expanding that metaphor, singleplayer games are you drinking at home. People do not want to give the liquor store the right to come into your liquor cabinet and take back the booze if they decide you no longer should have it.


  • Because of the second “M” in the term, i.e. “Multiplayer”. MMOs are as much about the community as the game. For some they’re more important than the game. MMOs generally only get shut down when almost all of the community has left… or in other words when a lot of the game’s “content” is no longer available anyway.

    That’s not the case for singleplayer games, or games designed for local/couch multiplayer. There’s no natural limit on the game being playable. For PS2/Xbox era stuff and before, as long as you have game and the hardware you can fire it up today and have the same experience (not counting your worsening reflexes). There’s no justifiable reason why a company should be allowed to decide that you can no longer play the game you bought on hardware you physically possess. The only reason is greed, pure and simple. That’s why people aren’t okay with it.