Community report: Beijing Xamarin hack day

With the success of the Sydney Xamarin hack day a few months back, we decided to repeat the event in as many locations as possible. With me working in Beijing, China for a few months it was the perfect opportunity to run the event in another country!
http://xamarinhackday.com/beijing

Challenges

Running an event in another country comes with a number of localization issues. Such as different social media sites used, and language translations of any marketing materials that are sent out. We are lucky that China is embracing English as a critical part of their education, and people working in the Tech Industry are more used to speaking in English than other fields.

image

Newsletter

The mailout we sent out to our Chinese contacts took us 2 weeks to lock down. Initially I thought “this is an English event, being presented in English, for a crowd that is assumed to have a very basic level of English”. Under this assumption I created the initial version of the newsletter in English only. After reviewing it we decided we should probably send it out in Chinese, and I got my PA to translate it. We then decided to merge it all into a single English/Chinese flyer, which then took some time to get the formatting correct. All up it was 2 weeks of iterating on just how to communicate the event. The final result can be found here http://xamarinhackday.com/newsletter/aug2014/beijing-hack-day_en-ch.html

Social media

The traditional forms of social media we use in the western world (Twitter, FaceBook, Instagram, YouTube, Tumblr, etc.) are all blocked via the “Great Firewall of China”. This means you need to adapt and use the local alternatives of these services.

We used Weibo (Twitter clone) to promote the event on the SSW account http://www.weibo.com/2647550041/BlhOYjUab as well as on the official Microsoft MSDN account  http://www.weibo.com/1678298567/BlASwk0fs

We also uploaded the promotional video of the event to YouKu (YouTube clone) so that Chinese participants could view the video http://v.youku.com/v_show/id_XNzQ4MjY0MDMy.html

Android development kits blocked by firewall

Another fun issue I knew we would have, is the Xamarin installer instantly fails when you try to run it. As it tries to download Android resources off the Google CDNs, which are all blocked by the Chinese firewall. I had to get all the resources downloaded and put onto a USB key that I could share with the attendees on the day. I had one of my staff create a word document out of the instructions on how to install it offline with these caches, I should blog the instructions in the future.

On the day

The event went extremely smoothly on the day. The event was hosted at the Microsoft office, and they had organised everything perfectly, from the prearranged desks, right through to catering for lunch.

Presenting to a Non-Native speaker crowd

From working with Chinese .Net developers here in Beijing, my assumptions about their base level of English proved correct. I was able to give my presentation on using Xamarin basics, right through to advanced MVVM & PCL with Xamarin.Forms. It was meant to be a 3 hour talk, however it took me 4.5 hours as I spoke at 1/2 my normal speed, and was constantly making sure I clarified myself with simpler English, or in another way to help make sure I got the concepts across.

DSC06663

I also tried modifying my presentation style on the day. I knew that if I just did my typical “talk lots to the crowd” that I would lose a lot of them. I tried speaking and writing short notes on what I am saying, to help get the message across. I also tried to “let the code do the talking” and did my demos from 1st principles. By doing it all from the basics it helped ensure they understood what I was doing, as any attempt at trying to explain the background of a pre-canned sample may be futile due to language barrier.

You can read about my attempt at using GitHub to share the source code & MarkDown to prettify my notepad notes https://davidburela.wordpress.com/2014/09/18/experimenting-with-ways-to-share-presentation-materials/

DSC06675_2

Overall the day went well, with enthusiastic developers learning how to develop with Xamarin, and subsequently start running up their own cross platform apps. I saw many sample apps running identically on Windows Phone & Android via Xamarin.Forms.

Experimenting with ways to share presentation materials

I do a LOT of presentations at UGs each year, this year it has been ~20 so far.
My presentation style has evolved a LOT over the last 10 years (but that is a topic for another blog post).

I like experimenting with Git (as a previous blog post talked about) https://davidburela.wordpress.com/2012/04/17/developer-blog-banter-3-responsecommunity-coding/ I thought I would share 2 of my experiments below, both were with using Git in different ways.

Video recording with time-coded code samples.

https://github.com/DavidBurela/Win8Demo-TechEd2012Session#readme
This was my favourite experiment. I did a presentation at TechEd, and had the video uploaded to Channel 9. http://channel9.msdn.com/Events/TechEd/Australia/2012/DEV214
My session was a code heavy presentation that showed how to implement MVVM from base principles. I took one application, and evolved it through many stages: code behind, MVVM (one time binding), INPC, Commanding, through to Portable Class Libraries. There were a lot of concepts to cover.

I wanted to release my code samples, but as there were so many concepts it would have been difficult to create many small samples to show these. Instead I decided to take my video recording, and retrace the steps I did during the presentation. As I went through it, I then did a commit at important stages throught the presentation, and put the timecode into the commit message. That way people following along in the video could quickly jump to any commit and see the code at that point in the video
https://github.com/DavidBurela/Win8Demo-TechEd2012Session/commits/
clip_image002

Live presentation notes, with GitHub repo + README.md

Last weekend I did a 4 hour presentation for Beijing Xamarin Hack day http://xamarinhackday.com/beijing.
As this was a non-English speaking crowd, I thought I would change how I did the presentation.
Rather than use slides and talk lots without assistance (which could easily lose them due to language), I instead opened up Notepad and started typing up the agenda in front of them. This let them see the English words of what I was talking about, and let them get a detailed overview of what I would be covering during the day.
It again was a code heavy presentation showing basic cross platform MVVM concepts using PCL & Xamarin.Form to have the same app run on WinPhone/Android/iPhone.

At the end of the presentation, I was able to take my plain text notes I had written live in front of them and convert them directly into nicely formatted MarkDown on GitHub. I simply added “===” and “—“ to specify the H1 and H2 headings.
I then uploaded the final source code straight to a GitHub repo, so that the attendees could take what I had built in front of them, and then extend it during the rest of the Xamarin HackDay event.
https://github.com/DavidBurela/XamarinBeijingHackDay-Demo#readme

If you haven’t played with MarkDown yet, consider it the next time you need to quickly put together a nicely formatted notes.
Here is the raw .txt of the ReadMe
Raw text: https://raw.githubusercontent.com/DavidBurela/XamarinBeijingHackDay-Demo/master/README.md
image

And it nicely formatted when rendered as MarkDown: https://github.com/DavidBurela/XamarinBeijingHackDay-Demo#readme
image