Gdy uczysz się pisać bezwzrokowo, litery idą względnie gładko. Prawdziwy test przychodzi z symbolami — te małe znaki, bez których kod się nie kompiluje, są rozsiane po całej klawiaturze i wymagają precyzyjnej współpracy z klawiszem Shift.

Które znaki piszesz najczęściej w kodzie?

Analiza typowych plików JavaScript i TypeScript pokazuje wyraźny wzorzec. Na czele stoją: nawiasy okrągłe, średnik, dwukropek, znak równości, nawias klamrowy i kwadratowy. Zaraz za nimi plasuje się strzałka funkcji => oraz znaki typowania w TypeScript: <, >, |, &.

  • ; — koniec instrukcji, jeden z najczęstszych znaków w JS
  • {} — bloki kodu, obiekty, destrukturyzacja
  • [] — tablice, dostęp do indeksów
  • => — funkcje strzałkowe (dwa naciśnięcia: = i >)
  • ::, ?. — optional chaining i typowanie TS
  • ` ` — template literals (backtick, lewy górny róg klawiatury)
TypeScript
import { useState, useCallback } from 'react';

type Wynik = { wpm: number; dokladnosc: number };

export function useWynik(start: Wynik | null = null) {
  const [wynik, setWynik] = useState<Wynik | null>(start);

  const zapisz = useCallback((w: Wynik) => {
    setWynik((p) => (p && p.wpm > w.wpm ? p : w));
  }, []);

  const reset = () => setWynik(null);

  return { wynik, zapisz, reset } as const;
}
Piętnaście linijek zwyczajnego kodu: 247 liter i 73 znaki spoza alfabetu — a 44 z tych 73 wymagają Shifta. Najczęstsze to nawias okrągły (9 razy każdy kierunek), średnik i znak równości (po 8). To nie litery decydują o Twoim tempie na kodzie.

Mapa palców: który palec za co odpowiada

W standardowym układzie palców prawy mały palec obsługuje ;, : i Enter — a razem z nimi jeszcze siedem innych klawiszy, co czyni go najbardziej obciążonym palcem na klawiaturze (pełna mapa palców). Prawy palec serdeczny sięga po ' i ". Prawy wskazujący zajmuje się 6, 7, y, h i ich symbolami na Shift. Backtick i ~ to lewy mały palec na samej górze — wiele osób o tym zapomina i sięga prawą ręką.

Mały palec prawej ręki to kluczowy gracz w kodzie. Warto poświęcić mu osobne ćwiczenia.

Dlaczego autouzupełnianie nie zwalnia z nauki

Argument „edytor sam domyka nawiasy” jest prawdziwy i niewystarczający. Domykanie działa dla par — nawiasów, cudzysłowów, klamer — ale nie dotyczy znaków, które stoją samotnie: średnika, dwukropka, znaku równości, ukośnika, myślnika. A to właśnie one są najczęstsze w kodzie i to one obsługuje najsłabszy palec.

Druga rzecz: autouzupełnianie stawia kursor tam, gdzie uzna za stosowne, więc po każdym domknięciu trzeba świadomie sprawdzić, gdzie się jest. Przy opanowanych symbolach ten koszt znika, bo piszesz parę ręcznie i wiesz, gdzie kursor stoi — bez patrzenia.

Najczęstsze błędy przy symbolach

Pierwszy błąd to używanie niewłaściwej ręki do Shift — zasada jest prosta: Shift prawą ręką dla symboli lewej strony, Shift lewą ręką dla symboli prawej strony. Drugi błąd to brak powrotu na rząd podstawowy po naciśnięciu symbolu. Palce dryfują i następna litera ląduje na złym klawiszu.

Progresja nauki symboli

Nie próbuj uczyć się wszystkich symboli naraz. Skuteczna progresja wygląda tak:

  • Etap 1: ;, :, (), {} — najczęstsze w każdym kodzie
  • Etap 2: [], =>, ===, !==
  • Etap 3: backtick, <>, |, & — TypeScript i JSX
  • Etap 4: przepisywanie całych snippetów z kodem
TypeScript
export function useWynik(start: Wynik | null = null) {
  const [wynik, setWynik] = useState<Wynik | null>(start);

  const zapisz = useCallback((w: Wynik) => {
    setWynik((p) => (p && p.wpm > w.wpm ? p : w));
  }, []);
}
Fragment, na którym warto się sprawdzić: sześć rodzajów nawiasów, dwie strzałki, generyk w ostrych nawiasach i dwukropki typów — wszystko w pięciu linijkach.

Otwórz plik use-wynik.ts w drzewie po lewej i przepisz z niego jedną linijkę na swojej klawiaturze — bez patrzenia. To jest ten moment, w którym widać, które znaki naprawdę spowalniają.

Jeśli piszesz głównie prompty, a nie kod, proporcje są inne i opisuje je tekst o vibe codingu. Etapy 1–2 przećwiczysz w darmowym kursie, bez zakładania konta. Etapy 3–4 — przepisywanie realnych fragmentów TypeScript i React — to sekcja Dev, zbudowana wyłącznie dla programistów: co dokładnie zawiera, opisuje strona pisania dla programistów. Zanim tam wejdziesz, warto wiedzieć, jaki wynik na kodzie oznacza Twój obecny WPM — i po co w ogóle programiście pisanie bezwzrokowe. Jeśli piszesz na kompaktowej klawiaturze, sprawdź też, czy Twój sprzęt nie chowa tych znaków pod warstwą — a jeśli piszesz komentarze po polsku, AltGr potrafi wywołać skrót zamiast litery.