Egil Hansen
@egilhansen.com
Distinguished Developer at Delegate, Microsoft #MVP and creator of #bUnit. 🇩🇰 living in 🇮🇸. Creator of bunit.dev. #dotnet #blazor #bUnit #oss.
Pinned
Egil Hansen
@egilhansen.com
· Dec 12
Sponsor @egil on GitHub Sponsors
Support Egil’s open-source work in the .NET community. His primary contribution is the Blazor testing library bUnit, that enables testing of Blazor components like regular POCO.
github.com
If you find my work in the #dotnet open-source community useful and you (or your company) would like to support my efforts, doing so through GitHub Sponsors is an excellent choice. Learn more here: github.com/sponsors/egil
Reposted by Egil Hansen
You write tests. But are they helping you and your team?
In this .NET Rocks! episode, @egilhansen.com explores how to make tests more durable, insightful, and future-proof. Plus: should AI be writing your tests? 🤖 #dotnet
🎧 Listen here: msft.it/63323sFo2T
In this .NET Rocks! episode, @egilhansen.com explores how to make tests more durable, insightful, and future-proof. Plus: should AI be writing your tests? 🤖 #dotnet
🎧 Listen here: msft.it/63323sFo2T
October 16, 2025 at 11:37 PM
You write tests. But are they helping you and your team?
In this .NET Rocks! episode, @egilhansen.com explores how to make tests more durable, insightful, and future-proof. Plus: should AI be writing your tests? 🤖 #dotnet
🎧 Listen here: msft.it/63323sFo2T
In this .NET Rocks! episode, @egilhansen.com explores how to make tests more durable, insightful, and future-proof. Plus: should AI be writing your tests? 🤖 #dotnet
🎧 Listen here: msft.it/63323sFo2T
Always a please chatting with Carl and Richard on their podcast!
You write tests - but are they valuable tests?
@EgilHansen.com talks on .NET Rocks at www.dotnetrocks.com/details/1971 about his approach to building tests for applications!
@EgilHansen.com talks on .NET Rocks at www.dotnetrocks.com/details/1971 about his approach to building tests for applications!
.NET Rocks!
.NET Rocks! is a weekly talk show for anyone interested in programming on the Microsoft .NET platform. The shows range from introductory information to hardcore geekiness.
www.dotnetrocks.com
October 9, 2025 at 3:07 PM
Always a please chatting with Carl and Richard on their podcast!
@simoncropp.bsky.social do you have a list of does and donts in snapshot testing somewhere? Examples of good patterns and anti patterns with Verify?
May 2, 2025 at 7:01 AM
@simoncropp.bsky.social do you have a list of does and donts in snapshot testing somewhere? Examples of good patterns and anti patterns with Verify?
If the facts are as the article lays them out, I hope one of my friends from #microsoft will make this right. Adherence to OSS licenses is important!
philiplaine.com/posts/gettin...
philiplaine.com/posts/gettin...
Getting Forked by Microsoft
Three years ago, I was part of a team responsible for developing and maintaining Kubernetes clusters for end user customers. A main source for downtime in customer environments occurred when image reg...
philiplaine.com
April 21, 2025 at 1:42 PM
If the facts are as the article lays them out, I hope one of my friends from #microsoft will make this right. Adherence to OSS licenses is important!
philiplaine.com/posts/gettin...
philiplaine.com/posts/gettin...
Yep, saw this live. Huge respect for people that dare to be vulnerable; it’s such a powerful thing.
April 6, 2025 at 9:05 AM
Yep, saw this live. Huge respect for people that dare to be vulnerable; it’s such a powerful thing.
Need a cure for that primitive obsession in #dotnet? Take a look at www.nuget.org/packages/Egi...
First real attempt at a source generator library. Happy with the result. A key feature is that it’s very easy to overwrite the default generated code, just as it is with C# record classes and structs.
First real attempt at a source generator library. Happy with the result. A key feature is that it’s very easy to overwrite the default generated code, just as it is with C# record classes and structs.
Egil.StronglyTypedPrimitives 1.9.7
A source generator for creating strongly-typed primitive types that makes
it easy to avoid the primitive obsession anti pattern.
Add a [StronglyTyped] attribute to a partial record struct ...
www.nuget.org
April 4, 2025 at 11:48 PM
Need a cure for that primitive obsession in #dotnet? Take a look at www.nuget.org/packages/Egi...
First real attempt at a source generator library. Happy with the result. A key feature is that it’s very easy to overwrite the default generated code, just as it is with C# record classes and structs.
First real attempt at a source generator library. Happy with the result. A key feature is that it’s very easy to overwrite the default generated code, just as it is with C# record classes and structs.
Going live with @steven-giesel.com for the first #bUnit dev session of this month. We may even get a visit from @scottsauber.com :)
Join at twitch.tv/egilhansen and www.youtube.com/watch?v=jZrZ...
Join at twitch.tv/egilhansen and www.youtube.com/watch?v=jZrZ...
April 4, 2025 at 1:32 PM
Going live with @steven-giesel.com for the first #bUnit dev session of this month. We may even get a visit from @scottsauber.com :)
Join at twitch.tv/egilhansen and www.youtube.com/watch?v=jZrZ...
Join at twitch.tv/egilhansen and www.youtube.com/watch?v=jZrZ...
This could be said about the internet in general.
its amazing how chatgpt knows everything about subjects I know nothing about, but is wrong like 40% of the time in things im an expert on. not going to think about this any further
March 10, 2025 at 12:31 PM
This could be said about the internet in general.
Hey folks, @steven-giesel.com and I just went live with another #bunit dev session. Come hang and lets build v2 together.
www.youtube.com/watch?v=fvBn...
and
twitch.tv/egilhansen
www.youtube.com/watch?v=fvBn...
and
twitch.tv/egilhansen
bUnit dev session #28
YouTube video by Egil Hansen
www.youtube.com
March 7, 2025 at 1:42 PM
Hey folks, @steven-giesel.com and I just went live with another #bunit dev session. Come hang and lets build v2 together.
www.youtube.com/watch?v=fvBn...
and
twitch.tv/egilhansen
www.youtube.com/watch?v=fvBn...
and
twitch.tv/egilhansen
@captainsafia.com does (or will) #dotnet's OpenApi generator have a way to declare a custom schema transformer for type as an attribute, like we can with JsonConverter?
E.g.:
[OpenApiTransformer()]
public record MyId(int Value);
E.g.:
[OpenApiTransformer
public record MyId(int Value);
March 1, 2025 at 11:23 AM
@captainsafia.com does (or will) #dotnet's OpenApi generator have a way to declare a custom schema transformer for type as an attribute, like we can with JsonConverter?
E.g.:
[OpenApiTransformer()]
public record MyId(int Value);
E.g.:
[OpenApiTransformer
public record MyId(int Value);
Reposted by Egil Hansen
For all the Open Source Maintainers, a message to the world.
February 26, 2025 at 3:05 PM
For all the Open Source Maintainers, a message to the world.
I like the way Rob phrases this, software is free, maintainers time is NOT.
I’ll consider this for new projects going forward.
I’ll consider this for new projects going forward.
Open Source Software is free, but Open Source Project maintenance is expensive.
The Open Source Maintenance Fee directly funds your projects' maintainers.
Simple. Sensible. Sustainable.
opensourcemaintenancefee.org?utm_source=B...
The Open Source Maintenance Fee directly funds your projects' maintainers.
Simple. Sensible. Sustainable.
opensourcemaintenancefee.org?utm_source=B...
Simple. Sensible. Sustainable.
Directly fund your maintainers with the Open Source Maintenance Fee.
opensourcemaintenancefee.org
February 26, 2025 at 7:55 PM
I like the way Rob phrases this, software is free, maintainers time is NOT.
I’ll consider this for new projects going forward.
I’ll consider this for new projects going forward.
Hey #dotnet, #blazor, and #bunit friends, me and @steven-giesel.com are live with another bUnit dev session.
Come join us on www.youtube.com/watch?v=Nw68... and twitch.tv/egilhansen.
Come join us on www.youtube.com/watch?v=Nw68... and twitch.tv/egilhansen.
bUnit dev session #27
YouTube video by Egil Hansen
www.youtube.com
February 21, 2025 at 1:49 PM
Hey #dotnet, #blazor, and #bunit friends, me and @steven-giesel.com are live with another bUnit dev session.
Come join us on www.youtube.com/watch?v=Nw68... and twitch.tv/egilhansen.
Come join us on www.youtube.com/watch?v=Nw68... and twitch.tv/egilhansen.
Reposted by Egil Hansen
A solid analysis by @anderspucknielsen.dk cutting through the media buzz created by Trump and co and providing a reasonable assessment.
www.youtube.com/watch?v=TWLq...
www.youtube.com/watch?v=TWLq...
Trump's plan for peace negotiations
YouTube video by Anders Puck Nielsen
www.youtube.com
February 15, 2025 at 8:16 AM
A solid analysis by @anderspucknielsen.dk cutting through the media buzz created by Trump and co and providing a reasonable assessment.
www.youtube.com/watch?v=TWLq...
www.youtube.com/watch?v=TWLq...
Another excellent rendition of the #swetugg conference is in the bag. Really great conference; food, venue, organizers, and sessions were all top notch.
Big recommendation from me!
Big recommendation from me!
February 5, 2025 at 3:52 PM
Another excellent rendition of the #swetugg conference is in the bag. Really great conference; food, venue, organizers, and sessions were all top notch.
Big recommendation from me!
Big recommendation from me!
Hey @stevejgordon.bsky.social, we chatted about OTel telemetry aggregation at NDC London. You mentioned you have a processor that does this, and that you could share it. Consider yourself nerd sniped :)
February 3, 2025 at 7:49 AM
Hey @stevejgordon.bsky.social, we chatted about OTel telemetry aggregation at NDC London. You mentioned you have a processor that does this, and that you could share it. Consider yourself nerd sniped :)
Reposted by Egil Hansen
Any .NET devs from Japan in my network?
January 25, 2025 at 3:35 PM
Any .NET devs from Japan in my network?
Reposted by Egil Hansen
Ok I think 1100 tests are enough for now.
FusionCache v2 is right around the corner 😬
FusionCache v2 is right around the corner 😬
January 19, 2025 at 9:19 PM
Ok I think 1100 tests are enough for now.
FusionCache v2 is right around the corner 😬
FusionCache v2 is right around the corner 😬
Spot on @aaronontheweb.bsky.social, well written: aaronstannard.com/relicense-or...
.NET OSS Projects: Better to Re-license or Die?
The decision maintainers face when 'free' just ain't cutting it.
aaronstannard.com
January 18, 2025 at 8:06 PM
Spot on @aaronontheweb.bsky.social, well written: aaronstannard.com/relicense-or...
Going live with @steven-giesel.com in a couple of minutes for another #bUnit dev session. Come hang and help us build v2.
Watch at:
- www.youtube.com/watch?v=m_GM...
- twitch.tv/egilhansen
Watch at:
- www.youtube.com/watch?v=m_GM...
- twitch.tv/egilhansen
bUnit dev session #6
YouTube video by Egil Hansen
www.youtube.com
January 17, 2025 at 1:27 PM
Going live with @steven-giesel.com in a couple of minutes for another #bUnit dev session. Come hang and help us build v2.
Watch at:
- www.youtube.com/watch?v=m_GM...
- twitch.tv/egilhansen
Watch at:
- www.youtube.com/watch?v=m_GM...
- twitch.tv/egilhansen
FluentAssertions have moved dual license (free for open source/paid for corp work) with their v8, and as expected people are blowing a gasket.
Please remember, @dennisdoomen.com and co do not owe you their free time in perpetuity. Stay on v7, buy a license, or move on.
Be thankful, don't bitch ❤️
Please remember, @dennisdoomen.com and co do not owe you their free time in perpetuity. Stay on v7, buy a license, or move on.
Be thankful, don't bitch ❤️
January 14, 2025 at 7:35 PM
FluentAssertions have moved dual license (free for open source/paid for corp work) with their v8, and as expected people are blowing a gasket.
Please remember, @dennisdoomen.com and co do not owe you their free time in perpetuity. Stay on v7, buy a license, or move on.
Be thankful, don't bitch ❤️
Please remember, @dennisdoomen.com and co do not owe you their free time in perpetuity. Stay on v7, buy a license, or move on.
Be thankful, don't bitch ❤️
#azure #mvpbuzz friends, if I have an ACA environment with dedicated workload profile, minimum capacity > 2, and zone redundanzy turned on, and I have a container app in the environment with minReplicas > 2, am I then guaranteed to have my container replicas placed equally between the ACA instances?
January 9, 2025 at 11:05 PM
#azure #mvpbuzz friends, if I have an ACA environment with dedicated workload profile, minimum capacity > 2, and zone redundanzy turned on, and I have a container app in the environment with minReplicas > 2, am I then guaranteed to have my container replicas placed equally between the ACA instances?
Reposted by Egil Hansen
I can't believe @anderspuck.bsky.social got through his Greenland explainer with a straight face. Strange days again. Prolly stranger. youtu.be/GlK3f1cs_l4
Why Trump can't buy Greenland
YouTube video by Anders Puck Nielsen
youtu.be
January 8, 2025 at 8:09 PM
I can't believe @anderspuck.bsky.social got through his Greenland explainer with a straight face. Strange days again. Prolly stranger. youtu.be/GlK3f1cs_l4
Starting a new Azure project at work and was reminded how long it takes to develop IaC scripts (bicep).
The developer-inner-loop is soooo slow, test running the scripts takes minutes, especially when provisioning resources that involve vnets or other networking resources.
Tips are welcome!
The developer-inner-loop is soooo slow, test running the scripts takes minutes, especially when provisioning resources that involve vnets or other networking resources.
Tips are welcome!
January 8, 2025 at 10:37 AM
Starting a new Azure project at work and was reminded how long it takes to develop IaC scripts (bicep).
The developer-inner-loop is soooo slow, test running the scripts takes minutes, especially when provisioning resources that involve vnets or other networking resources.
Tips are welcome!
The developer-inner-loop is soooo slow, test running the scripts takes minutes, especially when provisioning resources that involve vnets or other networking resources.
Tips are welcome!
@anderspuck.bsky.social you mention in a recent video that Russia is not after land, but after direct and indirect influence/control over Ukraine, like it seemingly has over Belarus. That makes sense to me.
A, perhaps stupid, next question I have is “why?”
A, perhaps stupid, next question I have is “why?”
January 6, 2025 at 11:30 PM
@anderspuck.bsky.social you mention in a recent video that Russia is not after land, but after direct and indirect influence/control over Ukraine, like it seemingly has over Belarus. That makes sense to me.
A, perhaps stupid, next question I have is “why?”
A, perhaps stupid, next question I have is “why?”