• Debugging and Light Profiling

    800 5th Ave

    Debugging is a game of strategy. The rules are set by the computer, your debugger, and requirements or user expectations. You may enter the contest expecting a trivial opponent, only to find it like Hydra with two new problems sprouting for each one you solve. It’s a critical game because we fix bugs from the time we first check in code, and the cost of each bug tends to increase across the project lifecycle. In this talk, you’ll learn about debugging strategies that help you ask better questions in order to significantly reduce the amount of time you spend debugging. Poor performance can be a bug, and you’ll learn straightforward profiling techniques to help you understand performance problems. Core debugging principles covered in this talk apply across most languages and platforms; the demonstrations will use Visual Studio 2017. Leave this talk ready to formulate ideas into testable strategies you can use to resolve bugs faster and with more confidence. Speaker Kathleen Dollard Kathleen loves to code and loves to teach and talk about code. She’s written tons of articles, a book, and spoken at numerous conferences around the world. She’s on the .NET Core team at Microsoft, where she works on the .NET Core CLI and SDK and managed languages (VB.NET and C#). She’s always ready to help developers take the next step in exploring the wonderful world we call code. Agenda 6:30pm - Doors open / Food by Google Cloud / Networking 7:00pm - News and announcements 7:10pm - Presentation 8:30pm - Wrapped Up Parking The building parking garage locks at 7PM. We encourage you to find parking on the street, in an outside lot, or use alternative transportation.

  • Building iOS and Android Apps with .NET and Xamarin

    Xamarin enables C# developers to become native iOS, Android, macOS, watchOS, and tvOS app developers overnight. In this session, you will learn how to leverage your existing .NET and C# skills to create iOS and Android mobile apps in Visual Studio with Xamarin. In addition to allowing you write your iOS and Android apps in C#, Xamarin lets you reuse existing .NET libraries and share your business logic across any .NET app. During this session we will cover the Xamarin platform and how to create native iOS, Android, and Windows apps in C#. Moreover, we will really focus on the code with several live coding adventures throughout the entire session. Speaker James Montemagno is a Principal Program Manager for Mobile Developer Tools at Microsoft. He has been a .NET developer since 2005, working in a wide range of industries including game development, printer software, and web services. Prior to becoming a Principal Program Manager, James was a professional mobile developer and has now been crafting apps since 2011 with Xamarin. In his spare time, he is most likely cycling around Seattle or guzzling gallons of coffee at a local coffee shop. He can be found on Twitter @JamesMontemagno, blogs code regularly on his personal blog http://www.montemagno.com, and co-hosts the weekly development podcast Merge Conflict http://mergeconflict.fm. Agenda 6:30pm - Doors open / Food by Google Cloud / Networking 7:00pm - News and announcements 7:10pm - Presentation 8:30pm - Wrapped Up Parking The building parking garage locks at 7PM. We encourage you to find parking on the street, in an outside lot, or use alternative transportation.

  • Bare Metal Web Assembly

    800 5th Ave

    How you like to use your favorite programming language to build high performing web applications that don’t require JavaScript? You may find the answer with WebAssembly, a standard that defines a binary format for executables in JavaScript environments. Already many languages and compilers have been updated to target this new domain. Now that it has been adopted by all modern browsers, developers are porting projects and frameworks to take advantage of the promise of improved performance and the ability to build web applications using the language of their choice. Learn the history of WebAssembly, see examples in C#, Go, and Rust and decide for yourself if it’s time to build code for the world’s newest operating system: your browser. Speaker Jeremy Likness Jeremy is a Cloud Developer Advocate for Azure at Microsoft. Jeremy wrote his first program in 1982, was recognized in the "who's who in Quake" list for programming the first implementation of "Midnight Capture the Flag" in Quake C and has been developing enterprise applications for 25 years with a primary focus on web-based delivery of line of business applications. Jeremy is the author of four technology books, a former 8-year Microsoft MVP for Developer Tools and Technologies, is an international speaker and writes regularly on cloud and container development. Jeremy follows a 96.5% plant-based diet and spends most of his free time running, hiking and camping, and playing 9-ball and one pocket. Follow his blog at https://blog.jeremylikness.com/ Agenda 6:30pm - Doors open / Food by Google Cloud / Networking 7:00pm - News and announcements 7:10pm - Presentation 8:30pm - Wrapped Up Parking The building parking garage locks at 7PM. We encourage you to find parking on the street, in an outside lot, or use alternative transportation.

  • Understanding the real value of Open Source with nopCommerce

    Open Source. Developers hear about it a lot. What should you really look for and why? For example, I choose to study nopCommerce, a .NET eCommerce solution, which has led to some amazing opportunities. nopCommerce has a familiar architecture, a plug-in model, and an active community. This is a fast paced walk-through of the nopCommerce architecture and source code. More importantly, you will discover the many ways to get involved with any other open source software to better your career and life. Speaker John Baluka Open Source. Developers hear about it a lot. What should you really look for and why? For example, I choose to study nopCommerce, a .NET eCommerce solution, which has led to some amazing opportunities. nopCommerce has a familiar architecture, a plug-in model, and an active community. This is a fast paced walk-through of the nopCommerce architecture and source code. More importantly, you will discover the many ways to get involved with any other open source software to better your career and life. Agenda 6:30pm - Doors open / Food by Google Cloud / Networking 7:00pm - News and announcements 7:10pm - Presentation 8:30pm - Wrapped Up Parking The building parking garage locks at 7PM. We encourage you to find parking on the street, in an outside lot, or use alternative transportation.

  • Async Internals in .NET

    800 5th Ave

    Async and await are now common elements of .NET ecosystem. Do you know how they work? Do you know what is synchronization context, how to wait for async void methods or how to implement custom task scheduler? In this talk I show internals of async and await. I present state machine created by the compiler, consider allocation issues and show typical deadlock scenarios. We will see how to call async methods from synchronous code, how to wait for async void, how to implement custom synchronization context or task scheduler to handle exceptions, and how to run task without allocation at all. Speaker Adam Furmanek I am Adam Furmanek and I have been working as a .NET developer for 5 years. Right now I am at Amazon working with Scala, Spark and Machine Learning. I am always interested in digging deeper, exploring machine code and going through implementation details to better understand internals of the technologies I use every day. That's why I like debugging, decompiling and disassembling the code to understand memory models, concurrency problems and other details hidden deeply inside. In my free time I play ping-pong, watch Woody Allen's movies and blog stuff at http://blog.adamfurmanek.pl Agenda 6:30pm - Doors open / Food by Google Cloud / Networking 7:00pm - News and announcements 7:10pm - Presentation 8:30pm - Wrapped Up Parking The building parking garage locks at 7PM. We encourage you to find parking on the street, in an outside lot, or use alternative transportation.