My Top 10 NEW Visual Studio Features of 2023 for .NET Developers
by James Montemagno
posted on: February 08, 2024
There are tons of great new feature for .NET developers to love in Visual Studio 2022, here are my top 10 that were released in 2023 that you can take advantage of right now.
Using default interface methods for performance gains in IHeaderDictionary
by Andrew Lock
posted on: February 06, 2024
In this post I look at an example of how default interfaces were used to improve the performance of IHeaderDictionary…
Dev Tunnels: A Game Changer for Mobile Developers
by James Montemagno
posted on: February 05, 2024
See how Dev Tunnels can enhance your development process by securely sharing local web services across the internet and enabling you to easily connect to them from mobile apps, webhooks, and more.
Enable the new TerminalLogger in .NET 8 SDK automatically
by Gérald Barré
posted on: February 05, 2024
In .NET 8, you can use the new TerminalLogger. This terminal logger provides better output than the default console logger. It provides live progression and improves error reporting. However, it's not enabled by default. You need to use the --tl option to enable it (e.g. dotnet build --tl).Instead
Solved! Visual Studio .http File Not Sending Authorization Header
by Ardalis
posted on: February 01, 2024
I ran into a weird problem with how Visual Studio was sending API requests. I was trying to use a bearer token, and it worked fine in…Keep Reading →
Log Request Headers Middleware for ASP.NET Core
by Ardalis
posted on: January 31, 2024
Recently I ran into a weird problem with how Visual Studio was sending API requests and I really wanted to see exactly what headers were…Keep Reading →
Building AI-powered Microsoft Copilot with SignalR and other open-source tools
by Justin D. Harris
posted on: January 31, 2024
Microsoft Copilot is powered by several open-source tools, such as SignalR, Adaptive Cards, Markdown, and object-basin to solve the unique challenges in building AI-enabled applications at scale. In this article, we share the design considerations and how we integrated various tools with a focus on how we stream messages and responses to the front-end UI while giving some overview of what happens on the server-side.
On-demand webinar: Deep Dive into the Architecture of a NoSQL Database Indexing Engine
by Oren Eini
posted on: January 30, 2024
Join Oren Eini, CEO of RavenDB, as he explores the design and implementation of RavenDB’s indexing engine Corax, its impact on indexing and query performance, and how the engine addresses common challenges such as slow data retrieval, high hosting expenses, and sluggish development processes. You’ll also gain valuable insights into the architecture's performance costs and its ability to unlock efficiency in data handling.You can watch it now.
Understanding C# 8 default interface methods
by Andrew Lock
posted on: January 30, 2024
In this post I provide an introduction to default interface methods, how they work at a high level, their typical uses, and some of their sharp edges…
A call with my wife
by Oren Eini
posted on: January 29, 2024
This happened a few minutes ago, I got a call from an unknown number. That was my wife’s work number, and she called to ask me an urgent question, it seems: “Can you tell me how to compress a PDF file?” she asked. For the next part, it might be better if I paint you the whole picture. Imagine bullet time, where everything slows down, and I start to analyze the question and my possible answer. The following thoughts run through my mind during that time. PDF files are already compressed by default. Pretty sure that the file format is already using compression. You could strip unneeded elements from the file, removing fonts is one example, I think. If there are images, can probably downscale or re-sample them to reduce their size. What about just running this through Zip? Where did this question come from? That took about two seconds in real time. The decision tree for any possible answer here grew exponentially. I had to make a call. “No, that isn’t easily possible,” I answered. I got some more details as well. “This is for uploading a document to the XYZ system, it only accepts up to 4MB files, but this PDF is 5.5MB. I guess I can just scan this document as two separate pages instead of one, right?” A workaround found, and a detailed dive into lossless vs. lossy compression compared to the file format choice avoided, I agreed that this was probably the best option and finished my coffee, pondering the ethical dilemma of answering the actual question or the intended question.