Psaní všemi deseti pro programátory
Psaní všemi deseti umožňuje psát a upravovat kód bez hledání kláves. Při psaní funkce, příkazu nebo pokynů pro AI agenta můžete sledovat obrazovku. Programátorská cvičení mají zahrnovat nejen písmena, ale také číslice, symboly a způsoby zápisu názvů v kódu.
To nejdůležitější
- Procvičujte číslice, symboly a názvoslovné konvence svého jazyka. Běžný kurz AgileFingers obsahuje číslice i speciální znaky.
- Používejte lekce programování pro úryvky kódu nebo vložte vlastní úryvek do vlastních textů.
- Efektivně můžete pracovat ve Vimu nebo s klávesovými zkratkami svého oblíbeného IDE.
- Kontrolujte kód vytvořený AI agentem a učte se jej opravovat. Odpovědnost zůstává na vás, i když jej sami nepíšete.
Proč je psaní všemi deseti užitečné při programování
Princip je stále stejný: psát bez dívání na klávesnici. Šetříte čas a soustředíte se na úkol místo na samotné zadávání znaků.
Programování vyžaduje znalost více kláves než psaní slohové práce. Krátký výraz jako items[index] += value; spojuje písmena, hranaté závorky, operátor a středník. Další výrazy přidávají složené a kulaté závorky, uvozovky a číslice. Test ze slov psaných malými písmeny tyto kombinace neprocvičí. Když hledáte symbol pohledem dolů, přestáváte číst kód.
Při změně podmínky musíte kontrolovat i okolní kód. Psaní bez sledování klávesnice umožňuje číst jej průběžně. I po více než 20 letech vývoje softwaru tuto schopnost oceňuji při úpravách kódu, přidávání testů a práci v terminálu.
Procvičujte kombinace, které skutečně používáte
Podmínky, cykly a deklarace funkcí se opakují. Hlavička cyklu v JavaScriptu jako for (let i = 0; i < items.length; i++) obsahuje závorky, středníky, porovnání a inkrementaci. Pokud u některé části váháte, procvičujte právě takové výrazy. Syntaxi zvoleného jazyka byste měli umět rychle napsat.
Důležitá jsou i velká písmena a konvence názvů. userAccount a user_account vyžadují jiné pohyby prstů a návyky. Průvodce stylem Pythonu doporučuje pro funkce a proměnné malá písmena se slovy oddělenými podtržítky, tedy snake_case. Proměnné v Javě obvykle používají camelCase, například userAccount. Třídy a konstanty mají další pravidla. Zvykněte si plynule psát všechny tyto varianty.
Liší se tedy i procvičování: názvy v Pythonu mívají více podtržítek, v Javě více velkých písmen uvnitř názvu. Chcete-li programovat v Pythonu, hodí se více cvičení Pythonu než cvičení Javy.
Při opisování přemýšlejte, co kód dělá a jak je sestavený. Všímejte si, kde končí podmínka a začíná blok. V Pythonu odsazení seskupuje příkazy; jeho změna může změnit chování programu. Neopisujte kód bezmyšlenkovitě.
Procvičujte číslice a speciální znaky
Běžný kurz psaní AgileFingers obsahuje číslice a speciální znaky. Vraťte se k těmto lekcím, pokud vás nějaká číslice, symbol nebo kombinace zpomaluje. Pokud ještě nezvládáte běžný text, začněte jím před cvičením kódu. Jestliže písmena již zvládáte, přejděte rovnou k potřebným klávesám. I po letech programování mohou některé kombinace vyžadovat hledání.
Obrázek ukazuje americké QWERTY. Složené závorky se v něm píší pomocí Shiftu a kláves hranatých závorek. Jiná rozložení mají symboly jinde a mohou používat AltGr. Klávesnici ve cvičení slaďte s aktivním rozložením operačního systému: dostupné znaky závisejí na něm. Změnit jej můžete v nastavení.
Ovládejte své IDE klávesnicí
V IDE JetBrains i ve Visual Studio Code můžete klávesnicí hledat soubory, sledovat volání a přejmenovávat symboly. Naučte se zkratky editoru, který už používáte. Pokud chcete upravovat kód bez myši, rozšíření Vimu nabídne tyto i mnohé další možnosti.
Začněte činnostmi, které každý den opakujete:
- Hledání souborů a symbolů: otevřete soubor nebo přejděte k funkci bez procházení stromu složek.
- Přechod na definici a zpět: sledujte volání k implementaci a vraťte se na místo volání.
- Přejmenování symbolu: použijte nástroj editoru, pokud podporuje daný jazyk. Zkontrolujte náhled a dotčené odkazy.
- Spuštění cíleného testu: zopakujte příslušný test a klávesnicí přejděte k nahlášené chybě.
- Výběr a úpravy: naučte se pohyb po slovech, rozšiřování výběru, komentování řádků a přepínání mezi editorem a terminálem.
Nejprve se naučte hledat akce, abyste nemuseli procházet nabídky. Ve standardních mapách JetBrains otevřou dvě stisknutí Shiftu Search Everywhere. Průvodce zkratkami JetBrains popisuje navigaci a nastavení kláves.
Ve VS Code obvykle otevřete paletu příkazů zkratkou Ctrl+Shift+P ve Windows a Linuxu nebo Cmd+Shift+P v macOS. Editor klávesových zkratek umožňuje hledat příkazy a měnit přiřazení. Pokud se zkratka chová jinak, zkontrolujte aktivní mapu. Výchozí kombinace neměňte ukvapeně: obvykle byly pečlivě zvoleny.
Používejte doplňování dlouhých názvů a úryvky pro opakovaný kód. Například IntelliSense ve VS Code nabízí doplňování i informace o parametrech. Ve cvičení napište celý úryvek sami. V projektu pomoc editoru využívejte, ale kontrolujte vložený text. Pokud opakujete stejné klikání, najděte zkratku a vyzkoušejte ji u dalšího úkolu.
Naučte se dobře pracovat v terminálu
Vývojáři a správci používají terminály k příkazům, testům, čtení logů, správě souborů a práci na vzdálených systémech. Příkazy kombinují názvy, cesty, přepínače, uvozovky, roury a čísla. Před spuštěním si zadání přečtěte. Psaní bez sledování klávesnice umožňuje příkaz sledovat při zadávání i opravách.
Poznejte možnosti úprav ve svém shellu. Ve výchozích zkratkách Readline v Bashi ve stylu Emacsu přesune Ctrl+A kurzor na začátek řádku a Ctrl+E na konec. Ctrl+R prohledává historii zpětně. Tab zkouší doplnit například příkaz či název souboru. Popisuje to část Readline v příručce Bash. Jiné shelly a vlastní nastavení se mohou lišit.
Historie a doplňování šetří opakované psaní. Je-li chybný jeden argument, přesuňte k němu kurzor a opravte jej; celý příkaz není třeba psát znovu. Před Enterem zkontrolujte cestu, přepínače a pracovní adresář. Na vzdáleném systému ověřte i používaný shell, protože jeho ovládání se může lišit od místního.
Měřte přesnost i rychlost
Sledujte tempo, ale také chyby. Pokud stále opravujete stejný symbol, procvičte jej i při dobrém celkovém výsledku. Editor může zachytit překlep v názvu, ne však platný operátor, který dělá něco jiného, než jste zamýšleli. Kód dál kontrolujte a testujte.
Začněte tak pomalu, abyste psali přesně. Zrychlete, až píšete jistě, děláte málo překlepů a ihned je poznáte a opravíte. Porovnávejte stejné cvičení, rozložení, limit a metodu přesnosti. Těžší úryvek může zhoršit výsledek, i když se zlepšujete. Kurz začíná lehce, ale kombinace jsou postupně složitější. Může se zdát, že ztrácíte rychlost, ačkoli se změnila jen obtížnost.
AgileFingers ukazuje slova nebo znaky za minutu. Přepočet počítá pět znaků na slovo, takže dlouhý identifikátor není jen jedním slovem. Přesnost na první pokus započítává chybu i po opravě. Přesnost výsledného textu hodnotí to, co ve cvičení zůstalo. Při porovnávání pamatujte na zvolenou metodu, protože výsledky se mohou lišit. Vyberte nastavení podle svých potřeb.
Cvičení AgileFingers pro programátory
Veselé barvy, obrázky a snadné ovládání mohou budit dojem, že AgileFingers slouží jen začátečníkům, učitelům a žákům. Hodí se do škol, ale vytvořili jej profesionální vývojáři se zájmem o informatiku. Chtěli jsme, aby pomáhal i velmi zkušeným odborníkům. Proto obsahuje literaturu pro procvičování složitějších textů, nejen jednoduchá slova a abstraktní kombinace kláves, a lekce v několika programovacích jazycích. Přidali jsme i retro motivy a tmavé barvy. Jsou střídmější; pokud vám světlé rozhraní unavuje oči, zkuste, která varianta je příjemnější.
Lekce programování obsahují Python, JavaScript, Javu a další jazyky. Vyberte jazyk a opisujte zobrazený kód. Klávesnice a nápověda pro prsty ukazují potřebné klávesy. Po každém cvičení získáte údaje o rychlosti a přesnosti.
Procvičujte vlastní kód
Vlastní kód můžete použít ve vlastních textech AgileFingers. Vložte krátký úryvek k procvičení, pojmenujte jej a uložte. Potom jej vyberte ze svého katalogu. Může jít o funkci s vnořenými podmínkami, SQL dotaz se spojeními nebo parser argumentů v Bashi. Vyberte srozumitelný kód, abyste se mohli soustředit na psaní.
Pokud vás trápí podtržítka a číslice, vyberte názvy, které je obsahují. Pro uvozovky a závorky zvolte úryvek s mnoha takovými znaky. Před začátkem zkontrolujte zobrazený text, zvlášť pokud originál obsahuje tabulátory nebo znaky mimo vaše rozložení. Lze procvičovat i technická vysvětlení a pokyny pro AI agenta.
AI agenti potřebují jasné pokyny a kontrolu
Agent umí vytvořit kód, spustit kontroly a práci upravit. Vy ale musíte vysvětlit požadavek a zkontrolovat změny. Doporučení GitHubu pro programovací agenty zdůrazňují jasné úkoly, lidskou kontrolu a testování vytvořeného kódu.
I když píšete málo kódu, dál popisujete požadavky, uvádíte příklady, hlásíte chyby a komentujete výsledky. "Vylepši formulář" nutí agenta hádat. Uveďte chybný vstup, očekávaný výsledek a funkce, které musejí zůstat zachované. Pokyny upravujte, když se změní požadavky nebo jim agent špatně porozumí. Užitečné podrobnosti zvyšují šanci na vhodné řešení. S agenty možná píšete i více než při vlastním programování. V kódu přemýšlíte nad každým symbolem a hlídáte stručnost, čitelnost a údržbu. V pokynech se snažíte vše důkladně vysvětlit bez stejného šetření slovy. Je to trochu úsměvné: když kód píše AI, může být psaní všemi deseti ještě užitečnější.
Někdo tvrdí, že klávesnice brzy nebude potřeba, protože pokyny lze diktovat. Diktování pomůže s prvním návrhem, ale úpravy stále vyžadují práci: opravit cestu, změnit název proměnné nebo odstranit jednu podmínku z dlouhého pokynu. Pokud vám diktování vyhovuje, používejte ho. Já bych dál trénoval úpravy klávesnicí, abych drobné změny zvládl sám. Také se vám nemusí chtít celý den mluvit do mikrofonu. I výrazný extrovert, který rád mluví se vším a všemi včetně počítačů, musí nechat hlas odpočinout. Někdy chcete pracovat v tichu. K tomu slouží vaše klávesnice.
Necítil bych se dobře při tvorbě produktu, jehož chování nedokážu vysvětlit. Sebejistá odpověď agenta nedokazuje správnou kontrolu oprávnění ani pokrytí okrajových případů. Pokud je produkt váš, odpovídáte za tato rozhodnutí. Naučte se dost, abyste poznali problém a vysvětlili opravu. Jazyk se učíte psaním velkého množství kódu. Pokud chcete jen lépe rozumět syntaxi bez vlastních programů, mohou pomoci lekce AgileFingers.
Chcete-li být výborným programátorem, dál čtěte kód a sami jej měňte. Agenti mohou pomáhat, ale jejich práci důkladně kontrolujte a návrhy kriticky posuzujte. Lekce programování AgileFingers pomohou se symboly a konstrukcemi, které jsou pro vás nejtěžší.
Základy úprav ve Vimu a Neovimu
Vim je textový editor s klávesovými příkazy pro pohyb v souborech a úpravy několika stisky bez myši. Neovim vychází z Vimu a zachovává jeho model úprav. Oba rozlišují režimy vkládání a úprav. V normálním režimu dd smaže aktuální řádek; ciw změní slovo pod kurzorem a přejde do vkládacího režimu pro jeho náhradu. Oficiální dokumentace Neovimu popisuje pohyb, úpravy a další funkce.
Učte se příkazy přímo v editoru, kde vidíte jejich účinek. V některých distribucích Neovimu otevřete pomocí Escape, :Tutor a Enteru interaktivní výuku. Je-li vypnutá, spusťte v terminálu nvim --clean a zkuste to znovu. Tím se načte výchozí nastavení Neovimu. Pro Vim postupujte podle pokynů vimtutor pro svůj systém.
Projděte malou část výuky a zopakujte ji bez pokynů. Pak otevřete kopii známého souboru a stejnými příkazy nahraďte název nebo smažte řádek. Než se učit dlouhé seznamy, osvojte si několik častých úprav.
Funkce IDE v Neovimu
Neovim podporuje rozšíření pro hledání souborů, navigaci, doplňování, diagnostiku a formátování. Nastavte je sami nebo použijte připravenou distribuci. Takovým balíčkem je LazyVim. Nabízí řadu známých funkcí IDE, ale stále potřebujete nástroje pro svůj jazyk. Průvodce zkratkami a okno which-key pomáhají najít příkazy.
Rozšíření Vimu můžete používat i ve svém běžném IDE. Ověřte, které zkratky přebírá rozšíření a které IDE, zejména při nečekaném chování. Začněte několika častými příkazy.
Krátký plán procvičování
Vyberte něco, co vás dnes zdrželo: hledaný symbol, často chybně psaný název nebo nenalezený příkaz. Tím začněte příští cvičení:
- Vyberte lekci kurzu s potřebnou číslicí nebo speciálním znakem.
- Opište programovací lekci či vlastní text, který znak používá v kódu.
- Zkontrolujte výsledek a chybnou část zopakujte dostatečně pomalu, abyste ji napsali správně.
- Vraťte se do editoru nebo shellu v terminálu a použijte procvičenou věc ve skutečném kódu či příkazu.
Procvičujte i běžný text. Komentáře, dokumentace a pokyny pro AI patří k práci. Použijte literaturu z textů AgileFingers nebo si připravte a přepisujte vlastní technické poznámky. Chcete-li si při učení odpočinout, zkuste hry na psaní.
Otázky programátorů
Tyto otázky se objevují v diskusích programátorů na Redditu o psaní bez sledování klávesnice při práci v IT.
Proč píšu slova rychle, ale u kódu zpomaluji?
Písmena můžete znát dobře, ale u závorek, uvozovek, číslic a velkých písmen váhat. Zpomaluje i neznámá syntaxe. Vyberte krátký srozumitelný úryvek a procvičujte obtížné kombinace. Srovnávejte pokusy se stejným úryvkem. Programovací lekce vám pomohou na psaní kódu zvyknout.
Musím se naučit psát všemi deseti před programováním?
Obě dovednosti lze rozvíjet současně. Dál tvořte programy a chvíli věnujte klávesám, které stále hledáte. Pro začátek projektu nepotřebujete vysokou rychlost. Pokud už pracujete jako programátor, zařaďte stejné cvičení do běžného dne.
Musím kvůli kódu změnit rozložení klávesnice?
Začněte rozložením z práce, zvlášť pokud jej potřebujete i pro svůj jazyk. Před změnou procvičte symboly. Jiné rozložení může vyhovovat, ale myslete na domácí i pracovní klávesnici. Přepínání může být nepohodlné, pokud doma používáte výrazně upravenou programátorskou klávesnici a v práci standardní s jinými přiřazeními.
Vyberte vhodná přiřazení a ověřte, zda je můžete používat na obou počítačích. Pokud lze, zachovejte stejné polohy častých písmen a symbolů i stejné zkratky, abyste se je stále neučili znovu. Nelze-li pracovní prostředí přizpůsobit domácímu, udržujte si praxi i se standardním rozložením. Nové polohy se naučte dříve, než na ně budete spoléhat během náročného dne.
Vyzkoušejte to při příštím programování
Při další úpravě kódu či zadávání příkazu si všimněte kláves, kvůli nimž se ještě zastavujete a díváte dolů. Procvičte je v lekcích programování nebo přidejte vlastní úryvek. Dál používejte editor a AI, ale čtěte, kontrolujte a opravujte jejich výsledky. I když se vám nelíbí současný stav IT a poslední změny, mnohé sotva ovlivníte. Jako zkušený vývojář doporučuji některé změny přijmout a přizpůsobit se kvůli vlastní pohodě. Nenechávejte ale vše na AI. Alespoň část kódu pište sami, abyste v jazyce dokázali tvořit, nejen jej číst. Používejte klávesnici: je to fyzický, hmatatelný komunikační nástroj. Mezi digitálními produkty zůstává něčím skutečným. Potřebujeme věci, kterých se můžeme dotknout a s nimiž můžeme pracovat, které nás drží v kontaktu se skutečným světem.