C# Digest #404: Making illegal states unrepresentable
#404 — February 28, 2022 | View in browser |
C# Digest
Spread the word, build the community, share the knowledge – invite your friends.
sponsor
Retool is the fast way to build internal tools
Retool is the fast way to build internal tools. Visually design apps that interface with any database or API. Switch to code nearly anywhere to customize how your apps look and work. With Retool, you ship more apps and move your business forward—all in less time.
this week's favorite
Making illegal states unrepresentable
From my perspective, an illegal state is such state of an application in which it demonstrates an unexpected behaviour, makes its data inconsistent, or cannot proceed with operation
.NET 6 and C#10 are here, Visual Studio Code is a nice environment for editing your code, and you can even edit your code in the web. And a new feature has appeared to document your code: .NET Interactive. With it, you can create interactive notebooks and create interactive pieces of code, where you can share and try sample code.
Badly implementing encryption: Timings attacks and side channels
Those two functions are doing the same thing, but in a very different manner. The issue with eql() is that it will stop at the first mismatch byte, while timingSafeEql() will always scan through the two buffers first and then return the result.
The power of OneOf – Unions for C#
This library provides F# style unions for C#, using a custom type OneOf<T0, ... Tn>. An instance of this type holds a single value, which is one of the types in its generic argument list.
Today I learned that you could use attribute, in C#, on itself. 🤯 Not sure why would I do that, but it’s cool.
how did you like this issue?
1 = didn't like it at all and 5 = loved it and shared it with everyone I know
newsletters
Older messages
C# Digest #403: Range & Index — C#8 features under the radar
Sunday, February 20, 2022
And more news, tutorials and articles about C# and .NET in this week's issue. #403 — February 21, 2022 View in browser C# Digest Spread the word, build the community, share the knowledge – invite
C# Digest #402: What is the cost of casting in C#?
Sunday, February 13, 2022
And more news, tutorials and articles about C# and .NET in this week's issue. #402 — February 14, 2022 View in browser C# Digest Spread the word, build the community, share the knowledge – invite
C# Digest #401: Colors in .NET: In-depth guide
Sunday, February 6, 2022
And more news, tutorials and articles about C# and .NET in this week's issue. #401 — February 07, 2022 View in browser C# Digest Spread the word, build the community, share the knowledge – invite
C# Digest #400: Proposed .NET 7 breaking changes
Sunday, January 30, 2022
And more news, tutorials and articles about C# and .NET in this week's issue. #400 — January 31, 2022 View in browser C# Digest Spread the word, build the community, share the knowledge – invite
C# Digest #399: Optimizing CPU-bound and memory-bound .NET applications: 11 best practices
Sunday, January 23, 2022
And more news, tutorials and articles about C# and .NET in this week's issue. #399 — January 24, 2022 View in browser C# Digest Spread the word, build the community, share the knowledge – invite
You Might Also Like
🐍 New Python tutorials on Real Python
Saturday, January 11, 2025
Hey there, There's always something going on over at Real Python as far as Python tutorials go. Here's what you may have missed this past week: Iterators and Iterables in Python: Run Efficient
Life Update: Me. In Shorts. In Antarctica [Pics Inside 🧊]
Saturday, January 11, 2025
And yes, I jumped in. It taught me a lot 😅 ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏
Google Researcher Uncovers Zero-Click Exploit Targeting Android Devices
Saturday, January 11, 2025
THN Daily Updates Newsletter cover The Kubernetes Book: Navigate the world of Kubernetes with expertise , Second Edition ($39.99 Value) FREE for a Limited Time Containers transformed how we package and
📧 Working with LLMs in .NET using Microsoft.Extensions.AI
Saturday, January 11, 2025
Working with LLMs in .NET using Microsoft․Extensions․AI Read on: my website / Read time: 6 minutes The .NET Weekly is brought to you by: Transform your database performance with RavenDB:
iOS Dev Weekly – Issue 694
Friday, January 10, 2025
Hopefully you won't see that much difference with receiving this issue, but it's ALL CHANGED behind the scenes! 😱
Daily Coding Problem: Problem #1664 [Easy]
Friday, January 10, 2025
Daily Coding Problem Good morning! Here's your coding interview problem for today. This problem was asked by Twitter. A permutation can be specified by an array P , where P[i] represents the
Spyglass Dispatch: The Case for a For-Profit OpenAI
Friday, January 10, 2025
RIP Venu • A More Political and Real Time Threads • An OpenAI Auction • Apple's Tough 2025 The Spyglass Dispatch is a newsletter sent on weekdays featuring links and commentary on timely topics
⌨️ 10 Mods to Improve Your Mechanical Keyboard — How to Set Up Quick Share on Windows
Friday, January 10, 2025
Also: Why Are Tech Companies Trying to Sell Me Expensive Clocks? How-To Geek Logo January 10, 2025 Did You Know Famed biologist Charles Darwin and US President Abraham Lincoln were born on the same day
Your best friends in design
Friday, January 10, 2025
Working With Designers Product manager & UX designer collaboration guide. How members of your product team work together is just as important as the work itself. A fundamental relationship within
Charted | How Canada Would Rank as the 51st State 📊
Friday, January 10, 2025
Donald Trump has floated the idea that Canada should be the 51st state. Here's how it compares statistically. View Online | Subscribe | Download Our App Presented by: Global X ETFs Power AI's