Category Archives

Travels in October and November

Azure, Microsoft, Technical stuff, Visual Studio, Work, Xamarin
No Comments

These coming few weeks will be quite busy with conferences and other meetings. Here is where you might have the occasion to see me:

  • I am currently in Boston, where I will support Scott Guthrie’s Red Shirt Tour on October 19. Ultimately, Scott is my boss (‘s boss’s boss’s boss) as well as someone I have admire ever since I met him in person 10 years ago. The event is all about Azure with Scott showing demos and code across all of Azure, Visual Studio, Xamarin and more.
  • After Boston, I will be in New York City on October 20th. This is another stop of the Azure Red Shirt Tour.
The Red Shirt Dev Tour NYC edition will be livestreamed!! Join us at http://aka.ms/rstlive

  • Before going back home, I will have the privilege and pleasure to fly down to Lima, Peru on October 25th and 26th. There, I will participate to the MVP Connection event, organized by Microsoft for its Most Valuable Professionals. Unfortunately, due to travel constraints, I won’t have time to participate in any public event there, but I will most certainly do my best to come back at another occasion and speak in public.

At the MVP Connection event, I will have an hour to speak about a few exciting topics including Azure Functions and Xamarin, the Azure Mobile Center and the Xamarin Live Player. Of course I will also be available for questions and discussions around Azure, Xamarin, Windows, MVVM Light and more.

After a few days at home, I will continue with travel:

  • I will fly to Hyderabad, India and participate to another MVP Connection event on November 3rd and 4th where I will be honored to speak about the same topics as in Lima. There too, I will be available for questions and discussions, and meeting as many MVPs as I can :) Unfortunately I don’t have other stops in India in November, but I am already thinking of coming back next year!

Then I still have two conferences in November:

  • I am super happy that I can travel to Malmö, Sweden this year again and speak at the Oredev conference on November 10. I spoke there once in 2011 [TODO CHECK] and never could again because the conference was always conflicting with the Microsoft MVP summit. At Oredev, I will be speaking about HoloLens and show developers how to get started with Mixed Reality programming. This should work well with my dear friend Rene Schulte’s talk at the same conference, which is scheduled just after mine and will dig quite a lot deeper into the topic.

  • To conclude the travel in November, I will spend a couple of days in Sofia, Bulgaria on November 16th and 17th. There, I will have the honor of keynoting the ISTA conference. From their website: “Innovations in Software Technologies and Automation (ISTA) is an annual, international conference, devoted to the latest trends in software development and test automation. We are committed to support the development of quality standards in the field with focus on new technologies and best practices.” Sounds like a very exciting conference in a dynamic city of software. I had the pleasure to speak in Sofia before and was always impressed by the quality of the attendees!

I hope that I have a chance to meet some of you, dear readers, at one or the other event. Make sure to follow me on Twitter to get the details of my travels, and by all means come say hi!

Happy coding
Laurent

GalaSoft Laurent Bugnion
Laurent Bugnion (GalaSoft)
Share on Facebook

Writing, writing, writing…

.NET, Azure, Azure Functions, Cloud Developer Advocate, Microsoft, Technical stuff, Work, Xamarin
No Comments

One thing I love in my new job is that I can just sit down anywhere on Earth, grab my Surface Pro and produce content (articles, samples, etc) or learn new things just as if I was home. I just came back from Singapore and had a great time there talking at the Xamarin “MonkeyFest” conference. But it was also a busy time producing content and I am so happy that things are starting to fall into place.

Here are a few highlights:

  • I just published a few new articles (see below). As I am discovering new features of Azure, I want to share with you all. I decided to write in markdown (just like docs.microsoft.com) and publish on GitHub. Why GitHub? Well first of all this is of course the destination for developers. The markdown renderer is pretty good, it is easy and fast to create and publish good quality content. At some point this documentation might migrate to another location, but for now it makes sense to have it on Github. Also, and maybe most importantly, I like that the source code and the corresponding articles are all grouped together, for example my sample-azure-coinvalue application.
  • As I was writing, I noticed that a few topics are going to be recurrent in all my samples. So I went ahead and created the following repo: sample-azure-general. In this repo, I will document recurring processes in Azure, such as creating a trial account, Creating and testing Azure Functions in Visual Studio, Publishing functions to Azure, etc etc etc.
  • In parallel I am also working on new samples and should be able to publish more soon. So stay tuned to this blog or to my Twitter account. Yes for now the list of samples is very lean but now that everything is starting to be coherent, I want to add new content regularly!

Please help me help you!

