I joined Microsoft right after college as a Technical Evangelist in the Developer Experience team. A technical evangelist is primarily responsible for taking the emerging Microsoft technologies to various audiences such as students, developers, solution architects as well as Business decision makers. And I was supposed to pick up Xamarin.
What is Xamarin?
Before I jumped in on the Xamarin bandwagon, I felt the need to understand what is Xamarin? For those of you have stumbled on this blog by chance, Xamarin is a set of tools which helps you build cross platform applications. It lets you build native apps for all the three platforms -namely iOS, android, and UWP in C#. The developer documentation is quite comprehensive to get you started. If you’re a beginner like me, you should spend time understanding the mobile ecosystem – several types of apps (native app, web apps, and hybrid apps) and pros and cons of architecting a mobile app with these development strategies.
Getting started with C#
After understanding the mobile ecosystem briefly, the next step was to familiarize myself with C# language. I followed Bob Tabor’s course - C# Fundamentals for Absolute Beginners on Microsoft Virtual Academy . Alternately you can check out the Getting Started with C# guide. It helped that I had exposure to Java and understood basic concepts of Object Oriented Programming.
Next, I registered myself on university.xamarin.com. Once registered, you can avail the free trial or subscribe to the university monthly ($83.5per month). Free trial includes unlimited access to Self-Guided learning courses and 30 days of access to Guest lectures and two live, instructor led courses.
Also in August 2017, the Xamarin University changed the certification process, making it a twofold journey, Xamarin Certified Professional and Xamarin Certified Developer. Of the 20 classes that are required for certification, 13 (all of which are available as Self-Guided Learning module) are required for becoming a XCP and the 7 advanced courses for the final exam.
Xamarin University provides a learning path. The 13 courses that are required to become a XCP are heavily focused on Xamarin Forms along with couple of courses introducing development on android and iOS. The “write once and run everywhere” approach of Xamarin Forms caught my fancy and I started with courses focused on Xamarin Forms.
You could either register for live classes and attend those or you could follow the Self-Guided Learning courses. Live classes are instructor-led, and I must say all the instructors are very knowledgeable, approachable and friendly. To make the most of the live class, it is a good practice to download all the course material and have a look at the contents prior to the class. Each class has 4-5 exercises’, which cover the topics discussed in the class as well as practical aspects of mobile development using Xamarin. The only caveat with the instructor-led classes is that you will have to plan in sync with Xamarin University schedule unlike Self-Guided Learning modules which you refer at any time which is convenient for you. In the beginning, I preferred to attend the live classes as they were instructor-led. Once I was comfortable with Xamarin University platform I started following the Self-Guided Learning modules.
Whether you take instructor led classes or follow the Self-Guided Learning module, it is of utmost importance that you complete the exercises. Some exercises have content which is not essentially covered in slides, so it pays well to do them diligently. To Xamarin University’s credit, they have done an excellent job at documenting the steps, even giving additional homework exercises to stimulate the minds of its audience. However, don’t fall in the trap of reading through the steps of exercises or directly seeing the completed solution. In fact, take a small side project of your own to aid your learning. I tried to maintain a rhythm of completing 2-3 classes per week.
Other than the classes required for certification, there are classes on Azure, C#, F#, Enterprise Mobile Development, Testing, Android and iOS development.
The lightning lectures are short talks on common challenges or emerging technology and features. It doesn’t stop here. They even have guest lectures by industry professionals sharing their knowledge and wisdom about architecting and shipping 5-star mobile apps.
Challenges that I faced
Prior to registering on Xamarin University, my plan to upskill myself on Xamarin was scattered. I was trying to do too many things (like reading developer documentation, following labs online and making apps, courses on Microsoft Virtual Academy, Pluralsight). So, my advice will be after exploring your options, plan and stick to it.
I started with attending live classes and wasn’t practicing exercises alongside as the initial classes were easy. For initial chapters it was not a problem, but as the complexity increases if you don’t practice you tend to miss the point and don’t quite appreciate what you are doing and why. I also picked up a side project to implement what I learnt. It could be anything simple as well. Will boost your confidence.
The difficulty level increases gradually. And the classes covering Data Binding, MVVM, Customizing the List View and Effects and Renderers are very important and require more effort.
After completing the classes…
Once I attended all the required classes, I received a mail stating my eligibility to take the exam. If you wish to consult a trainer, you could schedule your 1:1 with them.
I set aside time to revise the concepts and questions discussed during classes. The team at Xamarin University is striving to make the platform better and as result you may find that they have added updated content in the class material. To ensure that you have covered ground, you can check the topics given in Study Guides. The paper is open book meaning you can refer your slides and notes if need be.
The paper consisted of 150 questions in 180 minutes and to achieve certification one needs to attain a minimum score of 80%. So, I planned to dedicate one minute per question, leaving 30 minutes to revisit the questions that I would have left. Most of the questions were of moderate difficulty and were based on the curriculum. And soon as I clicked on Finish button, the result and analysis of my test was there - Xamarin Certified Mobile Developer! 😀
Shortly I received a mail from the Xamarin University team along with the badge and certification and the invitation to the Xamarin Certified Developer LinkedIn group.
The certificate remains valid for one year from the date of examination. And you also receive the pin-badge and Xamarin Monkey on your registered address.
Post 15th October 2017, the new twofold certification has become effective. This is a welcome move as you can avail all the 13 classes required to become Xamarin Certified Professional in the trial period of subscription. For taking the test, however, you will need to upgrade your subscription. The Xamarin Mobile Professional and Xamarin Mobile Developer certification exams each consists of 100 questions and is timed at 120 minutes. Each certification exam pulls questions from courses covered in each certification tier. You can check out the official blog and FAQ page for more information.
All the best and happy learning !
Software Engineer | Commercial Software Engineering, India | Microsoft Corporation
Twitter : @PrachiKushwah