Category Archives

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
 

Using the Windows Template Studio with #MVVMLight

.NET, Build, MVVM, Technical stuff, Universal Windows Platform UWP, Visual Studio, Windows 10, Work
1 Comment

Here is a story of a great collaboration between Microsoft and the community.

Last year in August, as I was speaking at VS Live in Redmond, I was asked by my friend Clint Rutkas for coffee because he had an idea he wanted to run by me. Now if you know Clint, that is usually really intriguing and I was really excited to hear about his idea.

Clint told me about the project he was thinking of starting. This was just conceptual at the time, but his idea made a lot of sense: Why not make the process of creating a new Universal Windows application a lot easier. Why not help people with all the tedious tasks that you get right after File, New, Project.

Usually when you get started, you need to add a bunch of pages and helpers to your application. The Blank application template is just that, blank. In MVVM Light, I added a project template for the supported frameworks (Universal Windows Platform, Xamarin.iOS, Xamarin.Android, Windows Presentation Foundation, Silverlight).

2017-05-24_11-09-27
The MVVM Light templates in Visual Studio 2017

However creating a meaningful project template is really difficult. You are constantly navigating between “too much content” and “too little content”. If you have too much, the developer ends up having to remove a whole lot of code, which is tedious. If you have too little, then the developer needs to spend time adding the basics, as well as sometimes having to look for guidance on how to do common things like navigation, dialogs, a Settings page, etc.

Building a wizard

Of course I thought of building a wizard to help people getting started. This is not easy though. First of all, the Visual Studio automation can be complex. You need to support multiple versions of Studio, and the extensibility model changes from version to version, so that is a big commitment. And this is where Microsoft has a huge advantage, they own the extensibility model, they know in advance is something is going to change, and they have the resource to create and maintain the code. And since the WTS is open source and available on Github, you can also contribute, and help make this project even better.

Installing the Windows Template Studio

Before you get started, you will need to add the Windows Template Studio (WTS) to Visual Studio 2017. Thankfully this is really very easy. In Visual Studio 2017, just select Tools, Extensions and Updates. Click the Online item on the left, and enter Windows Template Studio in the search box on the top right.

2017-05-24_09-47-08
The Extensions and Updates dialog with WTS

In Visual Studio 2017, you are now required to close the application to install the extension, so after the download is complete, close Studio and it will get installed.

Getting started

2017-05-24_11-16-46

The WTS starts in the File, New, Project dialog. Under the usual Universal Windows templates, you will see the entry for the WTS. Select it, give a name to your new application and press OK.

The project type

2017-05-24_11-19-16
The project type and framework dialog

The next screen is about the foundation of your app. You can select a type of navigation (currently you can select an app with a navigation pane, or an app with tabs), or simply a blank template without navigation.

The framework

Then comes the framework selection. This is where you will notice MVVM Light front and center. The other options at the moment are Code Behind, or a basic “no-name” MVVM implementation which can be useful in situations where the usage of 3rd party frameworks is completely forbidden.

The pages

2017-05-24_11-20-12
The pages dialog

The next step is probably the one I am the most excited about. It is usually so tedious to add the same pages over and over in every application I create. Here, you can choose to add pages such as blank page, map page, master/details, web view, settings etc. I can’t stress enough how much of a time saver this step is.

Note that the studio also supports you in finding out which licenses the 3rd party frameworks use. For example, if you add a Settings page which uses JSON.Net for the serialization of the settings, a link to the license is added to the Summary pane on the right, and so you don’t have any surprise.

The features

The features dialog is as exciting. With one click, you can add new experiences to your application such as Suspend/Resume, Background tasks, notifications, live tiles and more.

2017-05-24_11-54-40
The features dialog

This is probably the easiest way to offer a fully featured application to your users.

Why only MVVM Light at this time?

Microsoft ran numbers of the Nuget downloads and saw a confirmation that MVVM Light is the most widely used framework to build MVVM applications on Windows. In addition, its modularity and simplicity of use makes it a prime candidate for the first version of the WTS. However this is an open source project and so the developers of other projects (such as my good friends at the Prism or MVVM Cross projects) are already working to add support for their own framework in the WTS.

What about other application types?

At the moment, the WTS only works for Universal Windows applications. However nothing would prevent it to be updated for other application types. Personally I would welcome Xamarin support! And here we can predict that this will probably happen sooner or later, supported by the community of open source developers. I can see a lot of advantages in adding support for Xamarin or even WPF desktop applications. So I encourage everyone to head to Github and start contributing!

Resources

Here are some videos and links to get started:

