1) Kuberentes 2) Microservices. 3) AI
All of them are based on open source, and all of them are permissionless (I.e. the startup does not need permission from a big company, e.g. an app store owner).
They also erode the build-in advantages of big tech:
1) Kubernetes erode cloud lock-in on compute/storage. 2) AI is best serve on the edge.
I would say that everything today is up for grab.
Microservices are unix pipes but slower.
AI is linear algebra that costs x1000 because of the brand name.
There is no revolution in software. We are just building crud as high and as fast as we can because the quality of developers tends to zero as the number of developers increases.
Not if you're a 1,000+ engineer org with an SOA.
> Microservices are unix pipes but slower.
Humans are way more expensive than the machines running our code. You can always spend more on spinning up additional instances. In reality the overhead isn't that bad. The principles of immutable stateless deploys free up so much mental energy when it comes to thinking about how to get your code out and not break things that it more than pays for itself.
> AI is linear algebra that costs x1000 because of the brand name.
Tell that to my real time voice conversion system I just wrote. There's a lot of new magic happening right now.
> There is no revolution in software.
I'm on a fucking phone responding from hundreds of miles away. We're launching satellites that beam internet.
> We are just building crud
You can't speak for everyone here.
Are you in adtech or a social spyware company? Maybe don't work like that then.
Find meaningful work that speaks to you.
> quality of developers tends to zero as the number of developers increases.
I work with brilliant people.
That's the problem. With a sane simple architecture instead of 40 years of crap on top of crap you wouldn't need thousands of engineers to spin up instances.
>In reality the overhead isn't that bad.
Over 1e2 times if the solution is in software, over 1e5 times if it's an fpga. Around 1e8 if you do it in silicon. You make the savings from not hiring the 1000s of engineers to deploy your bloated horror.
>The principles of immutable stateless deploys
Has nothing to do with k8s. Nixos and Guix are two systems that are as close to functional as possible and they sure as hell aren't 'stateless', even though they come closer than any of the sexy trending tech.
>Tell that to my real time voice conversion system I just wrote.
Thank you project librevox for proving a near infinite training corpus, thank you nvidia for gpus to do linear algebra 1e5 more efficiently than you can on a cpu.
>I'm on a fucking phone responding from hundreds of miles away. We're launching satellites that beam internet.
Like everything else you listed there this is a hardware improvement. A Casio watch from the 90s had the same order of magnitude computational capability as the first generation IMPs. Good luck getting it connected to the internet using any software you could write for it.
> Not if you're a 1,000+ engineer org with an SOA.
The fact that most FAANGs (Amazon especially) developed their own systems that are not Kubernetes, and often much simpler, should make you think. Many don't even use containers - by design.
(Source: direct experience)
I disagree. Maybe it's because we haven't gone "full Kubernetes" where every cronjob is now a Kubernetes cronjob, or what have you, but for all the complexity we've had to overcome, we've seen substantial benefits.
For example, autoscaling instances of my data pipeline apps based on Kafka lag.
Was it complex? Yes. We had to expose Kafka topic lag as a metric to Prometheus, then configure the k8s metrics server that HPAs (Horizontal Pod Autoscalers) use to scale to pull that in from Prometheus using k8s-prometheus-adapter as a custom metric, then set reasonable scaling limits in the data pipeline apps HPAs.
Was it worth it? Fuck yes. We no longer have to worry about data arriving out of time at our data warehouse, because the scaling we've configured (in YAML, god rest its dirty soul) ensures that our data will always arrive at the data warehouse within 5 minutes, which is ideal for a near real time reporting product that greatly enables our end users.
Is Kubernetes worth it? For us, definitely. For anyone else? Really depends on your use case, don't cargo cult this shit.
Will see if history repeats itself and we will see be imperative systems.
I was doing "microservices" on QNX using MsgSend/MsgReceive for hard real time over 15 years ago. It doesn't have to suck; the mainstream is just using the wrong tools for doing it fast. The QNX people managed to shoot themselves in the foot by going closed-source -> open source -> closed source -> open source -> closed source, after which their developer community was fed up.
Machine learning is not linear algebra. It's nonlinear. That's what makes it useful.
Not that you're wrong per say, but personally, I think you should take a look at the HN guidelines. Like don't be snarky, and don't post shallow dismissals.
Just categorizing the arguably most popular way of building software as "crap" doesn't seem like thoughtful or curious conversation.
I completely get the hate for modern web, but in this case I think it's unrelated. The whole Kubernetes/microservice world exists basically to serve JSON and similar protocols. Maybe rarely some static HTML.
For HTML->CSS->JS->Webasm stuff it is more fashionable to compile at build time and service as static assets. That's the polar opposite of Kubernetes/microservices.
This doesn’t even make sense because it can be said about anything involving numerical work on a computer and it’s still roughly true. Also because all of the libraries are free anyway.
Sure, but we've learnt to apply linear algebra to achieving things we could only dream of 10 (or even 5) years ago.