An independent reference for people learning to program from scratch. Not affiliated with the former site on this domain, with companies or with schools; we do not sell courses or promise employment.

Guides

Practical guides

Your first weeks of programming are spent not on clever algorithms but on everyday things: installing the right programs, working out where to save a file, how to run it and what that line in the terminal means. This section collects short guides for exactly these tasks. They are not tied to any particular editor or service: your button labels may differ, but the order of steps stays the same.

Run your code as often as you can: ten small checks are faster than one big mystery.

— Editor's note

How this section works: each guide describes the steps in general terms and does not promote programs, schools or services. Where a step depends on your operating system or chosen language, we say so and suggest checking the official documentation. Examples are illustrative and only there to aid understanding.

Guides

Five tasks that everyone faces the first time they sit down to write code.

Set up your environment

Download the interpreter or compiler for your chosen language from the project's official website, then install a code editor and a version control system. Afterwards, open a terminal and ask each program for its version: an answer with no error means everything is in place.

Tools

Write your first script

Create a separate folder with a text file inside it that uses your language's file extension. Start with a program that prints a single line, then teach it to ask for a name and say hello. Run the file from the terminal after every change.

Glossary

Create your first repository

Initialise a repository in the project folder, add your files and commit the first state with a short message. From then on, commit every finished change: this builds a history you can always go back to.

Security

Read an error message

Read the error from the bottom up: the last line usually gives the type and gist of the problem, while the lines above show the chain of files and the line number. Open that line and its neighbours and compare them with what you expected.

Errors

Ask the community

Describe what you wanted to do, what you did and what you got instead. Include the error text and the shortest piece of code that reproduces it. Remove any passwords, keys and personal data from the example.

Questions

Article catalogue for English-speaking readers

This is where standalone articles for English-speaking readers will appear. We write them specifically for this version of the site rather than translating them from other languages.

Topics the editors are working on

  • How to read through someone else's small program line by line
  • How to keep a learning log and notice your own progress
  • How to write a project README that someone else can follow
  • What to do when learning to code on your own stalls

Editorial rules

  • Articles in this catalogue are written separately for each language version and are not translations.
  • Some articles link to third-party websites, including gaming services; we do not control their content, prices or terms.
  • We do not publish advertising for courses, services or software, rankings, prices or reviews.

A week of first steps

  1. Day one: your goal

    Write down in one sentence why you want to program: to automate routine work, make a game for your child, understand how websites work. Your goal will suggest a language and your first projects.

  2. Day two: your environment

    Install an interpreter, an editor and a version control system following the guide above. Do not chase the perfect setup — you can improve it later.

    If the installation gets stuck, note the step and the message you saw: with that description, help is much easier to give.

  3. Day three: first lines

    Write a program that prints text, adds two numbers and checks a simple condition. Run each version and look at the result.

  4. Day four: loops and lists

    Get to know loops and lists: have the program print a multiplication table or go through your to-do list.

  5. Day five: a repository

    Set up a repository for your exercises and commit everything you have written so far. Try looking through the history and restoring an older version of one file.

  6. Day six: break it on purpose

    Break the program deliberately: remove a bracket, misspell a variable name. Read what the interpreter tells you — this is how you learn to recognise typical messages.

    An illustrative example: if a letter is missing from a variable name, the interpreter will usually report that the name is not defined and point to the line.

  7. Day seven: wrap-up

    Put together a small project from what you managed during the week and write a short description: what the program does and how to run it. Note what was hardest — that is your plan for next week.

  • Tools

    A brand-free beginner's kit: code editor, terminal, interpreter or compiler, version control, repository hosting and a package manager.

  • Errors

    Command not found, syntax error, a program that stays silent, a merge conflict, lost changes — what to check first.

  • Security

    Beginner risks: keys and passwords in code, other people's scripts, fake packages, outdated dependencies, personal data in a public repository.

Sources

  • Git documentation
  • Python documentation

Dates and definitions are taken from official documentation and specifications as of the preparation date. Languages and tools keep evolving, so check the details in current primary sources.