• 0 Posts
  • 16 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.



  • I swear, these bad EULA updates that basically force users to “accept the agreement, or we’ll brick your device” needs to fucking stop and be made illegal. The price that’s set for a product, especially a damn physical product, should include the acceptance of an existing EULA, and it should be honoured even when new ones come out and the user chooses to not accept the new agreement. You’ve basically never owned the product if companies can just pull the rug underneath you, and render your hardware useless. And you can’t foresee such changes too; a predatory company can acquire one that you’ve trusted and pull this shit. It’s borderline daylight larceny.


  • 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.


  • 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.




  • A washer beep is like a webhook: if the recipient fails to acknowledge it, it’s gone forever. A notification is like an /events endpoint: the recipient can catch up on events at their own pace, and be reminded of and see events they haven’t processed.

    Reference

    Half-jokes aside though, I think what we want here is a reminder, i.e. a todo with a timed alert. Beeps can be missed and timers can be stopped (e.g. when you’re occupied), so they aren’t the most fool-proof solution here. Reminders will at least sit in the notifications list until dismissed.




  • 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


  • 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.

  • Information is power. Telecommunication have changed the landscape of business, warfare, and how we live. It allows us to make “better” decisions for what we set out to do. Whoever holds more information, and has the chops to analyze it, controls the board. The closer that information is to individual people, the sharper it is as a weapon.

    Having power too concentrated in one place or a few has led to disastrous consequences in human history. Privacy is simply a way to hold that power back, so that the most sensitive information are kept away from unknown hands.

    Privacy also allows us to be ourselves, in the sense that we have different fronts of ourselves. We have sides we don’t necessarily want to show to our parents, but we show it to our friends or spouse. Not everyone has the best of relationships with everyone around them, and so there are sides we don’t want everyone to know, lest they get used as a weapon against us, either for others to exploit, or hold us ransom. If you’d like an example, imagine having an overly possessive religious parent, and you’re an atheist, but you don’t want to confront your parent because you’d like to avoid trouble. When thought in that way, privacy is a right that humans should have, and it is each person’s right to release what information they have about themselves to whoever they wish.


  • Not sure why artists are brought up here but I guess that’s one of the highly affected groups.

    Just to talk about that particular consequence, however, I don’t agree with your take. There are AI trained on works of specific artists, and the end result is that the AI is really good at producing work that’s similar to that artist’s work, effectively creating an alternative to that artist, even if it’s of slightly lesser quality and a lack of depth of the original. While this would likely not affect the artist in the short term, in the long term, new prospects who don’t yet know the artist well enough would likely be unable to tell the difference in quality, and may even go straight to the AI model since that’s distributed cheaply or even free. It may also negatively reflect on the original artist to people who don’t know the artist, as the works from the AI would likely be more abundant, and people not in the know may think that the original artist was in fact just producing their works through AI. It is highly discouraging for artists who have worked hard to hone their craft, only to have people think that their works have little difference or even a mimicry (don’t underestimate misinformation).

    There has been many instances where such training was done without the knowledge of the artist. Imagine just waking up one day, and finding that there’s someone or something that can very closely reproduce your works, one’s you’ve taken many years of practice to produce, of which its quality is almost unique to yourself. There’s a blatant lack of respect for the hard work that people put into their craft, one that seemingly belittles their blood and tears, and could even be a mockery of their existence. Some artists don’t have other jobs; their art and craft is their job, and some may have even sacrificed learning the skills needed for other jobs to pursue their passion.

    Saying that AI is not intended to replace artists, but to improve accessibility, is like saying ATMs weren’t meant to replace bank tellers. True, there’s much less skill required for bank tellers, and getting cash out of banks is an important process that should be swift with almost no errors, so replacing bank tellers with ATMs is a general good, except for the bank tellers, which then banks can retrain them for other jobs. Since then, the job has virtually gone extinct, and almost nobody would want to become a bank teller, and if anyone would like to, they would need to perform better than ATMs. Artists require great skills and creativity, many of which are not easily trained or obtained. Seeing an automated system produce works that are acceptable by most people would either greatly discourage new artists or perhaps even entirely remove the idea of becoming an artist for most people. It raises the barrier to becoming an artist: not only do you need to stand out, you also need to be good enough such that people can’t just train an AI model on your work to produce results that are highly indistinguishable from yours. How many more years do people need to train to be that good? For those with a job but wish to become an artist, abandoning their job to focus on their craft will likely become a much more difficult choice to make. Also, I don’t doubt this would further rise the prices of commissions due to how much work artists would have to put in, and this would only get worse at a rate that’s much faster than a scenario without AI.

    So a line should be drawn somewhere. AI trained on public works or artist-approved works are definitely okay. All other options will likely need further discussion and scrutiny. We’re talking about the possibility of ruining an already perilous career path, whose works are coveted.


  • The fact that Reddit can still tell you that the user deleted their account is proof that not all of that user’s data in their systems are deleted. It may just be a flag in an account that marks them as “deleted”, and so whenever data about that account is being retrieved, their API server will look at that flag, and tell the recipient that the account is “deleted”. People in the software industry calls this “soft deletion”.