Windows 10 Hackathon in Vancouver: ideas, challenges and winners

In May 16-17th we made the first Windows 10 Hackathon in Canada. The event was around business applications only because the main idea was to help attendees answer the question: can we really build universal applications? This question is very important because Microsoft announced One Core for all Microsoft devices and today developers can bring the same binaries to desktops, tablets, Windows Phone, Xbox and even Raspberry Pi 2 (and many other devices) but in order to do it, developers should spend more time to create adaptive interface which works fine for different screen orientations, form-factors, resolutions etc.

Right after the presentation about new features in Windows 10 for developers, all attendees have formed teams and started to develop their projects. Finally, we got 16 teams, 3 mentors and 24 hours to implement the ideas.

The main challenge which we encountered was that almost nobody has experience in development for Windows 8 and Windows Phone and or even has knowledge in C# but many have good knowledge in JavaScript. So, about 40% of teams decided to use JavaScript but because we supported JavaScript for native development – it was not a problem at all.

The second challenge which we potentially could discover was availability of Windows 10 on all computers of attendees. In order to help people to overcome this challenge we distributed about 20 Surfaces in order to make sure that each team has at least one Surface. But I discovered that some people continue to use Visual Studio 2015 and Windows 8 for development. We announced this capability but I didn’t test it before. Of course, you cannot run Windows 10 applications on Windows 8 directly but people used Windows Phone Emulators and Remote Debug feature. So, if you cannot install Windows 10 Preview on your PC right now you can start development even on Windows 8.1.

The next challenge was about data storage. People wanted to send files to web servers, store some info about users, operate with files etc., and I found that many of them are trying to use their own web servers and were blocked there because each custom solution required deep knowledge in HttpWebRequest and HttpWebResponse, communication protocols, settings etc. So, the main solution there is Azure. Due to the ability to use existing Azure libraries for Storages, Push notification and Azure Mobile, we successfully broke all stoppers there.

The last challenge concerns only me because I am used to seeing that about 1-2% of people like to stay overnight and usually there is time to sleep. But I found that 14 teams are still there at midnight,… at 2 a. m.,… at 4 a. m.,… Additionally they have enough energy even to present something. That’s why I would like to thank Mark Schramm and Jan Hannemann, who represent local community, for their help in mentoring of the event. Thanks to these guys I am still alive and the attendees got the best help from the professionals. Additionally, I would like to say thanks to Stephen Makonin, who represents IEEE in Vancouver and was responsible for all things there like venue, WiFi, food, power, coffee etc. You guys made the fantastic work!

So, some statistic about technologies at the event:

  • 70% teams used Azure. It was not a requirement at all but it’s the best way to make something if you are not going to present just interface;
  • RelativePanel, SplitPanel and VisualStateManager are the most popular controls for the adaptive interface;
  • 40% of teams used JavaScript;
  • We had just one designer at the event. Developers like technologies but still don’t spend much time for design and it affects the result of this event as well;
  • Attendees used primary Git to share their code;

Finally, in 24 hours, 12 teams decided to present their projects. So, some words about winners.

The first place took the team Scrum Board. They presented a project which used new Ink controls to make planning between team members in distributed team. They used Azure to share the screen and implemented adaptive interface. I would like to congratulate Thai Nguyen, Adrian Lim and Carmen Tang with the first place.

The second place shared Team Art and WiFi Alibi teams. Team Art developed very beautiful interface which allows to find and review different places related to art in the area. WiFi Alibi team developed GPS logger with background tasks and good interface.


 

The third place took the team JukeBox with application for DJs. Their interface was not so good but they had a good idea and implemented lots of different features.

Additionally I want to highlight the teams Where to go?, Meter Ahead and Infinite Reboot Glimmer of Hope. They had good ideas and interfaces as well and it was really hard to make the choice because judges tried to the select the best of the best.