I hope that you also see the potential of this great tool and that you will contribute.

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!

Setting the device brightness on Windows with WPF

.NET, Technical stuff, Windows 10, Windows 7, Windows 8, Work, WPF
2 Comments

I am working on a project which I can’t really detail, but one aspect caused me a few headaches. Finally I reached out to the Windows team at Microsoft and got great help from Katie Anderson who works on the brightness team. This was quite tricky, and we had to have a couple of roundtrips before we managed to find a way that worked.

Well, why?

In the application I am working on, it is necessary for the user to set the device brightness from the application itself. You might wonder why, because most Windows devices have hard keys to set the monitor brightness. For example on a Surface, you can use the Fn-Del and Fn-Backspace key combinations to alter the brightness of the screen. Or you can of course swipe from the right side and use the Brightness button to change the value in the Action Center.

However on that particular project, the user doesn’t have access to the keyboard, nor to the Action Center. This is a kind of kiosk scenario if you will where many of the Windows features are deactivated by policies, and no hard keyboard is provided. I had to find a way to do this programmatically.

First approach: Not so good

At first I thought I would have my application’s main window run in full screen and set a black Rectangle on top of everything, and change the Rectangle’s opacity in my code. That worked well but of course it wouldn’t work if other applications were in the foreground (yes, I forgot to mention, it’s a kiosk app which can start other apps and put them in the foreground…).

Second approach: Better but not great

OK, no problems I thought, let’s have my app open a modal full screen window which is always on top. I will then have this window made insensitive to touch or mouse clicks with the following code. Finally, this window will have the black Rectangle and be on top of everything all the time.

public static class WindowsServices
{
    private const int GwlExstyle = -20;
    private const int WsExTransparent = 0x00000020;

    public static void SetWindowExTransparent(IntPtr hwnd)
    {
        var extendedStyle = GetWindowLong(hwnd, GwlExstyle);
        SetWindowLong(hwnd, GwlExstyle, extendedStyle | WsExTransparent);
    }

    [DllImport("user32.dll")]
    static extern int GetWindowLong(IntPtr hwnd, int index);

    [DllImport("user32.dll")]
    static extern int SetWindowLong(IntPtr hwnd, int index, int newStyle);
}

This worked OK but somehow it was not satisfying. I really wanted to have a solution where my app would modify the actual device brightness. There are a few reasons why the client also wanted that, and so I started to investigate deeper. Unfortunately, Bing searches (and the equivalent Google searches) didn’t really return anything satisfactory.

Using Powershell

After searching a bit, I got a first clue that what I wanted to achieve was doable: You can query and modify the device brightness from Powershell with the following script:

CODE TO GET THE BRIGHTNESS INSTANCE

PS C:> Get-Ciminstance -Namespace root/WMI -ClassName WmiMonitorBrightness

CODE TO SET THE BRIGHTNESS

PS C:\Users\lbugn> $monitor = Get-WmiObject -ns root/wmi -class wmiMonitorBrightNessMethods
PS C:\Users\lbugn> $monitor.WmiSetBrightness(50,10)

If you run these commands in Powershell, you will marvel at the result: Yes it does work and the screen’s brightness is modified. Great Scott, I am on the right track! The key to this is the WMI (Windows Management Interface) class WmiMonitorBrightness.

Converting to .NET

The next step was obvious: I needed to convert the Powershell script to some usable .NET code. Unfortunately, easier said than done. This is where I reached out to Microsoft for help and thankfully Katie really followed through and after a few iterations we got it to work.

First she used the WMI Code Creator tool to convert the Powershell script to .NET. I had no idea that such a tool existed, but then again I never had to dive so deep in the entrails of Windows. Unfortunately when running the code that the tool created (which I won’t post here to avoid confusion), I got some errors. One more roundtrip to Redmond (via email) and Katie found the way: The following code will indeed modify the brightness of the screen, yay!!

public static class WindowsServices
{
    private static ManagementObject _brightnessInstance;
    private static ManagementBaseObject _brightnessClass;

    static WindowsServices()
    {
        // Querying the Windows service to get the Brightness API.
        var searcher = new ManagementObjectSearcher(
            "root\\WMI", 
            "SELECT * FROM WmiMonitorBrightness");

        var results = searcher.Get();
        var resultEnum = results.GetEnumerator();
        resultEnum.MoveNext();
        _brightnessClass = resultEnum.Current;

        // We need to create an instance to use the Set method!
        var instanceName = (string)_brightnessClass["InstanceName"];
        _brightnessInstance = new ManagementObject(
            "root\\WMI",
            "WmiMonitorBrightnessMethods.InstanceName='" + instanceName + "'",
            null);
    }

