Building Async and Cloud Native organizations - Issue #10

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

There is an increased interest to monetise APIs, but how do you make money from them and which kind of tools do you need? The State of the API report provides some numbers and insights:

Great all those connected car features, but it gets scary when a recent report shows that multiple bugs affecting millions of vehicles from 16 different manufacturers could be abused to unlock, start, and track cars, plus impact the privacy of car owners:

In a recent podcast of .NET Rocks, we have Tom Kerkhove talking about Azure API Management:

Coding technicalities

Running a SQL server locally is possible for years, and using it from within a Docker container is also not new, but if you have a Mac with arm64 processor, it is complicated. With recent changes in Docker, you can now run the container on a Mac as well. Read more and also get to know the difference between a lite and full edition:

Struggling to learn more on a certain subject? Want to know what kind of path you can take to further improve yourself? With Developer Roadmaps you get community driven roadmaps on subjects which helps you to improve your knowledge:

Resilience to overcome issues might be even more important than being reliable or robust. Why is it so important to have slack, work away your technical debt and have up to date software:

An important part of a compiler; the tokeniser, responsible for parsing the source code to something we can convert into a running system. But how can you create such a system? The below article has some great animations to explain the concepts.

GitHub related

The GitHub CLI is already very useful out of the box, but with extensions you get even more features. But how can you find the extension you need? The newly introduced gh ext browse and gh ext search help you with this. Read more on how to actually build an extension yourself.

A couple of small updates to Projects, including a feature to copy the setup of a projects views and fields so it can be reused.

It would be strange if GitHub needs to use other tools to manage their own inner workings, so this post provides insights in how they use the Projects features to manage releases.

The GitHub mobile application is getting better and better. Your Actions are now also available inside the app. Great way to see if a Pull Request came through or if a service is deployed.

Computing in general

Product roadmaps, which are often used to plan and communicate long-term product strategies, can be counter-productive in an Agile environment because they can create a false sense of predictability and limit flexibility.

In Agile development, the goal is to deliver working software frequently and respond to changes in customer needs and market conditions as they arise. This approach is at odds with the idea of a fixed roadmap, which can lead to inflexibility and a lack of adaptability.

Additionally, in Agile development, the team is empowered to make decisions and prioritize work, so a roadmap that is created by a small group of individuals may not align with the team's priorities or understanding of the product.

So what are better ways to tackle the need that roadmaps are suppose to fill in? Have a look at the below two articles for some pointers.

If you are a remote worker, then these 12 tips and practices can be useful. Certainly number 6.

Helpers and utilities

Using Powerpoint to make those fancy presentations? Although a great tool, storing presentations in source control, seeing differences between versions and sharing can be a challenge. Placing your presentation in another format like markdown can be a solution.

Computer Laws

For a new software system, the requirements will not be completely known until after the users have used it.

Humphrey law

The "Law of Requirement Uncertainty" states that for a new software system, the requirements will not be completely known until after the users have used it. This is because when a software system is initially created, there is often a degree of uncertainty around what the users will need or want from the system. As users begin to use the software, they will discover new ways in which the system can be used and new requirements that they have that the system does not currently meet. The development team will then need to revise the system to meet these new requirements, which can involve adding new features, redesigning existing features, and fixing bugs.

This law highlights the importance of an iterative and incremental approach to software development, such as Agile, which allows for the software to be developed in stages and refined based on user feedback. This approach allows for the requirements to be discovered and refined over time, rather than trying to specify all of the requirements up front which is often impossible.

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.