So those newcomers never got the point why many of us actually enjoyed using Application Servers.
I don’t hate Java but, having started using it in 1995, it felt like the community was prone to sweeping ambitions which exceeded the available time or appetite to improve further. One challenge is that while doing everything yourself allows the most control, it also means that improvements only come from within the smaller community of Java users.
A C++ shop couldn't care less about what a Swift shop is doing and so forth.
So, our startup created a mod_tcl similar to AOLServer, basically a TCL Application Server, no else got to use our tooling besides our customers.
I'm not sure why it's taking the J2EE containers so much longer to patch than the good 'ol PHP stuff or shiny new Go apps.
/s
I was wondering what it'd look like if they used these badges for every language. Maybe like 5% of the outside containers I look at don't have significant unpatched CVEs, even for relatively popular projects.
For statically compiled binaries I’ve not worried about different versions of libraries for my binaries for 20 years (and the technology is decades older than that).
I do appreciate the docker file format but largely because it’s become used for true virtualization systems like firecracker. Plain Linux “containers” largely offer me very little.
That is to say, if you control the hosts and process then the container features are available with much less ceremony while if you are hosting someone else’s process (or they you) containers don’t provide enough isolation.
How do you reproducibly build that static binary in a dozen different developer's environments, and in CI?
In fact, containers kind of suck in prod environments.
For example:
- Kernel/binary mismatches break vDSO, and gettimeofday becomes 100x more expensive.
- Current apache can't run in Synology Docker any more, because they require a new kernel secure RNG (even for http).
- There's no reasonable built in story for persistent storage.
VM's and bare metal solved these issues long ago.
Also on desktop systems, embedding resources into the binaries exists since the early 1980's, or just deliver every in the same directory like NeXTSTEP bundles, or what is called xcopy deployment on the PC world on homage how we used to do it on MS-DOS days.