> What are you working on this weekend?<p>Rabbit-holing as it stands right now. :-)<p>Let me explain.<p>Broadly speaking, what I'm doing is mostly the same as what I've been doing for a while now: "AI stuff" to be a bit hand wavy.<p>More concretely, I've been spending a lot of time working with AgentSpeak[1] and Jason[2]. Jason being an implementation of the BDI[3] architecture. Ultimately this is all in service of my interest in neuro-symbolic AI, continual learning, and embodied intelligence. I'm experimenting with storing the "beliefs" of the system as RDF triples, and using symbolic AI inferencing techniques on that belief base. But I'm also exploring how to use neural networks to get those structured beliefs into the system from raw sensor input. So I have a hardware platform that includes microphones, webcams, a 9-DOF accelerometer/magnetometer/gyroscope sensor, a GPS module, etc. for the agent to "live" in.<p>Anyway, that said, I have some stuff I'm doing where message routing becomes a critical element, and I've been looking at using Apache Camel[4] as part of this. And this is where the rabbit-holing comes in.<p>I wrote a bunch of Camel code years ago for a totally unrelated project. I mostly haven't touched Camel since, so I decided to dust off all that old code and get it running again just to get my head back around how some of this stuff works. Aaaand as you might expect, it's been an adventure. The old Camel 2.5.0 stuff wouldn't work for various reasons, so I upgraded to 3.x.something. Which meant rewriting a bit of the code due to API changes. Fine, I did that and got most of my basic samples working. Then I ran into a sample I wrote that involves sending a message to a JBossMQ queue.<p>JBossMQ hasn't existed for about a decade.[5] And of course I don't have a running instance anywhere, or even the binary download of a version of JBoss that includes that stuff.<p>A wiser person than I would have looked at this and decided to either A. just skip it altogether, as it's not strictly relevant to what I'm doing now, or B. port the sample to a modern MQ system like the latest version of ActiveMQ.<p>Me? Heh. I'm deep down the path of finding and downloading and installing JBoss 4.0.5, Java 1.6.0, and some other abandoned software, just to try to get this sample code running again. Doing this kind of ridiculous stuff is one of the places where my obsessive tendencies come out. It's a character flaw.<p>Still, it's fun in a way and I don't think it will take <i>that</i> much more time. I already have the JBoss 4.0.5 server running, now I just need to remember (or find documentation on) how to configure queues and topics in that version. And then remember which client jars have to be copied over for my program to connect to the server. And bob's yer uncle. :-)<p>Anyway, I'll probably finish the rabbit-hole thing tonight (famous last words) and spend most of the rest of the weekend getting back to the important stuff.<p>[1]: <a href="https://en.wikipedia.org/wiki/AgentSpeak" rel="nofollow">https://en.wikipedia.org/wiki/AgentSpeak</a><p>[2]: <a href="https://github.com/jason-lang/jason">https://github.com/jason-lang/jason</a><p>[3]: <a href="https://en.wikipedia.org/wiki/Belief%E2%80%93desire%E2%80%93intention_software_model" rel="nofollow">https://en.wikipedia.org/wiki/Belief%E2%80%93desire%E2%80%93...</a><p>[4]: <a href="https://camel.apache.org/" rel="nofollow">https://camel.apache.org/</a><p>[5]: JBossMQ begat JBossMessaging, which begat HornetQ, which begat Artemis, which became part of ActiveMQ. Or something like that. It's a bit of a mess.