Skip to content

Our recommended learning path

The path of a new programmer is a difficult one. So much to learn, it's overwhelming. This is our curated list of what you should learn. It's how we teach our programmers.

Warning

Small portions of knowledge, don't go too deep, too soon. Eat them nice and slow.

Absolute basics

We recommend these basics to help get in touch with computers. Especially, for absolute beginners, this is crucial, because after they learn these basics, they can already help others, at work, family members and so on.

  • build a computer (use old components, at first)
    • build it, run it, dismantle it and build it again
    • get familiar with the components, so you have some visual idea what it means when someone says "stored in memory/disk", "processed by CPU", "send through network"
    • the idea is to understand what a personal computer means and to realize server is just a bigger, better personal computer
  • install operating system, Windows and Linux, multiple times, get the hang of it
  • install tools like Sublime Text editor, Visual Studio Code, NodeJS, 7zip, Windows Terminal (or similar console)
  • learn how to use directories - this is bread and butter, no way around it

Repeat those tasks over and over, until you are feel like you know what you are doing.

Programming skills

  • start with Microsoft's C#
    • it's easy enough to understand, while being modern and frequently updated
    • it gets you covered on whole spectrum of applications
      • you can build console, web, Windows and server applications, different tools and extensions, you name it
    • it's not going anywhere and there is absolute plethora of application already written in it
  • then learn yourself basics of HTML/CSS
    • no need to go too deep, stay with real basics
  • then look at Bootstrap HTML/CSS framework
    • it will help you get nice websites up and running in no time
  • continue to Svelte.dev, which gives you an opportunity to make web applications more alive

Infrastructure skills

  • learn at least basics of DNS