The week in .NET – On .NET with Glenn Versweyveld, Protobuf.NET, Arizona Sunshine
To read last week’s post, see The week in .NET – On .NET with Steve Smith, Jint, Blue Effect.
This week, I’ll publish the last of our MVP Summit interviews, in which Reed Copsey, Jr. told me about the F# Software Foundation and its new programs. Next week, we’ll resume our regular shows.
Package of the week: Protobuf.NET
Protocol Buffers, or Protobufs for short, are a serialization format invented by Google, that is popular for its performance and simplicity. Google’s C# library generates C# code from a Protobuf specification. Protobuf.NET takes a different approach, that is arguably more idiomatic, and closer to existing .NET serializers such as
DataContractSerializer, by starting from C# code, using attributes to specify contracts.
The serialization and deserialization APIs are then very simple:
Game of the week: Arizona Sunshine
Arizona Sunshine is a post-apocalypse first-person shooter designed for virtual reality. Strap on your headset and jump into a zombie invested world, exploring freely, scavenging and battling flesh eating undead who need to be put back into their graves! Arizona Sunshine features over 25 different weapons that operate with real-life movements, multiple environments for exploration, a full-size single player campaign and co-op multiplayer.
User group meeting of the week: HoloLens mixed reality experiences in Burlington, MA
The New England Microsoft Developers user group holds a meeting tonight, Thursday, January 5 in Burlington, MA, where Gavin Bauman will show you how to build mixed reality experiences with HoloLens.
- Back to basics: string interpolation in C# by Rick Strahl.
- Not your grandad’s .net – Pipes Part 1, A faster lower allocation stream stack wielded for ALPN/TLS and… HTTP2 – Pipes Part 2, and The journey continues to Secure Pipelines, via OpenSsl – Pipes Part 3 by Tim Seaward.
- In-memory C# compilation (and .dll generation) using Roslyn by Joseph Woodward.
- .NET Posts – 2016 Year In Review by Joe Petrakovich.
- Implementing the retry pattern in C# using Polly by Alastair Crabtree.
- Rx over the wire by Sacha Barber.
- New release of my NATS client focusing on simplifying usage by Daniel Wertheim.
- Building production ready Angular apps with Visual Studio and ASP.NET Core by Damien Bod.
- Introducing a new Markdown View Engine for ASP.NET Core by Hisham Bin Ateya.
- Creating a WebSockets middleware for ASP.NET Core by Radu Matei.
- How to enable gZip compression in ASP.NET Core by Talking DotNet.
- Change primary key for ASP.NET Core Identity and more by Thien Nguyen.
- Content negotiation and custom formatter in ASP.NET Web API by Snesh Prajapati.
- Create HTTP request pipeline using ASP.NET Core custom middleware: build/run on Mac, Windows, Linux or Docker container by Neal Pandey.
- In-memory caching in ASP.NET Core by Jignesh Trivedi.
- F# Software Foundation grows from over 200 members to over 1200 members since January of 2015.
- F# Advent 2016 Gitbook – over 600 pages of F# Wisdom!, curated by Scott Wlaschin.
- The magic of Type Providers by Roman Nevolin.
- End to end F# with the Elm Architecture by Matthew Doig.
- Azure Notebook in F# – creative way to share your notes beside the code by Michał Niegrzybowski.
- More simple mocking with object expressions by Jeremy Bytes.
- Suave Web Services by ASP.NET Monsters.
F# contributions: 118 Pull Requests from 17 contributors, 13 of which are community members.
New F# Language Proposals:
- Allow multiple base types/interfaces on flexible type annotation.
- Enumerable.OfType<TResult> equivalent for List, Array and Seq modules.
Check out the F# Advent Calendar for loads of great F# blog posts for the month of December.
Check out F# Weekly for more great content from the F# community.
- Xamarin.Android – Entity Framework by Jon Douglas.
- Making It Snow! Xamarin.Forms and CocosSharp and Particles by Matthew Soucoup.
- Introduction to the Mobile Software Development Lifecycle by Xamarin.
- Enabling TLS 1.2 in Xamarin.Android and Xamarin.iOS by Xamarin.
- An introduction to SkiaSharp by Xamarin.
- Xamarin Show Snack Pack 5: Android Archive Manager for Visual Studio by James Montemagno.
- Creating Tizen applications using Xamarin.Forms by Javier Suárez Ruiz.
- Xamarin Forms pull to refresh with ListView by Adam Pedley.
- Identifying users with HockeyApp by Tomasz Cielecki.
- Wrapping views in Xamarin.iOS by Marcos Cobeña Morián.
- Sharing code between Azure Functions by Jeremy Hutchinson.
- My take on an Azure open source cross-platform DevOps toolkit – The beginning, a 12-part series by Bruno Terkaly.
- Game design deep dive: how Rogue Legacy handles tutorials without being boring by Teddy Lee.
- Ludum Dare 37 Results
- Unity: Blend trees are awesome! A quick tutorial! by TheoremGames.
- 16 highlights from 2016 on the Unity blog by Community Team.
- (SadConsole) Controls overview by Andy De George.
- [Unity 5] Tutorial: How to make an inventory system – part 3 by Gamad.
- A* Pathfinding (E07: smooth weights) by Sebastian Lague.
And this is it for this week!
Contribute to the week in .NET
As always, this weekly post couldn’t exist without community contributions, and I’d like to thank all those who sent links and tips. The F# section is provided by Phillip Carter, the gaming section by Stacey Haffner, and the Xamarin section by Dan Rigby.
You can participate too. Did you write a great blog post, or just read one? Do you want everyone to know about an amazing new contribution or a useful library? Did you make or play a great game built on .NET?
We’d love to hear from you, and feature your contributions on future posts:
- Send an email to beleroy at Microsoft,
- comment on this gist
- Leave us a pointer in the comments section below.
- Send Stacey (@yecats131) tips on Twitter about .NET games.