
Migrating WebDriver tests to Playwright
I keep hearing good things about Playwright, and get a bit frustrated with the hacking around with WebDriver having to wait for things to be visible, scrolling to elements, etc. So I decided to see...
I keep hearing good things about Playwright, and get a bit frustrated with the hacking around with WebDriver having to wait for things to be visible, scrolling to elements, etc. So I decided to see...
Web Development Trends in 2024: A Shift Back to Simplicity Web frameworks are moving back to less complex frameworks, which was the original intention of Jamstack. For example Astro and Vue which ...
C# 12.0: inline arrays In C# 12 and .Net 8, you can define a fixed-sized array, which is much more efficient for the memory and the garbage collector. [InlineArray(3)] public struct ThreeFloats { ...
Storing times for human events Interesting idea that actually makes sense - don’t store user events in UTC. Instead store the user’s intent time and the location/timezone. Circumventing Python’s ...
Series: Working with the result pattern A four-part series explaining the result pattern. Part 1 - Replacing Exceptions-as-flow-control with the result pattern Explaining what the result pattern...
Everything You Want to Know About the Record Type in .NET… But Were Afraid to Ask I should remember to use C# record types more often. use init for properties to make them immutable (only sett...
Australia/Lord_Howe is the weirdest timezone In case it wasn’t clear yet, timezones are difficult! 10 Lessons I Learned from Using Aspire in Production TL;DR: Aspire is nice, but not trivial to ...
How to become an expert in anything The 4 Stages of Competence: Unconscious Incompetence: you don’t know what you don’t know (unknown unknowns) Conscious Incompetence: you know that you don’...
Conveying Context with AsyncLocal AsyncLocal Represents ambient data that is local to a given asynchronous control flow, such as an asynchronous method. It’s a static class that allows you t...
Add a Property to the Top-level Statements Program class Top-level statement Program files are handy, but how can you add properties to them? You can add methods directly into the file, but not pr...