BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage Companies Content on InfoQ

  • Colors in .NET: an In-Depth Guide

    In this article, Peter Huber explains the intricacies of choosing and manipulating colors in .NET, from the basics of understanding how a monitor creates color to generating and manipulating your own color. A must-read for graphic designers and software developers working with .NET.

  • Why Change Intelligence is Necessary to Effectively Troubleshoot Modern Applications

    Change Intelligence is often a missing component in incident management. Successfully correlating monitoring and observability data to arrive allows engineers to arrive at the root cause more rapidly. Telemetry provides the building blocks that enable change intelligence to identify and map the root cause, based on changes in the system and their broader impact.

  • The Next Evolution of the Database Sharding Architecture

    In this article, author Juan Pan discusses the data sharding architecture patterns in a distributed database system. She explains how Apache ShardingSphere project solves the data sharding challenges. Also discussed are two practical examples of how to create a distributed database and an encrypted table with DistSQL.

  • Getting Started with gRPC and .NET

    In this article, the author introduces the core concepts behind gRPC and how it can be used with API development. The basic pros and cons of using gRPC instead of REST are also explained with a scenario analysis. The text is illustrated with a step-by-step tutorial on how to use gRPC to develop streaming services in .NET.

  • Lightweight External Business Rules

    Complex enterprise applications usually come with varying business logic. Such conditions and subsequent system actions, known as rules, are ever varying and demand involvement of domain specific knowledge more than technology and programming. The rules must reside outside the codebase, authored by people with core domain expertise with minimal tech knowledge.

  • Microservices — the Letter and the Spirit

    Microservices to be a pattern of ‘decoupled services’ managed to get the best out of it (the underlying understanding of the pattern (‘small’ vs ‘decoupled’) forces developers to take certain design decisions that are consistent with these objectives. In this article discuss we will discuss well and poor implementations: ‘small-services’ vs ‘decoupled-services’ or ‘Letter’ vs the ‘Spirit’.

  • Overriding Sealed Methods in C#

    In this article, the author demonstrates how we can change the behavior of sealed methods in C#. This can be done by understanding Operating System mechanisms and how the .NET platform generates and compiles code. The author illustrates these techniques using real-world scenarios, including the modification of the WinPAI wrapper.

  • Anomaly Detection Using ML.NET

    In this article, the author introduces the concepts of Anomaly Detection using the Randomized PCA method. The theory behind the concepts is explained and exemplified. The method is demonstrated with a real-world scenario implemented using C# and ML.NET.

  • Records in C# 9

    In this article, Tugce Özdeger talks about Records, a new reference type introduced in C# 9 that provides built-in functionality for encapsulating data. The article shows the potential benefits and advantages of using records and how developers can use them in their applications, with code examples and comparisons with classes and structs.

  • Present and Future of Xamarin Community Toolkit: Q&A with Gerald Versluis

    Xamarin.Forms is evolving into .NET MAUI; the Xamarin Community Toolkit is also preparing for the transition. In this Q&A, InfoQ decided to interview Gerald Versluis. He is a software engineer at Microsoft from the Netherlands. In this interview, we will talk about Xamarin Community Toolkit, MAUI transition, and their future roadmap.

  • The Fundamentals of Testing with Persistence Layers

    Mocking out dependencies such as databases and other persistence layers leads to ineffective tests. Unfortunately, our industry is also focused on function-level testing to the exclusion of all else, so few are trained on how to write any other type of test. This article seeks to correct the issue by reintroducing the concept of testing with databases.

  • Kotlin at Ten. Interview with JetBrains’ Roman Elizarov

    JetBrains unveiled Kotlin in July 2011, aiming to create a modern, general-purpose programming language running on the JVM as well as on the Web. Kotlin has quickly seen huge adoption, especially for Android app development. InfoQ has taken the chance to speak with Kotlin project lead at JetBrains Roman Elizarov to learn more about the origins of the language and its future.

BT