Dobrý den jsem student střední průmyslové školy , z matematiky mám 1. V poslední době jsem uvažoval o začátku s programováním, podíval jsem se na internet, jaký je dobrý začínací jazyk. Dohrabal jsem se k Javě nebo PHP. Je tu ještě nějaký jazyk, který byste doporučili pro začátečníka? (dělal jsem něco v html, ale to programování není)
Osobně zvažuji začít Javou
Děkuji
To nemáte na průmce předměty o programování?
Pokud zajdu do historie 2006 - 2010 - tak nás na průmce učili pascal, html, c, javascript a nakonec php
Můsím teda říct, že mě ani jeden z těch jazyků v té době nijak nechytil a nechápal jsem jejich využití v reálném životě.
Chci tím říct že je dobré se na programovací jazyk dívat stejným pohledem jako na lidské jazyky. Člověk se učí angličtinu aby mohl jezdit na dovolené a objednat si v restauraci pivo? Nebo se člověk učí angličtinu aby mohl pracovat v Americe ? Proč se člověk vlastně učí angličtinu u nás v české republice kde všichni mezi sebou mluví česky.
S tím souvisí ambice které máš pro to to někam dotáhnout. Pokud se učíš angličtinu jen kvůli testům a proplutí ve škole, daleko se s ní nedostaneš a postupem času zapomeš. Pokud se však učíš angličtinu, aby jsi mohl číst články v angličtině, koukat na filmy v angličtině, psát si s lidmi v angličtině, mluvit s lidmi anglicky, domluvit se na cestách, používat jazyk při práci a škole (erasmus) pak se ti stane nástrojem, který používáš bez přemýšlení.
Programování je na tom úplně stejně, pokud nemáš cíl a vůli někam to dotáhnout, je to ztráta času.
Souhlasím s názorama zde v diskusi, že na tuto otázku by se mělo jít opačným směrem a říct si spíš čeho chci dosáhnout ve svém programování.
Chci psát hry ?
Chci psát automatizaci ?
Chci dělat web ?
Chci dělat appku na android / apple ?
Je to na Windows / Linux ?
Chci mít grafický rozhraní, nebo příkazový řádek ?
Makra pro Excel ?
Chci dělat analýzy / grafy ?
Ovládat roboty ?
Ovládat Raspberry Pi ?
Ovládat arduino ?
Budu po používat já nebo celý svět?
Pokud jsi si jistý cílem čeho chceš skutečně dosáhnout můžeš začít hledat jaké nástroje jsou pro daný problém nejvhodnější. Na to je zde spousty názorů a můžeš začít zkoušet. Další jistotu máš, že pokud chceš začít něčím jednoduchým, většinou to napadlo někoho před tebou a při troše štěstí zanechal na internetu svojí cestu trápení a nalezená řešení.
V počátku bych ignoroval nějakou čistotu kódu, a best practices. Důležitý je, aby si věděl co si napsal a chápal přesně jak to funguje. Postupem času se budeš sám fackovat za špatný kód který si dřív vymyslel protože si zkrátka neviděl vetší obraz a důsledky co to způsobí. To je však v pořádku, je to vývoj.
Počítej s tím, že to budou roky než budeš moct říct že umíš programovat.
Pokud se budeš hlásit o zaměstnání a příjdeš na pohovor s tím co si sám z 0 vymyslel v nějakém jazyku, budeš mít rozhodně větší šanci na úspěch než ten, kdo přijde na pohovor a řekne, že se na škole učil v javě.
Platí zde pravidlo, že pokud umíš jeden jazyk na úrovni toho že si k tomu sedneš a za den nabušíš funkční program bez hledání ničeho. Tak jsi programátor a jazyky jsou jen různé lopaty co právě používáš.
Pro mě konkrétně byla motivace naučit se programovat automatizace mojí práce. Dělám konstruktéra a spoustu rutiních operací co nešli dělat nijak než odklikat, jsem se naučil automatizovat. Z nuly jsem se naučil jazyk (visual basic), který byl pro konkrétní případ nejvhodnější. Nyní už převážně píšu automatizaci pro další firmy které mají stejný problém s rutiními operacemi.
Zde byl efekt programu okamžitý ať byl napsaný čistě nebo bastlení - nad vývojem jsem ztrávil cca 14 dní a ten program dělal práci, která byla na týden za pár sekund. Tu práci děláš tak 10x za rok. Rok 2019 měl 251 pracovních dnů a automatizace ušetřila 50 dní. Ať si lidi říkají co chtějí o jazycích a jejich dobrých a špatných stránkách. Pokud něco vytvoříš z ničeho a funguje to je to pořád lepší než nedělat nic!