What are you doing this weekend?
33 points by caius
33 points by caius
Feel free to tell what you plan on doing this weekend and even ask for help or feedback.
Please keep in mind it’s more than OK to do nothing at all too!
Porting Perfect Dark 64 levels to noclip.website.
I have static geometry and vertex lighting working already and it makes me appreciate the game even more, they put a lot of lighting details in by splitting faces and painting vertices. I'll be sure to leave an option to disable textures so everyone can enjoy Rare's craftsmanship.
This port wouldn't be possible if there was not a complete decompilation
already, there's some dubious things the game does to load its assets, when you
have unrestricted hardware access and a tight budget, you optimise things and
cause headaches 26 years later.
Also N64 games don't store their models in a parsable format, they store
display lists, essentially raw API calls to the graphics chip. Reading those
models means emulating the chip which has a microcode provided by the game,
Rare being one of the studios who used their own microcode I can't reuse the
existing code because the vertex data changed.
It's a fun puzzle, to port any game to noclip you have to reimplement its rendering engine and data layer, if you added audio and gameplay that would make a full game.
Wow. This is the coolest thing I've seen in a long time. I only played a little bit of WoW nearly 20 years ago. But I have always wished there was a way to be able to fly around the world just to see all the areas I wouldn't every get to experience. Now I can
I had no idea something like this existed. Thank you for sharing.
I extracted a bunch of PS1 Final Fantasy Tactics data (thanks to docs from FFHacktics wiki) and built a project around it. I bet I could contribute that game to the website.
The project: https://github.com/adamrt/heretic
Thanks again!
I'm trying to put the BEAM into the seL4 microkernel, by leveraging Nix, Zig and LionsOS:
https://github.com/byzantine-systems/chrysopolis
Right now I can get all the way up into an Erlang shell after booting, there's still lots of hacks and duck-tape everywhere, but I'm kinda excited that it worked after 2 weeks of tinkering and broken builds.
Cool! Have you seen this other effort to make the BEAM available on embedded systems?
Yes! I actually want to test if I can replace my custom ERTS with AtomVM this very weekend.
Trying to survive the heat mostly. If I'm succesfull, I'll be practicing Rust more. I like the OCaml parts of Rust very much, but I don't know yet about some other stuff(rand being a crate and not in the standard library?).
Also maybe this weekend will the weekend I finally move over some personal stuff to tangled from github. I can't really enjoy browing github these days, feels like a MMORPG where there is very little to do even though it's so big.
Unsure what your level of rust is but what worked for me was to abandon the book and the tutorials which I had tried to go through six times before and start a big project from scratch. Something you actually care about, beyond the exercises and rustlings; something huge that you don't even expect to complete.
It wasn't easy for me in the beginning but it was pleasant. Solving one little bit at a time and getting closer to the (remote, impossible) goal was what got me stick to it.
I now love it and write it it daily - and frankly feel like I'm betraying C, my former lover.
My recommendation is to stick to whatever syntax you like and are familiar with. There is a lot of functional-like stuff in rust that may be similar to ocaml. No shame in not being idiomatic. No shame in abusing Rc, RefCell or both.
The slim stdlib will actually help you with that initially. And then maybe you'll curse it when your Cargo.lock feels like it's become node_modules.
Also stay away from async. Don't worry: it's infectious like the gpl so you can't really avoid it in the long term. But truth be told it's s second class citizen and currently lacks the elegance of sync rust.
At the end of the day one key factor for me was that perf is close to that of C, but there is no endless gdb sessions. If it builds it runs. You can have logic bugs, but that's it.
HTH
I don't know yet about some other stuff(rand being a crate and not in the standard library?)
You're not alone :-) That's for secure RNGs though; I think for fast RNGs for computational stuff it's wise to keep it out of the standard library since there are so many tradeoffs to make in choosing one.
That being said, there are a few extremely popular crates (rand, serde, clap, libc are some that spring to mind) that are so widespread that they almost feel like the standard library.
https://doc.rust-lang.org/stable/std/random/struct.DefaultRandomSource.html
It's still experimental though.
My wife and I welcomed our first child (daughter) early Sunday morning, so we are adjusting to new life at home!
I cannot imagine not having generous paternity leave...
Studying compiler fundamentals for an interview. They told me interview question will be about dataflow analysis but I found it hard to find practice exercises for compiler engineering online, so I am reading later chapters of "Modern Compiler Implementation in ML". If anyone has collection of compiler exercises I would appreicate.
I remember some of CMU's compilers assignments being public. There's a dataflow analysis problem at the bottom of this page. You might be able to find variations with a little searching, too. Good luck with the studying and the interview!
Messing around building a king's field-like in godot. Not a particularly serious project. Just building for fun.
This is how far I've gotten: https://www.youtube.com/watch?v=nvas81rUZKw
I've got physics based combat, blocking and parries, and two enemies with incredibly scuffed modelling[1]. I just got the idea of attaching ambient audio to the enemies to have that sort of Benny echolocation from Thief. Also kinda makes an ad hoc audioscape. Pretty neat effect.
[1] Working in gamedev adjacent tooling really is an eye opening "damn bitch, you live like this?" moment. Whoever thinks vim is too complicated ought try texture painting in blender. It's genuinely impressive how people manage to be productive with these tools.
I am finally going to sit down and learn nftables properly. I use a NixOS based router at home so i need to properly know what i am doing when writing the firewall
I have done the same thing, with no experience with nftables. It wasn't too difficult, up until vlans. It has been on my TODO for a while now.
Enjoy, and take breaks.. ;)
Coming back home to +40° from a trip to Czechia... I'll be stocking my fridge up with cold water and ice tea and maybe playing Nine Sols or something I'll pick up from the Steam sale.
Nine sols is great! I'd highly encourage exploring between levels, the game can feel pretty railroaded but it is more open than you'd think. The bosses are also heavily tail-loaded. The first few bosses are meh and made me question whether I wanted to finish but about 60% through the boss fight quality jumps up a ton.
Programming much as I can on a (private) personal project without AI. At work, I feel the need to use an agent a lot. I need the space to decompress on my own time.
I’d like to try improving ADT support in zngur, which is a Rust/C++ binding generator. zngur is the first C++ interop tool that actually feels flexible enough, and I hope it will make oxidization of Lix much less painful.
Thanks for mentioning zngur, I haven't heard of it before and this seems really cool. In particular, writing Rustier code in a C++ project really appeals to me!
Two jazz gigs:
The first sweltering in the heat for several (thankfully short) sets outdoors at a beer festival. The second is an hour only on the "acoustic" stage at a town festival.
Traveling to New York to start a Recurse Center half batch!
starting my PTO! I'll be in Milan Tue evening-Sat, second trip to Italy this year (I was in Rome about 2 months ago). I hope to update my website as well, brcause I'm tired of Hugo SSG breaking changes every single time I want to post something and Caddy's templates look promising
I wrote my own blog engine after getting tired of Hugo's changes and lack of easy way to write/publish. It turned out to be much easier than I thought, and you get to have infinite possibilities. A web editor with codemirror and markdown to html compiler library is all you need!
Working on a new shell: https://bower.sh/posix-shell-is-all-you-need
Or possibly on a better rlwrap?
Your post makes me wonder, how much of the shell one needs to parse if the only goal is completion of the POSIX shell part (it will probably be still fine for non-POSIX bash things because incompatibilities are minor, although $(( aaa + bbb )) will not know to complete variable names, but you could accept $(( ($aaa) + ($bbb) )) if it matters. For example, does the difference between ; | & && || ever matter for completion?
Hey all, long time reader first time poster :)
I’ve been working on implementing ocapn and a goblins inspired library in rust . I’m hoping to get it in an open source-able state this weekend.
I’ve got a working demo of goblins and rust interop in a chat demo which was a huge milestone.
There’s some cleanup and plumbing changes I think want to make before sharing it but I’m very excited about the progress so far.
Working on a new compiler project. I started it this week as an after work relaxation project where I don’t use any AI. It’s nice.
I've gotten annoyed with hledger's built in rule-engine for parsing CSV files, so I'm going to take a stab at writting my own. We'll see how it goes!
Finally finished that little Android game I started making with my wife (checks commit log) 5 YEARS AGO. Now we just have to do one of my least favourite things: Interacting with Google admin UIs that never match any screenshots more than a month old. Then it shall be published and finished.
System maintenance!
I have my home NAS / VM server to upgrade, along with a bunch of FreeBSD servers it hosts. Plus my desktop and laptop - both FreeBSD (for work) and Linux Mint (for games) need bumping.
Several of the servers are running pkgbase, too, which is new to me. Will see how that goes vs. the much more familiar freebsd-update.
I've cut it a little fine with FreeBSD 14.3. 3 days of support left ...
Continuing work to migrate some small static websites away from a small VPS towards using Cloudflare's Pages offering.
This effort began originally to avoid the maintenance of a VPS for such small static websites...but very recently, now that several VPS providers are beginning to increase their pricing, it is turning into a cost savings effort as well.
So, all my small static websites will be served from Cloudflare's CDN, etc. But, for web apps, I will still use a small VPS - which said VPS will simply rev. proxy to my homelab. Since the VPS will only have to proxy small amount of traffic (for me and maybe 1 other person in my family at most), it can stay small (read: low cost). I guess with all this RAMageddon this is the state of things in 2026! :-)
Cloudflare has a tunnel service you can use to have a service or site punch back through to your home server. It's pretty handy for this if you don't want to have a VPS at all. I keep meaning to in-house (literally and figuratively) the pi searcher with this one of these days. I'm actively using it for some work stuff though.
Trying to build over my Lego wireless car (programmed in Rust) and making it FPV. Right now I'm fighting power issues when trying to power the Pico, moto, servo and camera from the Lego power pack. Probably because I lack experience in electronics.
I'm trying to get better at using the Helix editor. It's been a bit of a learning curve coming from a non-vim-like. (I am also as a consequence learning to use the yazi file browser)
I'm also replatforming a static site to Astro for type safety reasons, and easier progressive enhancement options.
I am also starting to learn how to paint with gouache. Should be a fun and difficult adventure. It's a fun word to say at least.
Ate something bad, or caught a stomach bug so recovering from that. It was really not ideal during a heatwave and I was slightly dehydrated. Taking it easy this weekend: reading, resting and sleeping
I've been planning a system called slopscore for estimating how likely a project is to be vibecoded. It's not an exact science and I'm going for a "best effort" approach, in which we look at a number of heuristics and compute some aggregate score.
Anyways, I'm hoping to write it in OCaml, mainly because I like it but it's also pretty well suited to the task anyways. I plan to model a "repository" as a product type, since then I can write pure functions of repo -> signal and then signal list -> score.
But sadly, OCaml lacks a library for high level Git operations, like "list commits", "diff" types, etc. So I am thinking of writing a separate, small library that wraps the git CLI, parsing its output into record types like commit list. Then I can use this lib in slopscore to clone a repository, "scan" it to construct a repo type, then apply any number of functions to it that compute the signals which I can aggregate.
EDIT: P.S. I would really appreciate some input on these heuristics. Please let me know if you have any recommendations!
Definitely recommend checking out these parallel efforts:
We had great success posting about our Seattle meetup last month. It was super cool to swell our ranks with some Lobsters folks~
This time there's a chill co-working session today, followed by the official monthly meetup tomorrow. Take a chance out here on meatspace :)
I'm in Seattle area and would love to come to these. Do you guys have an event schedule say on Luma or Meetup that I can subscribe to? A lot of meetups seem to be using Luma now. Seattle Startup Week for instance is using it.
If it’s not much trouble consider joining our Seattle newsletter (we self-host the system as much as possible!)
You can also browse the News page for announcements. In the near future that page should have an up-to-date calendar feed.
Thanks, joined the letter. However I highly recommend joining something like Luma to get more viability. A lot of tech people and groups in Seattle seem to be using it.
Hoping to finish up Ray Tracing in One Weekend, this time in Elm https://github.com/wolfadex/elm-ray-tracing-in-one-weekend. I've been doing each chapter as a commit (sometimes sub-chapters as commits too). Did it once before in Odin and had a lot of fun. It's been fun to see the differences both in the implementation and my understanding of it this time around.
Also some online gaming with family, not sure yet what we're gonna play. We finished BG3 after 2+ years, and then did some https://archipelago.gg/ for a few months. Not sure what we're moving on to next.
My covers band is playing two gigs in one day on Saturday! The first is a short one in the middle of the day at a local beer festival, while the second starts a 9pm and runs 'til late; Sunday will probably be spent in a daze—if not in bed.
Originally the festival was going to be at Solstice, but it was moved outside our control and we could not move our other gig. It'll be an experience, for sure! Looking forward to it.
I finished my SOUPJAM project that I mentioned a few times before in these threads (ended up settling on "just" a software renderer without the art aspect of a SOUP-like) and now I'm working on a tiny game for an informal jam ran by a streamer I really like.
Other than that, ever since learning about Hershey fonts, I've been meaning to write a renderer for them, so I hope to hack away at that; the heat wave in Europe is so unbearable that I should have plenty of time due to staying mostly indoors with a fan, so I guess that's at least some silver lining!
Recovering from sickness, so taking it slow. Catching up on a tax paperwork, walk on the beach, sleep.
Also writing a Caddy service in Guix so I can put my blog back up online.
Frequent dips in the baltic sea in this heatwave, and reading Pinocchio for the first time after discovering Om Malik's (rest in peace) writing with his passing this week. This piece resonated with me.
I started my own business doing platform management next to paid employment, so I'm building out some cookie cutter Ansible stuff to make doing a first pass quick scan easier for myself.
Probably finishing my DIY calculator that uses analog meters for digit display and decimal point: https://infosec.exchange/@lcamtuf/116790481673632352
I guess it's the logical next step after the meter clock I built earlier this year: https://lcamtuf.substack.com/p/a-nicer-voltmeter-clock
Yes, it's entirely pointless, but it's some woodworking fun and an excuse to step away from the computer.
doing some graphics programming exploration with my Vulkan renderer. I just started working on a new galaxy renderer
(I did a version of galaxy renderer in Rust + wgpu a few years ago, but it was pretty ugly so I want to give it another try)
Screenshots wanted!
It doesn't have much yet (just a bunch of guidelines like this for debugging purposes and a single red sphere at the center of the galaxy). I plan to add some screenshots when I actually have something more demonstrable.
Hopefully biting the bullet and moving my personal blog over to my local Raspberry Pi Zero. No real reason to do so, other than a desire for more direct control :P
Final coat of paint on the bathroom overhaul, then toilet and vanity installation. And then back to building rolling carts for stuff in newly finished “attic” (may now be the nicest room in the house). Plus there’s a guy down the street that has a leaking metal roof that I’d like to help. Only screens I plan on interacting with are to turn on/off music/audiobooks.
I'm the CEO of ThetaEdge (https://thetaedge.ai) and am also building Abject (https://abject.world) for fun. I created Abject because I had some radical ideas to experiment with and a lot of them turned out great. So my plan this weekend is to incorporate some of those back into ThetaEdge. Though I only have one day this weekend since the other is my oldest son's birthday.
Finishing fixing a 3D printer, and leveling another, then fixing my desktop.
Updated the desktop before reorganizing things in the room, but it didn't come back on. No idea why yet, but fingers crossed I don't need to do silly things like restore a bios.
The rest of the weekend will be gated on how quick/long that process takes...
Enjoying the endless summer days. If raining, working to improve performance in a Datalog-based typesetting system written in SPARK/Ada.
Playing with bevy 0.19's new scene notation (great for UIs!) by making a visual novel. https://bevy.org/news/bevy-0-19/
Working on my daily programming puzzle project, getting it ready for launch.
The core game is ready, including server-authorative streak tracking. The AI-assisted puzzle authoring is hit-and-miss but I believe it can be improved with more data. I also still have to decide on the license for the codebase. I have a deployment up on https://beta.dailyprog.club but the real launch will be on the apex domain.