Detroit.Code() Sessions tagged c#

The Secrets of LINQ: the modern day Houdini

To many, LINQ is magic, but when you pull up the curtains, turn on the lights and see what the magician is doing, all becomes clear. You to have access to all the same constructs that LINQ uses to do its magic. Things like Funcs, Actions, lambdas, and expression trees.

Speaker

Brian Korzynski

Brian Korzynski

Sr. Software Engineer, NuArx Inc.

Introduction to Asynchronous Code in .NET

In this beginner level talk we'll go over the common asynchronous patterns available in .NET. We'll focus on the Thread Parallel Library (TPL), Parallel Linq (PLINQ) and the new async/await keywords introduced in .NET 4.5. We'll discuss when to use these patterns and when not to.

This talk will focus on the basics of the thread parallel library, the async/await keywords, and PLINQ (parallel LINQ). We'll offer an explanation of when to use each method in the real world, the possible pitfalls to using each, and various tips to a successful implementation. We will also go over the general benefits of asynchronous code to user's application and the types of benefits they can expect to see. Finally, attendees will be warned of ways to avoid deadlocks and performance issues when using asynchronous .NET code as well as the basics of debugging asynchronous code.

Speaker

Bill Dinger

Bill Dinger

Solutions Architect, VML

Unit Testing Strategies & Patterns in C#

Learn common patterns and strategies to effectively unit test your code in C#. We’ll go over design principles and ways to effectively ensure your code can be easily tested as well as how to use common testing tools such as Moq, Autofixture, & MsTest to help remove some of the drudgery of testing.

Testable code is a widely advocated industry standard but the barrier to entry is incredibly high. In this talk, we’ll go over not just how to unit test your code using MsTest, Moq, & AutoFixture but the patterns & processes to ensure your code can be unit tested. We will touch on the basics of dependency injection and common patterns such as avoiding the use of static classes but also more advanced topics such as SOLID design principles and how they relate to testing.

We’ll give the attendees a wide variety of examples on how to test common C# projects such as web api and console applications and different scenarios such as how to test databases and external method calls. Many real world tips & tricks on dealing with common patterns and scenarios will be included to make your life easier. Most importantly, attendees will be given a good idea of how to start testing, how to measure the effectiveness of their tests, and what not to test.

Speaker

Bill Dinger

Bill Dinger

Solutions Architect, VML

Xamarin Forms: Writing one app to rule all your platforms

Are you seeking the Holy Grail of Write Once Run Anywhere app development? Then Xamarin Forms might be what you are looking for. This session will give you the information you need to understand Xamarin Forms and how it can be used to lower the friction of cross platform mobile development. You will see how easy it is to simultaneously create your app for iOS, Android, and Windows Phone using C# and this Open Source tool-set.

Speaker

Duane Newman

Duane Newman

Co-Founder, Alien Arc Technologies, LLC

Hands Free Mobile UI Testing

Testing your mobile app against the sea of mobile devices can be daunting. Just testing with the popular devices of the last few years can be cumbersome and expensive. Not to mention the wear and tear on your thumbs with all that tapping and swiping. Wouldn't it be great if you could apply the same skills and practices you've honed implementing unit testing of your app logic to the testing of your UI? I've got great news, you can! We'll explore how you can get started automating all that tapping and swiping today in your existing mobile apps and plan for it moving forward. We'll also see how those tests can be applied to online services with thousands of devices waiting to run your app.

Speaker

Duane Newman

Duane Newman

Co-Founder, Alien Arc Technologies, LLC

Building a Magic Mirror w/ .NET

Have you ever heard of a “magic mirror”? And no, I’m not talking about Snow White. I’m talking about a real-world mirror, with smarts… Lend me some of your time and I’ll walk you through my experiences of developing my magic mirror. It’s running Windows 10 IoT Core, on a Raspberry Pi 3. It was written in C# as a Universal Windows Platform (UWP) application. My magic mirror boasts facial recognition and the Microsoft Cognitive Services (Emotion APIs), plays music, updates with current local weather and forecasts, displays a clock, and your upcoming aggregated calendar events.

Speaker

David Pine

David Pine

Technical Evangelist (Microsoft MVP), Centare

Angular2 with an ASP.NET Core backend, happiness ensues...

If ASP.NET Core married Angular2, would TypeScript get jealous? It is a match made in heaven. Leveraging the grace and poise that Angular2 brings to the single page application paradigm, ASP.NET Core is the perfect spouse with its seamless and pluggable middleware. Let me prove how easy it is to marry these two powerful open-source projects together.

We'll discuss how Angular2 has been componentized. We'll touch on TypeScript as it pertains to enterprise JavaScript applications. We'll explore the Web APIs that compliment the SPA architecture while demonstrating the power of RxJS.

Speaker

David Pine

David Pine

Technical Evangelist (Microsoft MVP), Centare