I’d really like you all to be able to tell me what is the most important for you. And so in this spirit I want to start with two features:

Available articles:

At the moment you can find the following content in sample-azure-general:

Hopefully this is helpful to all of you, and I hope that we can get the discussion running. Microsoft is literally paying me to help you understand Azure, cross-platform, Windows, .NET and more and I love that job. So please please please don’t be shy and let me know what you need. We want to help!

Happy coding
Laurent

GalaSoft Laurent Bugnion
Laurent Bugnion (GalaSoft)
Share on Facebook

Installing #mvvmlight for .NET Standard 1.0

.NET, MVVM, Technical stuff, Universal Windows Platform UWP, WPF, Xamarin
2 Comments

I just released the new MVVM Light preview version for .NET Standard 1.0. I also published an article in the MVVM Light documentation describing the installation of the .NET Standard 1.0 version of MVVM Light as well as the changes needed to existing applications.

Hopefully you find this helpful.

This is a pre-release version and I am eager to hear your feedback. If you have any issue during the uninstallation process, installation process or while using MVVM Light for .NET Standard 1.0, send me an email at Laurent@galasoft.ch for assistance.

Happy coding!
Laurent

GalaSoft Laurent Bugnion
Laurent Bugnion (GalaSoft)

Share on Facebook

My talks in September

.NET, Azure, Azure Functions, Microsoft, MVVM, Work, Xamarin
No Comments

I don’t know about you but I had an amazing summer. I had the amazing luck of spending time in beautiful places in the Philippines, Iceland and then 2 great weeks in Seattle and Redmond. Having started to work with Microsoft on August 1st, it was great to be on campus in Redmond as a blue badge.

Apart from sitting down with my new team, meeting my new manager and old friends on campus, I also delivered two sessions at the Visual Studio Live conference. The event took place at the Microsoft conference center (Building 33) and was as packed as usual with great speakers and very competent attendees. This year was special for me because my two talks took place in the Cascade room, which is a really nice auditorium with all the comfort. I also had a lovely time interacting with attendees at the traditional Birds of a Feather lunch, where a table is assigned to a speaker and attendees can go around the room, sit down, ask questions or just chat.

You can find the slides, source code and all the information about my two talks on my website:

Amsterdam: MVVM Cross Hackfest

My next engagement is the closing event of the MVVM Cross Hackfest taking place in Amsterdam on September 2nd. The .NET Open Source foundation is sponsoring this event with others, where the aim is to encourage new contributors to help open source projects. For MVVM Cross, the event is the occasion to port this popular framework to .NET Standard. While the project lasts 2 weeks, September 2 will be the last day with a celebration, some lightning talks and a party.

At this occasion, I will speak about Azure Functions (which are really awesome). My Microsoft colleague Mike James will also be there and speak about other Azure services. The rest of the lightning talks will be held by MVVM Cross contributors. You can see the program here. My session’s abstract is the following:

Azure Functions and Xamarin

One of the most exciting recent additions to Microsoft Azure is called Functions and allows the developer to quickly build and deploy code to the cloud without complicated setup. Also dubbed “serverless computing”, Azure Functions can be triggered by timers, HTTP calls or database operations, and can communicate with other Azure services or mobile and desktop applications such as those made with Xamarin. In this lightning talk, Laurent Bugnion, Cloud Developer Advocate for Microsoft, will give you an introduction to Azure Functions and get you started with this exciting aspect of modern computing.

Singapore: MonkeyFest

A little later in the month, I will fly to Singapore to attend the MonkeyFest conference which is a Xamarin event organized for the first time in the beautiful south east Asian city. There is a nice team of speakers speaking on a variety of topics. The entrance tickets can be purchased for 19 Singapore dollars, which is very cheap for such a quality show! We hope to see a lot of attendees at Microsoft Singapore!

Building truly Universal applications with Windows, Xamarin, MVVM and Azure

With Windows 10 supporting an unprecedented number of platforms and form factors (from IOT to phones to tablets to laptops and desktops to XBOX and SurfaceHub, and even the new HoloGraphic computer HoloLens), the name “Windows 10 Universal application” is fairly accurate. But to be honest, shouldn’t a truly Universal application run on Windows 7, iOS and Android devices too? Thankfully, this is possible thanks to a clever architecture pattern named Model-View-ViewModel, the .NET portable class libraries and the Xamarin frameworks. With these tools, we can structure an application so that most of the code is shared across all the platforms, and then build truly native UI that adapts without any compromises to the device it runs on. In this session, we will understand exactly how such universal applications are built. Laurent Bugnion, a XAML/C# expert, Microsoft and Xamarin MVP who started making universal applications before it was even a thing, will show you practical knowledge with a lot of demos. Come listen from the creator of the popular MVVM Light Toolkit how this powerful but simple library can be leveraged to help you target more users than you ever dreamed of!

