Best way/approach to quickly learning a new programming language RRS feed

  • Question

  • Hi I have been writing code for many years and I'm able to develop applications in more than 3 programming languages :  C#, VB.Net and C++, QBasic (no longer using it), Javascript...

    The approach I usually use is as follows :

    - First of all, I pick up a small tuto of 30-40 pages to learn and practice the more basic.

    - Second of all, I move on to a more middle tuto/ebook of no more than 300 pages, I mean a book of 100-200-300 pages and practice at the same time.

    - Third of all, I start practicing, I mean I imagine an Application with CRUD operation having many features then I start writing it with skills I learnt from Book_1 and Book_2.

    Now, I need to learn Android / Xamarin for upcoming projects and one of my colleague advised me to follow his approach as it works very very well.

    He told me to download source code of any Android app in Github and start reading and analyzing it, instead of reading books.

    So Now, I'm question is : Is it right to learn like that? Is anyone out there following this approach too to tell us more about it?

    or do you have another quick approach to learn Android/Xamarin ?

    PS : I know this is not Xamarin forum but it's a general question on how to learn a new programming language.


    • Edited by Christine25 Wednesday, March 4, 2020 12:23 PM
    Wednesday, March 4, 2020 8:32 AM

All replies

  • Hi Christine,

    Thank you for posting here.

    Everyone has their own way of learning. For me, it can be roughly divided into 3 steps.

    1. Learn the basics of the language, such as grammar and unique features. This step can choose books or videos or other methods according to personal habits.

    2. Use what you have learned to build a simple but working project.

    3. Gradually add various functions to the project based on your own ideas. This step is the most complicated because it involves a lot of new knowledge about unfamiliar tools, third-party packages, and so on.

    We will definitely encounter many problems, but in the process of solving these problems one by one, we will learn a lot and be impressed.

    After that, you can download some apps to view the source code according to your colleague' suggestions.

    The main purpose is to compare whether there is a better way to achieve the same function.

    These are just some of my personal suggestions. I don't know if it applies to you. Like I said, everyone may have their own habits.

    The one that suit you is the best one.

    Best Regards,


    MSDN Community Support
    Please remember to click "Mark as Answer" the responses that resolved your issue, and to click "Unmark as Answer" if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to MSDN Support, feel free to contact MSDNFSF@microsoft.com.

    Wednesday, March 4, 2020 9:35 AM
  • Hello,

    One of the best methods to learn today is using Pluralsight (cost money but well worth it), for xamarin there are 29 courses were each course ranges from 1 hour to four hours.

    Here is a random course layout for Xamarin.Android: Getting started. This course and others you can download project files too.

    Any ways, can't hurt to check it out, from what I see it's $29 per month. If you are a quick study one month should do it, if not go for say two months. I tend not to suggest paid for learning sites but this is an exception as the world is changing, books go out of print quickly while sites such as Pluralsight and similar sites stay current.

    Note that there are other learning sites out there, I can't speak for them as I've only used Pluralsight so you might want to research other sites too.

    Please remember to mark the replies as answers if they help and unmarked them if they provide no help, this will help others who are looking for solutions to the same or similar problem. Contact via my Twitter (Karen Payne) or Facebook (Karen Payne) via my MSDN profile but will not answer coding question on either.

    NuGet BaseConnectionLibrary for database connections.

    profile for Karen Payne on Stack Exchange

    Wednesday, March 4, 2020 10:46 AM