• 0 Posts
  • 66 Comments
Joined 2 years ago
cake
Cake day: August 3rd, 2023

help-circle
  • A system I work with gives all keys a string value of “Not_set” when the key is intended to be unset. The team decided to put this in because of a connection with a different, legacy system, whose developers (somehow) could not distinguish between a key being missing or being present but with a null value. So now every team that integrates with this system has to deal with these unset values.

    Of course, it’s up to individual developers to never forget to set a key to “Not_Set”. Also, they forgot to standardise capitalisation and such so there are all sorts of variations “NOT_SET”, “Not_set”, “NotSet”, etc. floating around the API responses. Also null is still a possible value you need to handle as well, though what it means is context dependent (usually it means someone fucked up).



  • Skyrim is a totally different beast because the ingredient effects you know about don’t depend on your Alchemy skill anymore: instead you simply discover the effects by successfully making a potion with them. So there’s a sort of minigame of trying different ingredients together to discover what kind of effects they give to potions, which in my opinion is neat because it matches up with how you might do this in reality.

    I think the developers didn’t like the “surprise” extra potion effects you could get in Morrowind, so they changed it in oblivion.



  • I work at a large telecom company building customer support infrastructure, and you are by and large correct. It is a direct policy not to list our phone number on our website, which is supposed to “nudge the customer journey towards alternative solutions first.” That means AI chat, or user guided search on the website, or whatever.

    The funny thing is, being the most customer friendly company is supposed to be one of our organisation’s goals. By and large actually, individuals working here (at least at the lower levels) all want to genuinely help customers. However the way incentives are set up and the organisation is structured, inevitably cost savings is what drives most of the work that gets done.


  • The planet’s gravity is not what is causing the time dilation, but rather the gravity of the supermassive black hole that it was orbiting. The black hole is somehow spinning extremely rapidly, causing frame dragging, which creates a particular stable orbit very close to the event horizon.

    Apparently the energy requirements of the orbit would preclude ever reaching the planet except by slingshot manoeuvres around intermediate size black holes or neutron stars.



  • Rigor in definitions allows us to express a lot of complex things in a compact form. this allows us to treat “Cars” as something different than “Motorcycles” while both a motorized vehicles.

    Meh. There’s plenty of room in the gray zone between “car” and “motorcycle” where things like this or this can exist. The botanical world has worked very hard to create rigorous definitions of fruits and vegetables only to be completely ignored by cooks. The culinary world in general has done just fine for centuries without rigorously specifying whether taco’s are sandwiches and cereal is a soup.

    As long as it is generally understood what people mean by a word when they use it everything will be mostly fine. REST is an understood term, whether the inventor of the term meant something else by it is immaterial.




  • But the game is “finished”. there is no need for alterations.

    If only that was the case. But there is no chance a game built for windows 95 could run unaltered on an android phone. Things like the rendering systems, input handling, and sound output will need to be adapted to work on a new platform.


  • You could, but there isn’t much benefit. The purpose of all that extra information is generally to make the program easier to understand for a human. The computer doesn’t need any of it, that’s why it’s not preserved in compilation. So it is possible to automatically translate assembly to C++, but the resulting program would not be much (if any) easier for a human to understand and work with.

    To give a bad analogy, imagine some driving directions: turn left at 9th street, enter the highway at ramp 36, go right when you’re past the burger king, etc. These are translated into physical control inputs by the driver to actually take the car to its destination. Now we could look at the driver’s physical inputs and turn that back into a written list of instructions: turn the wheel left 70 degrees, turn it right 70 degrees, push the gas for 10 seconds, and so on.

    All the street name references are now gone. There are no abstracted instructions like “enter the highway” or even “take the second left.” It would be quite difficult for a person to look at these instructions and figure out the trip’s destination. Let alone make some alterations to it because there is roadwork along the way and a detour is needed.



  • Fun quote from an interview with Chris Sawyer:

    Latterly the machine code came back to haunt us when the decision was made to re-launch the original game on mobile platforms as RollerCoaster Tycoon Classic a few years ago, and it took several years and a small team of programmers to re-write the entire game in C++. It actually took a lot longer to re-write the game in C++ than it took me to write the original machine code version 20 years earlier.