Articles

Weekly CW07-2020 EN
Weekly CW06-2020 EN
Weekly CW05-2020 EN
Microsoft eating OSS? EN
Weekly CW04-2020 EN
Weekly CW03-2020 EN
Weekly CW02-2020 EN
Weekly CW01-2020 EN
Weekly CW52-2019 EN
Weekly CW51-2019 EN

Weekly CW07

If you are still lacking good content to read in 2020, what about 9 books about Azure? After reading and understanding all books mentioned in »The Top 9 Microsoft Azure Books You Need to Read in 2020« you should have a pretty deep knowledge about Azure.

Ever wondered »What is the most cost-effective way to run SQL and Windows Server in the cloud?« would be? Looking at this article you will have good starting point for your decision.

Sometimes components available in Azure seem to do similiar things. When choosing between the right way to handle logs, alerts, change feeds and webhooks and are not sure whether Event Grid could be right for you, you should have a look at »How Azure Event Grid is different from logs, alerts, change feeds and webhooks«.

Do you use your Azure shell on a daily base and wondered whether it would be possible to optimize your personal workflow? Then have a look at »Azure Cloud Shell + zsh, oh-my-zsh, tmux, and badass terminal!«.


Weekly CW06

Even though "Diving into Durable Entities" is a little bit older (September 2019) it is still a great introduction to Durable Entities in Durable Functions v2.

Using Azure API Management you can publish and manage your APIs. "How to publish your APIs with the new developer portal in Azure API Management" shows how to do this. Using Azure Functions together with Azure API Management is especially great because this way you can expose your Azure Functions as an API using OpenAPI to use them in Power Apps.

Looking for guidance on starting a greenfield project using React + .NET Core? Then you should definitely have a look at "Choosing a “Modern” React.js + .Net Core Stack" by jeremydmiller.

This weeks highlight is definitely "SameSite Cookies In A Nutshell". One might be thinking how this can be a highlight but this topic will become very important in the next days/weeks. After reading this article you will understand why. You should also have a look at the linked articles on SameSite cookies changes in Chrome 80+.


Weekly CW05

If you are looking for a way on how to use Event Grid, Azure Keyvault and Azure Functions all together then "Using Event Grid, Azure Keyvault and Azure Functions" is for you.

Seeing this sentence

consider the partner programs that you're involved in, and whether they are influencing any decisions you're making to the detriment of your customers

in "Leaving The AWS Partner Network" made me think whether this a valid point. My educated guess would be that yes is the answer to this question.

Steve Sanderson presented at .NET Conf on "Focus on Blazor". The code from his demo is now available online at SteveSandersonMS / presentation-2020-01-DotNetConf. Nice to see that using Blazor enables you to build cross-platform UI client.

Thorben Janssen wrote "Dual Writes – The Unknown Cause of Data Inconsistencies". If you never heard of dual write issues and think about using Microservices for specific scenarios which include data persistence then you definitely should read this article.


Yesterday evening I have been reading the blog post "Why we terminated our partnership with Microsoft - Re: Next decade of open source" by Paul Stovell who founded Octopus Deploy.

Octopus Deploy homepage Figure: Octopus Deploy homepage, https://octopus.com/, 2020-01-28 20:10

! PSA
I have never personally used Octopus Deploy in a professional context even though I had a deeper look at it in 2015 but then finally backed away from it due to the licensing costs.

My first thought was that Paul Stovell has a valid argument here. Nevertheless, I continued to think about his situation. At the same time I also read comments at Hacker News about it where I originally found the blog post.

In the end I came to the conclusion that the specific situation of Octopus Deploy is not comparable to other OSS projects. Octopus Deploy is not an OSS project, only many parts of it are OSS.

Therefore it can be said that Octopus Deploy is a competitor of Microsoft. So you can't accuse Microsoft to have torpedoed an OSS project, but only to have made the decision to launch an own product as an alternative to a competitor.

Conclusion

As a conclusion I can only say that one should not be discouraged by this blog post to be an active contributor in a .NET OSS project or even start one yourself.

So I personally cannot agree with Paul Stovell's conclusion.

Which brings me back to Aaron's post: it's not going to work.

Yes, it can happen that Microsoft will eventually come to the point of offering an alternative and thus become the de facto standard, but that doesn't necessarily have to happen. This can be seen in enough popular OSS .NET libraries.

Basically, my observation is that Microsoft has made a fundamental turnaround in its attitude towards OSS since Satya Nadella became CEO. Maybe Microsoft had the idea to push OSS out of the market a long time ago. In the last few years, however, I have observed that this behavior can no longer be seen.


Weekly CW04

This one is a thing which I still need to watch myself. Nevertheless I'm going to recommend it anyways. How authentication works for the web and apps in the modern enterprise - This is a fantastic 35min split across 6 videos.

Unfortunately John Feminella does not allow to view his threads in Thread Reader. Apart from this fact you should have definitely a look at this thread: "As of today, we have about eighteen years to go until the Y2038 problem occurs....". In addition you should then have a look at this one: "Thread by @Foone: re: the 2020 bug because of bad y2k fixes..." I guess there will be some work upcoming in the next years because of the year 2038 problem.

Keeping your Azure Function private is a good thing in an enterprise context. Therefore have a look at "Azure Functions Private Site Access" by Michael S. Collier.

