Joining Xpirit has opened up a lot of cool possibilities for me, like being able to visit conferences as Build or NDC. So let’s talk about my first visit to NDC Oslo, 13-15 june 2018.
Fun stuff first!
I went to Oslo a few days early to enjoy the city. There’s really lots of things to see and do:
- Just walk around outside of the city center. There are parks, art, nice bars which reminded me of the ruin bars in Budapest and just so much to see.
- Visit Vigeland park for a nice walk. Won’t take that long so its a nice filler. Get a burger at Illegal Burgers afterward!
- Get a few beers at the Vaterland bar and enjoy the awesome music (that is, if you like metal ;))
- Take a trip to Bygdøy, visit a museum and then lay down at the beach.
- Meet up with the locals and have them show you the hidden gems of the city.
- Visit NDC if you have the chance. And make sure you attend the Pubconf as well!
Thoughts after NDC
What a great conference. Everything is well organised, lot’s of food, breaks between every session, high quality talks, nice location - make sure you check into the Radisson Blu next door. Learned a lot as well: Can’t trust anything on the internet, not the URL you’re seeing and not the certificate that’s being used.. Also we have so much to learn about the way we’re teaching programming (apparently reading code out aloud lowers the amount of syntax errors kids make - check out Felienne’s talk about this) and ofcourse all the coding stuff :)
Was impressed by AWS Lambda and the NuGet package they created to bridge the gap between their API Gateway and ASP.NET Core, which enables you to easily deploy your webapp to serverless environment. Ofcourse this has some drawbacks, as ASP.NET isn’t as optimized as a native serverless solution and you end up paying for this. However, this can be negated a bit by applying some of the practices I learned in another session.
Most people, including me, just end up adding MVC support in a webapp with a statement as
services.AddMvc();. There is an
.AddMvcCore() method as well which gets called within the AddMvc method. The AddMvcCore method has nothing to do with the .NET Core framework itself but just registers the basic MVC stuff so you can choose if and what other things you want support for. You can even take this further and just take the routing part of ASP.NET. Watch Filip’s session about adapting the ASP.NET framework on how to do this and some information about the amount of performance gain. Steve Gordon also has a nice blog about this.
Had a talk about this AWS-ASP.NET bridge with Jeff Hollan and asked if a similar feature was coming to Azure Functions. At the moment this technically isn’t possible, but at the end of the year it would. However, he wasn’t sure if it’s a feature they’d adopt because of it’s drawbacks. They are keeping an eye on it though, because it does have it’s usecases, especially when bringing down the footprint of the ASP.NET framework by just using what you need.
Check out these videos
Not going into every session listed below, but a few that stood out in my opinion. You should really watch the video’s. Added links for the ones I could find already, mostly from earlier conferences. I’ll link the rest when they’re available:
- I’m pwned. You’re pwned. We’re all pwnd.
- Containers and Serverless with AWS
- The enterprise DevOps challenge
- Adapting ASP.NET Core MVC to your needs
- Finding your service boundaries - a practical guide
- How to teach programming and other things? -> Felienne actually switched to a new subject at the last moment. I’ll link it when it’s available.
- Refactoring to functional style
- Do’s and don’ts for serverless and Azure Functions
Some scary stuff
Met some great people too - just talk to them, apparently they’re just people too! ;)
- Adam Cogan (Thanks for letting me help you prepare your talk and for the feedback I got from you)
- Henk Boelman
- Ian Cooper
- Jeff Hollan
- Marco Kuiper
- Richard Campbell
- Troy Hunt
A list of all the sessions I attended, just to give you a sense of what you might have missed ;) For now you can still see the complete agenda at the NDC website. Just be sure to be there next year!
- Keynote: A penny for every object (Mads Torgersen).
- I’m pwned. You’re pwned. We’re all pwnd. (Troy Hunt)
- Implementing the Clean Architecture in .NET Core (Ian Cooper)
- Containers and Serverless with AWS (Norm Johanson)
- Give it a REST - Tips for designing and consuming public API’s (Liam Westley)
- The state of C# - What have I missed? (Filip Ekberg)
- An opinionated approach to ASP.NET Core (Scott Allen)
- From SQL to Azure Cosmos DB (Jimmy Bogard)
- The enterprise DevOps challenge (Roy Osherove)
- Domain-Driven Design: Hidden lessons from the big blue book (Nick Tune)
- Planned on going to a session here but really needed a break ;)
- Adapting ASP.NET Core MVC to your needs (Filip W)
- Finding your service boundaries - a practical guide (Adam Ralph)
- How to teach programming and other things? (Felienne)
- Refactoring to functional style (Venkat Subramaniam)
- The Hello World Show live (multiple speakers)
- The history of .NET (Richard Campbell)
- Kubernetes for .NET developers (Shahid Iqbal)
- Stop reinventing the wheel with Istio (Mete Atamel)
- Do’s and dont’s for serverless and Azure Functions (Jeff Hollan)