Cloud Native Software Engineering Newsletter #15 (August 2020)

What is good, friends! We are back with another issue of the Cloud Native Software Engineering Newsletter. Today we’ll be taking a look back over August and the latter parts of July 2020. Sound good? Let’s jump to it…

Personal Updates 🙍🏼‍♂️

Over in the UK, travelling anywhere seems to be pretty much not an option. So my plan to take the motorbike through France and Spain is out of the question. UK camping it is then! Hopefully it’s not crazy busy, since most foreign countries are now out of the question, and with the last of the summer sun, I imagine just about everyone else is thinking the same thing…

In other related news, I’m also trying my best to post more on social media, just for the fun. You can follow me on Twitter, for more of the cloud-y stuff. Or for more off-topic stuff, Instagram.

Feature Releases & Announcements 📚

What’s new in cloud right now.

AWS ReInvent — AWS ReInvent this year will be held online, and it’ll be free (I mean the online stuff kinda was anyway…). For those who are unaware, ReInvent is not just any old conference, AWS seem to stack up a lot of their releases and announcements to throw them all in as one during this event. Usually the internet blows up with everyone talking about the announcements, and it can get pretty overwhelming. And just to make things even more intense this year, it’s going to be THREE (yes, three) weeks long. But anyway, stick a note in your diary, it’ll be worth following along.

AWS Community Builders Program — AWS recently announced the community builders program. This program from AWS is to help support those who share information on cloud and AWS online. I’ve personally applied — fingers crossed. But anyone in the business of sharing online about AWS and Cloud can enter.

Amazon Braket is now GA — Amazons Quantum Computing service is now GA. In all honesty, I don’t think I’ve got the brain power to understand the use-cases or practical uses just yet — however the idea of cloud quantum computing is pretty awesome. If I ever get chance, I’d love to have a play, and now you can, in AWS.

HCL 2 CDK TK — I’m sure I’ve mentioned before about the recent CDK release for Terraform. Since the release, a few other bits have popped up in the community, including this migration tool to migrate from HCL to the CDK, and also this awesome Terraform CDK list. Both worth checking out if you’re thinking to start experimenting with the CDK. And on the topic of CDK’s, the “CDK day” event looks interesting.

Outages / Breaches

What went down, or got hacked.

Honeycomb Incident — An interesting incident report from Honeycomb. They’ve recently been talking the big talk about SLO’s and how they’re the best thing since sliced bread when it comes to alerting. But, being as transparent as always, this incident report is pretty interesting as it shows how their SLO setup actually caused them to totally miss an outage. The cause was not alerting on 4XX errors (which can be tricky!), definitely one of the more interesting incident reports I’ve read (and it’s not too long).

Twitter Attack Inside — In last week’s newsletter we discussed the Twitter attacks, since then many different bits and pieces have been published discussing the breach, in this article the New York Times breaks down some of the details of those behind the attack and their motivations.

How-To’s & Educational Pieces ✏️

Good articles on how to do cloud stuff.

Orchestration vs Choreography — In this article, Yan Cui dives into the differences between these two service integration patterns. Do you have one large orchestrating controller? Or do you loosely couple services by using events? If you’ve not heard the debate before, definitely take a look, as you may have made (or been involved in) the different trade-off’s of these architectural patterns before. By the end of the article you should have a better understanding of the differences between the two patterns and when you could / should use one instead of the other. A must for back-end engineers or those designing interactions between services. The orchestration vs choreography debate is something that’s also discussed in decent length in the book building Microservices by Sam Newman, which I can highly recommend. You can read my summary of the book, here.

Reduce Toil Through Better Alerting — One of the big topics in cloud engineering is setting up monitors and alerts. Moving from manual remediation into automated responses. This is a nice article on the principles not just of what alerting is, but about knowing what you should alert on, and when. I’ll definitely be referencing back to this piece in future, and I’ve definitely fallen into some of the traps they mention.

You’re Alerting Wrong: The How & Why Of Setting An AWS Lambda Alarm Using Error Rate Percentages — Also on the topic of alerting, this article I wrote up is a practical look at the CloudWatch Metric Math feature. Metric Math allows you to perform computations on top of your CloudWatch metrics, creating more accurate and more relevant alarms and alerts based on your metrics. If you’re trying to tune up your alarms and alerts to be more effective, check this one out as it’ll be sure to give you some ideas on how you could better tune any existing alerts you have.

