I switched to Linux for everything but AAA FPS PVP games last year and have had a great experience so far.
Steam+Proton makes everything I play just work: Helldivers 2, Slay the Spire 2, No Rest For The Wicked, FF7 Remake, Stardew, modded Lethal Company (using r2modman) are the main things I've been playing recently, and all worked out of the box with Proton.
My PS5 controller may have needed me to install one package or something but has been working flawlessly after that.
I keep a Windows drive around for stuff like Apex Legends, Battlefield 6, but I pretty much never boot into Windows anymore except for those.
(I probably sound like a shill at this point, having commented something like this on multiple Linux threads now, but I continue to be impressed at how well Linux performs for gaming these days!)
Idk, I'd like to see AI design a schematic and lay out a board. Even the occasional "Show HN" that combines AI+PCB stuff is about analysis and checks. It doesn't seem like anybody is even near any kind of ECAD using AI. People still complain about autorouters. Even frontier models need architecting and guard rails in software to avoid spaghetti, it seems like an even harder problem to get them to choose the correct parts, create accurate footprints and symbols, and wire those all up together.
"This is wrong, fix it" + recompile, can happen twenty times in ten minutes, but "we discovered the layout is wrong, fix it" is precluded by the cost and time of a new board spin.
AI + text (code) seems like a good match but (E)CAD seems a lot harder to interface AI with. If I'm wrong, I'd like to share that with the EEs on my team, though.
PCB routing is still a murderously-hard NP problem, AI or no AI. Not least because a fully-automated schematic-to-PCB flow has to be driven by component placement, which in turn is driven (or at least influenced heavily) by requirements further up the chain.
I'm sure it'll happen -- if you can defeat the world Go champion you can certainly route traces -- but so far it seems to be an exception to the bitter lesson, where proprietary hand-tuned algorithms are still on top. Given the lack of large quantities of PCB CAD files that can be appropriated for training, it might be one of those things that has to be self-learned by the AI, again reminiscent of how Alpha Zero worked.
I didn’t know about hosted-MCU! I just started using the ESP-AT firmware for an ESP acting as a radio co-processor on a project at work - do you know how hosted-MCU differs?
I did glance at the readme and get the impression that hosted-MCU works for all compatible ESPs and seems more flexible and powerful, where ESP-AT is for select ESP chips and is more limited.
I don't, and haven't used ESP-AT. It sounds like AT may use a text-based protocol (Something that was big a while back?). Esp-Hosted uses Protobuf/RPC to access IDF commands, and HCI direct.
I keep saying this under a bunch of Linux-adjacent posts, but I switched to EndeavourOS late last year and have been enjoying it ever since.
I do 99% of my computing needs on it, with the last 1% being a second Windows SSD I only boot into to play games that require heavy anticheat (Apex Legends, Battlefield 6, Rainbow Six Siege).
Otherwise, I've been doing everything else in Linux, including all the rest of my gaming (Baldur's Gate 3, Helldivers 2, No Rest For The Wicked, Slay The Spire 2, Stardew Valley, pretty much anything that's not AAA FPS multiplayer that I've wanted to play so far, even modding games like Lethal Company using r2modman).
It's been great - I told my coworker I only realized how annoying the Windows auto-update and forced reboots were after I got used to my Linux PC always being in the state I left it.
This is exactly me. Been switched for 6 months. Loving it. I find I'm enjoying my computer so much more now that I feel it belongs to me rather than being an advertising surface for MS and their partners
So why were public outdoor areas like skate parks filled with sand to “promote social distancing”?[1] Or parking lots at beaches and state parks closed “to curb the spread of coronavirus”?[2]
LA County Parks is implementing following changes effective November 30, 2020:
All playgrounds will be closed.
Fitness zones and exercise equipment will be closed.
Parks and trails remain open for outdoor, passive use for individuals or members of the same household. Masks and physical distancing are required. No group gatherings are permitted
I agree with you that some protocols were dumb. Schools should have opened windows, or added UV-C lights, or replaced high-traffic surfaces like doorknobs in large common areas with antiviral materiel, added foot-use mechanisms for opening doors, and so on. Or, if it was too expensive for any of that, asked cleaning staff to spend more time on high-transmission areas like bathroom faucets and doorknobs even if it meant less time elsewhere. But I think there's something more than just outdoor vs indoor going on.
Yep, my casual Steam games run well out of the box. I don’t even use a gaming-focused distro like Bazzite, just EndeavourOS. Helldivers 2, No Rest For The Wicked, Slay The Spire 2, even modded Lethal Company with friends using r2modman (also worked OOTB). And of course Discord works, including streaming when friends want to watch
If I really want to play Apex or Battlefield I’ll fire up my dual drive dual boot Windows, and in the meantime, no more Microsoft spying on me, forced Windows updates and reboots at random times, ads in my Start menu, Xbox apps and other bloatware, etc
I did consider Fedora, just was intrigued by EndeavourOS, being Arch-based but with default settings that work totally fine for a casual like me, not having to fuss about setting up a DE or WM+addons, firewall, WiFi, Nvidia GPU worked out of the box, etc
As a kid who was a voracious reader, also called a geek by myself (cringily lol) and by others, some quotes that resonated then and still do now:
> Geek kids read many more words than they speak. As a result, when geek kids do talk, they talk like a book.
> They use fully formed sentences, complete with subordinate clauses; if you listen hard, you can almost hear semicolons and parentheses.
> Many geeks, though, speak with "-v" turned on
> In fact, many geeks are so offended by the very idea of telling others what to do that they spend all their lives in the declarative voice, and never use the imperative voice at all. These are the geeks who recoil from moving into management.
I'd recommend Katherine Dee's Substack, Default Friend, for a more in-depth look at this type of thing. The NYT op-ed dips into the usual tropes of the attention economy, true crime, copycat behavior, viral memes and social media algorithms, calls to safeguard the algorithms and AI.
Dee's article "The Nihilism of the Mass Shooter" (written in 2022, even) (https://default.blog/p/the-nihilism-of-the-mass-shooter) provides more specifics than the generalities in this op-ed. I'm a regular reader, so it's easy for me to see, but I believe that her passion about investigating and reporting on these things is visible even to a new reader. It's clear to me that she actually spends time looking at the sources, e.g. there's a link in the article to one of her sources, a pdf of the law enforcement report on a shooter from Parkland.
Is there an example of the generic programming that you've found useful?
The extent of my experience has been being able to replace functions like convert_uint32_to_float and convert_uint32_to_int32 by using templates to something like convert_uint32<float>(input_value), and I didn't feel like I really got much value out of that.
My team has also been using CRTP for static polymorphism, but I also feel like I haven't gotten much more value out of having e.g. a Thread base class and a derived class from that that implements a task function versus just writing a task function and passing it xTaskCreate (FreeRTOS) or tx_thread_create (ThreadX).
Typed compile-time computation is nice, though, good point. constexpr and such versus untyped #define macros.
The generic algorithms that come with the C++ standard library are useful. Once you get used to using them you start to see that ad-hoc implementations of many of them get written repeatedly in most code. Since most of the algorithms work on plain arrays as well as more complex containers they are still useful in embedded environments.
I had been programming for a long time before I learned OOP. After some years playing with it, I came to the conclusion there's not much I can't do about as well using simple functions and structs. The key is a well thought out and organized codebase. Always felt polymorphism in particular seemed more trouble than it was worth.
I still use modern languages on a regular basis, but when I drop back to more basic languages there are only a few ergonomics that I truly miss (eg. generics).
std::array can sometimes give you the best of both worlds for stack allocation in that you statically constrain the stack allocation size (no alloca) while guaranteeing that your buffers are large enough for your data. You can also do a lot of powerful things with constexpr that are just not possible with arrays. It is very convenient for maintaining static mappings from enums to some other values.
Steam+Proton makes everything I play just work: Helldivers 2, Slay the Spire 2, No Rest For The Wicked, FF7 Remake, Stardew, modded Lethal Company (using r2modman) are the main things I've been playing recently, and all worked out of the box with Proton.
My PS5 controller may have needed me to install one package or something but has been working flawlessly after that.
I keep a Windows drive around for stuff like Apex Legends, Battlefield 6, but I pretty much never boot into Windows anymore except for those.
(I probably sound like a shill at this point, having commented something like this on multiple Linux threads now, but I continue to be impressed at how well Linux performs for gaming these days!)
reply