tef

bad poster & mediocre photographer

  • they/them

when i first started doing industry programming, people would ask questions about corba, amongst other rpc like options, and then it sorta vanished overnight.

sure enough it was "design by committee", and "there's documentation: here's the implementor's spec", but the biggest problem might have been: "oh? you wanted to make an apple pie, well..."

corba was a stack unto itself. an interface description language, a broker, it's own url system, and it's own transport over tcp. for some reason you had to understand all of the pieces first to fit anything together.

there's other reasons why it failed: xml was in fashion, and for people using dynamic languages, it's beyond a chore, and turns into a nightmare. as a result, corba saw a lot of industry buzz, a lot of moaning slashdot posts, and then almost no adoption outside of business.

the thing is? stuff like protobuf or thrift or grpc aren't that much better, or any less complex


You must log in to comment.

in reply to @tef's post:

i will say it is forever funny to me how much "oh but rest is better than soap because json is just easier than xml" which, sure SOAP is a mess itself, but it can be impressive just how bad bad json can be vs mediocre xml

sure, but when you got bad json, all you have is bad json

when you got bad xml, you got bad xsd's, you got bad xpaths, you even got some bad xslts too. xml always brings friends

i think my fave xml story is the api that send us an xsd and a staging service, and only then would they give us prod access

and in prod, the data was returned in <xml><![CDATA[ ..... ]]></xml>

oh christ

see this is where i'm biased against shitty json APIs because someone once took data and a callback...

... and then stored the callbacks in a single, global variable which they overwrote with every single new call you made

it's a good writeup

the only thing i'd add is that, well, it isn't always bad for "rpc to look like local calls", it's just not universally good

it turns out 90% of apps can just do synchronous network calls, it just sucks ass for desktop software

corba was always floating around in the background when I first learned to program, the only thing was I could never get a handle on what it was supposed to do, everything I would read is like "use an object request broker to broker object requests" and I would just kinda gloss over because I was mostly interested in getting the computer to make noise.

One of the things I liked when I first read about protobuf was that it was very clear "hey you are going to have a server and a client and you will format your messages like this." You get into trouble later on with it but the general idea of "send message to other program via network" was always right out front, where back when I was hearing about CORBA it was buried in the background of all this talk about objects and brokers.

Nowadays I see a similar problem with a lot of SAAS offerings, you try and find out what it does and it's like "scalable data fragment clusters to columnar store lakes and warehouses"