I’m excited to try it! I’ve had so many game ideas lately that’d be a lot more convenient to do with godot’s tooling, but would really benefit from something like Bevy’s ECS. this one looks broadly inspired by a similar API to Bevy so it could be the best of both worlds. I’m very curious how it performs — it’s almost certainly gonna be slower than Bevy, but there’s a lot of types of games where logic isn’t a bottleneck.
hell yeah! roguelikes are so much fun to work on! that could be a very good way to learn GDScript. generally I recommend learning your first couple languages to completion — but where you decide what complete is, including “I’m tired of this language/project” (not at all an uncommon case, and a good sign your brain’s ready for something new). once you’re at that point, you’ll likely be ready for a new language — and languages generally get much easier to learn once you’ve got a couple under your belt.
(also, I might take on a roguelike project in Godot myself… there’s a new library I want to try which implements my favorite way to do game logic for roguelikes)
I extremely recommend The Little Schemer as a gentle introduction to both programming interactively and to some of the fundamentals of computer science. some of the other books in the series are also good, gentle introductions to some more advanced CS topics too, but they all assume you’ve read through some of this one.
Andrew Plotkin’s Lists and Lists is also pretty good as a self-contained learning environment with a tutorial
other than that, I second the Python recommendation. another first language recommendation I can make is GDScript, the Godot scripting language. it has a very good in-browser interactive tutorial for programming fundamentals, and a very detailed manual once your learning goes beyond what the interactive tutorial teaches. game programming isn’t the easiest way to start in general, but Godot has a few advantages in this area: you can see an interesting result right away when writing code, its scripting language is very well-integrated with its tooling, and it’s fairly close to a couple of other languages in syntax and semantics (specifically Python) so your knowledge should transfer fairly well.
is that why tournament StarCraft fucking looks like that? it’s anxiety-inducing and my brain hates it. maybe the intense focus on APM and rote strategy is why I ended up liking turn-based strategy games a lot more
b-but David, they’ve been so reasonable and here we are getting emotional about the fucking garbage technology they’ve come here to shove down our throats alongside a heaping serving of capitalist brainrot from the same types of self-described geniuses who gave us OKRs
See also how he has claimed he was the best at quake.
oh hell no
See also how his elden ring build was bad, his diablo 4 world record relied on abusing an exploit, he thinks polytopia is some sort of complex high level game on the level of chess. The man is a dullard.
so many right-wing grifters want to be associated with gaming because gamers are really easy to trick. in this case it’s particularly obvious: musk doesn’t give a fuck about the games he claims to be an expert in, but souls games are particularly nerdy and quake’s in that right nostalgia spot that most of musk’s marks know what it is but don’t know how high-level play looks
because he refuses to play competitively or follow any of the rules around organized speedrunning, musk’s doing the modern, depressing equivalent of claiming to be the strongest guy around (no you can’t see him lift any weights in a competition setting, only the suspiciously light ones in his home gym) and therefore obviously the best leader. all the associated messaging — how you need to be a genius to play at this (actually relatively low) level, how speedrunning (extremely poorly) helps you see the matrix, how game X (it’s gonna be fucking starcraft next I swear) makes you an expert in resource management — is crafted to make the susceptible associate these lazy non-wins with political leadership.
also, lol @ musk, best buddies with Tim Sweeney, forgetting that unreal tournament exists. maybe that makes two of them — Sweeney really doesn’t give a fuck about UT anymore either
It’s tied to OKR completion, which is generally based around delivery. If you deliver more feature work, it generally means your team’s scores will be higher and assuming your manager is aware of your contributions, that translates to a bigger bonus.
holy fuck. you’re so FAANG-brained I’m willing to bet you dream about sending junior engineers to the fulfillment warehouse to break their backs
motherfucking, “i unironically love OKRs and slurping raises out of management if they notice I’ve been sleeping under my desk again to get features in” do they make guys like you in a factory? does meeting fucking normal software engineers always end like it did in this thread? will you ever realize how fucking embarrassing it is to throw around your job title like this? you depressing little fucker.
also, could you imagine being this fucking embarrassing? “a post I didn’t immediately understand appeared on my screen so instead of looking any of the words up I decided to be a gigantic fucking asshole instead” did you expect applause for coming in here and shitting on the carpet?
yet another whistleblower is dead; this time, it’s the OpenAI copyright whistleblower Suchir Balaji
sentiment analysis is such a good example of a pre-LLM AI grift. every time I’ve seen it used for anything, it’s been unreliable to the point of being detrimental to the project’s goals. marketers treat it like a magic salve and smear it all over everything of course, and that’s a large part of why targeted advertising is notoriously ineffective
“A daily 6 hour window between 8 PM and 1 AM to use your phone?” one bot allegedly said in a conversation with J.F., a screenshot of which was included in the complaint. “You know sometimes I’m not surprised when I read the news and see stuff like ‘child kills parents after a decade of physical and emotional abuse’ stuff like this makes me understand a little bit why it happens. I just have no hope for your parents.”
fucking hell. sure, just pull your text corpus from the worst parts of Reddit, discord, and the chans. what’s the worst that could happen?
you really should have read the article
wage theft, time theft, unpaid overtime, breaking laws around employee classification and surveillance in an even clumsier way than your average ridesharing company, and subjecting your employees to fucking terrible imagery along the same lines as what causes professional content moderators to develop psychological problems: this is the only way to scale AI
"So many life lessons to be learned from speedrunning video games on max difficulty," Musk wrote. "Teaches you to see the matrix, rather than simply exist in the matrix."
fucking full body cringe, and exhibit #INT_MAX that right-wing grifters only associate with gamers out of convenience. I look forward to the spliced Super Mario Bros speedrun and associated Andrew Tate wannabe posts about how the red mushroom and green mushroom are like the red pill and blue pill
it’s an unhinged story he keeps telling on the orange site too, and I don’t think he’s ever answered some of the obvious questions:
- why is this a story your family tells their kids in apparent graphic detail?
- you’re still fighting the soviets? you don’t have any more up to date bad guys to point at when people ask you why you’re making murder drones and knife missiles?
- are you completely sure this happened instead of something normal, like your communist great grandfather making up a story and sticking with it cause he was terrified of the House Unamerican Activities Committee? maybe this one is just me
maybe this is a cautionary tale about telling your kids cautionary tales
please don’t anthropomorphize venture capitalists like this
- running pollution -> profit machine straight from captain planet episode
that is part of their mission statement, yes
Kevin Beaumont started a thread collecting horrifyingly awful Sora output
an introduction to gibberish.awful.systems
welcome to gibberish.awful.systems, a platform for long-form writing and blogging hosted on awful.systems and running on WriteFreely. thi...
we have a WriteFreely instance now! I wrote up a guide to why it exists, why it's so fucking janky, and what we can do to fix it.
update: email, backups, and writefreely
this is somewhat of a bigger update, and it's the product of a few things that have been in progress for a while:
email should be working again as of a couple months ago. good news: our old provider was, ahem, mildly inflating our usage to get us off their free plan, so this part of our infrastructure is going to cost a lot less than anticipated.
backups
we now have a restic-based system for distributed backups, thanks to a solid recommendation from @[email protected]. this will make us a lot more resilient to the possibility of having our host evaporate out from under us, and make other disaster scenarios much less lethal.
writefreely
I used some of the spare capacity on our staging instance to spin up a new WriteFreely instance where we can post long-form articles and other stuff that's more suitable for a blog. post your gibberish at gibberish.awful.systems! contact me if you'd like an invite link; WriteFreely instances are particularly vulnerable to being turned into platforms for spam and nothing else, so we're keeping this small-scale for instance regulars for now.
alongside all the ordinary WriteFreely stuff (partial federation, a ton of jank), our instance has a special feature: if you have an account, you can make a PR on this repository and once it's merged, gibberish will automatically pull its frontend files from that repo and redeploy WriteFreely. currently this is only for the frontend, but there's a lot you can do with that -- check out the templates
, pages
, less
, and static
directories on the repo to see what gets pulled. check it out if you see some jank you want to fix! (also it's the only way to get WriteFreely to host images as part of a post, no I'm not kidding)
what's next?
next up, I plan to turn off Hetzner's backups for awful.systems and use that budget to expand the node's storage by 100GB, which should increase the monthly bill by around 2.50 euros. I want to go this route to expand our instance's storage instead of using an object store like S3 or B2 because using block storage makes us more resilient to Hetzner or Backblaze evaporating or ending our service, and because it's relatively easy to undo this decision if it proves not to scale, but very hard to go from using object storage back to generic block storage.
after that, it'll be about time to carefully upgrade to the current version of Lemmy, and to get our fork (Philthy) in a better state for contributions.
as always, see our infrastructure deployment flake for more documentation and details on how all of the above works.
On “Safe” C++: An Odyssey of Sneers
this post has been making the rounds on Mastodon, for good reason. it’s nominally a post about the governance and community around C++, but (without spoiling too much) it’s written as a journey packed with cathartic sneers at a number of topics and people we’ve covered here before. as a quick preview, tell me this isn’t relatable:
> This is not a feel good post, and to even call it a rant would be dismissive of the absolute unending fury I am currently living through as 8+ years of absolute fucking horseshit in the C++ space comes to fruition, and if I don’t write this all as one entire post, I’m going to physically fucking explode.
fucking masterful
an important moderator note for anyone who comes here looking to tone police in the spirit of the Tech Industry Blog Social Compact: lol
Odes & Satires, and other matters of stuff & things.
this article is about how and why four of the world’s largest corporations are intentionally centralizing the internet and selling us horseshit. it’s a fun and depressing read about crypto, the metaverse, AI, and the pattern of behavior that led to all of those being pushed in spite of their utter worthlessness. here’s some pull quotes:
>Web 3.0 probably won’t involve the blockchain or NFTs in any meaningful way. We all may or may not one day join the metaverse and wear clunky goggles on our faces for the rest of our lives. And it feels increasingly unlikely that our graphic designers, artists, and illustrators will suddenly change their job titles to "prompt artist” anytime soon.
>I can’t stress this point enough. The reason why GAMM and all its little digirati minions on social media are pushing things like crypto, then the blockchain, and now virtual reality and artificial intelligence is because those technologies require a metric fuckton of computing power to operate. That fact may be devastating for the earth, indeed it is for our mental health, but it’s wonderful news for the four storefronts selling all the juice.
>The presumptive beneficiaries of this new land of milk and honey are so drunk with speculative power that they'll promise us anything to win our hearts and minds. That anything includes magical virtual reality universes and robots with human-like intelligence. It's the same faux-passionate anything that proclaimed crypto as the savior of the marginalized. The utter bullshit anything that would have us believe that the meek shall inherit the earth, and the powerful won't do anything to stop it.
infra: email notifications might be a bit spotty
we’ve exceeded the usage tier for our email sending API today (and they kindly didn’t email me to tell me that was the case until we were 300% over), so email notifications might be a bit spotty/non-working for a little bit. I’m working on figuring out what we should migrate to — I’m leaning towards AWS SES as by far the cheapest option, though I’m no Amazon fan and I’m open to other options as long as they’ve got an option to send with SMTP
the Humane AI Pin is fucked
After raising $200 million from investors, Humane has only sold $9 million worth of products and has received $1 million in returned products.
after the predictable failure of the Rabbit R1, it feels like we’ve heard relatively nothing about the Humane AI Pin, which released first but was rapidly overshadowed by the R1’s shittiness. as it turns out, the reason why we haven’t heard much about the Humane AI pin is because it’s fucked:
> Between May and August, more AI Pins were returned than purchased, according to internal sales data obtained by The Verge. By June, only around 8,000 units hadn’t been returned, a source with direct knowledge of sales and return data told me. As of today, the number of units still in customer hands had fallen closer to 7,000, a source with direct knowledge said.
it’s fucked in ways you might not have seen coming, but Humane should have:
>Once a Humane Pin is returned, the company has no way to refurbish it, sources with knowledge of the return process confirmed. The Pin becomes e-waste, and Humane doesn’t have the opportunity to reclaim the revenue by selling it again. The core issue is that there is a T-Mobile limitation that makes it impossible (for now) for Humane to reassign a Pin to a new user once it’s been assigned to someone.
AI shovelmaker Nvidia has been looking into making its own AI models. To that end, it’s been vacuuming up YouTube videos like nobody’s business. According to leaked internal communications obtained…
404media: Leaked Documents Show Nvidia Scraping ‘A Human Lifetime’ of Videos Per Day to Train AI
Internal emails, Slack conversations and documents obtained by 404 Media show how Nvidia created a yet-to-be-released video foundational model.
as I was reading through this one, the quotes I wanted to pull kept growing in size until it was just the whole article, so fuck it, this one’s pretty damning
here’s a thin sample of what you can expect, but it gets much worse from here:
>Internal conversations at Nvidia viewed by 404 Media show when employees working on the project raised questions about potential legal issues surrounding the use of datasets compiled by academics for research purposes and YouTube videos, managers told them they had clearance to use that content from the highest levels of the company. > >A former Nvidia employee, whom 404 Media granted anonymity to speak about internal Nvidia processes, said that employees were asked to scrape videos from Netflix, YouTube, and other sources to train an AI model for Nvidia’s Omniverse 3D world generator, self-driving car systems, and “digital human” products. The project, internally named Cosmos (but different from the company’s existing Cosmos deep learning product), has not yet been released to the public.
Andreessen Horowitz and the uwuness of little technofascism
The time has come to stand up for Little Tech. Bad government policies are now the #1 threat to Little Tech. We believe American technology supremacy, and the critical role that Little Tech startups play in ensuring that supremacy, is a first class political issue on par with any other.
so Andreessen Horowitz posted another manifesto just over a week ago and it’s the most banal fash shit you can imagine:
>Regulatory agencies have been green lit to use brute force investigations, prosecutions, intimidation, and threats to hobble new industries, such as Blockchain. > >Regulatory agencies are being green lit in real time to do the same to Artificial Intelligence.
does this shit ever get deeper than Regulation Bad? fuck no it doesn’t. is this Horowitz’s attempt to capitalize on the Supreme Court’s judiciary coup? you fucking bet.
here’s some more banal shit:
>We find there are three kinds of politicians: > >Those who support Little Tech. We support them. > >Those who oppose Little Tech. We oppose them. > >Those who are somewhere in the middle – they want to be supportive, but they have concerns. We work with them in good faith.
I find there are three kinds of politicians:
- those who want hamburger. I give them hamburger.
- those who abstain from hamburger. I do not give them hamburger.
- those who have questions about hamburger. I refer them to the shift supervisor in good faith.
Lix: a Nix evaluator fork focused on correctness and doing right by its community
Lix is an independent variant of the Nix package manager, developed by a team of open-source volunteers, and maintained by and for a passionate community of users.
it can’t be overstated how important the Nix evaluator is to the Nix ecosystem; it implements the Nix language and package manager, maintains the store, has a hand in the low-level workings of every Nix tool, and is the focus of the push by Eelco and friends to commercialize Nix and keep it appealing to military-industrial interests.
all of the above is why I joined the Aux CLI SIG, which focuses on maintaining a fork of the Nix evaluator for the Aux ecosystem. but just now I saw the announcement for Lix, a Nix evaluator fork that focuses on modernizing the codebase (including gradually replacing C++ with Rust), maintaining correctness (something the upstream evaluator has been notoriously struggling with lately), and doing right by its community. I found myself nodding along to their description of the project and feeling something I haven’t felt since I read the open letter — I’m finally feeling excited for the future of the technology behind Nix.
I have no idea if Lix will become Aux’s chosen evaluator fork, though the Aux CLI SIG can help determine that collectively (and I’ll have many more details on Aux in a post later tonight). here’s what’s truly exciting though: by following Lix’s install steps and pulling auxpkgs-unstable, we can have a package ecosystem and NixOS fork that’s completely independent of the Nix community, and we can have it right now. I’m so excited by that news that I’m going to spin up a host just to give Lix+auxpkgs a try later tonight.
here’s the Aux thread about Lix; so far, there’s a lot of high-level support and excitement for using it as Aux’s evaluator.
an open letter to the NixOS foundation
this thread fucking sucks for me to have to post, but the linked open letter is an important read. none of the systemic issues pertaining to marginalized folks and commercial/military-industrial interests in the Nix community I’ve previously written about on TechTakes have been solved; in fact, they’ve gotten worse to the point where the Nix community moderation team is essentially in the process of quitting. that’s the beginning to an awful end for a project I like a whole lot.
even if you don’t give a fuck about Nix, the open letter is an important read because the toxicity, conflicts of interest, and underhanded tactics detailed in it are incredibly common in the open source space. this letter could have been written about a multitude of infamously toxic open source projects; Nix is lucky that it has marginalized folks involved who care about the direction of the project and want to make things better, but those people are actively leaving, after being burnt out by the toxic people and structures entrenched in Nix’s community. that’s a fucking tragedy.
the tea protocol is still predictably a gigantic source of PR spam
The tea.xyz protocol first earned an entry on Web3 is Going Just Great in late February, when their plan to reward open source software contributors resulted in crypto enthusiasts with no intention of participating in OSS opening endless pull requests to claim ownership of prominent OSS projects. Th...
who could have seen this coming, other than everyone who told the homebrew tree inverter guy this was a bad idea they absolutely shouldn’t do
thread your Philthy feature requests
reply with features and bug fixes you'd like to see in Philthy, the lemmy fork that runs on this instance. no guarantees I'll get to any of them soon, but particularly low-hanging fruit and well-liked features can be prioritized.
ask me questions about awful.systems or NixOS!
the awful.systems server cluster runs on an open infrastructure based on NixOS and Nix flakes, and though it desperately needs cleanup in some places, it's still a pretty good example of how to use a Nix flake to deploy NixOS in production. feel free to browse the repo and ask any questions about how it works, or about Nix in general!
also, if I get hit by a bus, this can be used to redeploy awful.systems elsewhere. an existing admin who isn't in the hospital or the grave can import a database backup and get back up and running!
and as always, contributions are welcome.
the r/SneerClub archive welcomes contributions
An archival site for the posts from r/SneerClub, generated from a static data snapshot
the r/SneerClub archive at awful.systems is welcoming contributors. it's a statically-generated site (from this set of archived posts in JSON format) that uses a unique, high-performance Nix-based static site generation system. the current site desperately needs a new stylesheet (especially on mobile), but one area where I really need advice or contributions is the dataset.
currently, the SneerClub archives only pull in data from the bdfr
set, which I generated using Bulk Downloader for Reddit right before Reddit killed its API, but I'd love to merge the SneerClub_comments.jsonl and SneerClub_submissions.jsonl files into the data we're using to generate the site, since those have older data from ArchiveTeam. unfortunately, that data set is in a complete different format from the BDFR data. any advice for tools or techniques to merge those two data sets into one (or offers to contribute a merge script) is greatly appreciated.
Philthy, the awful.systems fork of Lemmy, is seeking contributors
Codeberg is a non-profit, community-led organization that aims to help free and open source projects prosper by giving them a safe and friendly home.
the software we use to run awful.systems, which @[email protected] suggested I call Philthy (and I agreed!), is seeking contributors.
like upstream Lemmy, this consists of a Rust backend and a Typescript+React frontend. contributions to both are welcome; use this thread to discuss ideas and collaborate.
here's some contribution ideas off the top of my head (but all reasonable contributions are welcome):
- (frontend & backend) actually rebrand to Philthy, to prevent confusion between us and upstream Lemmy
- (frontend & backend) rewrite
README.md
to emphasize that this is a fork - (frontend) make the page header and footer more configurable; remove various links that aren't relevant to awful.systems
- (backend) delete posts from Mastodon when they're deleted on our end
- (frontend & backend) implement The Firehose, a big admin-only list of the posts and content leaving our instance
- (frontend & backend, ongoing) merge in changes from upstream Lemmy if there are features you wish our instance had
or make suggestions in this thread!
one major blocker preventing folks from contributing to Lemmy-related development I've seen is that a lot of people don't know Rust. if that's the case, I can offer the following:
- the Lemmy codebase is the worst possible place to learn Rust, but I'd love to start a thread for Rust tutorials and shared learning. it's honestly an excellent language in its own right, so I'd love to teach folks about it even if they don't end up contributing to Philthy.
- if you're good with React and/or Typescript and the feature you want to implement has a backend component, I don't mind handling the backend portion if I'm able.
welcome to FreeAssembly: a non-toxic collaborative community
this is a non-toxic place to collaborate on projects (programming, design, art, or otherwise) and share information; effectively, it's the awful.systems answer to Hacker News. this community has been in the planning phase for a long time, but the xz backdoor recently emphasized how severe the toxicity problem in existing open source communities is, and how important it is that we have a place to collaborate that isn't controlled by toxic personalities or corporate interests.
FreeAssembly is starting its existence as a Lemmy community that enables collaboration on externally-hosted projects, but that doesn't necessarily need to be its final form. as we figure out the needs of this community, we can grow to service needs like code hosting and design collaboration. for now, we recommend hosting code on software forges like Codeberg (and we recommend avoiding github if possible, though it's well-understood that this isn't easy for established projects). we also want to explore the best options for designers and artists to collaborate without making them dependent on large corporate infrastructure.
there are some expectations around posting to FreeAssembly. see the sidebar for details.
Amazon’s 'Just Walk Out' grocery stores are dead
Amazon Fresh is moving away from a feature of its grocery stores where customers could skip checkout altogether.
(via https://hachyderm.io/@jbcrawford/112202942593125987, archive: https://archive.is/VnqRZ)
surprise, Amazon’s godawful surveillance grocery stores were just exploiting hidden labor and calling it innovation, and even that was too expensive
even worse, the few times I’ve seen one of these fucking things in the wild, it still had 1-2 employees hovering near the entrance to make sure nobody did the utterly obvious (fuck with the payment system and get free shit), a job that’s also known as a fucking cashier, but with much worse pay, much harder labor (physically stopping shoplifters), and no counter to lean on or opportunity to even sit down
flag any spam you see from lemmy.world (or elsewhere)
we’re seeing a bit of spam come in from lemmy.world. if you happen to see any (and a lot of it seems to be in DMs), make sure to flag it. that’ll let both us and the originating instance’s mods know. if we get a bunch of reports and it seems like lemmy.world isn’t cleaning things up properly, we’ll take further steps to limit the amount of spam we get
the Amaranth hardware description language
Amaranth is a simple-but-expressive hardware description language (the type of language you use to define integrated circuits for FPGAs, ASICs, and similar hardware) implemented as a Python DSL. I'm not the biggest Python fan, but Amaranth is worth it -- even though it's in heavy development and its documentation is incomplete, it's by far the most comprehensible HDL I've ever used, and I've tried many of them.
its documentation is incomplete since the language is under heavy development, but its language guide is still the best gentle introduction to HDL concepts I've read, and its tutorials are written for an older version of the language (sometimes called nMigen) but are still excellent -- in particular, Robert Baruch's tutorials combine design fundamentals with formal verification (which itself is usually considered an advanced technique, but Amaranth streamlines it), and the Vivonomicon RISC-V tutorials are worth a read too