Come say hi!

I hope that I will have the occasion to see a lot of you out there. I have more talks coming up in November – but that is for another post. Please come say hi!

Happy coding
Laurent

GalaSoft Laurent Bugnion
Laurent Bugnion (GalaSoft)

Share on Facebook

Joining Microsoft

IdentityMine, Microsoft, MVP, MVVM, Personal, Universal Windows Platform UWP, Valorem, Work, Xamarin, XAML
16 Comments

Well here is a post I didn’t quite expect to write… but the best things in life are unexpected. I am thrilled and proud to announce that as of August 1st 2017, I joined the Cloud and Enterprise group (aka Azure) at Microsoft.

My role will be a Senior Cloud Developer Advocate and I will explain in this post what it is I will do! I guess an FAQ format is most appropriate here, so here goes:

Are you moving to the USA?

No, I am staying put in Zurich Switzerland, my home for the past 23 years. While I don’t exclude living in the US at some point in the future, now is not that time and I will stay close to the friends and family I have in Switzerland. The role is global, and I will be travelling about the same amount than I am now, including coming to Redmond about 3-4 times a year and going to events worldwide.

It’s really interesting to see all the new people joining the team and I can’t wait to hear more about who else will get on board. Because it is a global role, we will have local offices around the world (in exciting places such as London, Shanghai, Bangalore etc). I really hope I will have a chance to be present at events in places where I couldn’t go yet, especially in Asia and South America. While I am super happy about all the talks I gave in Europe and the USA, I feel that it’s time to go “advocate” in more places now. Can’t wait to create that content and teach.

What will you do?

This is the most interesting part! This group is helping to redefine how we engage with developers on a big scale and be an empathetic advocate to the product engineers building the tools, services, APIs and other tech you use on a daily basis!

If you follow Twitter, you might have seen quite a few very talented people joining the Developer Advocate group. These people have very diverse skills, from web to open source to Linux to Docker and more. Even though I will be “advocating” Azure, my main expertise is going to be with Xamarin development and cloud-connected mobile app experiences, and of course MVVM. XAML has been a primary interest for more than 10 years now, and Xamarin is a technology and a team that I worked with for the past 4 years now. I am really enthusiast about working with these technologies even more intensively now, and most importantly to teach people worldwide how to use them.

Who is employing you? Who is your boss?

Because I am living in Switzerland, technically I will be an employee of Microsoft Switzerland. But I am reporting to Tim Heuer (a great friend!) who is based in Redmond. Our team is a part of the engineering group in Azure and reports up through Scott Guthrie. It’s kind of a hybrid situation, and I expect to be regularly in Wallisellen in the Microsoft Switzerland offices, as well as in Redmond for team meetings a few times a year.

What makes you most excited about this job?

Difficult to answer. When I received the call three months ago, and heard about the amazing job description, I thought it was just great for me. In a later call, I heard that Tim Heuer would be my boss and that was an amazing cherry on a fantastic cake. I have to admit that the thought of getting into Microsoft at this time, under Satya Nadella and Scott Guthrie, is making me very happy. It is a great time for Microsoft and especially Azure. I started getting more and more interested in Azure after I joined the Microsoft Regional Directors group. This group of experts is composed of very experienced people who have strategic roles in various firms, big and small. A large portion of the discussions have been focused on Azure, which led me to understand how important this technology is. There are just so many applications and the pace of innovation is quite breathtaking. I have a huge respect for everyone I will be working with, and especially of course for Scott Guthrie, who I have met many times over the past 10 years. He is as nice as he seems but most importantly, he is really, really clever and drives innovation amongst his people. I am delighted to be a part of this new adventure.

What do you regret the most?

I will certainly miss working for Valorem and especially all my friends. I met some of you guys 10 years ago, and we have been working together as a team for more than 8 years. I will be forever grateful to the IdentityMine team who gave me a chance in 2008 and decided to create a whole branch in Switzerland just for me. I think in retrospect it was a win-win, just look at all the amazing projects we realized!

But maybe most painful of all is the fact that I will have to resign from the MVP awards (both Microsoft and Xamarin) and the Regional Director program. Of course the joke is that joining Microsoft is the best reason for losing these awards, but I will really miss the amazing community of peers, some them who grew to become more than dear friends, a family.

