Python C# JavaScript TypeScript Java

If you have no experience in programming, then the following free materials are recommended to pass:

  • Iakiv Kramarenko's book: Intro to Software Development (with examples in HTML, CSS, JavaScript)
  • Harvard's CS50 on edx.org
  • learn-js.orglearnpython.org

  • edx.org: JavaScript IntroductionComputing in Python I: Fundamentals and Procedural Programming

  • any of java courses on edx or Udemy (1, 2, 3) OR something simpler like learnjavaonline.org/

For installation questions, this guide may help.

If you have experience in programming, but not with Python, then you can quickly get familiar with the language through:

  • Fast intro to the language syntax: Learn X in Y minutes Where X=python3 Learn X in Y minutes Where X=java (російською)Learn X in Y minutes Where X=javascript ()Learn X in Y minutes Where X=C#

  • Interactive simple tasks on syntax in the form of tests: Python KoansJava KoansJavaScript Koans.Net Core Koans

  • Guide from Brian Torres-Gil on setting up the environment (pyenv + poetry) in Mac OSX: Definitive Guide To Python On Mac-OSX, you can ask google about similar materials for Windows or Linux, if relevant;)

  • The site and book from Okken Brian about pytest: Python Testing with pytest

  • Classic videos about idiomatic Python: Transforming Code into Beautiful, Idiomatic Python, Python's Class Development Toolkit

In the remaining time, you can practice more and harden your skills using one of the following resources:

  • exercism.ioexercism.ioexercism.ioexercism.ioexercism.io

  • leetcode

  • codewars

  • CheckIO
  • CodinGame

Once you are familiar with JavaScript, and yet interested to code in TypeScript, go and quickly learn its basics by passing something from:

  • Learn X in Y minutes Where X=typescript

  • exercism.io: TypeScript Track

  • https://www.typescriptlang.org/

  • TypeScript Deep Dive

Also, it will be more convenient for you if you will save versions of your code for solving certain problems - using version control systems. I recommend using git and one of its most popular servers – github.com. Here's a free tutorial on the topic: Github - Hello World.