344: Exploring CoreData and CloudKit (Merge Conflict) - Honestly it felt good hearing about those two genius struggling with data. But more than that to see them continue to look for different alternatives, and try new tools and patterns. Great episode, as usual.
Learning Blazor (David Pine) - This book is just perfect! It explains a bit of everything. It is packed with real examples and code variation (because there are so many ways to write something). There was even a full chapter un test with playwright, I didn't expect that and it was great!
It is time to share new reading notes. It is a habit I started a long time ago where I share a list of all the articles, blog posts, and books that catch my interest during the week.
If you think you may have interesting content, share it!
Host WordPress in Microsoft Azure with App Service (PaaS hosting) (Chris Pietschmann ) - When we are interested in WordPress, we are looking for a key in-hand experience. We don't want to manage code and connections and too much technical stuff. Having it hosted in PaaS Azure simplifies even more this.
Dapr 1.10 - More steps in the right direction (Mark Heath) - This is great! I'm happy to see the multi-app functionality as I was totally waiting for it. And the workflow is definitely something that interests me.
It is time to share new reading notes. It is a habit I started a long time ago where I share a list of all the articles, blog posts, podcast episodes, and books that catch my interest during the week.
If you think you may have interesting content, share it!
Programming
Web3 DevOps: The Series (Donovan Brown) - I'm just getting started with web3 there are so many tools.
How to Compare Two Json Objects Using C# (Code Maze) - Data is the core of most if not all applications and a common way to define the data is JSON. This post helps to understand how to compare a piece of information. Very useful.
Taking Comfortable Risks with Scott Galloway (A Bit of Optimism) - One thing he said that will stick with me I think, and that I need to now transform into my words: "There is nothing that will happen to you if you don't take some uncomfortable risks and talk to some people".
How to manage through a season of layoffs (Modern Mentor) - A season like those required more effort from everyone. It's hard and we all need to say nice and as much human as possible.
Already time to share new reading notes. It is a habit I started a long time ago where I share a list of all the articles, blog posts, podcast episodes, and books that catch my interest during the week.
If you think you may have interesting content, share it!
The Suggestion of the week
What is .NET, and why should you choose it? (.NET Team) - This is not an ordinary blog post. It makes me think of those deep interesting MSDN articles. A great read for young or older developers that would like to know more about .NET or refresh their memory.
Cloud
Azure DevOps Pipelines: If Expressions and Conditions (John Folberth) - This nice post in the series on Azure Pipeline focuses on conditions. Avery has efficient tools to customize our pipeline just like we want them.
What is an Azure Load Balancer? (Cary Roys) - Do you know what an Azure Load Balancer is or you only thing you know? In this nice post not only you will learn what it really is but it the post shares some OSS tools to test your ALB and explains how to use them.
Programming
Asynchronous Programming Patterns in .NET (Code Maze) - This is a great tutorial that explains 3 asynchronous patterns with code samples and explanation. Perfect to get started and understand legacy code or write new one.
Coding 102: Writing code other people can read (Max Pekarsky) - This is an excellent post with so much wisdom in it. Writing readable code is extremely important. Whether it's just a few lines in excel, a script, a query for a database, or a full app.
Sustainable Open Source with Sarah Novotny (.NET Rocks!) - Great episode with the Microsoft Open Source Lead talking about why truly open source is important and how Microsft really believes in its future.
Digging Up the Past with Sarah Parcak (A Bit of Optimism) - Using satellite images to do archeology... wait what?! Great episode really interesting from the early second until the last one.
Adventures in Dapr: Episode 0 - Introduction (James Dawson) - This first post of the series provides us details about the plans and why Dapr seams interesting as a resource for this project.
A Fancy Hover Effect For Your Avatar (Temani Afif) - Wow! From my point of views this look loke magic. With only one HTML element and a few lines of CSS... Bravo!
Blazor and Azure OpenAI (Michael Washington) - Cool demo using OpenAI API. Because yes ChatGPT is fun but there are APIs to build real apps.
341: Frank Masters In-App Subscriptions (Merge Conflict) - A big thank you to Frank and James for sharing that journey. We too often only ear about the happy path, and it's great to listen to all those challenges you incountered and how you managed to move forward.
Embracing The Fall with Carla Hall (A Bit of Optimism) - YES! So true! Falling instead of failling. Like a very wise man told me long time ago, the important is to bounce; get back on your feet and standup.
I use Azure Logic Apps in many of my solutions, I find them so conviennant to integrate different systemes. Recently one of them was failling and by lookink at the error message: The property value exceeds the maximum allowed size, I knew what was wrong. I was tying to save a JSON object into a Storage table but one property was too long. For this particular case I didn't need the value contain in the property so the plan was to delete it. At first, I thought it wasn't possible to edit a variable of type object in a Logic Apps, but it is!
In this post I will show how to use Compose action and setProperty to perform data operations in Azure Logic Apps.
The Context
First think to know is that the Compose action does not update the the current object but creates a new one. In this demo the JSON object use is quite short to simplyfy the demo.
{
"firstname":"Frank",
"lastname":"Boucher",
"alias":"fboucheros",
"bio":"With many years of experience in the IT industry, François (Frank) Boucher is a trusted Microsoft Azure professional whose expertise and bilingual service are relied upon in large Canadian markets (Ottawa and Montreal) as well as internationally. Among his many accolades, Francois has been awarded four times Microsoft Azure MVP status, named a Microsoft Azure Advisor, and Microsoft Azure P-Seller. Frank created the “Cloud 5 minutes” show. Where every second week, a new episode that answers a different technical question, is published both in French and English (cloud5mins.com). "
}
The Details
The Logic App recieve a JSON object from the request body. This is transfom as an Person object. To empty the bio property the action Compose will be used.
Inside the Compose action, use the context menu to find setProperty in the Expression section. The expression setProperty takes three parameters: the object, the property name, and the edited value. In this demo the goal was to empty the property therefore and empty string will be assign like this:
setProperty(variables('Person'),'bio','').
The edited object is accessible from the output of the Compose action and this what will be return in the Response action.
The Result
By adding a single action it's possible to edit JSON object in a Logic App without requiring to use inline code or external tools. A demo wouldn't be complite without a end-to-end run so here the result of a HTTP POST to the Logic App passing the Person JSON and the returned result.
Video version
If you prefer, I also have a video version of this post.
Already time to share new reading notes. It is a habit I started a long time ago where I share a list of all the articles, blog posts, podcast episodes, and books that catch my interest during the week.
You think you may have interesting content, share it!
Generating Sample Data with Bogus (Shawn Wildermuth) - We all need seed data, test data, temp data... Bogus seams sample and efficient. I'm definitely trying it, in my next project.
It's been a while since I had so many "ah-ah" moment while reading a book. Digital body language is about communication using many different technologies by different culture, generations and individuals...
It a must if you care about how your message are received.
Already time to share new reading notes.
It is a habit I started a long time ago where I share a list of all the articles, blog posts, podcast episodes, and books that catch my interest during the week.
You think you may have interesting content, share it!
Bringing GitHub Actions to GitHub Mobile (Maximilian Sachs) - I'm Involved in a few repos, and being about to review some PR or questions and be able to answer them quickly is super nice. Learn more about this app in the post.
Practice Tests released on Microsoft Learn (Georgia Kalyva) - So many of you asked me about where they could find those tests... Happy to provide an easy answer moving on.
It's time to share new ReadingNotes. Here is a list of all the articles, podcasts, and blog posts, that catch my interest during the week.
If you think you may have interesting content, share it!
Programming
Making an Asynchronous Breakfast in .NET (Assis Zang ) - This post explains so well using a task that we all did the difference between synchronous and asynchronous code. It's in .NET, but valid for all languages (that support async code of course).
Get Started with GitHub Actions (Mandy Hubbard) - This is a great post to get started with CICD. GitHub is free and accessible, give it a try and then automate some tests or a deployment.
Why tuples in C# are not always a code smell (Dennis Frühauff) - I didn't use Turple yet but it's not hard to see the potential and how it could become ugly. This post shows and explains a few simple rules to stay clear.
Lazy and once-only C# async initialization (Ian Griffiths) - An amazing post that explains so much and that has all the code snippets to be clear about it. I will have to copy-paste those into some test applications to really try them, but it is clear what I should expect.
Good Monday, it's time to share new ReadingNotes. Here is a list of all the articles, podcasts, and blog posts, that catch my interest during the week.
If you think you may have interesting content, share it!
Azure Storage Caching and Compression – The Missing Piece (Jeffrey T. Fritz) - This post shares all the gotchas learned along the way in developing and trying to optimize an application. The result is a faster application, a better experience for the client, and more money that stays in your pocket.
Programming
Build Containers Without a Dockerfile (Rockford Lhotka) - An interesting thing to be able to create a container without a dockerfile. This post explains why it can be useful and of course how to do it.
PowerShell IntelliSense completion (Mark Downie) - I noticed that a few days while being active in the prompt to do a bunch of installation and configuration. Super happy that prediction is finally part of the release.
Azure Boards – Organize and Plan All of Your Work (April Edwards) - Amazing post that not only go over a few great features of azure DevOps board but also explains the why.... why should we use them.
As a way to close the Reading Notes of 2022, I changed a little today's post by sharing the books I read during the year. I didn't include the novel and thriller as I'm not sure they would be relevant in this kind of post. However, if you are interested, find me at goodreads.com/fboucheros.
Let's make this new year a better one, and as usual, I'm always happy to receive your blog post and recommendations.
I like the stories and examples in this book. I mean it's 'easy' to say listen carefully but demonstrating how the opportunity was missed, and how to correct it is way more complex. Nice book.
I really enjoyed reading this book. Data is in the middle of everything, and when communicating that information it's often translated into numbers. To have an impact, the way we communicate those number is crucial. A book to read and probably read again after a while to refresh our memory.
This book oversimplifies a really complex topic, but I believe it was important to make each point clear. Nice read, it will help to be less afraid of making changes.
A nice book that mixt great advice and more 'easy' ones. Nevertheless, it was interesting to revisit what I already knew and to learn new things. With so many distractions around us, focusing is important.
Big fan of D&D and this book is a great read. It is a history of the game and the people behind it. It is an excellent read for anyone who is interested in the game or its history of it. I had no idea of all the "drama", and honestly even I didn't know either what it takes to create those books/games.
The important message here where we can achieve a lot more with less. The book shares many examples and breaks them down into simple principles. I recommend it to anyone who is looking to improve their work-life balance.
The mind is incredible. Goggins pushed it to not eleven... to twelve! We all encounter difficulties in our lives, and the lesson here is that the real limit is way past what we think. Great book and he just published a new one.
The first time I heard of that book it was in a podcast and it seems very promising. Even though I didn`t fall in love with that book the ideas are interesting and definitely worth the time to learn them.
Good Monday, it's the last ReadingNotes of 2022! So many great articles, podcasts, and blog posts. More than 350 of those catch my interest this year...
If you think you may have interesting content, share it!
Good Monday, it's time to share new ReadingNotes. Here is a list of all the articles, podcasts, and blog posts, that catch my interest during the week.
If you think you may have interesting content, share it!
Hacking APIs with Dana Epp (.NET Rocks!) - While listening to this episode I felt like I needed to put on the hood of my hoodie, take my laptop and go to a dark corner. Very interesting episode.
Miscellaneous
DasBlog support for WebFinger (Mark Downie) - Interested to integrate your domain to a mastodon server? This post is for you
It's time to share my reading notes. Those are a curated list of all the articles and blog posts, that caught my interest during the week and that I found interesting. It's a mix of the actuality and what I consumed.
If you think you may have interesting content, share it!
Web Security 101 - Part 1: Secrets (Abbey Perini) - This is a nice post that lists places or methods to save our secrets and explains the pro and cons of each.
Fluent Insights EP4: Slots (Paul Gildea) - The new episode of Fluent UI Insights is out. This one talks about slots, JSX children, and triggers.
Good Monday, time to share my reading notes. Those are a curated list of all the articles, blog posts, podcast episodes, and books that caught my interest during the week and that I found interesting. It's a mix of the actuality and what I consumed.
If you think you may have interesting content, share it!
Cloud
Setup the Auto-shutdown on VM using Bicep template (Massimo Bonanni) - VMs are so useful. One of the best ways to save money is to turn them off when you are not using them. Part 6 about Bicep explains how to do it in your IaC script.
7 Reasons for Startups to Choose ASP.NET Over Node.js (Michael Shpilt) - I believe the most crucial point is to use a language that your team is comfortable with. If everyone already masters Node, then continue with that. If you are starting a new team or need specific performance or requirements that Node doesn't provide then, of course, .NET must be considered.
It's time to share new ReadingNotes. Here is a list of all the articles, and blog posts, that catch my interest during the week. Are you done watching all the videos from .NET Conf and GitHub Universe? I know I don't...
If you think you may have interesting content, share it!
What's new in Orleans 7.0 (Brady Gaster) - Simplified, faster, and so much more learn all the news about Orleans 7 in this post, and join them on Discord.
What’s new with Codespaces from GitHub Universe 2022 (Nik Molnar) - I'm a big fan of codespace and DevContainer. I was delighted to learn about the global availability and the free monthly hours. This makes it a must for many open-source projects.
Azure SQL Database Overview (Daniel Calbimonte ) - This post is a great one to get started on Azure SQL Database. It answers many of the initial questions and provides the answers.
[Improving Your Desktop Applications—ToolTips in .NET MAUI](Leomaris Reyes ) (https://www.telerik.com/blogs/improving-desktop-applications-tooltips-dotnet-maui?utm_source=readingnotes) - Tooltips are now here!
Azure Service Bus Performance - Azure SDK Blog (Paul Michaels) - A nice post that explores the edge of the service Bus services in terms of speed and size of the messages. It could have a big impact on your design, depending on your business scenarios.
Celebrating the Second Edition of Code with Charles Petzold (Hanselminutes with Scott Hanselman) - What an amazing interview with the author of the book Code. I heard so much about this book, and now with this new edition++, I think I should put it on my reading list.
Unreasonable Hospitality with Will Guidara (A Bit of Optimism) - Whaaat?! This is such a great idea! I need to read that book and go to that restaurant. I love the idea.