DEV Community

Discussion on: Learning Cloud? (Serverless, Kubernetes, Microservices, etc) — What's your biggest frustration?

tuwang profile image

‘What's the difference between logs and metrics? Who knows!’
Well, question like that is likely due to lack of general software development knowledge, regardless if the engineer is working on server or serverless ;)

I think it’s not fair to wrap all these questions under ‘cloud engineering’. Actually, very unfair.

Rather, the whole spaghetti in the post is true for any type of software engineering, if the engineer is new to the domain.

Specially for serverless: one of the core advantage is the abstraction from all the infrastructure setup of a server. When comparing efficiency, it’s worth comparing the lines of code (service setup, network, hosting....etc) required for a traditional service and, for example, for a lambda+API Gateway.

Serverless definitely nailed it in many aspects ;)

loujaybee profile image
Lou (🚀 Open Up The Cloud ☁️) Author

Let me re-clarify the purpose of the post, it seems my humour was lost on you: I'm curious what people are focusing on with regards to cloud technology — specifically I want to know what criteria they're using to prioritise their learning, what they're learning, and what stands in the way.

Moving on: I'd be careful with opinions like: "likely due to lack of general software development knowledge"  — you are assuming everyone has your level of understanding. Such a line of thought is fraught with difficulty. It's also not going to lead to a very fruitful starting point for a #discuss...

Specifically on the topic of logs vs. metrics that you call out, consider: We can mine metrics from logs. Therefore it could be reasonably debated that metrics are redundant — and instead we could simply use logs (or at least, in theory). Topics have nuance. It makes for interesting discussions.

I'm not bashing Cloud Engineering, it's not really a question of "fairness". I am (hopefully, lightheartedly) addressing the fact that Cloud can be overwhelming. Which I think is something other engineers will relate to. Just because Cloud can be confusing doesn't mean that other areas of software are not equally as confusing, that's hardly the point I'm trying to make.

If you wanna take a stab at sharing what you're working on and maybe some of the difficulties that you're overcoming it might lead to some cool discussion, but you've got to be willing to concede that you don't have all the answers first.

tuwang profile image

Oh no no, the humor was absorbed silently!

Absolutely, I do not have answers for most questions (perhaps just having a bit of clue on where to find answers).

Didn't mean to bash on anything. I'll drop the terms fair/unfair :)

Though, I hold the opinion on 'general software development knowledge'. I believe a sufficient software engineer should know what are the necessary components of a service (logs, metrics, data storage, server/host, endpoint ... etc), which is the minimum bar.

yeah, I made an assumption of engineer audience. that's on me.

My apologies that 'lacking of general software development knowledge' does sound a bit negative, but that's perhaps true for all junior engineers. It's not necessarily a bad thing at all. It just means room to learn.

I guess I was just nit-picking that some of the doubts mentioned in the post are true for any type of software development.

Some of my learning curves when building up a serverless service:

  • AWS CloudFormation? (lucky to understand it right before turning my project into a onetime manual hack)
  • IAM roles, oh wait, assume roles? what?
  • API Gateway + Lambda?
  • No need of a ec2 instance anymore, but is the whole setup actually cheaper?