Should You Use TypeScript To Write Terraform? — Another one I wrote up that takes a look at the new CDK for Terraform, with the intention of holding it up to scrutiny to ask the question: ‘Should you use it?’. Since writing the article, Sebastian Korfman, one of the guys behind the Terraform CDK kindly wrote a response article which dives into some counter-points. Specifically, Sebastian talks about how the CDK intends to mitigate some of the downsides that I pointed out in the original article such as module sharing. A big shout out to Sebastian here for taking the time out to respond, and doing so graciously, I’m really excited to see where the Terraform CDK goes in the future.

Building Dashboards For Operational Visibility — Another release into the AWS Builders Library. It’s always worth reading through these articles when they come out, due to the quality. This most recent article discuses how to create great dashboards. And for any of the dashboard critiques out there, don’t worry, they’re not saying that dashboards solve every monitoring problem (“Any operational process that requires a manual review of dashboards will fail due to human error”) but it is a nice look at how you can make dashboarding more effective. I particularly like that they dive into how to make dashboards effective for different use cases, and how to make them consistent between services.

AWS Tagging Best Practice — It’s not sexy, but cloud tagging is a big topic for cloud engineering. Tagging is how you understand your usage, navigate costs, and understand what are the legacy bits of your cloud that you’re paying for that you shouldn’t. In this article, Karl Hughes takes you through the different aspects to consider when setting up a tagging strategy.

Improving Post-Mortems — Learning from failure is one of the key steps to creating system reliability. One well-adopted strategy for improving reliability is the post-mortem meeting. However, there definitely is a wide amount of variability in the industry for how to conduct the post-mortem. In this article (or rather, transcript), Paul Osman digs into some different formats for post-mortems and ways in which post-mortems can fail us, or fail to be as useful as we might expect.

API Sync Vs API Gateway — In this article Yan Cui breaks down some reasons where you might want to choose App Sync over API Gateway. It’s worth looking into if you’re attempting some of the things mentioned in the article with API gateway, such as authentication, request/response validation and WebSockets.

Opinion Pieces / Miscellaneous 💭

Cloud commentary and spicy takes!

The AWS Bill Heard Around The World — Do you even work in the cloud if you don’t have a horrific war story on how you received a massive bill? In this blog Chris Short goes through a tale of how he ended up getting a pretty tasty $2000 bill for some seemingly benign cloud resources. It’s quite an amusing post (when you’re the reader). The moral of the tale? Setup a billing alarm. There’s also some amusing Twitter commentary too.

How To Become An AWS Serverless Hero — I was always curious about the mysterious AWS Heroes program. In this Twitter thread, Yan Cui dives into what it means to be a Serverless Hero, talking you through some of the perks / benefits, and also some of the ways in which you might find yourself becoming one.

Consider Writing & Talking About Your Work — I’m a big fan of Charity Majors unabashed Twitter threads. I follow only a handful of people on Twitter, and I don’t regret for one moment following Charity. In this thread she mentions how important it is that you share and write about your work. I could not agree more. It would be an understatement to say how much a difference making the decision to write was for me, personally. I often hear people say things like: “But who am I to write?” etc. But you don’t have to talk from authority, just talk about what you have discovered, and your take, no-one can say your opinion is wrong. But you’re definitely, definitely, definitely doing yourself (and others) a huge miss-service if you’re not already writing about or sharing your work. I’d recommend you also check out the article I wrote on how to get consistent traffic with SEO. Or this article on 10 reasons to write. I wrote this article quite a while back, and it’s great to reflect on how my own writing has changed, but how I still stand by many of the things I said back then.

Why Are You Interested In Cloud? 🤓

Something brought you to this newsletter, right? In order to keep improving the newsletter and the website, knowing a little more about you and your goals really helps out. If you have got any value out of any of my work, if you could spare just a few moments to take the The Cloud Native Software Engineering Survey you’d be doing me a HUGE favour. If not now, maybe next time?

That’s All Folks 🎉 🥳 🤓

And that’s all for this months newsletter, thanks for tuning in!

To stay in touch in the mean time, you can follow on Twitter and Facebook. Be sure to check out the courses page for the full list of courses, including the free email courses on: Terraform, Lambda (coming soon) and AWS (coming soon). And lastly, if you have a question, feel free to email me back directly, or submit a reader question.

Speak soon Cloud Native friends!

Lou Bichard