14
votes
What programming/technical projects have you been working on?
This is a recurring post to discuss programming or other technical projects that we've been working on. Tell us about one of your recent projects, either at work or personal projects. What's interesting about it? Are you having trouble with anything?
I've been interested in the IndieWeb as a broad topic for a while. More recently, I've become interested in the Micropub standard.
The basic concept is that you can have any number of servers that follow the standard, and any number of clients. In theory, any client should be able to work with any server.
You write your blog posts, or other types of content (see microformats), and the server will then integrate with whatever backend it's been setup for to publish your content. A pretty typical backend is writing plain text markdown and then having a static sit generator run to generate your new web page.
There's plenty of implementations out there, but I've been infatuated with Gleam lately, so I've started writing my own server using that. I'll share the project once it's at the MVP stage.
Speaking of Gleam, I'm very excited to be attending their first ever annual conference in a couple of weeks, in Bristol. It will be my first time attending a tech conference.
I have been doing some hacking with AirTags. I have wanted to embed an AirTag in my Steam deck for a long time now. People have already done this, but I didn’t want to have to take apart my Steam deck to replace the battery all the time. I want to wire my AirTag into the Steam deck battery directly.
Biggest potential problem was the voltage difference. Lithium ion will go up to 4.2v, and coin cell batteries start at 3v. I looked for others online who tested the safe voltage range of AirTags and couldn’t find anything. Gemini hallucinated that it would definitely blow it up to give it 4.2v and recommended a low drop out regulator. I have a few spare AirTags right now, so I decided to just try it.
One interesting feature is the power switch. The AirTag has two positive terminals and one negative. I figured it was just for redundancy, but it’s actually used as a switch. You have to short the two positive terminals together for the AirTag to power on. With that resolved, I hooked it up to my bench power supply and started pumping the voltage. Turns out an AirTag will work just fine at 4.2v! In fact, it is just fine up to 4.35v (for high voltage lithium cells).
Right now I have an exposed AirTag board soldered to an old pouch lithium cell to see if there are any long term issues. Last ping was 6 minutes ago, which is normal for being away from an AirTag. I have some conformal coating coming in soon. My plan is to completely conformal the AirTag board and hot glue it to the steam deck circuit board. Someone already found a spot for an unmodified AirTag in the grip, so a bare circuit board should be easy to fit.
Next step is doing the same thing for my kobo Clara ereader. There is a surprising amount of space in there to use, but I’m not sure if there is a spot to fit the entire AirTag, just because it’s circular. I also haven’t looked for a spot to tap the battery voltage yet. The steam deck has some easy pins to tap, but I think the kobo will be more difficult.
Here are some pictures: https://share.icloud.com/photos/02cFG8ZdAhZRYgPxXX9lRlrng
My personal link-archiving site is coming along well. I figured out what I’m going to do as an alternative to Tilde’s groups. These are just tags that begin with a tilde. So now I get to define my own categories like ~research, ~opinion, and ~dev (software development).
I also spent some time figuring out how to do auto-tagging. We (the coding agent and I) can define Taggers, which are rules for when to auto-add a tag. In some cases the rules are very simple such as domain name matches, so any link to GitHub gets a ~dev tag. But we’re working on keyword matches using a naive Bayes approach, which should work better for ~health. I have an admin page that does naive-Bayes “training” for a tag, gathering statistics about what words appear in tagged versus untagged Links.
Pretty soon I’ll be ready to start importing all my old links from Tildes.
Hey, this is pretty cool!
I've toyed with making something similar myself, but eventual settled on self-hosting Linkwarden, which fits my needs adequately. But I still yearn for the simplicity of something like yours on occasion.
i have been planning, organizing, and fleshing out systems and mechanics for a video game I want to make over the past few months and now i’m starting to try to learn c++ and unreal engine. i’ll probably make a much simpler game to learn how to use the engine and practice c++ before starting on my actual video game project. will be really exciting to make music for it as well. wish me luck!
Idle curiosity: why Unreal and C++? That seems a little like jumping into the deep end of game development. My understanding is that Unreal protects you from some of C++'s rough edges, but it still seems like an uncommon choice for someone who doesn't already know C++ or have other game experience. (Not a bad choice, or anything, I'm just curious about how you came to it.)
It’s well-known and well documented, has lots of resources and plugins (if that’s what they’re called), will let me hand-code (in C++ as far as I can tell) and/or use their visual scripting framework, can create the cinematics in the same program (this will be useful for me outside of game development as well), and it’s free (highly doubt my initial game(s) will meet their earnings maximum). Seems like it can port to the destinations i’m interested in. I’m starting out with no prior game development and only vague familiarity with programming and figured learning this software would be useful from day zero to (theoretical) several games later.
I’m not married to the idea of using Unreal. I know some folks love Unity or Godot. Just seeing that there are some perks (visual scripting and general 3d animation that can be used for non-gaming purposes).
I am very open to suggestions or insight from anyone who has first-hand experience!
As a software developer but not specifically a game developer, C++ is generally considered a more challenging language to learn, especially if it's your first, but that doesn't make it bad or anything. Especially with AI agents that can answer "why doesn't this code work?" instantly, it's definitely possible to be successful on that path. Maybe the extent of my advice is that if you find yourself getting frustrated or not being able to get the tools to do what you want, try different tools before giving up on the project. Looking forward to the "Check out this game I made!" post in the future.
Finally got around to starting a blog recently (https://tesseractc.at). I'm hoping that it can be a way to wrap up projects that don't have a good end-goal (I can just publish a blog post to cap off whatever I've been working on).
With that in mind, I published my first blog post where I attempt to replicate a graphics technique used in the upcoming game Shadowglass. This is exactly the kind of thing that I want to put on a blog, because otherwise I would probably want to implement it into like, a game or something, but that would be an immense amount of effort.
It's a little more expensive, but FYI tesseract.cat is available (as of a few minutes ago).
.cat domains have some strange restrictions the last time I checked (years ago), like requiring your site to have a catalan translation. I'm pretty happy with the .at domain.
In the past months, I've been churning out loose game remakes, quickly and joyfully, thanks to the agentic AI tools.
I'm most proud of Monster Sweeper - RPG take on minesweeper, inspired by Mamono Sweeper and Dragonsweeper. Click cells,
avoid minesfight monsters, level up and obtain abilities. I'm still adding features and balancing things and would love feedback. Note that I avoided playing Dragonsweeper to try to not be inspired too deeply and instead try to find my own way.Another one that turned out OK (If I'm to say) is Physilinks, a physics based twist of the match-three genre, with several more twists. I tried to make each level play sufficiently differently from the others. Best on computer, but technically works on mobile too.
I've also made a quick remake of a classic Pacman arcade game, and after I'm done with Monster Sweeper will continue with something new.
I've been modelling and printing cases for a handful of Wio Tracker L1 nodes, which I couldn't get at short notice with case/battery included, and figured (Thanos meme) that I could do it myself. Unfortunately this was delayed by a day or two after the print head thermistor in my CoreOne copped it, but I should have all cases printed in time for the upcoming con. I want to see how resilient they are with a couple of thousand people nearby. The cases took only a couple of iterations to "work", but I've since printed so many iterations trying to get it as thin as possible with the (admittedly bulky) 2000mah batteries I have, as well as to perfect the button-feel.
I recently took part in the Bigmode Game Jam and created SLCK. I'm really proud of it overall, even if there are aspects I'm less than satisfied with such as the sound/music, which is definitely an area I'm weak in but also one that I didn't prioritize so was left scrambling to do after an all nighter on the last day. So far the feedback has been really positive as well, which warms my heart, and I think there's a good idea there to explore further at a later date.
Just played through it. It was fun! The tutorial introduces the controls and gameplay well. The controls and movement felt good. I wished (especially on the last level) that I could zoom the camera out a bit. Also on the last level, I was able to cheese the subjugator by getting it stuck on the block in the center of the arena. I think it would be cool if lunging into an enemy did some damage. I also think it would be cool if I could "charge up" a lunge to go farther.
Good concept, great entry for a game jam!
Thanks alot! There's a lot that I could do with the concept that I might revisit in the future.
Back in September, I posted about a tool I made to help generate LLM AI summaries of TTRPG sessions played on Discord.
This week, I made a huge number of updates and changes to it, generally increasing its efficiency, as well as capturing metrics and offering better functionality.
The general work flow is:
Craigbot to record your TTRPG session played on Discord.zipfrom Craig to Scribble, where the audio is locally converted into a text transcript* originally I only had support for Gemini, but now, I've added support for all 3 major providers (Gemini, Claude, ChatGPT), as well as Ollama. So if using Ollama, this could be fully localized.
Some of the tools I've added that have really increased its usefulness include a way for our DM to view/download individual and campaign-wide transcripts and recaps, so that he can pick through things and find details we may have mentioned that he wants to pursue. He feels it's taken a lot of the "note taking" burden off of him, to have a scribe he can reference for help.
I've been trying to figure out the OS on my gaming laptop. for the past few months I was running Bazzite, which has been really painless in terms of gaming. It's everything else that has been like pulling teeth. To be clear, browsing, light dev work, etc. has been fine. But any time I needed to compile software or use something niche it was this obnoxious decision tree of options because bazzite's built off of Fedora Atomic and is immutable. I don't really understand the details of it, but all I know is that installing new software was consistently a pain in my ass.
So I sought something more "free". I tried just plain non-Atomic Fedora...but getting nvidia drivers working was a nightmare. So I gave up and went with Ubuntu. Nvidia drivers are easy there, but I kept running into little annoyances that required tinkering and at that point I was second-guessing Linux entirely.
I settled on Windows 11 LTSC. Look I love Linux, and I'm amazed by how great Bazzite was for gaming on it. But sometimes I just want everything to just work out of the box. And you can't beat Windows for that (unfortunately).