News for hackers. Stuff that matters.

runevault

Re:What ORMs have taught me: just learn SQL (2014) on Saturday July 04, 2026 @01:09PM (#48786982)
ORMs are so incredibly finicky. I still remember using old Linq-to-SQL (not Entity Framework) and I had to write the linq query in the reverse order of what I expected or it created 3 nested subqueries instead of just joining the tables together. That was when I learned to instantly double check every ORM query I wrote.
Sadly the era of government that split up studios and theaters is long gone. Hollywood is built on a different time between things like this and its flavor of unions that cover the biggest players in the industry.

Closest thing we have to a Hollywood today is games, but game makers can also make consoles and industry wide unions would never happen. Is there some unionization in games? Yeah, but I haven't heard of any single one that cover a significant number of different studios

Re:Advanced Compilers: The Self-Guided Online Course on Thursday June 18, 2026 @02:06PM (#48589152)
I'd say check out Crafting Interpreters [1]. It has 2 parts, the first in Java for doing a treewalk Interpreter in Java before going farther with a version written in C.

1. https://craftinginterpreters.com/

Re:Epic Games announces Lore version control system on Wednesday June 17, 2026 @06:52PM (#48578120)
Not really. Lore is for gamedev at companies and so not a distributed VCS. Using it for an open source project if you allow outside PRs makes no sense.
Re:How we made hit video game Prince of Persia on Friday June 12, 2026 @12:56AM (#48500088)
Stripe did such a good job with this book (and the others I bought that they published). Each one feels like an artifact I can show off on top of having interesting information inside.
Re:Stop Killing Games on Wednesday June 03, 2026 @06:06PM (#48390779)
So you're assuming game devs write every line of code in their server infrastructure. First, could be using a third party library you have license to use on a limited number of machines that make up your backend servers. Second you could be paying for third party API access to something like snowflake.

You either have to rip out the code (which may or may not break the server, but still requires developer time to do) or write replacement code which likely takes even more dev time to do or you would have done it instead of paying for the library/access to the service.

Re:Ruby for Good on Sunday May 24, 2026 @08:07PM (#48262281)
Elevator pitch for the language itself or a library/library ecosystem that lets you do things better than in other languages. Ruby originally blew up because Rails was a way people enjoyed writing backend code, despite the speed issues. But the problem is other languages got good enough at writing back ends Ruby was no longer special there and didn't have anything else to back it up the way Python has such strong control of the ML library ecosystem.
Re:O(x)Caml in Space on Friday May 15, 2026 @02:00PM (#48151763)
It is interesting seeing more and more GCed ecosystems become aggressive about allowing code to stack allocate more. Watching dotnet go through it since I think Core 2.1, or whenever they introduced Span<T>, Memory<T>, etc to get significant performance gains has been nice to track.

GCed languages do not have to be slow if you keep the garbage to only where it is necessary (or where you can allocate once and never collect).

The version I've always heard is just well designed but less popular languages, but the ones I can think of were all functional (Haskell/F#/OCaml/Clojure/Elm/Erlang)
Re:Dotcl: Common Lisp Implementation on .NET on Saturday May 02, 2026 @11:00AM (#47986991)
If nothing else dotnet has TCO IL operations (C# doesn't compile down to them last I knew but F# does) so in theory shouldn't be hard to add.
Re:I built a Game Boy emulator in F# on Thursday April 30, 2026 @05:17PM (#47968338)
AOT vs JIT is always interesting since JIT depends on the runtime actually deciding to bother running the later passes to get more optimized code.

And sorry for the paranoia, I find a lot of people tried f# or even c# back in 4.x Framework era and think it hasn't changed.

Re:I built a Game Boy emulator in F# on Thursday April 30, 2026 @03:32PM (#47967180)
Out of curiosity when did you write that interpreter? The entire dotnet ecosystem has seen massive speed improvements over the years, particularly for anyone who last tried them during the Framework era. Hell they even put work in to improving tail calls which the c# compiler doesn't even take advantage of (also either in the dotnet 9 or 10 timeframe f# added an attribute to make it so a recursive call that isn't a tail call throws a compiler error so you can't accidentally screw that up).
Re:Raylib v6.0 on Thursday April 23, 2026 @01:12PM (#47878390)
I don't know that any open source project will ever compete with Unreal and its high end tech targeting the AAA space. But beyond that, Raylib doesn't give a ton of things an engine does because that is not the point of a library like it. This is to let someone build their own engine how they want, Unreal/Unity/Godot/etc let you give up some control and decision options to skip a ton of work building out a lot of basic features.
Re:YouTube now lets you turn off Shorts on Thursday April 16, 2026 @09:15PM (#47801523)
The thing that is funny about it is at least with the mixes, it does actively make me engage less because there are videos I would click on if they were not being tied into a mix, but because they are I actively choose not to open the video and let the song play.
Re:YouTube now lets you turn off Shorts on Wednesday April 15, 2026 @11:58PM (#47788491)
It really amazes how how Youtube refuses to let me hide stuff I don't want to see on my homepage. I still long for the ability to tell them to not give me mix playlists, I do not want them, and often they annoy me when the first song is one I'd click on but I don't want to have to pay attention enough to kill it before the next song plays (since you cannot disable play next in playlists...)
It is, at best, incredibly hard to accumulate that much wealth without doing shady things. Microsoft's monopolistic practices in the 90s for example. The only person I can think of that ever cracked a billion without their money coming through dirty means was, funny enough, JK Rowling who has her own set of issues separate from the value she got out of Harry Potter.
Re:LÖVE: 2D Game Framework for Lua on Sunday April 05, 2026 @10:05PM (#47656160)
SDL3 is something I've been keeping an eye on, but at least one thing that held me back from diving into it was SDL_Mixer (audio library) was not updated to a release version for SDL3 until I think a month ago? I need to get back to it but lately I've been messing with SDL2 + wasm stuff using emscripten.
Re:Neovim 0.12.0 on Sunday March 29, 2026 @03:12PM (#47566192)
For me the nice thing about multiple cursors is when it would take more time to write the regex than it does to just throw down say 8 cursors and update the spots.
Re:A Case Against Currying on Sunday March 22, 2026 @01:49PM (#47480120)
Clojure CL as well have macros that let you thread results from call to call, but you could argue that's cheating because of how flexible Lisp syntax is.
Re:A Case Against Currying on Sunday March 22, 2026 @01:46PM (#47480090)
Currently DUs are slated for the next version of c# releasing end of this year. However last I knew they only come boxed which at least to me partly defeats the point of having them (being able to have multiple types inline because of the way they share memory and only have a single size based on compiler optimizations).
Re:Meta’s Renewed Commitment to jemalloc on Monday March 16, 2026 @03:28PM (#47403622)
On top of cost, they probably cannot get as much memory as they order in a timely fashion so offsetting that with greater efficiency matters right now.
Re:The Slow Death of the Power User on Wednesday February 25, 2026 @02:15PM (#47156350)
I wonder how much of this complexity is a form of resume driven development. Jobs are webdev with a host of microservices and a datastore and and and... This leads people to building apps in that style instead of a command line tool (or non-electron GUI application) to get the same job done.
There was a recent gnarly version of this where some anime reactors and at least one animation channel (with something like 1.4 million subs) got demonetized and had to go through a ton of hoops to get a human to fix it.
I really should get back to outer wilds. I like you bounced off of it because of the controls, and I keep meaning to go back because people I have faith in swear by it. I know the most basic secret you learn incredibly early, but that's the only 'spoiler' I know.
Yup. I remember running dotmemory on a whim and being confused by all the stringnames until I noticed what was in them. They really should put that in the docs to just make a const stringname somewhere. I use a global static class for anything I want in multiple files. But I also tend to just use statics instead of autoloads if I'm doing everything in c#.
I'd caveat this slightly as "it depends"

For mathy stuff, 100% c# is going to be better. But if you need to round trip to the engine a lot getting stuff in and out of the dotnet heap can actually hurt performance. You also have to be _really_ careful because there are a lot of cases you generate accidental garbage (biggest one is when you use strings that are getting implicitly converted to StringNames every time you run a function, you can avoid this by pre-generating them as consts but I've run into a fair few people who never ran dotmemory or the like to see the issues).

If you use an existing template (and are willing to use scons) GDExtension doesn't really have the standard build problems of rigging everything up with CMake/etc in my experience. The template is set up to handle the "set up the build" problem for you. Still have the header problem though cannot deny that one.
Really? Color me corrected I only ran into TC after SonicPi.

Though this entire discussion reminds me I need to fix my TidalCycles setup, had it working on Linux with vscode but I tried it out again a month or two ago and it wasn't playing anymore.

Re:Dogalog: A realtime Prolog-based livecoding music environment on Thursday December 18, 2025 @02:37PM (#46317483)
Feels like more and more of these sorts of things are popping up. For example there's TidalCycles which is a Haskell version of the idea, which also exists as https://strudel.cc/ which is I believe a webasm version of it.
Re:I Love OCaml on Friday November 07, 2025 @12:23PM (#45848666)
Oh yeah I love f#, I need to find more excuses to use it. I just wish it felt like MS was willing to invest more into it. But at least they have not abandoned it and continue to put some resources into its ongoing growth.

Older »