Of course the good news is that I will continue to see many of you at conferences and other events around the globe. I will also continue to participate to some of the distribution lists and so we will be able to keep in touch. And as always, if you come to Zurich, let me know and we’ll have a fondue! (or something…).

Will something change for MVVM Light?

Short answer: No.

Slightly longer answer: Microsoft is very open regarding open source. I retain the full ownership of the project and I expect to be working on it about the same amount of time than I do now (of course on my free time). In the next few weeks you will see a move to Github as well as a version for .NET Standard so keep watching this space for updates.

What’s next?

Well while today is officially my first day at Microsoft, it is also Switzerland’s national day (Happy 726th birthday Switzerland!) and so my first day will be tomorrow. I have the new employee orientation (NEO yay) at the Swiss HQ in Wallisellen near Zurich. I expect that I will get my blue badge as well as a ton of information. At some point I should also get a new laptop (I was given a choice between a PC and a Mac and selected a Surface Pro 4 because I still love the Surface form factor, especially when I travel). Then I will spend a few days in Redmond next week, and connect with some of the team. Really impatient to get started!

I am sure I will have a lot more to say about all this in the next few days, so stay tuned!

Happy coding
Laurent

GalaSoft Laurent Bugnion
Laurent Bugnion (GalaSoft)
Share on Facebook
 

Solving the #Xamarin error “Unable to copy appname.dll…”

.NET, Technical stuff, Visual Studio, Work, Xamarin
No Comments

If you recently updated Xamarin to the latest stable version in Visual Studio 2015 or Visual Studio 2017, you might have encountered an annoying error when trying to build:

Unable to copy appname.dll from obj to bin because it is being used by another process

This error typically happens the second time that you try to build after you start Visual Studio. The first time everything works OK, then suddenly you cannot build anymore. Cleaning the solution doesn’t help, the only “fix” is to restart Visual Studio which is of course really annoying when you are developing.

This error is known, as shown by the Bugzilla issue #56275. There is also an old forum discussion on the Xamarin forums, which is a bit confusing because it might be a recurring error in the Xamarin updates.

Fortunately, the Bugzilla discussion also carries a workaround. This is a Visual Studio extension that you can install, which should fix the issue. I also talked to Microsoft about this and got confirmation that the error is fixed in a future release of Visual Studio. The engineer who replied to me also gave me a VSIX to fix the issue. I am not entirely sure what the difference is with the one in the Bugzilla issue, so I will just copy it here for your convenience. As far as I can tell, both VSIX files work well.

Happy coding
Laurent

GalaSoft Laurent Bugnion
Laurent Bugnion (GalaSoft)
Share on Facebook
 

Live blogging the Microsoft Build keynote, day 2 #msbuild

.NET, Build, Conferences, Technical stuff, Universal Windows Platform UWP, Visual Studio, Windows 10, Work, Xamarin, XAML
No Comments

And the show continues on day 2! In this post, I will be live blogging the Microsoft Build keynote on day 2. This should be a very exciting event with focus on client development, Windows and Mixed Reality. Get ready!!

Live blogging the Microsoft Build keynote, day 1 #msbuild

.NET, Build, Conferences, HoloLens, Technical stuff, Universal Windows Platform UWP, Visual Studio, Windows 10, Work, Xamarin, XAML
No Comments

Build day 1 is a wrap and you can find all the live notes taken during the keynote in this post!

My plans for Build 2017 #msbuild

.NET, Blog, Build, Conferences, Technical stuff, Universal Windows Platform UWP, Visual Studio, Windows 10, Xamarin
No Comments

Days are passing and the time is getting closer to pack my stuff and fly to Seattle again. This will be my first trip to my third home this year, and I am really impatient to be there. I just love that place.

Getting there

I will be arriving in town on Saturday evening, quite late. My plan is to pick a rental car and get to the hotel in Pioneer Square and get to bed :) The next morning, based on experience, I will be up super early (thank you jet lag). This is a droning day! I am not 100% sure yet where I will drive but I am considering getting close to Rainier National Park if the weather is good enough. Alternatively maybe take the ferry to Bainbridge to make footage of the islands. Or maybe the Snoqualmie area. Or maybe all of the above. This will be a day like I love, driving around on my own schedule, relaxing, flying, filming, editing pictures at a cafe… Should be a lot of fun if the clouds are cooperating!

Visiting the office

