Is this you? As a journalist, you can create a free Muck Rack account to customize your profile, list your contact preferences, and upload a portfolio of your best work.
Claim your profile
Articles by Matteo Prosperi
.NET libraries and the art of backward compatibility - Part 3
This is the third post in the .NET libraries and the art of backward compatibility series: Part 1 – Introduction and behavioral incompatibilities Part 2 – Source incompatibilities Part 3 – This post Part 1 and 2 of this series discuss how to update your library’s code in a way that doesn’t break your customer application either by changing behavior (behavioral incompatibility) or by causing compilation errors (source incompatibility).
Tinkering with client-side Blazor and the AWS SDK for .NET
Being a .NET lover, a cross-platform hopeful and a JavaScript ignorant, I was immediately enthused about client-side Blazor. The promise of statically hosted web applications that run on every platform is very exciting. Being able to write them in .NET is the dream! Being an engineer on the AWS SDK for .NET team, I tasked myself with figuring out how to use our libraries under Blazor in the browser.
.NET libraries and the art of backward compatibility - Part 1
So, you wrote a .NET library, you released it to the public and now you are about to make version 2.0 or 1.1 or even just 1.0.0.0b. This post is about how to plan the changes that go into the next version of your library in order to safeguard the experience of your existing users.
Template-based code generation with Razor and Roslyn
In this blog post I will complete the “template-based card image generator” project that I started a few weeks ago and I will discuss one of my favorite .NET capabilities: compiling C# code at runtime and using the generated types. I will also show how to use Razor templates to generate non-HTML files. The whole process goes through 5 steps: Using Razor to compile a C#/XAML template into the C# code of a code generator class. Using Roslyn to compile the C# generator into an assembly.
.NET libraries and the art of backward compatibility - Part 2
This is the second post in the .NET libraries and the art of backward compatibility series: Part 1 – Introduction and behavioral incompatibilities Part 2 – This post Part 3 – Binary incompatibilities Part 1 was all about a simple, but hard to follow, rule: “don’t make changes to your library that alter its behavior”. That was about it, just don’t do it! Part 2 and 3 are about additional types of backward compatibility that you may want to guarantee to your customers.
Creating your own .NET DynamicObject. Why, when and how.
In this post, I will describe what is the dynamic type in C# and its pros and cons. I will also show how to write a class defining a new type of dynamic object that allows accessing XML data with a simplified syntax. This is similar to the feature that JSON.NET provides for querying JSON data. Spoilers This post is the first in a short series investigating somewhat exotic parts of .NET. During the series I will be writing the main components of a template-based image generator.
.NET libraries and the art of backward compatibility - Part 3
This is the third post in the .NET libraries and the art of backward compatibility series: Part 1 – Introduction and behavioral incompatibilities Part 2 – Source incompatibilities Part 3 – This post Part 1 and 2 of this series discuss how to update your library’s code in a way that doesn’t break your customer application either by changing behavior (behavioral incompatibility) or by causing compilation errors (source incompatibility).
.NET DateTime, a tale about best practices and time travel
As a .NET developer, I am used to the .NET class library being really well architected. This is a double edged sword because, when DateTime, one of the most used types in any application, starts misbehaving, it may catch you by surprise. 1985, Hill Valley CA If you want to follow along the code samples in this post, make sure to set your computer’s time zone to Pacific Time (US & Canada).
Automating graphic design with WPF
Being passionate about board games, I have often mused about creating my own. Today there are very accessible options to prototype and test your own game design with minimal expense. Tabletop Simulator is widely used for playtesting and services like The Game Crafter are available to print as little as a single copy of your game at a reasonable cost. Still, coming up with tens, or even hundreds, of professionally designed cards is not an easy task.
Show More
loading
Actions
Is this you?
As a journalist, you can create a free Muck Rack account to customize your profile, list your contact preferences, and upload a portfolio of your best work.Get in touch with Matteo
Contact Matteo, search articles and posts on X, monitor coverage, and track replies from one place.
Learn more about Muck Rack