.NET Posts

The Toptal Engineering Blog is a hub for in-depth development tutorials and new technology announcements created by professional software engineers in the Toptal network.
Ivan Cesar
An Elasticsearch Tutorial for .NET Developers

Elasticsearch is one of the most powerful full-text search engine solutions out there. Using the NEST package, you can easily leverage the power of Elasticsearch in your .NET projects.

In this article, Toptal Freelance Software Engineer Ivan Cesar shows how Elasticsearch can solve real-world full-text search problems in your .NET projects.

Continue reading →
Demir Selmanovic
How to Make an Android and iOS App in C# on a Mac

In the past few years, Microsoft has pulled a few aces from up its sleeve. Yes, they messed up Skype, failed with smartphones, and almost succeeded with tablets. But, they did some really amazing things as well.

Relinquishing their closed empire approach, they open-sourced .NET, joined the Linux Foundation, released SQL Server for Linux, and created this great new tool called Visual Studio for Mac.

In this post, Head of Open Source Demir Selmanovic details how to make an Android and iOS app in C# on your Mac.

Continue reading →
Daniel Ivanov
How To Improve ASP.NET App Performance In Web Farm With Caching

Caching is a powerful technique for increasing performance, but the whole idea behind caching works only as long as the result we cached remains valid. And here we get to the hard part of the problem: How do we determine when a cached item has become invalid and needs to be recreated?

In this article, Toptal Freelance Software Engineer Daniel Ivanov provides an ASP.NET-based solution to replace invalid cached items and assure high throughput and performance of web applications designed to handle a high load.

Continue reading →
Andrei Smirnov
How to Bootstrap and Create .NET Projects

To create a .NET project from scratch, simply using Visual Studio Wizard is good enough most of the time. However, the default project settings produced by wizards are hardly acceptable for professional teams, as they set too low of a bar on quality.

In this article, Toptal Freelance Software Engineer Andrei Smirnov guides us through several standard practices, configuration files, and project settings every developer should apply when starting a new .NET project. Doing this in the very beginning of a project decreases future technical debt and makes product source code readable and professional-looking.

Continue reading →
Kate Scheer
Project Rider: A Standalone ReSharper IDE

With Microsoft’s no-brainer shift towards open source and interoperability it was only a matter of time before we started seeing alternatives to some of their key products, like Visual Studio. Enter Project Rider: the code name for IDE guru JetBrains’ competition to Visual Studio.

Here’s the lowdown on Project Rider, the newest member of the IntelliJ platform family.

Continue reading →
Jeffrey Shumaker
Guide To Budget-friendly Data Mining

Although database programming does not evolve at nearly the same pace as traditional application programming, recent advancements in several fields are bringing new techniques and technologies within the reach of small and independent developers.

In this guide, Toptal Freelance Software Engineer Jeffrey Shumaker explains how developers can quickly and easily tap these methods to identify database issues they may not even be aware of, and how they can build excellent data mining tools without spending a lot on expensive software licenses.

Continue reading →
Juan Pablo Scida
Hunting and Analyzing High CPU Usage in .NET Applications

Software performance in production is hard to analyze. Things can go wrong at any time, and code can start executing in ways that weren’t planned for. In these cases, what do we do? In this article, Toptal engineer Juan Pablo Scida analyzes a real scenario of high CPU usage of a web application. He covers all the processes and .NET code analysis involved to identify the problem, explains how the problem was solved, and most importantly, explores why this problem happened in the first place.

Continue reading →
Eugene Tsygankov
Eight Reasons Why Microsoft Stack Is Still a Viable Choice

In today’s world where there are a lot of choices for writing quality software, it’s easy to overlook some tools that are viable options in developing modern software. These software development tools, in competition with each other, often fluctuate in popularity and developer preferences. Many excellent tools are viable options for any given project. This article provides eight reason in favor of the Microsoft stack and why it is still a reasonable choice for software development today.

Continue reading →
Patrick Ryder
Buggy C# Code: The 10 Most Common Mistakes in C# Programming

C# is a powerful and flexible language with many mechanisms and paradigms that can greatly improve productivity. Having a limited understanding or appreciation of its capabilities, though, can leave one in the proverbial state of “knowing enough to be dangerous”. This article describes 10 of the most common programming mistakes made, or pitfalls to be avoided, by C# programmers.

Continue reading →