New Wintellect Blog Posts

For this Thanksgiving, I thought sharing a lot of my recent Wintellect blog posts. If I may say, there's a lot of good stuff for you to go through while digesting a Thanksgiving meal. Hope you all enjoy!

Spectron

I've been doing a bit of Spectron lately for a client and have been posting some insights I've gained from it.

Xamarin

I've been into Xamarin for quite a while now and have quite a few links that go through different aspects of it, mainly with F#. This includes my very first screencast and using FAKE with your Xamarin projects.

Xamarin Evolve 2016 Recap

I'm currently writing this at the Orlando airport waiting for my flight to head home back to South Carolina. Normally I couldn't wait to head back home after an event to relax and to just, well, be home. However, I'm a bit sad that I have to leave. I met some awesome folks, both Xamarin employees and other attendees. I have an absolute blast helping to give training for Xamarin University. And I got to experience Wizarding World and Jurassic Park at Universal.

I'll split this recap up into two sections, training and the actual conference, since they were two different event. Yet I couldn't imagine a better experience without doing both.

Training

At each Xamarin Evolve they include a two day bootcamp style training. It's basically a set of Xamarin University classes in two full days. It can be pretty intense, but you really get a lot out of it.

A colleague and I were asked to become adjunct trainers to help out with some of this training. When I was asked to join I first thought, "Crap, this is going to be really scary being up in front of folks for two full days!". But then I remembered that the best way to grow is to get out of your comfort zone. So I accepted.

During the time up until the actual training, I learned a lot about how much preparing and practicing really does matter even though it's the last thing I want to do for it. It was also around that time that I heard a Hidden Brain episode on grit. The lesson learned there is that using your grit to do things is the least fun experience, but it helps reap in the rewards once it's all done that much more. I then took preparing more seriously. I even took a hiatus from reading books! That's something that hardly ever happens.

The first day of training comes and I don't feel as nervous as I did during the practice sessions. My colleague did the introductions and welcome session. Then I was up for my first session to introduce Xamarin Forms. I then ended the day finishing half of the last session on local data. The next day I resumed the local data talk and went straight into web services, while my colleague finished out the rest of the day.

My absolute favorite part of the training was interacting with the students one-on-one and helping them when they had questions or issues during the labs. I definitely want to do this again and it's great inspiration to give more talks. I'm already thinking of what I can present on next and start preparing the materials for that.

Conference

The conference itself was nothing short of amazing! Tons of great sessions that are already posted online (thank you, Microsoft!). I learned a great deal just by attending the ones that I did and will definitely take that home with me for future projects and learning.

Here are a few sessions I attended:

  • If You Build It: Making Apps for Humans - A wonderful presentation that showcases several interviews the presenter had with, not only some other developers, but with people you would encounter on the street with other careers besides tech. Honestly, this made me want to attempt something similar in my home town.
  • Becoming a XAML Master - I've done XAML in Xamarin Forms for around a year and half now and have come to really enjoy using it for building up my UI. This session covers a few extra tricks I can incorporate to utilize the power of XAML instead of having to write out extra code.
  • Enhancing Your Mobile Application with Machine Learning - I've been interested in data science and machine learning for a while now and this was the perfect session to get me started on the path of learning more of it. Great demos in this one!
  • Mobile Apps in F# - Of course I have to go to an F# session! This one really drives examples of why you should try F# and some demos of using it in Xamarin applications. The async and MailboxProcessor stuff here is really digestible!

Another one of the highlights of the conference was definitely going to Universal Wednesday night for Wizarding World and Jurassic Park. Rode on a couple of rides, finally got to try some butter beer, and just hung out with awesome folks.

Something that surprised me was the amount of F# fans that were also at the conference. I met several of them there and had tons of great discussions on the language itself and the community that surrounds it.

An interesting thing they do at Evolve is they have a section called the Darwin Lounge. This includes mini-hacks that you can do and win prizes and play with some of the awesome things they have also created


All this really sums up to is to just go to Xamarin Evolve every chance you get! It was and still is the best conference experience I've ever had!

And obligatory monkey photo...

Xamarin Evolve - Recap

