/xamarinsummit2019

Recap of Xamarin Summit 2019

MIT LicenseMIT

Xamarin Summit 2019

Recap of Xamarin Summit 2019

:octocat: Xamarin Summit GitHub

This is my very own interpretation of the summit. I may be missing some info I did not find relevant in my case, but it doesn't mean that it was not interesting. On the other hand, some sessions were so interesting, I was not able to select the info to write in this recap, the whole session is worth watching!

If you think that some major info is missing out, feel free to submit a PR! I'd be glad to accept it!

Recap by Maddy Leger here

All sessions with a ❤️ are my personnal recommandations to watch.


❤️ Future of Xamarin with James Montemagno ⭐ Love this guy!

Link to summit session on YouTube

  • iOS 13: Coming to Xamarin soon!
  • Android App Bundle for Xamarin Android App Bundle

Package all resources for your app while uploading the application to AppStore. When a user download the app, Google produces an optimized apk for this specific user.

  • Startup Tracing: Improve application startup time by 100% and reduce artefact size
  • AndroidX: Google refactoring of Android support libraries

❤️ Cross-Platform Everything with David Ortinau

Link to summit session on YouTube

  • Xamarin.Essentials: More platforms supported in the future, watchOS, tvOS, Tizen, ...

  • Xamarin.Forms Open Source Evolution Xamarin.Forms Pull Request Xamarin.Forms Community Pull Request

And more interesting things on Xamarin.Forms, how they works on meeting our needs and unifying experiences between platforms.

  • Quick introduction of the power of Shell. A dedicated session is planned on day 2 with James
  • CarouselView is coming soon (already available as preview)

❤️ Developer Productivity with Maddy Leger

Link to summit session on YouTube

  • Improve code editor in Visual Studio for Mac
  • XAML IntelliSense in Visual Studio for Mac
  • IntelliCode
  • Android XML fully supported
  • Building time improved
  • Hot Reload 🔥🔁
    • Change your XAML, save, look at your updated UI on your device!
    • Works with all frameworks (Prism, etc.), with big existing apps
    • Works both on Windows and Mac, out of the box, no setup needed!
    • Don't crash VS, or your computer, or the plane you're in, if you misspell something. Hot Reload

This is still in private preview though.

Speed Up Android Build Times & Shrink APK Sizes with Jonathan Peppers

Link to summit session on YouTube

This technical session explains how Android build works and all build options.

What's New For Xamarin Developers in Visual Studio with Maddy Leger

Link to summit session on YouTube

This session extends the first one of Maddy. No new information, but some examples and cool demos.

❤️ Page Object Pattern and UITest Best Practicies with Sweekriti Satpathy

Link to summit session on YouTube

  • State of UI Tests today UI Tests recap

  • What is Page Object Pattern PageObjectPattern Basically, each page of your app should be an object in tests.
    How we used to write tests:

[TestFixture]
public class Tests
{
  [SetUp]
  public void BeforeEachTest()
  {
    // Set up app
  }
  
  [Test]
  public void LogInTest()
  {
    app.Tap(x => x.Id("log-in-button"));
  }
}

How we should to this now:

[TestFixture]
public class Tests
{
  [SetUp]
  public void BeforeEachTest()
  {
    // Set up app
  }
  
  [Test]
  public void LogInTest()
  {
    new LogInPage().LogIn("user", "password");
  }
}

:octocat: Check out those examples on GitHub

  • In order to tweak your UI Tests, you can use REPL (read-eval-print-loop)

Sweekriti then made a clear and cool demo of how to write tests for an existing app. Totally worth watching.

❤️ Streamline & Simplify Events with Reactive Extensions with Shane Neuville

Link to summit session on YouTube

Shane worked a lot on ReactiveUI prior working for Microsoft.

ReactiveX

This session is really worth watching in order to catch what Reactive X is and how to use it. I will not write down everything here as it would mean writing down the whole session.

:octocat: Example source code can be found here on GitHub

Crafting Real-Time Mobile Apps with SignalR with James Montemagno

Link to summit session on YouTube

In this session, James introduce SignalR, then shows a demo using it for creating a chat.
Has I already used SignalR, this session was cool but I didn't learn anything new.

:octocat: Source Code on GitHub

Partly Cloudy – Tips & Tricks to Using Azure to Its Fullest in Mobile Apps with Matt Soucoup

Link to summit session on YouTube

This session shows how to use Azure for hidding secrets in the cloud instead of your app, how to secure your app and how to improve the performances.

:octocat: All demos code can be found here


Platform Uno with Jérome Laban

Link to summit session on YouTube

Jérome introduce his open source Platform.uno which use WebAssembly for building moble and desktop applications using C# and XAML.

Building Xamarin.Android from source with Jonathan Peppers

Link to summit session on YouTube

Create Mixed Reality Experiences with Azure Spatial Anchors and Xamarin with Sweekriti Satpathy

Link to summit session on YouTube

Sweekriti introduce Mixed Reality in Xamarin using Azure Spatial Anchors.

❤️ Let’s Make Crazy Beautiful UI With Xamarin.Forms with David Ortinau

Link to summit session on YouTube

David did an amazing session, I really recommand watching it!

Some tools he use:

Introduce some good practices for Fonts and theming.
The demo is a theming of an app.

Talks about parallax scrolling apps and good practices for transitions.

❤️ GraphQL with Brandon Minnick

Link to summit session on YouTube

GraphQL is a language for querying complex API by explicitly asking for what data we need without doing multiple REST requests. That's pretty cool!

graphqlexample

We can play with GitHub API using GraphQL here :
:octocat: https://developer.github.com/v4/explorer/

GitHub with example used in talk :
:octocat: https://github.com/brminnick/SimpleXamarinGraphQL

AppCenter with Patrick Nikoletich

Link to summit session on YouTube

Mainly talks about what AppCenter is, and the future of the product.

  • AppCenter Auth which is a system for handling Azure AD B2C authentication. AppCenterauth

  • AppCenter Data: Connect your app with Azure CosmoDB

  • AppCenter Push: Preview feature, send push notification to your app

❤️ Xamarin.Forms Shell with Shane Neuville

Link to summint session on YouTube

Why does Xamarin.Forms Shell exists. Shell1

Source code of demo :
:octocat: https://github.com/PureWeen/ReactShell/tree/master/Source

The demo shows how to use and customize Shell navigation. Really interesting!


Things I noted from the summit

  • Everybody at Microsoft use a PC AND a Mac for working with Xamarin
  • Vysor has been used for streaming smartphone screen to computer