How to learn any new programming language (checklist)

So you want to learn Javascript, C#, Mono, Perl, Python, Boo, PHP, Whatever (well, I don't know if Whatever is a language), here is what you need to know.

learn programming language learn programming language
  • Background

    ×

    How to do this task:
    Subtasks:
  • I Googled, and didn't find anything that had a step by step, structured way to learn a new programming language. So this is my attempt to capture the process as best as possible. It is especially clear in my head at the moment, because I'm in the process of adding Ruby to my arsenal. From a distance, Python still looks cleaner, but my curiousity about rails has got the better of me.

    ×

    How to do this task:
    Subtasks:
  • Level 1 - Get the Basics

    ×

    How to do this task:
    Subtasks:
  • Basic Syntax - All languages have a structure, a way that commands are written. Learn it, is indentation important? Do they have special symbols e.g. ';' or '_'. Keep paying attention to this throughout your learning (learn how to use comments).

    ×

    How to do this task:
    Subtasks:
  • Learn Data Types - The typical data types include: Strings and Integers, other types vary in name and function from language to language, learn what a type is.

    ×

    How to do this task:
    Subtasks:
  • Learn Variables - It is important to understand what variables are, how they are used and represented, are they dynamically typed? are they loosely typed? There's a difference.

    ×

    How to do this task:
    Subtasks:
  • Learn Operators - This is the "mathy" stuff -,+,* etc..

    ×

    How to do this task:
    Subtasks:
  • Learn Flow Control - Look for information on loops, if-then and others.

    ×

    How to do this task:
    Subtasks:
  • Learn Basic Data Structures - Find out what are the basic data structures of the language, these could be lists, arrays, dictionaries, hashes. The names and features will vary by language.

    ×

    How to do this task:
    Subtasks:
  • Level 2

    ×

    How to do this task:
    Subtasks:
  • Learn Objects and Classes 

    ×

    How to do this task:
    Subtasks:
  • Learn Exception/Error Handling 

    ×

    How to do this task:
    Subtasks:
  • Learn Data Structures and Algorithms 

    ×

    How to do this task:
    Subtasks:
  • Learn Design Patterns - Many problems in software development fit into a particular 'pattern', Design patterns help to make your code more reusable between projects.

    ×

    How to do this task:
    Subtasks:

549 copy saved

549 copies saved