Arhus, Denmark
2013
  |  By Ali Hamza Ansari
As developers, we often fall into common pitfalls that impact the performance, security, and scalability of our applications. From neglecting data validation to overengineering, and from ignoring async/await to mishandling resource disposal, even experienced C# developers can make these mistakes. In this post, I've gathered some of the most frequent issues developers encounter in C# and how to avoid them with practical solutions.
  |  By Ali Hamza Ansari
APIs are the heart of most modern applications. Due to their simplicity and lightweight design, RESTful APIs are a popular choice for client-server communication in most applications. However, APIs can become limiting when fetching complex or related data. The front end may over-fetch or under-fetch the meaningful data. For example, different pages require different responses. RESTFul APIs require different field endpoints, each involving repetitive complex joining conditions.
  |  By Thomas Ardal
Four years ago, I wrote the blog post The NuGet packages we use to build elmah.io. Since then, we have made several changes to our tech stack as well as upgraded to recent versions of.NET. For this post, I'll update you on the packages we use as of writing this post. I hope you will find some inspiration in seeing how a system like elmah.io is built.
  |  By Ali Hamza Ansari
Benchmarking is essential in application development, especially if you aim to scale up your app. Benchmarking enables you to evaluate your application's resource consumption, which helps you identify potential updates to speed up performance. If not scaling, you will need the application performance to be optimal to enhance user experience and reduce memory and processing costs.
  |  By Ali Hamza Ansari
C# has always been one of the most popular programming languages among developers. It continuously evolves to meet timed features and trends. Its robustness and flexibility make it an all-purpose language and ideal for domains like desktop applications, enterprise systems, web development, games, and cross-platform and native mobile applications. With the launch of.NET 9, Microsoft introduced C# 13, equipped with new features to improve developer productivity and code quality.
  |  By Ali Hamza Ansari
You may have encountered a situation where you must do some backend job without user intervention. For example, in an IOT application, your application needs to receive frequently published data from devices or send scheduler values to devices. .NET provides background job libraries for such tasks. I will discuss one of the background libraries, Quartz.NET, with a coding example. I will break down Quartz for you with simple, practical examples.
  |  By Ali Hamza Ansari
.NET 9 is releasing in mid-November 2024. Like every.NET version, this introduces several important features and enhancements aligning developers with an ever-changing development ecosystem. In this blog series, I will explore critical updates in different areas of.NET. For this post, I will look through advancements in System.Text.Json.
  |  By Ali Hamza Ansari
.NET 9 is releasing in mid-November 2024. Like every.NET version, this introduces several important features and enhancements aligning developers with an ever-changing development ecosystem. In this blog series, I will explore critical updates in different areas of.NET. In this post, I'll look at two new LINQ methods: CountBy and AggregateBy.
  |  By Ali Hamza Ansari
C# has been a popular programming language for many years now. It continuously evolves to include new features and adopt recent trends. Its flexibility makes it a language ideal for many different domains and platforms like desktop applications, enterprise systems, web development, games, cross-platform, and native mobile applications. Back when Microsoft launched.NET 7, this also included a new version of C# with version number 11.
  |  By Ali Hamza Ansari
.NET 9 is releasing in mid-November 2024. Like every.NET version, this introduces several important features and enhancements aligning developers with an ever-changing development ecosystem. In this blog series, I will explore critical updates in different areas of.NET. For today's post, I'll present some improvements to Cryptography.
  |  By elmah.io
Blazor WASM JS Wrapping in relation to ObjectReferences
  |  By elmah.io
This example shows how to produce Push Notifications with ASP.NET Core.
  |  By elmah.io
An introduction to elmah.io Heartbeats.
  |  By elmah.io
An introduction to how to install elmah.io in your.NET web project.
  |  By elmah.io
Tutorial on how to install elmah.io on a running website on Azure App Services.

elmah.io is the easy error logging and uptime monitoring service for .NET. Take back control of your errors with support for all .NET web and logging frameworks.

Never rely on users to report bugs again:

  • Error Monitoring: With elmah.io Error Monitoring, all errors on your websites are automatically synced to elmah.io’s powerful infrastructure in the cloud. Using a range of different dashboards, it is easy for you to monitor the current state of your applications and react as soon as something breaks down. You can track both a single application as well as get the full picture of all applications, using a range of interesting metrics. Integrations with popular instant messaging and issue tracking systems, reduce the time from introducing an error to deploying a fix in production. Our users tell us that elmah.io helps them introduce fewer errors into their applications.
  • Uptime Monitoring: elmah.io Uptime Monitoring continuously pings your endpoints from up to 5 different regions. When your endpoints start failing, errors are logged in your existing error logs. This means that all of the rules and notifications already set up just work. No need to maintain your team and notification rules in multiple tools. Uptime checks also validate your SSL certificates and domain names, giving you a chance to renew both before users start experiencing errors in their browser.
  • Deployment Tracking: Deployment Tracking gives you a perfect overview of the different versions of your software. New versions of your software are automatically registered by elmah.io. Metrics about the performance of each release are collected immediately. Being able to determine if a new release introduced bugs, will allow for quick fixing or rollback to a previous version. Deployment Tracking supports all of the popular deployment choices on the market, like Azure DevOps and Octopus Deploy.
  • Heartbeats: Heartbeats is for scheduled tasks and services as Uptime Monitoring is for your websites. Add a predefined schedule and publish heartbeats to elmah.io when a scheduled task succeeds, every hour from your Windows Service, and much more. elmah.io automatically monitors your heartbeats. Using the built-in notifications and App Store, your teams are notified as soon as one of your heartbeats is unhealthy or missing.