Building Async and Cloud Native organizations - Issue #4

Welcome to my weekly newsletter! Every week, I bring you the latest news, updates, and resources from the world of coding and architecture. I'm so glad you've decided to join me, and I can't wait to share my insights and expertise with you.

In this newsletter, you'll find a curated selection of articles, tutorials, and other resources that I think will be useful and interesting to you. I cover a wide range of topics, from new tools and technologies to best practices and design patterns. I'm always on the lookout for the latest trends and developments in the field, and I'm excited to share them with you.

I hope you'll find this newsletter to be a valuable resource, and I welcome your feedback and suggestions. If there's something you'd like to see more of, or if you have any questions or comments, please don't hesitate to reach out to me.

Thank you for joining me, and happy reading!

REST and APIs

Are You API-First? Here Are 4 Implementations. “API-first” has become a hotly debated topic and popular API buzzword in recent years. You can be API-first if your business commercializes APIs and provides APIs as a product. But API-first also describes an approach for API producers involving defining and designing APIs and schema before beginning development.

Learn about the four implementations of API-first workflows to get ahead.

One way to validate your OpenAPI specificiation is to lint it with Spectral. This can scan for correctness of your document. The API Handyman shows a way to check for the presence of a specific element:

When linting an OpenAPI document (or any other JSON or YAML document with Spectral), the hardest part is ensuring you’re not missing your target and so be sure that expected checks will be done. In this post, we’ll see how to be sure a Spectral rule will be triggered when checking the presence of an element.

Coding

Creating a docker container was not that difficult, but did require a bit of a setup. With NET 7 there is a way to configure it directly in your project file and generate the container automatically. See the video by Nick Chapsas:

A nice write up of new C# 11 features by Matthew McDonald:

We have a tradition around here. First, we speculate about future C# features. Then we check the release. This time, C# 11 gives us 7 of the features were expected, kills 1, and defers 2 more to C# 12.

Do you remember AppHarbor? It was a great alternative for the Microsoft ecosystem to host your applications in a similar way as Heroku did. Not sure if they even outdated the Azure PaaS services but a very convenient way to host your app with some services around it.

Today I have sad news to share with you. Early next month, AppHarbor will unfortunately be shutting down after almost 12 years in business. It's been quite a ride and it truly has been a pleasure and privilege to serve our customers and the .NET community throughout all these years. Read on for details of what this means for AppHarbor customers.

GitHub

Will you start yelling to your PC to develop applications? GitHub is working on a voice copilot:

GitHub is testing the feasibility of providing a voice driven interface for its Copilot AI-driven code completion tool.

SDKs are great, but why do we need one for GitHub Actions? The short answer is, you don’t! You can write a GitHub Action in .NET without using one. There are a few ways in which you can write a GitHub Action. You can do so using JavaScript, Docker, or as a composite action. One of the easiest ways was to use JavaScript, as the GitHub team maintains an open-source SDK (or actions/toolkit) written in TypeScript. Their toolkit is comprised of a set of packages to make creating actions easier.

David Pine wanted to make it easier for .NET developers to write GitHub Actions, so he created an unofficial .NET equivalent of the official GitHub actions/toolkit @actions/core and @actions/github projects.

The unofficial .NET equivalent of the official GitHub actions/toolkit @actions/core project.

Computing

An interesting article by Svyatoslav Kotusev, focusing on the four most widely known EA frameworks: the Zachman Framework, FEAF, DoDAF and TOGAF.

For many people, the very notion of enterprise architecture (EA) is closely associated with EA frameworks, if not entirely synonymous to them, writes Svyatoslav Kotusev, Enterprise Architecture researcher.

Team Topologies is becoming more and more the go to handbook to organize teams. The below article shares some ideas on how to use Team Topologies to work more efficiently remote.

This article shares ideas, principles, and practices from Team Topologies to help organizations approach their structures' design and evolution to better support interactions in remote working.

Did you notice that maps.google.com now redirects to www.google.com/maps? Looks like a minor things, but you now need to give the whole www.google.com domain access to your location information...

For as long as I can remember, maps.google.com was the defacto domain for Google Maps. Also for as long as I can remember, I allowed this domain to use the location services of my browser.

Helpers

Need to make an appointment with some people, do not want to go through each's calendar? Have a look at Rallly to create free group meetings schedules. And is also an open source project BTW:

Create polls and vote to find the best day or time. A free alternative to Doodle.

Computer Laws

"The time spent on any agenda item will be in inverse proportion to the sum of money involved."

- Parkinson's Law of Triviality

AKA Bikeshedding, spend most of the time on things less complex.

I hope you've enjoyed this week's issue of my newsletter. If you found it useful, I invite you to share it with your friends and colleagues. And if you're not already a subscriber, be sure to sign up to receive future issues.

Next week, I'll be back with more articles, tutorials, and resources to help you stay up-to-date on the latest developments in coding and architecture. In the meantime, keep learning and growing, and happy coding!

Best regards, Michiel

Join the conversation

or to participate.