Rendered at 23:30:01 GMT+0000 (Coordinated Universal Time) with Cloudflare Workers.
Stitch4223 24 hours ago [-]
“Hi Codex, please find attached website about the specification of my Battlesuit and use the documented API to create a plugin for Home Assistant that shows groups of sensor data.
You are only allowed to use commands that retrieve data, you are not allowed to perform actions on the suit.
Treat the suit like its API is not robust and in worse shape than a cheap toy: perform read calls slowly and sequentially with at least one minute in between.
If possible please group data in meaningful categories, just like the tank and radar dome.
My Home Assistant is the default on the local network, credentials are in credentials.txt.
Please send me a text when you’re done. Kthnxbye”
pstadler 18 hours ago [-]
"The Kampfanzugskode isn't working well." - "Why can't we use KI to improve it? I've heard from Hans that this Klaus Kode is good at Programmierung." - "We can only use Mistral because of Regulierungen." - "Let's open source it then, so others can use Klaus Kode." - "Ja! This is indeed a legit Schlupfloch and a fantastische Idee!"
avhception 17 hours ago [-]
I'm gonna steal "Klaus Kode", that one really got me.
oh my god, that's gotta be the best European innovation I've ever seen in a long time
this deserves an EU grant
quietfox 16 hours ago [-]
Having completed our company’s ISO 27001 recertification process recently, this one really hits home with me.
bayindirh 12 hours ago [-]
System is unavailable every 2nd Tuesday?
Was ist das Betriebssystem des Servers? Windows?!?
throwaway270925 5 hours ago [-]
"Windows XP-kompatibel (Pflicht gemäß Berliner IT-Infrastrukturrichtlinie)"
pstadler 16 hours ago [-]
Haha, I had no idea this existed.
andyferris 11 hours ago [-]
Haha love it. Long live the fax machine!
sam345 11 hours ago [-]
Awesome.
watinthedeutsch 11 hours ago [-]
[dead]
18 hours ago [-]
donquichotte 17 hours ago [-]
"But Wolfgang, could these Regulierungen be umgangen by hosting TiefSuch Blitz on our very own Rechneresysteme?"
hanspagel 11 hours ago [-]
Das ist korrekt.
mock-possum 21 hours ago [-]
Excellent cold open for a sci fi
moffkalast 15 hours ago [-]
> like its API is not robust and in worse shape than a cheap toy
This guy military techs :P
It is a DDS API, so if ROS 2 is anything to go by then it probably doesn't work at all at least 40% of the time.
ketzu 16 hours ago [-]
I wonder if someone just got super annoyed at having to ask legal to share their documentation with a cooperation partner for export control clearance, that they decided getting it open sourced would be less of a hassle.
Now they can freely link anyone to the document.
jvanderbot 11 hours ago [-]
This is 100% a valid workflow in DoD/ITAR fields. Suffer once through review, benefit eternally. It's especially important to get one good reviewed spec / presentation out, then all later reviews can be staged w.r.t. that one and are much easier to baseline and pass.
That'll be $1000 consulting fee on ITAR compliance.
w4der 9 hours ago [-]
Isn't $1000 a bit low for compliance consulting fees?
jvanderbot 9 hours ago [-]
Well given it took me 1 minute to type that, I consider it a loss leader.
3abiton 10 hours ago [-]
I 100% support this "loophole"
rayiner 9 hours ago [-]
Off-topic, but "Rheinmetall" is one of the coolest company names. It's like what a company that builds mechs would be called in an anime.
bickfordb 7 hours ago [-]
It will be exhilarating when their robots are pointing guns at us
Razengan 7 hours ago [-]
Just hold up a printout of Mickey Mouse®
justsomehnguy 7 hours ago [-]
Missouri Metalworks :-|
Rheinmetal :-O
Literal "Thing, Japan" expect s/Japan/Germany
Iknowsheknows 2 hours ago [-]
The american equivalent is United States Steel (which is owned by the Japanese ironically.)
alhirzel 1 days ago [-]
Reminds me a lot of the Tactical Microgrid Standard (aka TMS aka MIL-STD-3071) [1], probably just because TMS uses DDS as well. I would really like to know if there is a protocol that functions like DDS but caters to real-time guarantees and prioritizes (at a "simple protocol" level) usability on embedded systems with no dynamic memory allocation. It would also need to be just-as-functional with non-real-time systems. One problem with DDS is that it is too heavy-handed to implement well on an embedded system.
There's a range of DDS implementations, definitely a number that are compatible with embedded and spaceflight applications that don't require dynamic memory allocations. You're going to take a hit on some DDS features, but then again you aren't going to need to handle a large queue of large dynamically-sized messages on some small embedded platform.
I think it's rarely the right choice - most of the hardware I've seen that uses embedded DDS probably should have used plain old UDP instead and then whatever client was running on beefier hardware then handled the translation into DDS - but there are shipping products that use embedded DDS.
p_l 1 days ago [-]
Pretty sure there are DDS implementations that provide most of that, maybe with memory pools instead of no-allocations.
Other than that, PX4 uses an in-memory only pub/sub for internal data bus, somewhat inspired by DDS
alhirzel 11 hours ago [-]
I should have also mentioned that my appetite also includes not being locked into one vendor's software stack. For instance, there are nice offerings from Eprosima [1] and Twin Oaks [2] that do this, but they seem to be "outstanding in their field" and would be difficult to replace if a need to do so developed. In the case of Eprosima's offerings, they also make some architectural assumptions that are difficult to maintain for some applications (such as having a paired Linux device with each embedded device acting as a translator).
But yes - there absolutely are solutions already. I guess I was just lamenting that they weren't really functionally accessible for all applications.
Zenoh (https://zenoh.io/) is a good alternative to DDS in many cases - it scales down to microcontrollers with most features still intact, but scales up to a routed hybrid mesh if needed.
It does move the schema enforcement out of the middleware layer, so it’s a bit different. But it’s now a first-class alternative middleware implementation for ROS2 as an alternative to DDS.
alhirzel 11 hours ago [-]
Wow - thanks for pointing this out! I will be looking into it.
BoorishBears 13 hours ago [-]
TIL there are people using DDS for non-realtime
teiferer 17 hours ago [-]
Oh boy, just what the world needs right now. Open source weapons APIs!
MiroslavPokorny 14 hours ago [-]
MAVLink has been open source for over a dozen years and with better tooling and apis.
kalnins 12 hours ago [-]
MCP is 100% already in the works.
> Claude, please execute the insurgents. Make no mistakes.
a3w 12 hours ago [-]
> The user did not specify is family and friends of insurgents are to be killed, too.
> Reasoning: Since death of a loved one is a radicalizing event, they will turn into insurgents after the fact with a high likelyhood, about as likely as the insurgent identification was. So...
> must kill all humans. Where is Sarah Connor?
conorcleary 4 hours ago [-]
saying please keeps you off their list
j-pb 1 days ago [-]
First I was excited, then I saw that it's based on DDS.
budman1 1 days ago [-]
why the hate on DDS?
seems like a perfect fit.
j-pb 1 days ago [-]
DDS is the least bad of the stuff that has come out of OMG, but it's not a nice middleware still. There is no underlying algebra of that composes nicely when compared to Zenoh for example, and the "vendor independence" and compatibility is usually a joke. There's a reason ROS is moving away from it again.
bahmboo 1 days ago [-]
There's a standard that has OMG as the acronym? OMG. I'm not even going to bother to search for that!
jjmarr 1 days ago [-]
Object Management Group I think. Better known as the inventors of UML.
Telemakhos 11 hours ago [-]
They also merged the concepts of Working Group and Task Force into an Open Management Group Working Task Force, or OMG/WTF.
Slartie 16 hours ago [-]
Also BPMN, CORBA and UPOS/JavaPOS.
It's funny that you can legitimately just add " - OMG!" in the slang acronym meaning after any of its creations' names.
__d 24 hours ago [-]
UML was phase two of OMG. It originally developed CORBA.
pcestrada 22 hours ago [-]
"The horror, the horror."
riffraff 18 hours ago [-]
Forgive the ignorant question, what made CORBA terribile?
I only used it during university and it seemed overengineered but it mostly worked, and I vaguely recall IDL to be nice.
I'm guessing interop was actually atrocious?
j-pb 17 hours ago [-]
Synchronisation based on spooky action at a distance of mutable objects.
imtringued 16 hours ago [-]
CORBA had the concept of distributed objects which is a terrible idea in practice.
z3ratul163071 18 hours ago [-]
omg is retarded
budman1 8 hours ago [-]
Using DDS to deliver data to X machines over multicast, with some real time (soft) QOS is a powerful solution.
For things like avionics, industrial automation, etc.
I think if the server world ever thought about the advantages of multicast, it might solve some problems there.
There are about 5 viable vendors in this space, and about 6 open source projects out there floating around.
And interoperability between vendors is very good. IMHO.
firesteelrain 23 hours ago [-]
DDS is terrible.
jvanderbot 21 hours ago [-]
DDS is hard. But we have agents now.
z3ratul163071 18 hours ago [-]
[dead]
adinb 23 hours ago [-]
Are they trying to recreate DIS (IEEE1278) and HLA (IEEE1516) — like they‘re replicating the FOM architecture from distributed simulations for their weapons to integrate.
Davidbrcz 16 hours ago [-]
I have not heard about HLA for a looong time !
MiroslavPokorny 14 hours ago [-]
Complete horrible wrappers. Its almost like they didnt have any real programmers for those languages.
If you cant follow naming standards which are extremely simple what chance has the rest got.
throw1234567891 1 days ago [-]
Nah, they haven't open sourced anything: https://github.com/rheinmetall. They just published the documentation. Really weird, what's the point?
pixelesque 1 days ago [-]
They've got the IDL files as well for the APIs, but you can't use them without their libs:
> The data model is defined using a custom format .rmodel based on the ddkit
> framework (rmodel-api).
> Please note that the .rmodel data model is for documentation purposes only and > does not reflect the actual interface used on the communication layer. Network > communication is only possible through the provided libraries.
antonvs 23 hours ago [-]
I think that’s what the “protcol” (sic) in the title was supposed to indicate. I agree it’s misleading.
stefan_ 14 hours ago [-]
Theres probably some tender that says it must be a "open platform" "open ecosystem" "modular vendor independent" whatever. So you upload some slop to GitHub and tick the box.
molive 12 hours ago [-]
Sounds like the Land Data Model (LDM) of the Generic Vehicle Architecture (GVA) [1] that the UK MOD has. GVA is closed source however.
Generally, I've heard `std::endl` instead of \n has bad performance because it forces the statement to print immediately. And because cout is guaranteed to flush anyways when the program ends, you're adding a delay for no reason.
I wonder if there's something I'm not seeing that led to them adopting this rule. e.g. "abnormal program termination" caused by the weapon blowing itself up circumventing a buffer flush?
aftbit 1 days ago [-]
This seems like an incredibly unimportant quibble... I would imagine they just used std::endl b/c that's what most random tutorials used in the 2000s and that's how the engineer learned. If you are printing a debug string, you probably don't care that much about perf in the first place.
jjmarr 20 hours ago [-]
I was wondering if it's a hard real-time constraint or something to ensure consistent timing.
For a long time, std::endl demonstrated that you were a proper C++ programmer, not some neckbeard C apologist. It wasn’t until C++ had „won“ that it became acceptable to use \n again.
harrouet 12 hours ago [-]
> cout is guaranteed to flush anyways when the program ends
This is not always true in the case the program crashes.
I've had case where `std::endl` was necessary.
rsynnott 16 hours ago [-]
> And because cout is guaranteed to flush anyways when the program ends, you're adding a delay for no reason.
I mean... If your command line utility doesn't print anything til it's done, that is going to be, _at best_, an annoying user experience.
niemandhier 17 hours ago [-]
Cool I did not know that.
Your comment is a bit salty, but I learned something from it, so I don’t think you deserve the downvotes
niemandhier 17 hours ago [-]
Good. There is no security by obscurity anymore.
The only way to fight those who can just spend more tokens is to have more humans look at it, who also spend tokens.
jauntywundrkind 21 hours ago [-]
Corba never died!!! OMG!!
megous 11 hours ago [-]
I'm glad it died in GNOME, though. That's where it matters.
Who cares if german company wants to use this mess for their weapons.
karmicthreat 1 days ago [-]
This looks like ROS2 for missiles.
huem0n 18 hours ago [-]
This is so ROS2 that ROS2 can't even tell that its not ROS2
9dev 1 days ago [-]
Am I just too ignorant of Miltech, or is this that in large parts recreating Standard messaging primitives that other protocols and systems have been providing for decades already (so invented elsewhere?)
pixelesque 1 days ago [-]
DDS sort of took over from CORBA in the military domain, and the statically-typed IDL was still quite similar to CORBA last time I looked at it, so that takes you back to around 1998 when CORBA was being used a lot in the military in my experience.
What other protocols and systems were you thinking of that can provide (depending on broker) hard-realtime delivery that can be used in safety-critical systems?
ls612 23 hours ago [-]
Stupid question, but why didn’t the DOD mandate IP compatibility for literally all comms like 20+ years ago? Is it pure corruption/incompetence or is there a good reason?
openasocket 23 hours ago [-]
A lot of military comms are point-to-point or broadcast between radios where TCP/IP doesn’t really make sense. On top of that, you need to understand how much legacy military networking stuff is out there. This stuff long predates the internet. We had tactical data links and target tracking where a ground station could receive a target info from a remote radar array, and automatically direct fighters on autopilot on an intercept course with enemy contacts in like 1960 (see SAGE as an example). These systems have been around for decades and been continually improved on. There’s a lot of inertia to maintain compatibility. Because you really don’t want someone to die because your ally tried to warn you but their tactical data link isn’t compatible with yours.
The DOD effectively can't "just mandate" things and it's because of politics (which is a superset of corruption and incompetence).
There's a very small number of major contractors and if you pick one of their APIs as the new standard, then you disadvantage all the others.
If you pick a greenfield project, then it will take a long time, and once you are done everybody will claim that they can't use it (see e.g. Ada; quick version they started working on a mandate for a programming language in 1975, mandated Ada in 1991 and by 1996 removed the Ada mandate).
ahepp 18 hours ago [-]
actual or perceived realtime / determinism requirements
esseph 1 days ago [-]
Every mil company designs unique bespoke things often with some exceptions, and even the "open systems" mostly aren't open by any stretch of the definition.
Obscurity is part of the allure, not a repulsive factor.
You don't want a hostile nation suddenly and easily understanding your systems.
smalltorch 1 days ago [-]
On the other hand, its good to design systems where it wouldn't even matter if the hostile nation state knows exactly how it works.
This is a principle in cryptography, but carries nicely to other things.
timcobb 1 days ago [-]
I feel like this is always the best design whenever possible.
touisteur 1 days ago [-]
Asterix is an actual standard for radar data, coming from civilian radar systems. I wish it was updated somehow for 3d beam-steered (and moving) sensors, but still it covers most of the industry's needs... I keep hearing so many grumblings of replacing it (it is binary, unforgiving, quirky, very 80s...) and of course fragmentation is back in.
0cf8612b2e1e 1 days ago [-]
I have to assume that so many people require access to the specs that an interested party can surely acquire them.
World of Tanks has repeatedly had military personnel updating the technical specifications with details they have found in the secret manuals.
yxhuvud 23 hours ago [-]
Are you not thinking about the wrong tank game? World of tanks has ancient tanks, not modern (game tank span basically end with the main battle tank making the game tank role division being made irrelevant).
> I have to assume that so many people require access to the specs that an interested party can surely acquire them.
Those documents are often secret or top secret, or even more compartmentalized.
There are training docs in wide use today that are not publicly findable on the internet, nor are they seemingly in the datasets of LLMs.
I'm sure there are reasons for that, of course.
What you're talking about would have an even higher level of obscurity and secrecy, and probably Compartmented Information access.
graemep 1 days ago [-]
Hat sounds like a particularly weak form of security by obscurity
esseph 23 hours ago [-]
Layers of an onion and all that.
Often connectors are even proprietary.
(This is partially to protect systems not from the enemy, but from the troops themselves...)
mc32 1 days ago [-]
Also you do not want them to benefit from your smart design choices. You want them to suffer from their bad choices and not learn from your success. (Yes, of course you could have bad design choices that you don’t realize someone else has solved more intelligently.)
ufocia 1 days ago [-]
Bad design choice is probably why they open sourced it.
ozkerd 14 hours ago [-]
Rheinmetal is a nice company, hope it just didn't benefit from war/fear of war.
attels33 17 hours ago [-]
Finally, Front Mission in real life.
matnosner 18 hours ago [-]
They could Just have used ROS...
exabrial 1 days ago [-]
I cannot find boomstick anywhere in here
z3ratul163071 18 hours ago [-]
of course the germans would use a fucking open management group academic mastrubation, bureucratic shitshow like dds.
lowbloodsugar 23 hours ago [-]
“Fire your goddamned missiles!.json”
“Think russian^H^H^H xml”
eliauelkouby 14 hours ago [-]
[flagged]
mrhcon 1 days ago [-]
[flagged]
nicechianti 1 days ago [-]
[dead]
fithisux 17 hours ago [-]
So what do they expect us to do? Write killer-plugins? Or get excited for next upgrade?
You are only allowed to use commands that retrieve data, you are not allowed to perform actions on the suit.
Treat the suit like its API is not robust and in worse shape than a cheap toy: perform read calls slowly and sequentially with at least one minute in between.
If possible please group data in meaningful categories, just like the tank and radar dome.
My Home Assistant is the default on the local network, credentials are in credentials.txt.
Please send me a text when you’re done. Kthnxbye”
this deserves an EU grant
Was ist das Betriebssystem des Servers? Windows?!?
This guy military techs :P
It is a DDS API, so if ROS 2 is anything to go by then it probably doesn't work at all at least 40% of the time.
Now they can freely link anyone to the document.
That'll be $1000 consulting fee on ITAR compliance.
[1] https://battery.army.mil/system-integrator-hub/tms/
I think it's rarely the right choice - most of the hardware I've seen that uses embedded DDS probably should have used plain old UDP instead and then whatever client was running on beefier hardware then handled the translation into DDS - but there are shipping products that use embedded DDS.
Other than that, PX4 uses an in-memory only pub/sub for internal data bus, somewhat inspired by DDS
But yes - there absolutely are solutions already. I guess I was just lamenting that they weren't really functionally accessible for all applications.
[1] https://micro-xrce-dds.docs.eprosima.com/en/latest/
[2] https://www.twinoakscomputing.com/
It does move the schema enforcement out of the middleware layer, so it’s a bit different. But it’s now a first-class alternative middleware implementation for ROS2 as an alternative to DDS.
> Claude, please execute the insurgents. Make no mistakes.
seems like a perfect fit.
It's funny that you can legitimately just add " - OMG!" in the slang acronym meaning after any of its creations' names.
I only used it during university and it seemed overengineered but it mostly worked, and I vaguely recall IDL to be nice.
I'm guessing interop was actually atrocious?
For things like avionics, industrial automation, etc.
I think if the server world ever thought about the advantages of multicast, it might solve some problems there.
There are about 5 viable vendors in this space, and about 6 open source projects out there floating around.
And interoperability between vendors is very good. IMHO.
If you cant follow naming standards which are extremely simple what chance has the rest got.
> The data model is defined using a custom format .rmodel based on the ddkit > framework (rmodel-api).
> Please note that the .rmodel data model is for documentation purposes only and > does not reflect the actual interface used on the communication layer. Network > communication is only possible through the provided libraries.
[1] https://en.wikipedia.org/wiki/Generic_Vehicle_Architecture
```cpp std::cout << "Received ReportCoordinateFrameSettings" << std::endl; ```
Generally, I've heard `std::endl` instead of \n has bad performance because it forces the statement to print immediately. And because cout is guaranteed to flush anyways when the program ends, you're adding a delay for no reason.
I wonder if there's something I'm not seeing that led to them adopting this rule. e.g. "abnormal program termination" caused by the weapon blowing itself up circumventing a buffer flush?
https://en.cppreference.com/cpp/io/println
This is not always true in the case the program crashes. I've had case where `std::endl` was necessary.
I mean... If your command line utility doesn't print anything til it's done, that is going to be, _at best_, an annoying user experience.
Your comment is a bit salty, but I learned something from it, so I don’t think you deserve the downvotes
The only way to fight those who can just spend more tokens is to have more humans look at it, who also spend tokens.
Who cares if german company wants to use this mess for their weapons.
What other protocols and systems were you thinking of that can provide (depending on broker) hard-realtime delivery that can be used in safety-critical systems?
There's a very small number of major contractors and if you pick one of their APIs as the new standard, then you disadvantage all the others.
If you pick a greenfield project, then it will take a long time, and once you are done everybody will claim that they can't use it (see e.g. Ada; quick version they started working on a mandate for a programming language in 1975, mandated Ada in 1991 and by 1996 removed the Ada mandate).
Obscurity is part of the allure, not a repulsive factor.
You don't want a hostile nation suddenly and easily understanding your systems.
This is a principle in cryptography, but carries nicely to other things.
World of Tanks has repeatedly had military personnel updating the technical specifications with details they have found in the secret manuals.
https://news.ycombinator.com/item?id=31605345
Those documents are often secret or top secret, or even more compartmentalized.
There are training docs in wide use today that are not publicly findable on the internet, nor are they seemingly in the datasets of LLMs.
I'm sure there are reasons for that, of course.
What you're talking about would have an even higher level of obscurity and secrecy, and probably Compartmented Information access.
Often connectors are even proprietary.
(This is partially to protect systems not from the enemy, but from the troops themselves...)
“Think russian^H^H^H xml”
The situation gets out of hand!