Learning Xamarin Forms – The XamGirl personal recipe

Every week I receive messages from people asking me the same questions, “How can I learn Xamarin Forms?”, “How did you learn Xamarin Forms?”, “What should I do to become a pro?”, “How to start?”, etc.

In this article, I want to give you my personal recipe on how to learn and how can you improve yourself.

Are you ready?

Let’s start!

Take a course

The first step to learn is to take a course, or if you are too proactive you can learn with just reading the documentation, but this is my recipe so better take a course 😛

My recommended course is Xamarin University, Why? Because they have the best teachers ever, and the content there is really really good.

“But XamGirl, I don’t have the money to pay for it?” Well, they have a free version which has a lot of courses and talks you can take, just check it. 

Free courses online:

Another paid courses you can take:  

Some advanced courses:

Start an app

Now that you have the basic knowledge, you know how to create a page, navigate between pages, create layouts and controls, you can start your first app. (If not go to the step 1).

The best of starting a personal app is that it’s okay if you make a mistake, have memory leaks, crashes, etc. Because this is how people learn. Making mistakes and then do It better :).

In this site, there are a lot of ideas of apps (1197 to be exact), just pick one and start a file-new project. Also, you can try to re-write your favorite apps, just for practice. For example, you can try to do an Airbnb, Pokemon, WhatsApp, Tinder or Trello clones.

Use a Framework

Now that you have an app running, you are probably proud of your code, or maybe not because you know that the way you did it is not the best way. So It’s framework time.

Under Xamarin Forms there are a lot of frameworks to use that will help you handle navigation, better practices, Improve code quality, etc.

This is the list of the most famous and how to learn:

  • Prism  (Learn with XamGirl here
  • MvvmCross (Learn with Martijn van Dijk here)
  • FreshMvvm (Learn with Michael Ridland here)
  • MvvmLight (Learn with Daniel Krzyczkowski here)
  • Reactive UI (Learn with DevProtocol here)

Read

At this point you know how to code, you can create apps for your clients, but maybe you feel you are not good enough. That happens my friend, but there is a solution for it, read.

The Xamarin Community is really active, every day someone writes an article about an interesting topic, or just post their opinion about something.

Make the social media a way to learn.

Planet Xamarin

A good way to find good articles is on Planet Xamarin. If you don’t know what is, it’s just a page that collects Xamarin Articles from a lot of blogs.

Twitter

Another way to learn, and one of my favorites, is on Twitter. Just follow the right accounts, and every day you will see your feed full of great posts. 

Some accounts you can follow:

There are many more accounts to follow, but this should be a good start.

Facebook Groups

In Facebook, there are two major groups of Xamarin

Join both, read what people post and if you know the answers then help, if you have an issue, ask. Also, some people post articles there or interesting things they find.

Slack

In Slack, there is an official Xamarin Slack Channel, which has the Xamarin Team available to help you.

Assist to conferences

This is very important, and not just because you will learn interesting topics, but also because you will get to know people that will motivate you to be better.

It’s so nice to go to a conference and know in person people that you admire. After that, you will become a different person. 

Some upcoming conferences to assist: 

Here is a list of Xamarin events in all part of the world.

One last thing

As I mentioned, this is just my personal recipe I had to follow and follow every day. In my personal experience, I always take at least some minutes of my day to check Twitter and see if someone had posted something interesting, or check the facebook groups to see if I can help someone with an issue. Why? Because we are a community, and that’s the meaning of a community, that you know someone will be there if you need help, but you have to be there for someone as well (awwwwww :P).

Don’t put boundaries on yourself and keep learning every day. If you know a framework already, then try another one to see which you like more. If you think your code Is good, then check open-source code to see what the other people do, what practices they follow and how you can improve more.

Also, set goals for yourself, for example, “This year I have to earn my first certification”, “Start my blog”, “Give a talk in a conference” or “Write my first plugin”. This will help to keep you active and motivated to learn.

And that’s all for now.

— Special Thanks to all the people who write articles, help in groups, contribute to open-source projects, write plugins, etc. You are all my heroes and my teachers 😉  —

Happy coding!

You may also like

5 Comments

  1. Great topic!
    Now I want to create Plugin for Xamarin.forms.
    I have watch James video.
    If you have time, please create a topic
    1. How to create plugin step by step.
    2.What base knowledge about platform to create plugin.
    Thank you!