I had the opportunity to speak at Tech O Rama in Mechelen, Belgium last week. It was my first trip to continental Europe. Belgium is a wonderful country, and I’m very impressed with the conference that Gill, Pieter, Kevin, and the other volunteers put together.
My talks were on C# 7, and using the Roslyn APIs. Those talks were both updates form my NDC talks. The repositories contain the updated presentations and code. I also substituted for Martin Woodward, giving his talk on the .NET Foundation. And appearing in an upcoming .NET Rocks show discussing Open Source.
The C# 7 story has moved forward since I spoke at NDC London. There’s now preview bits. (Preview 2 came out this week). Using that build, you can try out three of the upcoming C# 7 features: Nested Local Functions, Pattern Matching, and Ref Returns. The release notes explain how to turn on each of these language features. Some of the other features initially discussed may not be in the next release (but may make a later release). Note: pay careful attention to ‘may’ as the verb. Watch the team’s announcements on GitHub for the official announcements.
Preview 2 also contains updates to the Analyzer SDK. These updates make it simpler to create analyzers that focus only on code semantics (as opposed to syntax models). I haven’t updated my NDC and Tech O Rama samples for that model yet, but I will.
I would recommend any of my readers that can should try and attend Tech O Rama. It’s a wonderful conference in a great location. The recent events made travel a bit of a challenge, but people in Belgium responded and made it as safe and convenient as possible.
I received the following question recently:
I was looking for local development conferences and I saw you listed as a speaker at self.conference. I found this too late (yesterday) but I was wondering if there is a board or group I could follow to be aware of similar conferences. Any help that you can give would be appreciated.
You also mentioned conferences in the area. There are a number of development conferences that take place in our area. Here is an incomplete list:
Dear reader, if I’ve missed any of the area conferences, please add information in the comments, and I’ll update the list.
I spoke last night at the new Chicago .NET Users group. It’s a great, and growing group. I had a great time. (confession: I love Chicago, so I always look for reasons to go there.) Aaron has a great group started. They are a very knowledgeable bunch.
I spoke on async coding practices in C#, specifically the Task Asynchronous Programming (TAP) model. That can be a complicated topic, and everyone followed the discussion quite well.
Here are several of the resources I mentioned during the talk:
The Github repository for my samples. Each branch represents on step of the demo. The tip of the master branch is the finished sample.
Pearson recently published my LiveLesson series on Async programming fundamentals. That goes into more depth on the async practices than I had time to cover last night.
Jon Skeet and I did a lengthy session at CodeMash 2012 where we discussed both how to use async, and what the compiler does to your code when you create async methods. InfoQ has those sessions online.
I had a few great questions about using async methods at the server. Due to time, I gave brief answers. For more depth, I recommended Stephen Cleary’s talk from CodeMash 2014.
Thanks again for a great group, and the folks at DevMynd for hosting. I had a great time, and I’m happy to come back again.
I was honored to be invited to the speak at the Portland, ME user group last week. It was a great group of developers, and we had a lively discussion about the new async and await features in C# 5. We went through some of the current thinking on how to leverage async in your applications.
And, I explained how async and await relate to Dr. Who.
Slides can be downloaded here.
Demos can be downloaded here.
All of these projects are Open Source (using the Creative Commons license for content, and the MIT license for code). If you would like to contribute, visit our GitHub Repository. Or, if you have questions, comments, or ideas for improvement, please create an issue for us.