    public static int GetDeviceCurrentBrightness()
    {
        // Getting the current value.
        var value = _brightnessClass.GetPropertyValue("CurrentBrightness");
        var valueString = value.ToString();
        return int.Parse(valueString); // Direct cast fails.
    }

    public static void SetDeviceBrightness(int newValue)
    {
        if (newValue < 0)
        {
            newValue = 0;
        }

        if (newValue > 100)
        {
            newValue = 100;
        }

        var inParams = _brightnessInstance.GetMethodParameters("WmiSetBrightness");
        inParams["Brightness"] = newValue;
        inParams["Timeout"] = 0;
        _brightnessInstance.InvokeMethod("WmiSetBrightness", inParams, null);
    }
}

I made a small sample here which gets the current value of the screen brightness and then increases it by 10% every time you click on a button. When you reach 100%, it goes back to zero on the next click. Simple enough, and does the trick.

I hope that this will be useful to a reader looking for the same feature. I’d love to be the first one to ever blog about this. I doubt that I am, and probably someone will point me to the article that I never found :) but seriously, I really couldn’t find any mention of something like that on the whole WWW.

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
 

New role, new responsibilities, same passion! Embracing 2017

IdentityMine, Technical stuff, Valorem, Work
No Comments

As I am writing this, I just came back from Kansas City, Missouri, where I met with a few people who are going to be an integral part of my next adventure.

I often tell this story: When I was working for Siemens and my passion for software was facing a difficult time, due to the frustrations of not being able to render my designers’ visions in HTML/CSS, I was sent to Las Vegas to attend MIX06, the first ever MIX conference, and to discover Windows Presentation Foundation and Expression Blend, which became two passions of mine. Working with the various teams at Microsoft responsible for these amazing new products, I started blogging about my experiences. This led Microsoft to give me the MVP award in 2007 (and every year since then), this also led Sams publishing to contact me and ask me if I wanted to write a book about Silverlight 2 which Microsoft had just started in preview. I started speaking at conferences, first within Siemens and then at various conferences. This became a side activity that was often crossing paths with my day work as a software developer.

My public speaking, blog writing, and other publishing activities were just something I felt like doing. It was profitable both for the firm I was working for, IdentityMine, and for myself as I was building my personal brand.

In May 2016, IdentityMine was acquired by Valorem, and our activities started encompassing more than the client application development we were known for. Valorem had always been very active in back-end development, from Sharepoint to Azure to Office365 to PowerBI to many other areas which I know of, but which I don’t know much about. This year, I will be starting a new role, which neither Valorem nor pre-acquisition IdentityMine has ever officially had: That of Senior Technical Evangelist.

In this role, I will educate myself in all the various areas where we do business. I want to be able to talk to anyone in the firm and have an understanding of what they are doing. Then, I will be responsible to give visibility to all the amazing people who work at the new Valorem. This includes blogging about activities that we do, projects that we work on, but also exciting new activities which I cannot talk about yet (but video should be involved, fun!!). I also want to make people proud of what they are doing, and to teach them how to talk about it, maybe at local user groups, maybe at conferences, maybe writing for the Valorem blog, maybe writing articles for magazines etc. Teaching people to manage their personal brand, coaching them to put themselves out there, work with the community, etc.

Everyone at the executive level is very excited because that is something that we just didn’t do before, not in any official capacity. This is a new role, which should allow me to explore and try new things, see what’s working. It should also allow me to visit all our various locations, talk to the people, understand what they do, and get more knowledgeable on all the areas that we are covering (which is a lot). Also, it will give me the opportunity to look into new areas that might be interesting for the firm, such as Cognitive services, Blockchain, and many more.

Next to this, I will of course continue to support our sales teams in pre-sales operations, as well as give a hand in architecture or coding for our development teams where needed. And of course I will continue to support our European operation, which as small as it is right now is still generating enough leads and projects to keep things interesting.

I’ll be looking forward to meeting a lot of Valorem employees in the months to come and work with all of you. Please do not hesitate to reach out to me if you have questions, remarks or suggestions. This role is for you in the first place.

Happy coding
Laurent

GalaSoft Laurent Bugnion
Laurent Bugnion (GalaSoft)
Share on Facebook
 

A good start in 2017: NDC London and a World of Devices

HoloLens, MicrosoftBand, NDC, Technical stuff, Work
No Comments

Sorry for the late post, I wanted to post this earlier but then a lot happened (getting sick didn’t help and a trip to Kansas City where I am typing this from).