I wanted to get a day two recap out Thursday night like I did the day before with day one but, and I'll be honest with you, day two was just so much fun and action packed that as soon as I got back to the room I went straight to bed to try to get enough rest for the final day. So in this post, I'll go over day two and the final day of the conference.

Day Two

Day two of the conference was all about the sessions. Here are a few of the ones I attended.

Sketches

This was one of the secret sessions they had listed on the schedule and I'm glad I went to it to find out more. Mostly this was just an expansion of what they shown in the keynote but with a bit more of an elaborate demo. The cool thing, for me, is that Sketches will support F# as well soon. That'll be good for just having a sandbox to learn more about the language.

Xamarin Studio

One of the more interesting sessions was this one on how to master Xamarin Studio itself. What impressed me most about Xamarin Studio was that there is a setting in the preferences (Text Editor -> Source Analysis) that has a very similar analysis that ReSharper has for Visual Studio...and before Visual Studio even incorporated it!

Cross-platform Apps in F

I admit, one of the main reasons I wanted to come to Xamarin Evolve was to go to these F# sessions and they certainly didn't disappoint. This was the first one where Rachel Reese gave her talk on running iOS and Android apps using F# with a bit of a nice F# introduction mainly concerning with why we would want to use it.

Closing

The final day was just a few more sessions in the morning then the closing announcements.

Awesome Apps in F

This fun talk was mainly with why use F# (or basically any functional language) and showed how much more concise and readable refactoring from an object oriented way to a functional way can be.


Conclusion

The best way to describe this experience was that it was nothing short of amazing! Big thanks to Xamarin and all of their employees for making this happen and being awesome! I really look forward to next year and I've gotten the thought in my head to even try to present at the next one.

Xamarin Evolve - Day 1 Summary

Considering this is my first time going to an actual conference, especially one at this size, I believe I could be easily impressed by anything done at Xamarin Evolve. And indeed, I was impressed! From all the the quality of the presentations to just how well this event is being run, this is definitely an event I'll remember and will want to come back to next year.

I admit, I haven't done much with Xamarin and their tools other than getting excited over this conference and some small playing around with Xamarin Studio. After this first day, though, I'm excited to play around with it a lot more and utilize it for mobile apps.

Keynote

Things started off with the co-founders on stage giving a keynote that contained quite a few surprises.

Profiler

First thing announced was a profiler for Android and iOS apps to help developers dig deeper into performance issues. This is apparently helpful since there isn't really an alternate solution for profiling mobile apps. Especially one as nice as they have made.

Mobile UI Tests

This one really got me excited the more I saw demos of it in use. The Xamarin team has created a library to create unit tests that can launch the app and perform actions within the app. If certain items on the screen can't be found or an action can't be performed, it will fail the test.

Now this by itself can be useful for an integration test suite, but what's really exciting is this is integrated into the Xamarin Test Cloud so the tests can be run on all devices that it needs to be run on!

Android Player

I'm sure that if you ask any Android developer what the biggest pain point is in developing an Android app is that the emulator take a really long time to start up when debugging/running an application. Really...you can probably go on a 30 minute walk and it may be finished loading the OS and start your app.

What Xamarin has done was to create a way better experience for this. During the demos the Android Player took way over half the time to launch, start the OS, and launch the app than with the emulator. This by itself definitely got most people excited.

Sketches

Another interesting thing they announced is Sketches which is a live coding environment that executes the code as you type. The interesting thing with this, though, is that they've integrated an analysis pane. Xamarin has allowed graphing within Sketches. If prototyping a small UI, you can even use Android or iOS components right within Sketches.

Xamarin Insights

Xamarin also announced a way to monitor apps when they have been published and out for the public to use.

Xamarin Insights looks like it has a lot to offer than the other services that do this. Just by adding only a few lines of code in your app you can get real time notifications of errors that includes stack traces and even show how users will interact with your app.

This and the UI tests together will make a world of a difference in the quality of your mobile apps.

Day One Conclusion

Just after day one I'm glad I decided to come to this conference. I've already learned a ton and got back some excitement from coding that I used to have. I can't wait for what's in store for day two.