Make a game with C# in a Weekend: Sunday

Previous part Source code Fonts In our game, we will be wanting to display some text, for example current level and score. The way Monogame deals with assets like fonts, images or sounds is through so called “content pipeline”. The idea was that optimized binary formats for such assets may be different for different target platforms Monogame supports. This sounds good in theory, the bad news though is that the development of content pipeline tools somewhat lags the development of the actual library. [Read More]

Make a game with C# in a Weekend: Saturday

Source code What and why In addition of being a great tool for building cloud services and such, C# shines, perhaps surprisingly, in video game development. Unity game engine, for example, uses C# as a scripting language. For my taste, however, Unity is a little bit too magical, too much of mouse dragging and button clicking in order to get something workable. So for this guide we will use Monogame, a wonderful cross-platform C# framework for building games which can run on Windows, Mac, Linux, as well as on a few popular mobile platforms and game consoles. [Read More]

Asymmetric encryption in C# for fun and profit

source code What if you never knew what is asymmetric encryption? In short, asymmetric cryptography uses a pair of keys to perform its job. One may think that these two keys are entangled in a sense that while one is used to encrypt the data, to decrypt it back the second key is needed. First encrypts - Second decrypts. You cannot decrypt with the first key! You absolutely need the second key. [Read More]

No-nonsense gRPC guide for the C# developers, Bonus: Interoperability

source code Python interoperability One of the greatest gRPC features is its programming language-neutral nature. You can write gRPC services in C# and access them from other languages. The list includes pretty much everything used in software industry. Conversely, one can connect gRPC clients written in C# to service written in Java, Go, Ruby, you name it. We are going to demonstrate these capabilities using Python. Python is one of the programming languages I really enjoy working with. [Read More]

No-nonsense gRPC guide for the C# developers, Part Three: Streaming

source code Why sometimes we care about the streaming? Many, many micro-services are fundamentally designed as our Calculate service we were able to build in parts one and two. Of course the request and reply messages payload may wary widely, but the pattern is fundamentally the same: Client sends the request message, the service does something with the supplied parameters and sends the response back. But in some cases we have a case which requires a slightly adjusted point of view. [Read More]