• 163 Posts
  • 1.11K Comments
Joined 9 months ago
cake
Cake day: February 10th, 2024

help-circle
  • I’m with you.

    I think GP has one or two good points about shortcomings of the existing distributed platforms, but I also think these things can be addressed. For example, a centralized system’s single namespace for usernames brings advantages for both identity and usability. This would be harder for a distributed system to implement, of course, but it’s not impossible.




  • Conal’s point is that no, in fact there are almost zero programmers that fully understand even the simplest Python code

    Can you summarize the reasoning there, for those of us who are mildly curious but don’t have time to spend on a podcast?

    By “fully understand”, does he mean knowing exactly how data are being laid out in memory, or when it is reclaimed? Knowing exactly what CPU instructions are being executed, registers used, and stack frames created behind the abstractions? Something else?

    since it is a dynamically typed language.

    What does Python’s type system have to do with it? Python doesn’t quietly convert objects of one type to another behind your back, like some other languages do.

    What concerns me is your condescending tone.

    I didn’t read condescension in that comment. It’s possible that none was intended.







  • I mostly had fun, and felt the work they did to make Night City feel like a proper city, as opposed to the tiny village-sized “city” typical of open world games, really showed. (For example, the fact that people walking down the street had different ages, body types, and walking styles made it easy for me to forgive the occasional pair of NPC clones spawning next to each other.)

    But yes, many of the activities/events offered by the game ended up seeming a bit pointless because their outcome was more or less predetermined.

    Moreover, the RPG aspect of the game lacked depth, which seemed like a lot of wasted potential given that there were plenty of characters that could have been really interesting to get to know. Instead, the character development was nearly all Silverhand, nearly all the time, and I didn’t even have much influence over how that relationship developed.

    Spoilers ahead:

    What about Jackie? He was supposed to be my best friend, but I never had experiences with him to make me feel that way, and then he was gone in just a few scenes. What about Panam? She was so determined to make a difference in the lives of the people who mattered to her, yet she all but vanished once we bonded, after just a couple of missions. What about Judy?? Her personal mission-like encounter was really promising. We supposedly fell in love and were planning to leave the city together, yet for the rest of the game, we had no interaction but “dates” consisting of the same half-dozen lines of dialogue and two or three brief animations, repeated over and over again. I’m sure there are more examples, but I think I’ve made my point.

    I think the biggest disappointment for me was the ending, though. And the other ending that I got by reloading and picking different options, and then the third ending, and the fourth. They all felt like such empty let-downs that I went online to read about the rest. [Edit: These might have been Phantom Liberty endings; I don’t remember for sure.] Surely there must be some good ones, right? Right?

    The only vaguely satisfying ending that I found was a secret one that (IIRC) requires specific choices early in the game, and a very strong bond with Silverhand, and letting the game sit at a particular dialogue screen for several minutes without picking any option. The endings that players are actually meant to experience left me feeling empty. The great deal of time I had sunk into the game was for nothing after all. I guess that could be considered appropriate for a cyberpunk dystopia, but as an experience and a story, it left me feeling cheated. I wished I had my time back.

    So, as I said, I mostly had fun playing it, and it had its share of highlights, but I don’t expect to ever play it again. I hope CD Projekt Red keep much of the technical progress they made with this game (I was so relieved that my character’s movement was responsive for a change!) and work more on character development and player agency in the next one.


  • Elite Dangerous is my go-to lately.

    It’s different to most other games, by not being goal-oriented except for the goals you set for yourself. No main quest line dictating progress. No mandatory tasks. No win condition. Instead, it drops you into a simulation of our entire galaxy roughly 1300 years in the future, where humanity has mastered hyperspace travel and spread through hundreds of star systems.

    (To give an idea of the simulation’s scope: Around 85 million systems have been recorded by players so far, and those are a vanishingly small fraction of what’s out there. Space is big.)

    I like that it offers a variety of activities to fit whatever mood I might be in on a given day. I can hunt pirates, mine asteroids, engage in a bit of piracy myself, find and collect bio samples, infiltrate rival settlements, venture into vast unexplored areas of space, discover Earth-like worlds that nobody has ever encountered before, defend humanity against hostile forces, photograph beautiful stellar phenomena, rescue stranded survivors, customize and finely tune my ship to perform beyond its original specs, team up with friends, pledge to a political power and expand their influence, or chill out as a space trucker and haul cargo to earn enough money for my next upgrade. It can occupy all my attention, or just be relaxing entertainment while I listen to music or an audiobook.

    It’s an MMO in the sense of having a large game world (galaxy) shared by all players in real time, but PvP is optional. One mode exposes you to other players, while another limits you to NPC encounters. You can switch between them at will.

    One warning: A space ship has more than a few controls to learn, and they’re better suited to a game controller or HOTAS than a keyboard and mouse. I use button combinations for almost everything beyond basic flight controls, since there aren’t enough buttons on a controller for everything.



  • This might be an unpopular opinion, but I feel Tears of the Kingdom is overrated. Yes, it has some welcome quality-of-life improvements, and yes, it has more content than its predecessor, but I find the characters less interesting, the environments less inspired, and the encounters more repetitive. Every time I pick it up again, I get bored within a couple hours and go back to another play-through of Breath of the Wild.

    I would vote for Baldur’s Gate 3 over TotK without hesitation.




  • This tool looked interesting to me until I noticed that its external dependency count is in the hundreds, each of which increases exposure to vulnerabilities and supply chain attacks.

    I hope that Rust will some day have a rich enough standard library that the “trust everything” software development model falls out of favour amongst the developers who use it.





  • It’s re-posted from a news community, where it was since removed for not being from an acceptable news site. Unfortunately, the acceptable news sites covered this more than 30 days ago, which disqualifies their articles regardless of whether they were ever posted to the community. shrug

    I couldn’t find a better article in the time I had to spare, so I re-posted this one. I think what’s important in this case is just that word gets out. I don’t see anything misleading about this one, and the EFF link (which is also not exactly a news site) is plainly visible.



  • Some of the APIs in use on Linux today come from older Unix variants. (For this reason, I probably wouldn’t call one of these a “Linux API” as the author did, though I guess it works linguistically for those that are usually present on Linux.) These APIs have semantics that were designed before threading existed on many platforms. Making them thread-safe without breaking existing code can be challenging.

    If setenv(3) is among these, it could explain why glibc’s implementation doesn’t support multi-threaded programs, and why its documentation states as much. To have used it in a multi-threaded environment, ignoring the docs, was a bug in the Steam client. Perhaps it never occurred to the people who ported Steam’s code to glibc that threading issues might be different from what they were used to on other platforms.

    To be fair, the author might be aware of this, as he did refer to glibc’s implementation as a tradeoff rather than a bug.



  • Matrix messaging apps. It’s nice to have modern messaging features, end-to-end encrypted, with no single point of failure, no Google involvement, and no phone numbers. I expect to start recommending it widely when the 2.0 features land in the popular clients.

    WireGuard VPN. It’s fast, even on low-power devices.

    Self-hosted Mumble. Excellent low-latency voice quality for chatting or gaming with friends.

    Radicale, DAVx⁵, and Thunderbird, for calendar and contact sync between mobile and desktop, without handing the data over to Google or anyone else.