Mobile First Cloud First

A blog by Geert van der Cruijsen on Apps, Cloud & ALM

Tag: Xamarin Evolve

Xamarin Evolve Day 1 Recap

At the moment of writing i’m still at Xamarin Evolve. Yesterday was the first day of the conference where all the new goodies were announced. Time for a quick recap of what was announced and the sessions i followed.

The day started with a so called “mini-hack” at 6.15 in the morning. There are several mini-hacks at evolve most of them require you to do some basic exercise with a specific technology or tool such as Hockeyapp, MS Cognitive services, Bitwise etc. This one was a bit different. Craig Dunn organised a 5k run at 6.15 in the morning with a bunch of Xamarinians. I joined together with my Colleague Roy and other Dutchguy Marco Kuiper. It was a great run and really gave a boost of energy to start the day. After that it was time to get breakfast and head to the keynote.

Keynote: Nat took the stage and told everyone about some things that happened since the Microsoft takeover. Interest in Xamarin increased by 3x since the announcement of the Microsoft merge. Great times to be a Xamarin developer! After Nat, Miguel took the stage to show us the new stuff.

Miguel showed us the dark theme for Xamarin studio for us young hackers. (felt me feel young again) I  really like using the dark theme in Visual studio and now we also can in Xamarin Studio. Xamarin also included a lot of Roslyn features to improve code quality and to help you build beautiful code.

Xamarin also announced that they are open sourcing all the SDK’s and they will be located at open.xamarin.com. In the first few hours there were already pull requests which i think is pretty cool.

Miguel invited Nina Vyedin on stage to talk about the Xamarin forms previewer. Nina explained that XAML officially stands for Xamarin And Microsoft Love and after that she showed us how the Xamarin forms previewer works. I think this was THE feature where a lot of people were waiting for.

Miguel took over again after Nina and showed us his new baby the Xamarin Workbooks. i have to say i really love the workbooks and have played with it after they were released at BUILD. Workbooks are a great tool to teach people new features in Xamarin or C# in general. Workbooks are basically MarkDown files that contain text and also pieces of code. these pieces of code can be ran onto a simulator in real time. There are several sample workbooks which can be found here: https://github.com/xamarin/Workbooks

Xamarin Evolve 2016 pre-conference write up

Xamarin Evolve 2016 is about halfway now for the 600 people who attended the 2 days of training so time for me to do a quick write up on the last 2 days.

When Nat Friedman did the opening keynote he said: “This will be the best conference we ever did.. and with we i mean Microsoft” until now Xamarin/Microsoft is delivering.

 

 

Before Xamarin Evolve started we arrived in Orlando FL on Saturday. After having a great steak at Mortens on Saturday night we went to visit Kennedy Space Center on sunday before the training and conference kicked off. It was a great day with nice weather and really awesome things to see.

13103266_1152228171488906_8531731149448128603_n13082499_1152228194822237_9223364263606609861_n

13096075_1152228331488890_8129698238633410606_n

on the way back we had an Uber driver who was retired but was actually an engineer on the space shuttles for 30 years. He had some great stories from all the launches he had witnessed and cool stuff he worked on.

So back to Xamarin Evolve:

I joined the 2 day intermediate training and thought it was pretty good. I knew most of the stuff already since i’ve been working with Xamarin for several years now but it was good to do the training since my colleague Roy Cornelissen and i are in the process of becoming certified Xamarin trainers so we can deliver in person Xamarin training in the Netherlands or Europe. It was a good learning experience on how training like this works and we had really good trainers with Andrew Ditmer and Rob Ringham

Here are some of the topics we followed during the intermediate track:

Async / Await

We started off with some deep dive on async and await. I believe this is a crucial part of knowledge to “build better apps” which was the Andrew and Rob’s slogan for the training. In my role as technical architect and consultant i’ve lead several teams of junior developers and using async and await is something a lot of people are doing wrong. The main reason why people use it incorrectly is because it seems so easy while before async/await was announced doing multi threading was quite a burden.  It’s really important for a developer to know what happens behind this syntactic sugar of async await and during this training Andrew and Rob told the class all about it.

Cross Platform Design

One of my favorite parts of doing software development is design patterns. During the second part of the training we looked at patterns on how to share code between several platforms and we mainly looked at 3 patterns: The Factory pattern, the service locator pattern and my favourite Dependency injection. although this seems basic for me it wasn’t that much for most people in the class. Setting up your software architecture to use dependency injection is really important to make testable maintainable code. Lot’s of people don’t like this kind of work but shaving yaks as it is called is one of my favourite things

shavethatyak

Testing

After we had set up a good testable software architecture it was time to talk testing. we started of with basic unit testing (which in my opinion should be part of any basic programming track) but i was baffled by the amount of people not doing any unit tests in our class.  We talked about AAA (Arrange, Act, Assert) and quickly moved to Xamarin UI tests and test cloud.

The testing subject concluded the first day and we continued the 2nd day of training on tuesday:

Securing local data

Security, a topic not that many people had to many knowledge about. We talked about the Xamarin.Auth library which can really help you with securing and encrypting local data. Of course this library is open source and located on github: https://github.com/xamarin/Xamarin.Auth

my Xpirit colleague Roy actually found a bug in Xamarin.Auth about a year ago and the cool thing of Evolve is that all the Xamarin guys are actually here on Evolve as well. so our trainers send a message to the guy who maintained Xamarin.Auth and he came to our classroom to talk about the bug and the pull request Roy made to get it fixed.

Oauth

After securing local data we continued the training with using Oauth which is a topic that a lot of apps will use. not that many people had to much knowledge about it because this is set up once most of the time and people don’t really understand what is going on. The Xamarin.Auth library can help you with OAuth as well and although we didn’t cover it you could also use the Microsoft ADAL library for doing Oauth.

Garbage collection and Memory management

The last topic was all about garbage collection (Rob’s favourite topic). When you are building apps and are not focussing on memory management or have no clue on how to do it  this will eventually bite you in the back so it was essential for the training. We talked about all the pitfalls and tips and tricks for doing memory management in both iOS and Android.

This rounded up the training. most of these topics can be found as tracks in Xamarin University so if you have an account there you can do these courses as well.

After the training the Darwin lounge was opened and Xamarin showed again how to throw a great party. On monday evening we already had a great party at La layettes and this time there was great food and drinks  throughout the darwin lounge and sponsor stands.

There was some local craft beer tasting, Artisan chocolate tasting. build your own tacos, paella and other great food. I had the chance to talk to a lot of Xamarin people, some Dutch people i met and my former Avanade Colleagues who i’ve bumped into.

ChBP_l1W4AE2wk-.jpg-large

After having some great talks and beers it was time to go to bed because this morning at 6.15 we had to go for the Xamarin Evolve 5k minihack organised by Craig Dunn.

there was quite a lot of people there at 6.15 and it was a great run. Thanks Craig!

 

In about 45 minutes the keynote is starting so now it’s time for me to grab some breakfast and head to the keynote. For news about the keynote watch the live stream of follow my twitter updates.