💾 Archived View for gemini.abiscuola.com › gemlog › 2022 › 10 › 02 › it-works-on-my-laptop.gmi captured on 2024-03-21 at 15:03:46. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2023-01-29)

-=-=-=-=-=-=-

It works on my laptop!

Kids, these days.

On Friday, I decided to leave my hermitage and join my collegues for the company "get-together". The event was hosted at a nice sporting club. It's a really nice place, if you like to play tennis and do other dangerous activities, like hiking on artificial walls. Of course, the most important thing of them all, was the free beer and food (who knows me perfectly understand what happens when you tell me "free beer").

It was a nice night. I was discussing with others about things like living in Switzerland, exchanging opinions about the local meat quality (from high to excellent, I must say) and in general I didn't wanted to talk about work, or anything work related, or even computers per se. Of course somebody else had a different opinion and struck a nerve on me with the fatal sentence:

I don't know why it takes so much time to do something, I did it on my laptop and it was easy!

What???

With the smirk that only entitled "I have the cloud certifications, You know?" youngsters have, these days. To be fair, I don't know the kid that well, but the bull-o-meter started to climb, and climb and climb. I'm old enough to see the danger of those know-it-all types: the superficiality they employ to dismiss any kind of question, the lack of any questioning of their knowledge and the general attitude towards anything they have not a certification for, tells me one thing:

if I will, ever, lead a team, I will reject any applicant with that kind of attitude, at any costs.

The problem isn't the knowledge, or lack thereof. The problem is the lack of thinking skills. The main issue is that those kind of "cloud-certified, devops, gurus", doesn't apply any real thinking process in their work. They can get by for some reasons:

The work they do is not at all critical

Buddies like the one I described, aren't working in a critical path of the business, they are somewhere, on some "digital transformation" project, where they can freely apply their arrogance to a bunch of systems, paid by the customer (because we are not talking about their own money) and, come'on! Just setup spending limits and you are done! This was after a question about: "how do we ensure that the billing doesn't go out of control"?

Azure spending limit

Sounds cool, but here is the catch:

Reaching a spending limit
When your usage results in charges that exhaust your spending limit, the services that you deployed are disabled for the rest of that billing period.

Just this, rules out a public cloud as an acceptable solution for a mission critical application. You can't accept that if something in your infrastructure is misbehaving, and unexpectedly you reach the limit, your entire deployment is going to be shut down, until the next billing period. In the real world, budgets are set in advance and budget usage is planned carefully. If just once you reach a limit, your unit is going to close down business, the line manager fired and every employee in the unit will be in search for another job soon. I made the example for azure, but google cloud has similar policies. Our expert doesn't care about planning or budgeting. They doesn't give a shit about the micro-economics environment they are in and why things are the way they are. It's none of their business. Spin-up more resources, it's cheap!

If you can't use the public cloud, what happens? Easy, the company will use the cloud, but Microsoft will happily come, charge millions to setup a new and fancy datacenter for you with your own equipment and everything. In the end what the company gained? Almost nothing. Sure, additional flexibility in deploying resources like load balancers and networks and everything with some clicks. That's nice, but the company didn't gained the main advantage of the cloud: completely outsource resources management.

And no, a mission critical application can not be deployed in a shared environment like the cloud, more on that later.

They never worked with real money and never lost people's money

Our cloud guru doesn't work with money. Sure, they may work for a company making revenues one way or another, but our buddy doesn't handle money in it's infrastructure and not handling money means, not being subject to any particular law or regulation:

Cloud gurus lives here

When somebody is not subject to any regulation, in the actual IT world, it means they are never hold accountable for their failures.

That's also the main reason behind the "it works on my laptop" attitude. I already discussed with others about this and we all agree that, this arrogance, will never disappear until IT professionals becomes accountable for their shit.

Why does it take so much time?

Well, buddy, because there are regulations to comply with, laws that are better not to break and people's data stored in a database, somewhere, you interact with. But you have no fucking idea, because you are more concerned with masturbating yourself dismissing anybody elses concern and smirking to the elders that got one or two fuck-ups under their belts more than you.

Just some of it

Penalty Total since 2000: $340,660,984,318

Yes, the number is correct: $340 BILLIONS and counting, in fines, from the year 2000 till today paid by various banks for regulation violations.

Our expert doesn't know any of that, of course. It's not their job, after all, right?

I mentioned performances

There is a detail about mission critical applications that our buddy never consider: a mission critical application needs predictable performances. A public cloud doesn't give you that.

When google cloud writes that their HDD storage have a write throughput of 1MB/s (made-up number), that's the nominal performance. It's not guaranteed and this means that any performance calculation you do to understand if you can save some money, goes out of the window.

Yes, it happened to me in real life.

Tough luck if the storage for your database instances ends-up in a, quite busy, shared storage pool. Or if for some reasons today the CPU instances are a bit slower tha usual. Where is the problem? Create more resources! It's cheap and easy, isn't it?

For a mission critical application, this is totally unacceptable. Yes, you are going to buy that beefy amd64 server, the old way, you will calculate everything the hardware will be able to give you, performance-wise. You are going to buy (the horror!) Oracle, or IBM DB2, or Microsoft SQL server, simply because, for your application and the risk profile it has, you can not roll-out a business continuity plan in a clustered setup with postgresql, yourself. Any vendor outside of those three, will disappear looking at the liabilities written in the contract for such mission critical system, at the level of: "if it goes hairy, we are bankrupt, until the end of the universe".

I'm not against the cloud, but there are application profiles where the cloud is not a player, at least not yet. So please, kids, calm down, think more and learn from us oldies. We can spare you some bad days.

Now, where is my beer?