Providing a scripting environment and language so that users can mod and extend a game is a traditional practice in the videogame industry, where C/C++ game engines like Unity allow you to use C# to create and script games. Providing a scripting environment allows users and designers to break out of the constraints of the game, modifying it and extending it beyond the intent of the original developers. What if non-gaming applications could also leverage a scripting environment to gain flexibility and power? With Mono's embedding API it's easy for any C/C++ application to add the power of C# and .NET to its arsenal.
In this talk we will go through the basics of how to embed Mono and run C# from a C/C++ bootstrapping application, its potential uses, as well as the problems and pitfalls that you will encounter along the way. There are many interesting things that you can do when you control the runtime, domain and assembly loader from native land, and we will look at some fun tricks that are possible, like dynamic UIs that you can script, extend and modify at runtime without ever restarting your app, or games where the users drive the content.
The new Universal Application project promises to reduce the amount of code you need to write, but does it reduce the amount of design work you have to do? In this demo-heavy session, XAML guru Nick Randolph explores the tooling available in Blend and the patterns you’d use to produce stunning Universal Applications with a minimum amount of work.
Stale Hansen, the creator of Get-UnusedNumbers PowerShell script, walks through how phone number management is done throughout different Lync deployments. The session will start with some of the basics and will quickly move over to more advanced scripting and tools that can be utilized in user creation workflows and user management scenarios. Be sure to attend this session if you want tips on phone number management in your environment or customer deployments.