Last Wednesday I flew to London City airport to speak at the first conference of the year: NDC London. The Norwegian Developer Conference started in Oslo but quickly expanded to other locations. I spoke at NDC a few times but I had not been able to speak there for a while. I was happy that the organizers and I could agree on a topic that drew a respectable crowd of nice people coming to hear me talk about A World of Devices. All the documents are here!

This talk is a little different than my usual talks. No code! but a lot of anecdotes from my past as a (huge) geek, who tried most devices that attracted my attention for the past 20+ years. For me it all started when I got a Casio device in which I could store my contacts and calendar information. There was little to no connectivity (this was before I even went online). Then I seriously considered purchasing a Newton! I even went to the store to see it and really hesitated. I loved the handwriting recognition. I really wanted one but I just couldn’t pay for it, no way. Later, my dream came true: I bought a Palm Professional. This was the second generation of Palm devices. I had to order it specially from a US website (in the mean time I had gotten internet access at work and then at home). I can’t say how much I loved this device and the many Palm devices I bought after that. I became super proficient in Graffiti handwriting, so much so that even started writing this way on paper (the Ts were particularly funny).

There are a lot of anecdotes from these pioneer times (like my first mobile internet connection, which I got from my Palm to a Siemens mobile phone through the Infrared port and then to the mobile network. It took ages to negotiate the handshakes and of course typically as soon as you were connected something happened and the IR connection would get cut, for example a bump in the railroad or something similar).

I drew on this experience and all the other amazing devices I either used or coded for (or both) to prepare what I think is an informative and interesting session with a lot of demos: Cortana; Inter-device communication (Microsoft Band connecting through Bluetooth to a PC and controlling a 3D scene thanks to the Accelerometer sensor); Windows Continuum; and of course Microsoft HoloLens.

Thanks to everyone who came by, I really appreciated your presence. Thanks also to everyone who came later to speak to me regarding MVVM Light, WPF, Silverlight, Xamarin or any other topic. It’s always such a pleasure to connect with people all around the world and have interesting discussions.

As always, I created a page on my website for this presentation. There you will find the slides, the link to the Her trailer video as well as the GitHub repo for the Microsoft Band sample.

Happy coding and happy 2017!
Laurent

GalaSoft Laurent Bugnion
Laurent Bugnion (GalaSoft)
Share on Facebook
 

Le matériel pour ma présentation “HoloLens 101” du DevDay à Mons

Conferences, HoloLens, Personal, Technical stuff, Work
No Comments

J’ai eu beaucoup de plaisir à participer à l’événement DevDay à Mons en Belgique. Cela fait déjà quelque temps qu’Olivier Matis me demande de participer, et malheureusement cela n’avait pas été possible pour des questions de temps. Enfin cette année j’ai pu dire oui. Connaissant au moins certains membres de l’équipe organisatrice, je me réjouissais vraiment de faire le voyage pour cette ville que je ne connaissais pas encore.

Après un court vol et une heure en train, je me suis donc retrouvé dans cette ville dont le nom signifie « montagne », ce qui est assez drôle pour un Suisse. Très jolie ville, que j’ai traversée à pied dans un froid de canard, mais en admirant la cathédrale et la place centrale avec l’hôtel de ville. Au soir, souper avec certains des speakers et organisateurs, dans une super ambiance, et avec de la bonne bière.

Le lendemain, j’avais l’honneur de donner la première session dans une salle de cinéma à l’écran géant, une chouette expérience pour un speaker. Quelques soucis de micro, et un peu de stress parce que j’ai décidé de donner la session en français… Ca peut paraître drôle mais je n’ai pas l’habitude de parler de programmation en français… d’habitude c’est l’anglais, voire l’allemand.

Au final, tout s’est bien passé, et j’ai pu montrer les différences entre VR, AR, MR, parler de l’environnement de développement, et montrer une démo d’une petite appli commencée depuis zéro, pour donner un petit peu le goût de la programmation 3D. Enfin, j’ai fini la session avec des démos d’applications que nous développons pour des clients.

La fin de la journée s’est passée à faire des démos HoloLens et discuter avec plein de monde dans une super ambiance. Un petit tour en Tesla X de démonstration avant de reprendre le train et l’avion…

Un grand merci aux organisateurs pour l’invitation et le super travail sur place, ainsi bien sûr aux nombreux spectateurs qui sont venus assister à la session et me parler par la suite.

Vous trouverez le fichier PowerPoint, le code ainsi que quelques vidéos de démonstration sur mon site.

Amitiés à tous
Laurent

GalaSoft Laurent Bugnion
Laurent Bugnion (GalaSoft)
Share on Facebook