Monday will be an office day. Seattle is an important hub for Valorem, and this is the office where it all started for me. I love going there and seeing the new and improved space. So as usual I will be looking forward to meet new colleagues and meet old colleagues again!

The conference: Live blogging

During the conference itself, I will try something new this year: I will be live blogging the keynotes and the sessions that I can attend. In previous years, I was always taking notes during the events and posting these notes to my blog every so often. Surprisingly, this has been quite popular, even though these are my raw notes without much commentary. I found out that not everyone can watch the live stream, and people were reading my notes and getting some of this keynote feeling there. But of course posting a blog post is a lot slower than taking the actual note. So this year I installed a new plugin on my blog called 24LiveBlog. This will allow me to publish my notes about the keynote in real time as well as hopefully post pictures too. That should be a fun exercise!

You will be able to follow the live blogs at the following URLs. However please note that these links will only be active on and after the keynote day 1 and 2 respectively!

Keynote day 1 (Wednesday May 10, 2017): http://blog.galasoft.ch/posts/?p=1601
This keynote will take place from 8AM to 11AM PST
(4PM London time, 5PM Zurich time).

Keynote day 2 (Thursday May 11, 2017): http://blog.galasoft.ch/posts/?p=1606
This keynote will take place from 8:30AM to 10AM PST
(4:30PM London time, 5:30PM Zurich time).

I am really looking forward to this exercise and hope that it will be useful to you all!

Wednesday: Mix2017 party with iHeartRadio and Valorem

Yes yes I know, the name is really significant… this is not a revival of the MIX conference! I know we all miss this amazing conference… No, the Mix2017 event is Valorem’s and iHeartRadio’s party at Build!

Join iHeartRadio and Valorem for #Mix2017, a fantastic night where music meets mixed reality. iHeartRadio’s DJ will mix your favorite music and Valorem will mix your reality with exciting HoloLens experiences on Wednesday, May 10, at the Living Computers Museum + Labs. As a bonus, event attendees get free admittance to the museum.

More details and registration on the Valorem website! I hope to see many of you at this event!

Happy coding!
Laurent

GalaSoft Laurent Bugnion
Laurent Bugnion (GalaSoft)
Share on Facebook
 

Two millions #mvvmlight downloads

.NET, MVVM, Technical stuff, Universal Windows Platform UWP, Work, WPF, Xamarin, XAML
3 Comments

Sometimes between last week and this week, we crossed a threshold: Two millions MVVM Light downloads.

I don’t have many metrics about MVVM Light, because the toolkit itself is not instrumented in any way. You get the raw binaries without added sugar :) So the only numbers I can rely on are the number of downloaded copies, either on Nuget or as the VSIX extension for Visual Studio. Obviously this doesn’t say much about the number of applications created with MVVM Light, since once the VSIX is downloaded, every File / New Project command creates a new app without any download. Still, it’s been interesting to see the evolution in downloads since I started to track the numbers.

Recently, I had a memory on my Facebook wall reminding me that 2 years ago, I was posting about 500’000 downloads, just before my Visual Studio Live sessions in Las Vegas. Two years later I was in Vegas again, for VS Live again, and about to cross two millions. Clearly the curve went up quite a bit. I tried to analyze what was the most significant change, and I think the port to Xamarin definitely played a significant role there. I also saw an uptake in interest in conference submissions since MVVM Light is truly cross platform, especially since Xamarin Evolve 2014 where I had a session. Since then a lot more sessions were given about Building Truly Universal Applications with MVVM Light, and quite a few full rooms too.

Tracking the downloads

As I mentioned, it is difficult to track downloads in a significant manner. There are automated build stations that will restore Nuget packages every so often. On the other hand there are people who download the Visual Studio extension once and create new applications without downloading anything. The only significant metric, I guess, is the evolution in downloads over time. Here is a chart (click to enlarge):

2017-03-21_11-13-37

Right now I track downloads on the following pages:

What’s coming

Currently I am working on the following topics:

  • A post about Working with MVVM Light in Visual Studio 2017. This is a pretty long post, which will also end up in the documentation pages. It will also explain how the sample applications (created by the templates) work and what features they demonstrate.
  • Improving the project template for WPF. I want to add more features there and be on par with what I have for Windows 10, iOS and Android.
  • Adding a project template for iPad and iOS Universal.
  • MVVM Light for Xamarin Pluralsight course. No ETA on this at the moment, sorry.

And of course the backlog is still active! Don’t hesitate to send your feedback :)

Happy coding!
Laurent

GalaSoft Laurent Bugnion
Laurent Bugnion (GalaSoft)
Share on Facebook