I recently converted a game, Tribal Trouble (https://github.com/bondolo/tribaltrouble) from GLFW to SDL3. It was mostly a painless refactor though I did have some issues with full screen exclusive modes and desktop
full screen but was eventually able to resolve those.
I ended writing a demo for screen mode handling to test and document the fiddly bits.
That name is a blast from the past! I remember Tribal Trouble's devs mentioning they chose Java because they wanted to use "weird/unusual" languages for gamedev :-P
GLFW has had no active maintainers for a couple years and has poor support for Wayland, Windows ARM64 and current MacOS. It is
my understanding that the former GLFW maintainers want to just wind it down and not allow any new maintainers even if volunteers were available.
The LWJGL team recommended a couple of months that projects not use GLFW or move to SDL3 when convenient.
There are two projects working on Tribal Trouble, mine which is a pure technology modernization and refactoring of the original game, and a community supported version that is publishing the game for free on Steam. The community version is using my modern port as a base but has done major work to add lots of other features and value add as well as building an active community.
For several decades relatives of mine always swept out their trucks after transporting cattle salt blocks or alfalfa bales on the same quiet narrow S shaped section of roadway in the bush about a mile from the house at the back of the property. Amazing how almost every year someone managed to shoot a deer there in the fall.
Early in my career I read "Peopleware" by Tom DeMarco and Timothy Lister. Between that book Brooks' "Mythical Man Month" and Humphrey's "Managing the Software Process" it seemed that there was hope for the software industry learning some necessary lessons and growing to become a true engineering discipline. Nope. Never happened. The industry standard, despite improvements in some areas, is still a farcical shitshow with little beyond lipservice to process, predictability or proper self-evaluation. I can only describe agile, as it is practised, more of a coping mechanism than an actual methodology. Indeed the methodology is embodied mostly in the infrastructure; issue tracking, version control, code review, continuous integration with as little methodology glue between them as required to produce output.
Modern first and second tier software management seems less professional, is contributing less and is generally worse than it was twenty years ago. The quality of the engineering and program managers, their training and commitment to their craft seems really low and is not generally valued. On average team level software management has gotten worse rather than better and, given what is expected and how it is valued, this shouldn't be much of a surprise. It is truly disappointing that what could have been a valuable and productivity enhancing role became so useless.
Things aren't going to change for the better though until the dust settles somewhat on the role of AI in software and systems development and we start again to consider how software should be developed in the 21st century. Maybe it is possible that with AI doing most of the low-level work that the focus will change to building and maintaining architecture and systems. Many programmers might become more like traditional engineers doing a lot more systems work than they do today and continuing to solve problems. Lord knows though it won't be today's software management doing this work; they have nothing in the way of skills to offer to the problem.
Having looked into the history of call tracking / blocking, it's pretty evident that major US telcos have very little interest in making marketing calls difficult. However tenuous the association between "marketing" and the actual practice of the scammers, harassers, abusers, and worse generating literally billions of such calls monthly (see: <https://pirg.org/edfund/resources/ringing-in-our-fears-2025-...>, "The monthly average of scam and telemarketing calls increased from 2.14 billion a month in 2024 to 2.56 billion a month through September, according to YouMail").
Just one more thing that is being destroyed. There are thousands more that you aren't hearing about. If it exists then it must be destroyed. The intention is nothing less than to make rebuilding impossible. If you still have illusions that the US government has not been taken over by a death cult yearning for the apocalypse then you need to put down your phone and look at the scale of what is happening. Legality means nothing; they are doing everything they can to ensure that there will be no institutions left to hold them accountable.
I recently retired after 37 years of working in tech so of course I am working on open source.
My retirement treat was to spend three months learning OpenGL and 3D game programming by porting a classic Java RTS game, Tribal Trouble, to more modern OpenGL and Java. I learn much better working with real code and this was a great experience. It was certainly a different experience than it would have been without an LLM teacher, reviewer, helper, assistant. The app was beautifully designed and very cleanly implemented back in Java 1.4 days of 2004 so it has been a joy to modernize it while attempting to preserve the clean design. The OpenGL work and the necessary math was a lot different than what I have been doing for most of my career so it was a lot of fun. I will probably continue tinkering with Tribal Trouble occasionally as I still enjoy playing the game. I want to learn Blender to edit/improve the 3D models. (https://github.com/bondolo/tribaltrouble)
For now I have mostly moved on from gaming and am instead working on improving the accessibility (#a11y) of the Wireshark network protocol capture/analysis tool. There are a lot of blind and low vision IT folks for whom this tool is a job requirement. The current accessibility is unfortunately poor. I've submitted my first PR and am relearning the Wireshark source after last contributing 20 years ago. It's also been 15 years since the last time I did anything with Qt so that has been a refresher as well. I don't enjoy working in C++ but the goal matters so I will suffer through. (https://wireshark.org)
I plan to work on Wireshark for a couple of months at least and then look for something else to contribute to, probably also accessibility related. I have some ideas already about next apps. I'm currently tempted to build an NFC app for iOS in Swift but haven't decided yet. After having built in the last year both Kotlin Compose and TypeScript React apps, none of which I enjoyed very much, I am somewhat curious if Swift and SwiftUI will be more fun.
Excellent work on Tribal Trouble. I'm a huge Java fan and I had no idea this existed (usually you only hear about Minecraft and RuneScape). I wonder how much OpenGL/LWJGL code there is. It could maybe run in the browser with CheerpJ or TeaVM if that code could be ported to WebGL.
My labor of love is SnapCode: https://reportmill.com/SnapCode . It has a small interface (camera + vertex buffer) that can run on either desktop or in browser.
This would also be a great candidate for JDeploy (https://jdeploy.com), too, to provide a nice download package for multiple platforms.
Love this. I have to say after 20 years of working in tech, I'm keen to retire to a world of chopping wood and gardening...but who knows, i guess winter will still keep me in doors when that happens.
Congrats on making it to retirement and keeping busy, hope you have a great time!
I am 4 months into a planned 6 month break. The plan was learn Spanish and do some traveling. After a month I started a side project and haven't focused on much else.
Years of the reward cycle being around shipping code is hard to override I guess.
Oh, I am doing a lot more than just hacking code. I am also cooking, gardening, reading, writing, travelling, brewing and distilling, swimming, volunteering, …
I had a conversation the other day at a birthday party with my friend's neighbour from the building. The fellow is a semi-retired (FIRE) single guy. We started with a basic conversation but then he started talking about what he interested in and it became almost unintelligible. I kept having to ask him to explain what he was talking about but was increasingly unsuccessful as he continued. Sure enough though, he described that he spent significant time talking with "AIs" as he called them. He spends many hours a day chatting with ChatGPT, Grok and Gemini (and I think at least one other LLM). I couldn't help thinking "Dude, you have fucked up your brain." His insular behaviour and the feedback loop he has been getting from excessive interaction with LLMs has isolated him and I can't help but think that will only get worse for him. I am glad he was at the party and getting some interaction with humans. I expect that this type of "hikikomori" isolation will become even more common as LLMs continue to improve and become more pervasive. We are are likely to see this become a significant social problem in the next decade.
What was the nature of his interests, if you don't mind sharing? I'm always curious about how these things develop -- makes it easier to recognize.
Seems like a lot of them fall into either "I'm onto a breakthrough that will change the world" (sometimes shading into delusion/conspiracy territory), or else vague platitudes about oneness and the true nature of reality. The former feels like crankery, but I wonder if the latter wouldn't benefit from some meditation.
It was a mix of mystical philosophy and transhumanism and he does think that "the world is on the edge of a breakthrough" but he sees it as emergent. It is not something he is personal creating just something he believes is imminent and he is one of the first people to recognise it.
Thanks -- so a little of column A, a little of column B? Kind of feels similar to how early societies built whole religious practices out of interpreting stochastic phenomena like knucklebones or entrails, only supercharged because this particular viscera seems to talk back!
I often have to remind myself of the quote "Talk to a man about himself and he will listen for hours" when socializing to remember to ask questions and let the other party explore whatever topic/situation they are into. It seems like AI conversations are so one-sided a person might forget to cede the floor entirely.
Did he refer to the AI with a name? How much of a relationship did he have with his? I have multiple friends that have named their ChatGPT, and they refer to it in conversation, like "oh yeah, Sarah told me this or that the other day", except Sarah (names changed) is an LLM.
I'm worried about our future.
...except I went over to ChatGPT and asked it to project what the future looks like in seven years rather than think about it myself. Humanity is screwed.
I have similar issues over the years on various devices and it has always been frustrating to determine the cause. Power management in general is so inscrutable. I wish there was a tool which let me go back through recent history, even just since the last 100% charge, and tell me why my machine was not sleeping or idling and what was consuming power. Apple has added some energy tools over the years but has never offered tools to explain system behaviour.
Such a shame that PDF doesn’t just, like, include the semantic structure of the document by default. It is brilliant that we standardized on an archival document format that doesn’t include direct access to the document text or structure as a core intrinsic default feature.
I say this with great anger as someone who works in accessibility and has had PDF as a thorn in my side for
30 years.
I agree with this so much. I've tried to sometimes push friends and family to use text formats (at least I sent them something like Markdown), which is very easy to render in the browser anyways. But often you have to fall back to PDF, which I dislike very much. There's so much content like books and papers that are in PDF as well. Why did we pick a binary blob as shareable format again?
> Why did we pick a binary blob as shareable format again?
PDF was created to solve the problem of being able to render a document the same way on different computers, and it mostly achieved that goal. Editable formats like .doc, .html, .rtf were unreliable -- different software would produce different results, and even if two computers have the exact same version of Microsoft Word, they might render differently because they have different fonts available. PDFs embed the fonts needed for the document, and specify exactly where each character goes, so they're fully self-contained.
After Acrobat Reader became free with version 2 in 1994, everybody with a computer ended up downloading it after running across a PDF they needed to view. As it became more common for people to be able to view PDFs, it became more convenient to produce PDFs when you needed everybody to be able to view your document consistently. Eventually, the ability to produce PDFs became free (with e.g. Office 2007 or Mac OS X's ability to print to PDF), which cemented PDF's popularity.
Notably, the original goals of PDF had nothing to do with being able to copy text out of them -- the goal was simply to produce a perfect reproduction of the document on screen/paper. That wasn't enough of an inconvenience to prevent PDF from becoming popular. (Some people saw the inability for people to easily copy text from them as a benefit -- basically a weak form of text DRM.)
Thanks for the explanation! I was vaguely aware of those issues but not in depth. It all makes sense of course and now PDF is so deeply entrenched it's very difficult to push other formats. It's interesting that the contention between content and layout is still such an issue. I don't know what the fix is, maybe just the web?
Even assuming you could get people to do the work (probably the real issue here) could a single schema syntax capture the semantics of the universe of documents that exist as PDFs? PDFs succeeded because they could reproduce anything.
I ended writing a demo for screen mode handling to test and document the fiddly bits.
https://github.com/bondolo/SDL3-Fullscreen-Demo
The game is Java, like Minecraft, the demo is C because I wanted to keep it as simple as possible.