Improving you as a person is as important or might be even more important as improving your professional skills. To improve you as a person who might be suffering from Impostor Syndrome you should view this great TEDx Talk from Dona Sarkar: "The Imposter Syndrome Banishing Spell".


Weekly CW03

This weeks Weekly edition unfortunately is a litte bit delayed. This week was kind of stressful and on Thursday evening it simply forgot to write it.

If you are using Microsoft Authenticator for MFA to protect your account, what you definitely should do, you maybe have been asking yourself how to transfer this app to a new device. Toni Pohl wrote a nice guide on how to transfer you authenticator app to a new device: How to setup the MFA App Authenticator app on a new device for a specific Azure AD

Priyesh Wagh wrote a useful guide on how to "Create new Sandbox and copy Production over to it in PowerPlatform Admin Center". This one is quite useful if you are working on Power Platform.

Security is always important. Why not start the year even it is already some weeks old with a review of "Top ten best security practices for Azure today". Really helpful session from last years Microsoft Ignite.

Async/await is a constant question in the .NET community. The article "ConfigureAwait FAQ" deals in particular with ConfigureAwait which continues to draw questions in this context.


Weekly CW02

This weekly will start with a some articles dealing with patterns in software development.

From my point of view it is more important to understand patterns in general than how to use every specific piece of software/programming language in detail especially if you are trying to move into an architectural role. Often you have to find a solution for a specific problem. This is from my observation easier if you have a broad toolset of patterns available instead of a specific piece of software.
The last one from the former ones is my personal favorite because it facilitates so much cutting edge technology like KEDA, dapr and Azure Service Bus.

"Async / Await: From Zero to Hero" is a must read for people trying to get their head around async/await in C#. Zhi Yuan has written a great article to understand the concepts behind async/await.


Weekly CW01

If your New Years resolution is to get started with Microsoft Azure Donovan Brown tweeted about this article: HOW TO LEARN MICROSOFT AZURE IN 2020. You will get an overview what and where you can learn on Azure. In addition you can have a look at this video: Learn what you can do with an Azure free account

Tobi Lutke pointed at "The Value of Grey Thinking". I must admit that several years ago I was also often trapped in black and white thinking. But especially in IT it is important to think "grey" to find solutions for problems. The article provides a good foundation why you should also try to be better at thinking grey.

Interesting approach provided by Oren Eini. He describes how to minimize friction when setting up a new (software) project. "Proper software architecture for a new project" basically describes from my point of view kind of a combination of MVP and a Scrum like approach.

Nadeeja Bomiriya wrote a good guide how to handle Dynamics 365 Release Management. "[Best Practices] Dynamics 365 Release Management " explains furthermore which stakeholders need to be informed during such a release.


Weekly CW52

Last weekly edition for this year as next week will already be New Year's Eve.

Recently I've read more and more things about OKRs. OKR has a long history that can be traced back to 1954. Lately OKR got more and more attention because big companies like IBM, Google, LinkedIn, Twitter, Dropbox, Spotify, Disney, and BMW are using them. "[Workflow Guide] Transform the Way You Set and Track Goals with OKRs" explains how you can facilitate OKRs for setting personal goals.

DHH wrote an interesting article on using Ruby on Rails at Basecamp. Being the inventor of Ruby on Rails he might be a little bit biased on using Ruby but his point in "Only 15% of the Basecamp operations budget is spent on Ruby" is not advocating for Ruby on Rails in general. Instead he explains why it wouldn't be a good idea for Basecamp to switch to another software stack even though it might provide a performance advantage.

SSH keys explained is a good introduction to what SSH keys are in general and what they can be used for. And why you should use them.

If someone has some spare-time during the holiday season and wants to deep dive in B-tree techniques the >200 pages document "Modern B-Tree Techniques" by Goetz Graefe might be a good starting point. Thanks at Jaromir Hamala for pointing at this gem.


Weekly CW51

Even though the article "Commit messages are not titles" is dated 2015 it got some traction this week on Hacker News. If you would like to see the discussion on HN you can find it here. Pretty interesting/controversial point of view by Salvatore Sanfilippo but I do agree to this. A commit message from my position must serve two purposes: explain what this commit contains and what it does. If its a title I'm fine, if not I'm fine, too. Nevertheless you should settle to a convention in your team to which everybody sticks.

A nice introduction to CloudEvents has been delivered by Doug Davis, Clemens Vasters, Klaus Deissner and Vladimir Bacvanski at KubeCon 2019. You can watch their session online. Watch CloudEvents - Intro, Deep-Dive and More! if you are interested in understanding how CloudEvents can serve purpose to you.

Always interesting how big software shops handle changes in API changes or even breaking changes in general. Shopify which is unquestionable a big software shop has published "How Shopify Manages API Versioning and Breaking Changes" which goes in detail on handling and dealing with this kind of changes.

Another great article from a big software shop comes from Amazon. If you have ever had to deal with deployments of stateful services you know this isn't as easy as it sounds in the first place. My money quote from "Ensuring rollback safety during deployments" is:

Ensuring that we can roll back a deployment without any disruption for our customers is critical in making a service reliable.

If you are interested in more articles like this you should definitely have a look at the The Amazon Builders' Library.