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 http://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) http://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

A sneak peak at ASP.Net vNext

ASP.Net vNext is now available as a preview. I wanted to give everyone a heads up on what to expect in this next release. I recorded a quick video on what I consider to be the important things to be aware of.

  1. Project format is changing to a single JSON file
  2. ASP.NET MVC and Web API have been unified into a single programming model
  3. Project Roslyn allows for a “no-compile” developer experience while making updates
  4. Migration to a OWIN hosting model allows for flexibility in production web hosts (IIS or running on Linux via Mono)

http://tv.ssw.com/5366/asp-net-vnext-everything-you-need-to-know-in-4-minutes

More details and access to the latest previews can be found at these links:

Get some developer superpowers!

Earlier this year I started touring Australia giving free 1 day training on how to get started with Windows Azure Websites, ASP.Net MVC5, etc.  http://davidburela.wordpress.com/2014/06/14/community-report-windows-azure-web-camps/

I had a lot of attendees say that the content was great, and is there any way that their workmates could access the information? As I already had a lot of content prepared and I wanted to extend the reach of my training, I repurposed the content and helped create the Developer Superpowers series http://www.devsuperpowers.com/

Each month we will do a webinar teach developers about one specific topic.

In May I kicked it off with a webinar introducing Microsoft Azure Websites, ASP.Net MVC5, SQL Azure, etc. http://www.ssw.com.au/ssw/Events/Webinars/DevSuperpowers-ASP-NET-MVC.aspx

In June I did a webinar on how to unleash your application’s data with Web API http://www.ssw.com.au/ssw/Events/Webinars/DevSuperpowers-web-API.aspx 

In July I will do a presentation on enabling real time communications between the client & server. http://www.ssw.com.au/ssw/Events/Webinars/DevSuperpowers-signalr.aspx

 

We have a whole bunch of great technologies queued up for the upcoming months. Go take a look and sign up today! http://www.ssw.com.au/ssw/Events/Webinars/DevSuperpowers.aspx

3 things to know about Xamarin 3

With the release of Xamarin 3, I wanted to create a quick video to tell everyone about the hot new features in this version.

  1. Shared projects
  2. Xamarion.IOS designer for Visual studio
  3. Xamarin.Forms

Check out the video for more details http://tv.ssw.com/5359/top-3-features-xamarin-3

More information on this new release can be found at:
http://blog.xamarin.com/announcing-xamarin-3/
http://arstechnica.com/information-technology/2014/05/xamarin-3-review-making-cross-platform-mobile-development-painless

Community report: Windows Azure web camps

Recently I teamed up with the local Microsoft Australia DPE team to run 1 day training events around Australia. It taught the attendees how to get started with Windows Azure website and deploy their own ASP.Net MVC app that takes advantage of SQL Azure and a suite of other technologies.

I initially did 3 training events around Australia:

  • Brisbane – 15th March 2014
  • Melbourne – 22nd March 2014
  • Sydney – 3rd May 2014

http://blogs.msdn.com/b/bizspark_au/archive/2014/03/08/free-windows-azure-web-camps-brisbane-melbourne-and-sydney.aspx

The events all completely booked out and were a great success, which prompted Microsoft to schedule another tour immediately after:

  • Melbourne – 24th May 2014
  • Sydney – 31st May 2014
  • Brisbane – 14th June 2014

http://blogs.msdn.com/b/bizspark_au/archive/2014/04/23/new-dates-announced-microsoft-azure-web-camp-in-melbourne-sydney-and-brisbane.aspx

 

I decided to run these events differently to how they are usually done. Traditionally these events are run as “Hands on Labs” days. But I think this format is of limited value. A presenter stands up front and briefly talks about a topic for 20 minutes, and then attendees do the exercise themselves independently. But I always see some attendees breeze through the labs and sit there bored. Meanwhile other people struggle to make any progress, and feel frustrated as they are always rushed along.

Instead I thought there was more value in seeing how another developer works. As a consultant I an constantly exposed to the work habits of other developers, and pick up many new techniques just watching other people work. Many of the attendees are either very new to the Microsoft stack, or they have been working with the same people for an extended period.
For these reasons I instead ran the day as an 8 hour non-stop deep dive in how to create your own website and have it published to Windows Azure.

  • How to sign up for Windows Azure
  • How to create a new website with ASP.Net MVC5
  • Using EF6 and SQL Azure to store data
  • Scaling with Azure Websites
  • Adding Web API to your site to unlock your data to other apps
  • Bootstrap
  • jQuery basics
  • Signalr

After showing everyone how easy it is to get a complete custom built deployed out to Azure Websites for free, I talked about the power the gives every developer. Next week they could go home on a Friday afternoon, start creating a site, and by Sunday night they can deploy and show it to a few people.

Community report: Melbourne Microsoft //publish event

There was a Microsoft Windows //publish event hosted in Melbourne on the 17th May. So naturally I put my hand up to help out at the event.

The Windows //Publish event https://publishwindows.com/ was a chance for people that are building apps to get together, and work on polishing their apps and getting them deployed. The event saw a lot of enthusiastic people attend.

The best part for me, was walking around and having people ask me for advice about their app. Being able to provide assistance to make their apps just that little bit better is a great feeling. But it was also great to look around and see everyone help each other out with advice.

IMG_2422 (1280x853)IMG_2426 (1280x853)IMG_2427 (1280x853)IMG_2429 (1280x853)

The catering at the event was lovely. Sushi and fresh fruit!

IMG_2431 (1280x853)

After lunch, people gave short presentations to showcase their apps.

IMG_2434 (1280x853)

Follow

Get every new post delivered to your Inbox.