• 0 Posts
  • 24 Comments
Joined 1 year ago
cake
Cake day: July 4th, 2023

help-circle
  • Lots of moments in Honkai Impact 3.

    There’s literally a YT channel that collects tears from streamers playing the game.

    https://youtube.com/@Ollyt_

    There’s a lot of context needed to understand why anyone would cry playing through HI3 though. I’ll give a high level summary here, but I highly encourage people to play it, even if it’s a gacha game. You can really ignore the gacha and just play the game for the main story. Do be warned that the story isn’t something suitable for kids — it can be quite a bit too heavy for them.

    The theme of self-sacrifice is covered quite extensively, with the main character being the centrepiece of the theme. There’s also deep self-loathe, with an eventual self-acceptance, also from the MC. Mix that all in with some sense of duty.

    There’s also a tragedy, but from the tragedy, a narrow path to hope was born. The people in the tragedy mostly hoped only for a simple life, or to live their lives atoning for their sins, but circumstances forced them to become warriors against a great, unstoppable force of destruction. As if to make things harder to swallow, their digital clones that survived into the future have to experience yet another tragedy that would eventually destroy all of them, and the player will see this through. Yet, in the second tragedy, these clones further sowed the seeds of hope for the future.

    Chinese company or not, HoYo has pumped out a lot of very human stories that I think deserves attention and praise. Genshin Impact has also started to go down a similar path.



  • Many of these meanings seem to be captured in some modern solutions already:

    • We plan to provide a value, but memory for this value hasn’t been allocated yet.
    • The memory has been allocated, but we haven’t attempted to compute/retrieve the proper value yet
    • We are in the process of computing/retrieving the value

    Futures?

    • There was a code-level problem computing/retrieving the value

    Exception? Result monads? (Okay, yea, we try to avoid the m word, but bear with me there)

    • We successfully got the value, and the value is “the abstract concept of nothingness”

    An Option or Maybe monad?

    • or the value is “please use the default”
    • or the value is “please try again”

    An enumeration of return types would seem to solve this problem. I can picture doing this in Rust.



  • 2 things I like about golang is just 1) the ease of getting someone to start work, and 2) goroutines. I have no complains about goroutines cause I’ve barely used it, and when I do it’s been fine. The first point though, I’d say the simplicity of the language is a double-edged sword — it’s easy to learn with little surface to cover, but it forces you to implement a lot of basic machinery you find in other languages by yourself, and so your codebase can get clunky to read really quickly, especially as your project grows.

    Not trying to dissuade you from learning golang tho. I think it’s a good language to learn and use, especially for small simple programs, but it’s not the great language many try to say it is. It’s… fine. There are many reasons why it grinds my gears, but I’m still fine with using it and maintaining it for prod.


  • Badland9085@lemm.eetoProgrammer Humor@lemmy.mlIn case you forgot.
    link
    fedilink
    arrow-up
    13
    arrow-down
    1
    ·
    11 months ago

    Ehhh, golang’s pretty down there for me too. Sure, you have types, but the way you “implement” an interface is the sussiest thing I’ve seen in most well-known programming languages. Not to mention all the foot guns (pointers for nullables is a common one, and oh, if you forgot that a function returns an error, and you called it for its effects, you’ve just built a possibly very silent bomb) you end up building into your programs. I use in prod, and I get scared.



  • I intended to give an explanation, but since this community is pretty general, i.e. we have people from basically all walks of life here, many with little to no involvement or understanding of the tech industry, so I decided to leave it out cause it would be too much to explain.

    rolauten@startrek.website has given us a pretty brief explanation, but I think it can be further simplified, though would require a lot more knowledge build up (i.e. more words). If anyone’s interested, I can try to write a fireplace story, though I can’t say I’m the most qualified person to do so, or give an absolutely accurate story.





  • You can force a specific Proton version on each game, though I’m not sure (off the top of my head at least) if that would help with not installing duplicates. Iirc best practice for using Wine for games is to have separate installations to avoid having conflicting dependencies, though I’m not sure if Steam does that.

    Also, GE is short for Glorious Eggroll, which is the name of the dev who creates custom Proton distributions. People refer to these distributions simply as Proton GE or just GE. Ref: https://github.com/GloriousEggroll/proton-ge-custom



  • Kinda don’t like how my handwavy idea is just taken for the most naive turn. I’m not even trying to give precise solutions. I’ve never worked with software at scale, and I expect the playing ground to be pretty different, but I think you’re exaggerating.

    1. Storing all 18 years worth of data in all its iterations is ridiculous in the first place, and should never cross the mind of any dev worth their salt for more than a mere nanosecond. Cut off all that data down to to 3 years, 1 year, or even just a few months, and that’s probably all Reddit needs for backup and analytics. Have separate strategies for backup and analytics if needed. They’ve been doing ads and analytics stuff for a while now, so I expect them to have some architecture in place for that.
    2. Dealing with deleted comments is easy — just unmark them for deletion (hard delete is generally not a thing). It’s most probably not in a backup. It’s just not a user accessible feature to unmark deletion. Even if they do get deleted eventually, what’s the time frame for a cleanup like? Every day? A few months? They still need an entry for that comment for the threads feature to work, so at best, they null the content of the comment out.
    3. ChatGPT is just an example. No need to beat a bad example to death and use that as an argument against a whole argument. And I’m pretty sure you’ve not read the rest of the last comment.
    4. I think you’re over-estimating how much of an impact the API pricing fiasco had, and once again, you don’t seem to have read my previous comment and acknowledged that. Nobody in their right mind is going to do this comment read and scan for every single Reddit user. Not manually for sanity. Not programmatically for cost. It’s why they need some way(s) to identify which users to watch out for. They’re not going to do that manually though, right? That would be costly too, from a manpower’s perspective, and human labor is expensive, and scales much worse than programs.
    5. Common sense would ask that if all they did is to restore their database to a certain state, how do they deal with new comments and changes that were added between the PiTR and whenever they make the restore? Are they just gone now? Isn’t that bad, cause they’re potentially losing new, quality content?

    Look buddy, all I want to say is that I don’t think your method against Reddit would work. It’s basically gamble though, so I’m definitely not against attempt at it. I just want to point out the possibility of it not working. I don’t think there are surefire ways against their attempt at restoring content.


  • It’s hard to say that without knowing what their infrastructure’s like, even if we think it’s expensive. And if they built their stack with OLAP being an important part of it, I don’t see why they wouldn’t have our comment edit histories stored somewhere that’s not a backup, and maybe they just toss dated database partitions into some cheap cold storage that allows for occasional, slow reads. They’re not gonna make a backup of their entire fleet of databases for every change that happens. That would be literally insane.

    Also, tracking individual edit and delete rates over time isn’t expensive at all, especially if they just keep an incremental day-by-day, maybe more or less frequent, change over time. Or, just slap a counter for edits and deletes in a cache, reset that every day, and if either one goes higher than some threshold, look into it. There are probably many ways to achieve something similar in a cheap way.

    And ChatGPT is just an example. I’m sure there already are other out-of-fashion-but-totally-usable language models or heuristics that are cheap to run and easy to use. Anything that can give a decent amount of confidence is probably good enough.

    At the end of the day, the actual impact of their business from the API fiasco is just on a subset of power users and tech enthusiasts, which is vanishingly small. I know many that still use Reddit, some begrudgingly, despite knowing the news pretty well. Why? Cause the contents are already there. Restoring valuable content is important for Reddit, so I don’t see why they wouldn’t want to sink some money into ensuring that they keep what makes em future money. It’s basically an investment. There are some risks, but the chances to earn em back with returns on top of the cost is high.


  • You misunderstood my comment. Reddit probably has every version of your edits, so all they need to do is to put all your past comments through ChatGPT or something, by time in descending order. The first sensible one gets accepted. In some sense, that’s just like how a person would do it. This way, they don’t have to deal with individual approaches to obfuscating or messing with their data.

    I was gonna just wait till this whole fiasco dies down, let it sit for a couple of months to a year, before going ahead and slowly remove my comments over time. It’s easy to build triggers for individual users to detect attempts at mass edit or mass deletion of comments after all, which may trigger some process in their systems. Doing it the low profile way is likely the best way to go.


  • Not too hard to defeat this solution though: put your comments through something like ChatGPT and if it can understand what you wrote, it’s probably good enough for em to restore it.

    Maybe the answer is to write some nonsensical answer that’s understood by human readers as utter nonsense, but still recognized by LLMs as a “good comment”.



  • While this echoes some other comments, this meme should go soon. I’ve used Arch for years at this point, and if there’s ever something wrong, it’s generally my fault, and the official announcement and mailing list do a pretty good job telling you what you should do before upgrading your system. Install a tool informant to check for unread news for you for when you try to update, and stop your upgrade transaction if there are news you haven’t read. These announcements are pretty rare. My system’s also been rock solid. I read that they have an official installer now to help ease installation. Things are pretty great with Arch.

    On the other hand, Ubuntu has been a pain in the ass. Putting aside the horrible experience with dist-upgrade, Gnome has been the most painful DE I’ve ever used.

    • Odd resizes of my windows on sleep & wake on a multi-monitor setup.
    • Randomly spawn the password prompt on sleep & wake, with no way to remove the prompt unless I do a pkill gnome-shell and let the DM restart gnome-shell.
    • Software Centre can just randomly fail to fetch package updates. Update installs through software centre can also fail with the most unhelpful messages.
    • Software centre will stop a full update if there’s an app in the list that’s running. Arguably a feature, but not all apps require that. That decision should be left to the discretion of the app maintainer. Users can individually update other apps to circumvent the problem, but that’s a paper cut to me.