Fórum Root.cz

Práce => Studium a uplatnění => Téma založeno: TDiblik 27. 07. 2023, 02:08:02

Název: Vysoká škola pro pokročilého programátora
Přispěvatel: TDiblik 27. 07. 2023, 02:08:02
Čauko,
vláken ohledně porovnání vysokých škol jsem tu našel opravdu hodně a začínat novou diskuzi ohledně toho, která škola je lepší úplně nedává smysl (a nejspíše by jako předešlé, nikam nevedla). Toto vlákno spíše slouží jako žádost o personalizovanou radu, jelikož opravdu nevím, co do budoucnosti. Aktuálně za měsíc začínám 4. ročník střední školy DELTY (https://www.delta-skola.cz/) a posledních pár měsíců se mi honí hlavou kam dál.

Než budu pokračovat, je důležité, aby jste pochopili něco více o mě. Osobně bych doporučoval kouknout se a projet něco o mě (https://tomasdiblik.cz/pages/about-me), projekty na kterých jsem pracoval (https://tomasdiblik.cz/pages/projects), moje pracovní zkušenosti (https://tomasdiblik.cz/pages/work-experience), Github (https://github.com/TDiblik/), nebo LinkedIn (https://www.linkedin.com/in/tdiblik/), kde se oficiálně prezentuji.

Písemné shrnutí je však následující:
Poslední +-4 roky non-stop programuju. Nějak kolem začátku kvarty na gymplu jsem začal s pythonem a od té doby jsem nad tím strávil snad každý den i noc. Oproti jiným jsem měl tu výhodu, možnost a privilegium, kterého si do dnes vážím, že se mne ujala firma VPSR (https://www.vpsr.cz/), vzhledem k tomu že v ní pracoval můj taťka (jako správce IT) a měli pouze jednoho programátora, který byl zároveň jeden z vlastníků firmy (tudíž měl i jiné starosti než čistě programování :D). To znamenalo, že pokud měli nějakou věc co by se dala zautomatizovat (https://tomasdiblik.cz/pages/blog/pr/10-03-2023/robot-assisted-laser-plate-processing), nebo program který potřebovali vytvořit, tak to dali mě. To mě nejen extrémně rychle posunulo v mých schopnostech programovat, ale vidět že moje programy reálně pomáhají lidem mě naplňovalo věnovat tomu ještě více času. To nakonec vyvršilo ve vedlejší pracovní poměr (při studiu střední školy!) od 15tých narozenin, který udržuji do dnes a velice si této příležitesti vážím.
Menší problém nastal v tom, že když jsem nastoupil na DELTU, tak jsem už dělal věci, které jsme se dosud ani neučili (např. správu Linux serverů máme až ve čtvrťáku). To znamená, že celé moje studium (technických předmětů) poslední 3 roky proběhlo se sluchátky na hlavě a vytvářením několika-měsíčních projektů za pár dní (doslova), vždy na plný počet bodů. Jediné předměty, které bych do dnešního data rád povznesl byly Databáze (s Ing. Monika Borkovcová, Ph.D.) a Sítě (s doc. Mgr. Josef Horálek, Ph.D.), které mi nejen něco dali, ale také ve mě zapálili touhu zajímat se o dané téma více ve svém volném čase. Naštěstí škola je zaměřená na IT, tudíž jsem čas nepromrhal a dělal jsem buď testíky nových technologií, pokračoval v projektech do práce, nebo dělal na svých projektech místo práce v hodině. Důležité podotknout že toto nevnímám jako selhání na straně školy, jelikož se předpokládá že na školu přijde žák bez předešlých znalostí. Ba naopak, tato škola je perfektní v tom, že pokud je někdo napřed, může se sám rozvíjet a do té doby dokud odevzdává práce, není problém když si dělá na svých věcech. Každopádně, vzhledem k tomu, že jsem 90% času dělal sám, tak jsem se taky musel naučit všechny části vývoje. Za celou dobu jsem vytvořil okolo 15ti+ firemních aplikací, které běží do dnes (většina z nich close-sourced, ale co jde tak publikuju buď source a nebo článek o tom jak to funguje), typu: Webové (https://tomasdiblik.cz/pages/blog/pr/13-03-2023/tank-parameterization) (čisté js-html-css, ale i react a např Svelte. BE záleží, ale většinou to píšu v C#, Go nebo TS), Desktopové (https://tomasdiblik.cz/pages/blog/pr/25-04-2023/revision-books) (většinou winforms, ale na hobby projekty preferuji tauri/egui), Embedded (https://tomasdiblik.cz/pages/blog/pr/11-03-2023/multi-device-monitor-and-control-system) (ať už komunikace s před-programovanými zařízeními, tak ale i arduino a aktuálně vytvářím svoje první vlastní desky v KiCadu), Mobilní (https://tomasdiblik.cz/pages/blog/pr/12-03-2023/lunch-ordering-and-management-system), AI-powered (https://tomasdiblik.cz/pages/blog/pr/14-03-2023/main-gate-alpr) (nic jsem netrénoval, jenom postahoval modely a spojil je dohromady), či for-fun scriptíky (https://tomasdiblik.cz/pages/blog/technical/27-04-2023/bruteforce-default-strava.cz-login). Koho by zajímal můj ustálený tech-stack, může se kouknout na více info zde (https://tomasdiblik.cz/pages/tech-stack), ale v jednoduchosti, pokud je to něco low-level, nejspíš to udělám v Cčku. Pokud je to něco co je performance-heavy/cli toola/desktop, udělám to v Rustu. Pokud je to API, udělám to buď v C#, nebo v Golangu, záleží na velikosti projektu. Pokud je to FE, tak jestli je to statický, tak html-css-js stačí, pokud je to web aplikace, tak jestli je korporátní tak vezmu React, pokud je internal/hobby, vezmu Svelte.
Pointa, kterou se snažím udělat je to, že co se programování týče, tak jsem prozkoumal snad každý koutek (OOP, FP, Procedural, Algoritmy, Datové struktury, Linux kernel moduly, Haskell,...) a nemám problém s učením se nových či starých technologií, vytvářením projektů, zabezpečováním projektů, udržováním legacy kódu (nejstarší kód co jsem opravoval byl psán okolo roku 2005 a co jsem migroval okolo roku 2000) a celkově prostě chápu jak to všechno funguje a skoro kód se mi píše skoro samo a všechno to prostě dává smysl. Vlastně kromě compileru, nebo projektu psaného čistě v assembly si nedokážu vybavit co jsem ještě neprogramoval (ano, fixoval jsem i např Pascal projekt :D)?

Co dál?
No a teď se musím rozhodnout nad tím, kam se chci vydat. První krok bylo vyjasnit si co nechci dělat, co bych byl ochotný dělat a co bych chtěl dělat.

- vůbec mě nebaví:
   - AI a excel-style datová analýza
   - Tech support
   - QA testování
   - UML a byrokracie

- byl bych ochotný dělat:
   - Frontend UI => když přijde na frontend funkcionalitu, to mě baví, ale jakmile mám dělat cokoliv s UI, pomalu ale jistě zevnitř umírám, avšak jsem ochotný to dělat jako práci, nebo část projektu která se prostě musí udělat (nějak to holt přetrpím). Nejde o to že bych neměl znalost CSS, nebo nevěděl jak se něco dělá, ale prostě mě to nebaví (kupodivu designovat si to ve Figmě a rozvrhovat na papíře mi vůbec nevadí, avšak designer fakt nejsem).
   - Migrace starého softwaru do nové formy => toto mi jde docela rychle, jelikož jsem to dělal už několikrát a firmy to potřebují, ale prohrabávat se v starém softwaru a zjišťovat jak to funguje + jak to zmigrovat není úplně největší zábava.
   - Webové stránky ve WordPressu na zakázku. Vůbec mě to nebaví, ale docela dost lidí je schopný za něco takového zaplatit docela dost peněz.
   - Typické CRUD stránky. Všichni to známe, firma chce něco vytvořit, vyčíst, upravit, smazat. Někdo to vidí, někdo ne. Jedno a to samý dokolečka.

- chci dělat:
   - Backend
   - Management databáze
   - Server management
   - CLI tooly pro zjednodušení života ostatním lidem
   - Penetrační testování (+ tooly pro penetrační testy)
   - Low level development pro výrobce aut
   - Security research
   - Security code-audity firemních projektů (něco podobného dělám ve škole spolužákům na projektech a přijde mi to docela jako zábava. Preferuji to mnohem více oproti black-box penetračnímu testování)
   - Software s extrémně jednoduchým UI, který slouží na nějaký typ automatizace
   - Datová analýza na styl ip-atlasu (https://github.com/TDiblik/ip-atlas), či deps-graphu (https://github.com/TDiblik/deps-graph)
   - Programování neoficiálních cross-platform klientů pro Microsoft (či jiné) produkty (např teď dělám na ms-todo a potom se vrhnu na onedrive)
   - OSS Hardware produkty
   - vývoj a research virů

- přijde mi extrémně zajímavé, ale nevím co od toho očekávat:
   - vývoj softwaru pro nemocniční zařízení
   - vývoj a research hardware exploitů
   - vývoj a research win32 exploitů, linux kernel exploitů a MacOS exploitů

Úplně upřímně, bude to znít špatně, ale hodně přemýšlím nad tím že bych na vysokou prostě nešel, jelikož mám pocit že bych se z programování nic nepřiučil a poslední co chci je dalších 5 let sedět ve sluchátkách na technických hodinách. Speciálně jsem procházel programy ČVUT FIT - Softwarové inženýrství ;  ČVUT FIT - Webové inženýrství ; ČVUT FIT - Informační bezpečnost ; VUT FIT ; ČVUT FEL SIT ; ČVUT FEL KYR ; MUNI FI - Programování a vývoj aplikací ; MUNI FI - Kyberbezpečnost, ale žádný mě nezaujal (magisterské programy ujdou, ale ten bakalář je fakt nuda úplně všude). Opravdu jsem si jednotlivé programy otevřel a začal procházet předmět po předmětu, ale ty věci co se učí (min na bakalářce + půlka magistra +-) prostě už všechny znám. Hlavní problém je to že bych zase začínal jakoby od nuly(!!!), takže základy pythonu, základy C, a atd. To zní jako perfektní ztráta dalších 3-5 let :/. Na druhou stranu je vysoká zdarma (oproti Americe) a co se životních nákladů týče, tak bych, díky bohu, neměl mít problém je pokrýt. Bohužel je pořád pravda, že se lidé koukají na titul a mám za to že by mi do života mohlo uškodit ten papír z vysoký nemít. Proto mám teď dilema. Buď nikam nepůjdu a pošupajdím za rok do práce, nebo půjdu na nějakou extrémně jednoduchou/nudnou vysokou při které bych se mohl seberozvíjet a titul si udělat "vedle", no a nebo najdu nějakou která by mě mohla bavit a věnuju tomu všechen svůj čas. Můj hlavní problém spočívá v tom, že nechci znova začínat od nuly. Chápu že většina lidí tak začíná a chápu že to tak dává smysl, ale v mém ideálním (sobeckým) světě bych nastoupil na vysokou a rovnou by jsme jeli hardcore fungování počítače, assembly, vývoj virů, exploitace, embedded věci, pokročilý koncepty a atd, stejně jako například když přijdu na vysokou, tak se počítá s tím že umím matematiku na středoškolským levelu a na vysoké už se jedou extrémně pokročilý koncepty. Prostě něco proč tam člověk musí chodit a nemůže se to jen tak naučit sám z internetu. Na druhou stranu všechny ty věci co všechny programy (IT related) slibují naučit jsou koncepty, které využívá každý řádový programátor na denní bázi a je extrémně jednoduché se je naučit sám (v tomto porovnání jako něco jako ta středoškolská / základoškolská matika).

Jak to uzavřít?
Uf, pokud to někdo dočetl až jsem, za prvé děkuji, za druhé, celý text byla směs myšlenek, tudíž, by bylo dobré to nějak
smysluplně uzavřít, o což se pokusím v následujících otázkách. Pokud by jste měli cokoliv na co budete chtít zareagovat, budu víc než rád vést konverzaci!

Je nějaká vysoká škola kde se nezačíná "od nuly"?
Je možnost nějak "přeskočit" bakalářské obory a vrhnout se rovnou na magisterské? Např ČVUT FIT - Počítačová bezpečnost vypadá docela zajímavě.
Na základě požadavků, je nějaký obor, který Vás, jako čtenáře uhodil, že by mi padl jako vyšitý? Protože aktuálně se pohybuju někde mezi: Softwarové inženýrství, nebo Kyberbezpečnost, nebo Biotechnologie, což je poměrně daleko od sebe :/
Jsou moje předpoklady a požadavky vůbec reálné? Je možné že vzhledem k tomu že jsem na vysoké ještě nebyl, že ty obory vůbec nebudou tak lehké jak si představuji? (avšak snažil jsem se soudit na základě popisů oborů a courseware obsahů [pokud bylo možno])
Dává vůbec smysl jít v mém případ na programátorský obor/školu? Říkal jsem si jestli by nedávalo smysl jít na nějaký obor, který kombinuje programování + něco, ale nic moc mě nenapadá (kromě kyberbezpečnosti a biotechnologie)... Na druhou stranu, programování je něco co mě může dobře živit dalších X let bez toho aniž bych měl jakékoliv problémy....

FAQ:
Proč to řešit už teď? => Spoustu vysokých škol přijímá bez přijímacích zkoušek, pokud se dobře umístíte v nějakých z školou uznávaných soutěží. Co jsem si ale všiml je, že většina těchto soutěží začíná okolo Září/Října, tudíž bych chtěl už v tuto chvíli vědět kam dál, abych se mohl co nejvíce daných soutěží zúčastnit a potencionálně se úplně vyhnout SCIO testům / přijímacím zkouškám.
Co podle tebe znamená "jednoduchou" / "nudnou" vysokou školu => Pokaždé když napíšu jednoduchou / nudnou, myslím tím technické obory, které jsem si jistý že zvládnu levou zadní. Jsem si vědom toho, že tam jsou i jiné předměty, jako matematika, s kterou budu mít problém a budu se na ní muset učit. Aktuálně na tom nejsem z matematiky nejlíp, takže to je určitě něco co by mi jakákoliv vysoká dala.


Rád bych tento text zakončil tím, že není můj záměr znít nějakým způsobem povýšeně, nebo pohrdačně, tohle je můj subjektivní názor na věc vytvořen na základě objektivního shrnutí toho co jsem již vytvořil, co umím a co studijní programy slibují naučit.

Děkuji za předčtení a předem i za jakoukoliv odpověď! <3

(připojuju soubor s potvrzením že jsem to opravdu já, jelikož tento účet je extrémně mladý :D)
Název: Re:Prosím o radu ohledně vysoké školy pro pokročilého programátora
Přispěvatel: hmmmw 27. 07. 2023, 07:27:15
Tak po tomto textu si připadám jako větší nula, než jsem. Ale aspoň mě to zas nakoplo trochu na sobě máknout.

Ohledně VŠ souhlasím s tvou úvahou o zbytečnosti a učení se něčeho, co už znáš. A zárověň souhlasím, že titul není k zahození, už vzhledem k nějakému tomu postupu do nejodbornějších kruhů.

Tak mě napadá, nezvládl bys třeba toho bakaláře si napráskat do jednoho/dvou let, odchodit si přednášky, co tě zajímají, a ostatní projekty/úkoly jen formálně odevzdat.
Název: Re:Vysoká školy pro pokročilého programátora
Přispěvatel: technomaniak 27. 07. 2023, 08:01:30
Podle mě je otázka jestli na VŠ chceš nebo nechceš. Na 99,9% na ní máš, je jenom otázka jestli dalších 5-6 let chceš chodit do školy a MUSET SE učit co tě zajímá/A HLAVNĚ CO TĚ NEZAJÍMÁ. Protože o to VŠ je, všechny zkoušky MUSÍŠ UDĚLAT a nemůžeš si vybírat. Co tě baví/nebaví je tudíž irelevantní. Spíš si promysli, jestli potřebuješ lehkou školu, která ti umožní mít více volného času a dělat co ty chceš/potřebuješ, nebo těžkou školu kde budeš mít mnohem méně času na to co chceš ty dělat. Pokud se rozhodneš na VŠ jít, tak zjistíš u diplomky že v oblasti programování ti VŠ prakticky nic nepřinesla protože to už umíš(po VŠ nejsi žádný expert na programování), to přichází hlavně programováním(známé jako prací v praxi). Na druhou stranu znalosti či titul z VŠ ti mohou(ALE NEMUSÍ) někdy v budoucnosti(nikdo neví jaká bude) třeba v něčem pomoci, nikdy nevíš kam tě život pošle. Nikdo nepoví jak bude svět vypadat za 20,30 let(možná přijde technokolaps, atomová válka, bude zrušena hotovost, 3D nemovitostí, neuronový internet, atd..). V životě potkáš schopné lidi s titulem ale i bez.

PS. důležitá informace : na konci každého semestru máš "prakticky maturitu". To množství učiva co se učíš na maturitu musíš zvládnout každý semestr pokaždé s jiných předmětů, které na sebe navazují/nenavazují.
Název: Re:Vysoká školy pro pokročilého programátora
Přispěvatel: JaaSt 27. 07. 2023, 08:06:49
Úplně upřímně, bude to znít špatně, ale hodně přemýšlím nad tím že bych na vysokou prostě nešel, jelikož mám pocit že bych se z programování nic nepřiučil a poslední co chci je dalších 5 let sedět ve sluchátkách na technických hodinách.

Kdysi dávno jsem byl v podobné situaci. Šel jsem na ČVUT, tak jsem začínal znova od nuly se vším co jsem už uměl kromě fyzikální chemie, nudil jsem se, snaha nějak přeskočit první dva roky nevyšla (ale moc jsem se ale nesnažil) a tak jsem zase po prvním semestru odešel a rovnou začal programovat v zaměstnání. Víceméně se mi stalo za víc než 25 let praxe jen jednou, že by někoho zajímalo, jakou mám školu. A to bylo, když jsem zkoušel výběrové řízení pro NASA, kde mě vyhodili hned v prvním kole pro nedostatečné vzdělání. Takže bych se rozmýšlel třeba i podle toho, že jsou oblasti, kde to bez školy nejde a nebo jen s velkým úsilím.
Název: Re:Vysoká školy pro pokročilého programátora
Přispěvatel: jjrsk 27. 07. 2023, 08:24:45
Na druhou stranu je vysoká zdarma...
Tak to teda fakt neni ...  To ze neplatis skolny neznamena, ze to je zdarma. Pocitej tak s 1/2 prumernyho prijmu mesicne jako naklady. Pokud nebudes bydlet u teticky a po vecerech se prizivovat jako jeji dzigolo ;D.

Pokud nechces delat pro stat, titul nikoho nezajima. Na VS muzez navazat zajimavy kontakty, ale zaroven pocitej s tim, ze se tam setkas s vysokou koncentraci neschopnych idiotu (na strane vyucujiich). Pokud mas problem s tim, ucit se basnicky zpameti, tak budes mit problem se studiem. Ze tomu rozumis/umis nikoho nezajima.

To co zminujes ... (hardcore fungování počítače, assembly, vývoj virů, exploitace) ... bude zcela jiste zvladat cast studentu, ale nikoli vyucujicich.

Nase skolstvi je cely koncipovany tak, ze se vzdy zacina od nuly. Musi ... jako prumyslovak na felu sem tam musel merit to, co sem uz 100x delal na prumce, ale gymplaci to nikdy nevideli. Nesmeli by tam ty gymplaky poustet.

Pokud se nic nezmenilo, zapis si prazskou ekonomku, budes tam chodit na hodinu tydne, a zbytek casu muzes venovat svymu vzdelavani ... Jekoliz ekonomove nezvladaji ani 1+1, tak tu matiku tam das vpohode.
Název: Re:Vysoká školy pro pokročilého programátora
Přispěvatel: alex6bbc 27. 07. 2023, 08:32:48
ted jsi praktik, na vysce k tomu muzes ziskat teoreticke podklady.
Název: Re:Vysoká školy pro pokročilého programátora
Přispěvatel: kedlub335 27. 07. 2023, 08:37:07
Možná toto nechceš slyšet, ale co tahle využít jiných věcí co VŠ nabízí než jen titul?
Kdybych já byl ve tvé kůži a měl to ve tvém věku v hlavě takto srovnané, tak na bc jdu, zvládám s přehledem studium, maximálně využívám erasmů a vysokoškolského života. Když si to umíš zařídit a už jen podle toho jak se vyjadřuješ, umíš, tak si z VŠ můžeš udělat velmi levnou cestovku se spoustou zážitků, poznáním jiných kultur a známostí ve světě.
Název: Re:Vysoká školy pro pokročilého programátora
Přispěvatel: Ink 27. 07. 2023, 08:42:15
1. Potřebuješ titul nebo si to myslíš? Jdi na lehkou školu, ideálně v dálkové/kombinované formě studia, ať tam ztrácíš čas co nejvíc.

2. Chceš být formálním vzdělancem? Jdi místo toho na těžkou školu (MatFyz, Jaderka). Klidně i něco v jiném oboru, pokud Tě zajímá.

3. Chceš být prostě dobrý SW vývojář? Projdi odborné předměty, které na VŠ přinášejí relevantní teorii (nějaká vyšší matematika, asymptotická složitost atd.). Bojíš se, že budeš potřebovat titul? Goto 1.
Název: Re:Vysoká školy pro pokročilého programátora
Přispěvatel: CPU 27. 07. 2023, 09:01:08
1. Potřebuješ titul ... Jdi na lehkou školu, ideálně v dálkové

3. Chceš být prostě dobrý SW vývojář? Projdi odborné předměty, které na VŠ přinášejí relevantní teorii

Přesně, udělej si managementovou VŠ, ať se moc nezapotíš a ostatní si cucni někde sám podle potřeby.
Název: Re:Vysoká školy pro pokročilého programátora
Přispěvatel: František Ryšánek 27. 07. 2023, 09:11:58
Pokud se vážně zakousnete do low-level věcí a embedded vývoje, jako že mezi hardwarem a co se děje v kernelu, napadá mě jeden konkrétní potenciální zaměstnavatel, se kterým byste výhledově mohl mít společné zájmy: Sysgo (dělá pro ně už pár let Ruik). Ono by se ukázalo, jak moc Vás baví študovat specifika UEFI, nebo naopak specifika ne-X86 platforem, bojovat s řídkou dokumentací hardwaru, bugy apod :-) Pokud se týče konkrétně embedded vývoje pro automotive, tak pozor na to co si přejete, protože by se Vám to ještě mohlo splnit :-)

Jak už psali jiní, vejška pro Vás může znamenat spoustu učení/témat, která ještě neznáte, ale kvůli tomu ještě pro Vás nebudou nutně zábavná. Zejména v prvních ročnících mají vejšky docela široký záběr témat a jsou tam zaměstnané různé postavy. Co si pamatuju, na vejšce jsem nezápasil s potřebou pochopit cosi do hloubky, jako spíš s nedostatkem času, nacpat si všechno to povrchně odpřednášené seno do hlavy dostatečně rychle, abych udělal zkoušku a mohl to zase šťastně zapomenout. Jako člověku se hodí, mít i trochu přehled mimo svůj úzký obor, ale u některých předmětů jsem opravdu těžko hledal jiné odůvodnění té ztráty času, než byl zápich do indexu... Čas, čas čas. Aspoň v tomhle máme startovní čáru všichni zhruba stejnou.

Matiky se předem nebojte - jednak to není zrovna pavěda, druhak se může hodit, zejména pokud byste v rámci embedded zabrousil do "řízení procesů" (control theory). Stabilita zpětnovazebních smyček, filtrace signálů a tak. Na rozhraní s analogovou elektronikou a fyzikou. Vlastně ani tahle matika není úplně raketová věda - a nejlíp se to študuje, pokud si zároveň mácháte ruce po lokte v nějakých praktických problémech, které s tím souvisí, držíte v ruce kus živého hardwaru, který se nějak chová a snažíte se to chování tvarovat... což se Vám bohužel na přednesech a cvikách z matiky nejspíš nepřihodí :-)

Máte výhodu, že nemusíte na vojnu.
Název: Re:Vysoká školy pro pokročilého programátora
Přispěvatel: oss 27. 07. 2023, 09:13:10
Lahka vysoka skola je strata casu.

A na tej tazsej sa naucis, ze ked vies spravit funcy program este neznemaena, ze vies programovat.
Název: Re:Vysoká školy pro pokročilého programátora
Přispěvatel: hmmmw 27. 07. 2023, 09:17:18
Pokud nechces delat pro stat, titul nikoho nezajima. Na VS muzez navazat zajimavy kontakty, ale zaroven pocitej s tim, ze se tam setkas s vysokou koncentraci neschopnych idiotu (na strane vyucujiich). Pokud mas problem s tim, ucit se basnicky zpameti, tak budes mit problem se studiem. Ze tomu rozumis/umis nikoho nezajima.

Je vidět, že jsi na žádnou VŠ nechodil, protože na normálních technických školách je důraz na pochopení. Požadavky na memorování byly naprosto výjimečné případy, které vycházely od učitelů, kteří byli těmi neschopnými idioty. Těch ovšem na dobré škole zas tak moc není.
Název: Re:Vysoká školy pro pokročilého programátora
Přispěvatel: Halofon 27. 07. 2023, 09:19:33
Neviem, ci nazor odo mna bude pre teba relevantny, kedze prakticky neprogramujem a som o dost starsi, ale ajtak prihodim.
Pre mna bola vysoka (v inom odbore mierne pribuznom IT) skor ako o realnych znalostiach viac o tom, ako komunikovat v time, riesit timove projekty, ako prezentovat vykonanu pracu. Ako spolupracovat s ludmi, ktorych nemas rad... Co s odstupom casu vnimam ako uzitocne skilly.
Kedze ale za sebou uz nieco odrobene mas, tak mozno toto ani nepotrebujes.
Co sa tyka znalosti, podla mna vysoku skor nepotrebujes a mal by si sa rovno ohliadnut po full time praci.
Ale mozno sa neobmedzovat na CR, ale pozriet nejake zahranicie so stipendijnymi programami. Ked si urobis VS v UK alebo Svajciarsku tak budes uplne inde co sa tyka skusenosti a zamestnatelnosti.
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: Josef Marianek 27. 07. 2023, 09:57:46
Mne VS zpocatku taky zklamala (FI MU). Cekal jsem ze budu hlavne neco programovat. Nakonec to byla spis matematika. Ale nelituju, ty teoreticke zaklady nejsou k zahozeni a taky se naucis jeste lip se ucit. Objevi se nove obzory, dosud nevidene, treba teoreticke zaklady jazyku (muzes pak treba vyvijet kompilatory a interprety), streva OS a siti (udrzba jadra linuxu). A taky muzes zacit uvazovat o tom, ze jednou programovat nebudes a bude treba vest lidi, kteri to odprogramuji za tebe (ty uz remeslo programovani budes znat dobre a moc te toho neprekvapi).
Název: Re:Vysoká školy pro pokročilého programátora
Přispěvatel: Exceptions 27. 07. 2023, 10:03:15
mám ročně desítky pohovorů (databáze, distribuované systémy a výpočty, výpočetní clustery, java backendy), rozdíl mezi samoukem a VŠ uchazečem je propastný ve prospěch VŠ. Málokdy potkám člověka bez VŠ, který by tušil jak věci fungují.

Najít člověka bez VŠ vzdělání, který by znal rozdíl mezi joiny u SQL, který by uměl vyhodnotit latency systému v čase (vlastně správně počítání percentilu a směrodatné odchylky bývá velký problém), který by dokázal popsat běžné komunikační protokoly a jejich vliv na bezpečnost, dostupnost, latency a propustnost, který by chápal rozdíl mezi heapou, stackem a různýma datovýma strukturama v javě je prostě problém. Přitom to jsou vesměs mid-senior role s praxí do 5 let.

VŠ ti dá možnost praxí a stáží, dostaneš se do prostředí a projektů, kam běžně nemáš šanci přičuchnout. To ti dá obrovské zkušenosti a výhodu. Stejně tak potkáš spousty lidí, vytvoříš si kontakty, i s jinými obory, které bys normálně nepotkal. To, že se tam učíš věci, které tě nezajímají a nepříjdou ti užitečné je vlastně plus, naučíš se vstřebávat i informace, které nechceš a naučíš se s nimi pracovat, dá ti context do ostatních oborů, v praxi nikdy nebudeš mít čas studovat věci okolo, vždy jsi zaměřen pouze na výsledek.

Na druhou stranu tě to na pár let zpomalí v budování kariéry, dá ti možnost dále růst, ale musíš to chtít, pokud ti stačí dělat frontend, wordpress a migrace, nejspíš ani VŠ nepotřebuješ, pokud ale chceš více řešit vnitřnosti OS, bezpečnost a optimalizace, bez VŠ se ti to bude dělat těžko.
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: makovec_3 27. 07. 2023, 10:10:44
K životu a dobré práci vysokou školu nutně nepotřebuješ.

Vysoká škola je jiná než střední v tom že bude hodně taková jakou si ji uděláš (hlavně vyšší ročníky).

“Praktické” vědomosti co si odneseš zastarají tak jako tak, teoretické základy jako matematika zůstanou, i když je asi málokdy opravdu použiješ a postupně se taky z paměti ztratí.

Co zůstane jsou měkké dovednosti: schopnost se strukturovaně učit, zejména nové, cizí věci které tě třeba ani moc nebaví, od základu.

Ideálně se také naučíš myslet out of the box - chápat a pracovat nerutinně, challengovat své zaběhlé mentální konstrukce a představy.

Programování nejsou jen technologie, je to také - a v některých rolích opravdu hodně - pochopení problémů okolního světa které ty technologie řeší a jejich analýza tak aby šly těmi technologiemi řešit.

Vysoká škola ti ideálně otevře svět “unknown unknowns” - oborů kterým nejen zatím nerozumíš, ale o kterých ani nevíš že existují.

Ale záleží hodně na tobě co od toho chceš a jak aktivně k tomu přistoupíš a co si z toho vezmeš. Samo se to nestane, a občas to také prostě nepůjde - i to je dobré si zkusit nanečisto dřív ve škole než v regulérní práci.

Pokud půjdeš teď seriózně pracovat v oboru, tak se do školy tak jak bys jí prožil teď už nikdy nevrátíš.
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: _Jenda 27. 07. 2023, 10:33:18
V mé bublině se na titul v podstatě nekouká a když předložíš resume jako si už teď buduješ, tak jsi zlatej. A pak samozřejmě když se během prvních pár měsíců neukážeš jako úplně nepoužitelnej :-).

Ve tvém seznamu VŠ ti chybí informatika na MFF UK. Já tu jsem trochu známý svým hejtem na ČVUT, tam bych jako čistý programátor fakt být nechtěl (asi ani na FITu) (s elektronikou je to trochu jiné a jinou možnost bys neměl) a brněnské školy neznám, tak nedokážu posoudit.

Jinak bych vypíchl to co psal _Tomáš_, myslím si že by se ti extrémně hodily základy teoretické computer science, což tedy nutně neznamená VŠ vystudovat (můžeš třeba studovat 2 roky a vychodit ty předměty a pak to ukončit (na druhou stranu na MFF pak už je to „jenom“ matematika a vlastně máš minimálně bakaláře hotového :) ) ani studovat (pokud to zvládneš samostudiem). Ale pokud si to vůbec nenastuduješ (jako nevím jaké povědomí o tom máš už teď), tak tě to pak bude brzdit a v nejhorším to interpretuješ ne jako že je to problém na tvé straně, ale jako křivdu od ostatních a budeš si myslet že tě znevýhodňují protože nemáš VŠ a přitom je to tím že máš menší vhled do problematiky a tím jsi méně použitelný.

TL;DR VŠ je jedna z cest jak získat základy teoretické comp-sci (datové struktury, automaty, složitost a vyčíslitelnost…) ale jde to i jinak. Určitě ale tyhle základy získat chceš.

První taková aproximace je přečíst si Průvodce (http://pruvodce.ucw.cz/) a měl bys tomu rozumět.

OTOH
je vlastně plus, naučíš se vstřebávat i informace, které nechceš a naučíš se s nimi pracovat
tohle je zase takové utěšování se, věcí do kterých se ti nechce si užiješ v životě dost.
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: CPU 27. 07. 2023, 10:55:21
Na uživení nepotřebuješ programovat, stačí poctivě bušit krumpáčem, moc lidí to nechce dělat.
Stejně tak VŠ nepotřebuješ, abys programoval.

ALE:
- VŠ se ti bude hodit v korporátu a ve státním
- když máš dva stejně dobré kandidáty, může být VŠ to malé plus
- když chce vzít obchoďák někoho na schůzku, určitě vezme chytrého a chytře mluvícího sympaťáka, pokud jsou dva, tak často toho s VŠ
- čím budeš starší, tím víc tě může absence VŠ omezovat a naopak se ti na ní už nebude chtít

Z druhé strany:
- nikdo se tě za pár let nejspíš nebude ptát, co jsi studoval
- titul není vstupenka do světa kouzel, je to takový "supercertifikát", který skoro nikdy nepotřebuješ, ale když ano, jsi moc rád, že ho máš
- až si budeš hledat místečko, kam se uklidit, bude se ti safra hodit
- VŠ ber spíš managementovou, cokoliv se z programování dnes naučíš, bude zítra staré, což o managemntu neplatí, ten se vyvíjí mnohem pomaleji
- programátoři jsou buď Umpa-lumpové nebo Vonkové, první jsou divní trpajzlíci, řadová omáčka, kterou řídí Vonkové....no a Vonka byl původně Onka, než si udělal VŠ (proto Vonka)....PS: Pokud jsi tvořivý, je lepší být Vonka a pokud jsi omáčka, je lepší být Umpa-lump

Manažer předvádí svoje programátoříčky potenciálním zákazníkům: https://youtu.be/lzmzZaB0kss?t=26
(Já jsem raději Vonka než Umpa-lump...ale ty? to je tvoje věc...)

Fakt si udělej nějakou VŠ dálkově, no a většinu času věnuj programování tam, kde to má budoucnost nebo kde se učíš.

Název: Re:Vysoká školy pro pokročilého programátora
Přispěvatel: jjrsk 27. 07. 2023, 11:18:06
...Je vidět, že jsi na žádnou VŠ nechodil, protože na normálních technických školách je důraz na pochopení. Požadavky na memorování byly naprosto výjimečné případy, které vycházely od učitelů, kteří byli těmi neschopnými idioty. Těch ovšem na dobré škole zas tak moc není.
Jo, po 5 letech na FELu se valim smichem po podlaze ... zadna takova skola v CR neexistuje. Absolvoval sem tam mimo jine mozna 8 matik (5x matalyza + logika + ...) a ve vsech tzv odbornych predmetech sem si vystacil bohate s tou stredoskolskou.

U zkousek se chtela recitace vzorcu, vet, definic. Na predmety, kde to vypadalo jinak, by stacily prsty jedne chrome ruky. I to programovani tenkrat vypadalo tak, ze zapich se delal na papir, a hodnotilo se, kolik kde chybi stredniku ... (to je mimochodem jeden z duvodu proc se posleze odtrhla FIT)

Naivne sem si tenkrat myslel, ze se na VS clovek dostane k technice, kterou jinde neuvidi. A to je fakt, takovy vykopavky nemaji ani v muzeich.

..
- když máš dva stejně dobré kandidáty, může být VŠ to malé plus
...
Ehm ... kdy naposledy se na teto planete stalo, ze by se na IT pozici hlasili 2 pouzitelni lide?
Název: Re:Vysoká školy pro pokročilého programátora
Přispěvatel: CPU 27. 07. 2023, 11:28:18
..
- když máš dva stejně dobré kandidáty, může být VŠ to malé plus
...
Ehm ... kdy naposledy se na teto planete stalo, ze by se na IT pozici hlasili 2 pouzitelni lide?

No to je velmi dobrá připomínka, ale ono se to děje často interně, někdy o tom ani nevíš.
Každopádně si trvám na tom, že VŠ je často výhoda.

Osobně bych - komunikativnímu jedinci - doporučil studium managementu a projektového řízení.
Když kromě programování člověk zvládá i tohle...

Naopak introvert může být šťastný jako Umpa-Lump...
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: pruzkumbojem 27. 07. 2023, 11:42:59
zminim jiny scenar, zminku o vysoke skole jen preletim, ale pokud tam uvidim neco jako "DAMU", tak s tim posukem se ztracet cas nebude.

historkam o kadernicich a hornicich preuceny na developery neveri ani sami politici

 
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: Gregor Fefor 27. 07. 2023, 11:49:58
Je taký bonmot, cca. "Vzdelanie je to, čo ti zostane, keď zabudneš všetko, čo si sa v tej škole naučil."

Mali sme jedného kolegu, čo mal len elektro priemyslovku, ostatní boli asi všetci inžinieri (nie všetci IT/elektro!). Tento kolega bol známy tým, že jeho riešenia boli často veľmi krkolomné, lebo mu chýbal tzv. inžiniersky prístup (čo je pojem, ktorým sa rád oháňam, ale definovať ho presne neviem) a širší rozhľad.

Vysoká škola je jedným zo spôsobov, ako ten širší rozhľad získať, ale uznávam, že nie najefektívnejším. Pre cieľavedomého a motivovaného človeka sú oveľa rýchlejšie cesty, ale pre nie až tak motivovaný priemer je VŠ lepšia v tom, že doň tie veci nejako nasypú pod tlakom, aj keď sa mu až toľko nechce (nemôže si tak vyberať, čo ho baví a čo nie, a každá oblasť má tých nelákavých častí veľa). A pre toho, kto nie je sociopat, "vysokoškolský život" môže byť aj veľmi príjemným obdobím.
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: mr.rubik 27. 07. 2023, 12:03:16
Programovat uz umis, ted bych se zameril na shodu podmetu s prisudkem ;)

Co se budouciho uplatneni tyce, zalezi, co od zivota ocekavas. Jestli chces busit appky v C#, tak si urcite dobrej (a dobre placenej) dzob najdes i bez VS. Proste po maturite nastoupis nekam, udelas si 5 let praxe, budes senior a budes si moct zacit rikat treba 7K MD a pozdeji i vic. Coz je samozrejme naprosto v poradku.

Pokud ale chces delat neco zajimavejsiho (Google, high performance trading, nejaky quant/fintech veci, low level OS veci, crypto), bez VS ses vicemene nahranej. Podivej se na nabidky prace v tehle oborech, u Googlu apod. casto najdes "Master's is a must, PhD preferred".

Na (dobre) VS se neuci technologie, ale principy. Kdyz znas par technologii, naucit se principialne jinou na obskurni platforme (tj. napriklad funkcionalni programovani v C++ templatech) je vyznamne tezsi nez kdyz znas tyhle principy uz davno z VS. Nebo napriklad kryptografie, to je kapitola sama o sobe...

Takze si rekni, co od sve kariery ocekavas a bud se na VS vyser a nebo jdi na MFF, kde si vyber bud matematickou kryprografii nebo systemove programovani. Nebo jdi na light variantu CVUT FIT, kde si vyber teoretickou informatiku a systemove programovani. Nic jineho v tvem pripade nema vyznam studovat.

A nebo si dojdi na VSE pro titul, ale znalosti neocekavej...
Název: Re:Vysoká školy pro pokročilého programátora
Přispěvatel: hmmmw 27. 07. 2023, 12:09:01
...Je vidět, že jsi na žádnou VŠ nechodil, protože na normálních technických školách je důraz na pochopení. Požadavky na memorování byly naprosto výjimečné případy, které vycházely od učitelů, kteří byli těmi neschopnými idioty. Těch ovšem na dobré škole zas tak moc není.
Jo, po 5 letech na FELu se valim smichem po podlaze ... zadna takova skola v CR neexistuje. Absolvoval sem tam mimo jine mozna 8 matik (5x matalyza + logika + ...) a ve vsech tzv odbornych predmetech sem si vystacil bohate s tou stredoskolskou.

U zkousek se chtela recitace vzorcu, vet, definic. Na predmety, kde to vypadalo jinak, by stacily prsty jedne chrome ruky. I to programovani tenkrat vypadalo tak, ze zapich se delal na papir, a hodnotilo se, kolik kde chybi stredniku ... (to je mimochodem jeden z duvodu proc se posleze odtrhla FIT)

Naivne sem si tenkrat myslel, ze se na VS clovek dostane k technice, kterou jinde neuvidi. A to je fakt, takovy vykopavky nemaji ani v muzeich.


Nevím, co ti mám na to říct. Možná jiná doba?

My si zkoušeli v odborných předmětech naprogramovat všelicos. A namátkou "Metoda hraničních prvků" pro mě teda nebyla středoškolská matematika.

Ani ohledně zkoušek jsem nic z toho nezažil, programování na papír jsem nikdy podstupovat nemusel.

Když jsem u zkoušky nahodil rovnou vzorec, zkoušející se zeptal, odkud ho mám. Takže jsem stejně musel alespoň trochu popsat, jak to vzniká, popřípadě ho odvodit. Jasně, dá se to odvozování naučit, a občas to bylo jednodušší, zapamatovat si pár písmenek, a doufat, že to zkoušející neprokoukne. Ale nikdy to šprtání a recitování nebylo vyžadováno, a vždy byl důraz na pochopení postupu.

Technika jak kde, na mé alma mater byl a je superpočítač. A v rámci diplomky jsem na něj dostal přístup, jen škoda, že mi to tenkrát nic moc neříkalo.
Název: Re:Vysoká školy pro pokročilého programátora
Přispěvatel: peete 27. 07. 2023, 12:10:03
Málokdy potkám člověka bez VŠ, který by tušil jak věci fungují.

Najít člověka bez VŠ vzdělání, ..., který by chápal rozdíl mezi heapou, stackem a různýma datovýma strukturama v javě je prostě problém. Přitom to jsou vesměs mid-senior role s praxí do 5 let.
No, ja bych rekl, ze je to o jinych vecech. Predevsim o anglictine. Cesi neumi anglicky bud vubec nebo mizerne. Kdyz umis anglicky podobne jako treba Finove, tak ctes a slysis anglictinu skoro stejne jak rodny jazyk. Zdroje v EN a nejaky itNetwork v cestine u nas jsou kvalitativne nesrovnatelne. Za dalsi je disciplina a nadseni, pokud se opravdu umis ucit sam, tak kdyz si prectes vsechny zdroje "open source CS", jako zacatecnik si udelas Mooc Fi kurz Javy Helsinske univerzity, prectes si "Clean Code" atd atd atd tak rozhodne budes hodne hodne daleko. Ale uznavam, lidi kteri takto sami makaji neni tolik. Ty vysokoskolaky k tomu aspon nekdo donuti.
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: CPU 27. 07. 2023, 12:26:06
ako ten širší rozhľad získať

O IT jsem se naučil všechno sám, to na VŠ bylo často už překonané, když se to učilo.
Ale ne všechny obory se vyvíjí tak překotně jako IT, IT byla zpětně ...špatná volba...jako doktor (kožař a pod. bych byl hodně vysmátej)

Nicméně chci psát o něčem jiném, chci psát o bludech, ve které někteří věří.

Dementosaurus si myslí:
Přečtu si knížku o programování a umí programovat.
Přečtu si knížku o projektovém řízení a umím řídit projekty.
Naučím se jazyk a jsem super programátor (knihovny mě nezajímají).
Naučím se projektový management z knížky a jsem super projekťák...
Když budu programovat, sám od sebe se to naučím dělat správně.
Když budu řídit projekty, sám od sebe to začnu dělat správně.

...projektové řízení se musíš pořádně naučit jako programování, jinak to bude daleko větší dřina...

Projektové řízení, management rizika, time menagement, smluvní právo, metody vyjednávání, postupy v liniovém managementu...nic z toho nemusí Umpa-Lump znát. Umpa-Lump tancuje pro Vonku, Umpa-Lump programuje, jak si Vonka přeje.

https://www.youtube.com/watch?v=nFxyUAjayyI

Pokud někoho baví programování, nemusí na VŠ chodit, tam se učí základy a přehledy. Pokud tě baví programování a nejsi totální introvert, doplň si svoje vzdělání z hlediska managementu, abys mohl dělat Vonku. Řídit Umpa-Lumpy a nutit je tancovat tak, jak si přeješ ty, aby se to líbilo zákazníkům a byly prašule. Život Umpa-Lumpíka je ovšem snazší, pro hloubavé lidí to je práce snů. A Vonka by bez Umpa-lumpů byl jen nýmand. Buď tím, co tě těší.

Někdo tu zmínil, že by sis měl projít VŠ skripta předmětů, které tě zajímají - ANO! To je rozhodně pravda.
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: SimisN 27. 07. 2023, 12:27:48
Ahoj,

prvni duvod, proc bych nekomu doporucil jit studovat na VS je urcite moznost studia v zahranici. Specialne napriklad na CVUT se do zahranici dostane kazdy, aspon driv to tak z vlastni zkusenosti bylo. Da se jet na Erasmus v ramci Evropy nebo i na nejake programy mimo Evropu (USA, Asie atd.), clovek v podstate muze pulku studia stravit v zahranici. Je to neco na co bude clovek dalsich minimalne 20 let vzpominat.

Z hlediska kam jit studovat a co, tak ja osobne, pokud bych uz byl pred VS opravdu dobry programator, tak bych sel studovat matematiku (Jaderka, MFF), protoze kombinace dobry programator plus matematika otevira dvere do mist, kam se bezny (i kdyz dobry) programator hned tak nepodiva. Nebo bych si sel rozsirit obzory - Elektronika, automatizace atd.
Název: Re:Vysoká školy pro pokročilého programátora
Přispěvatel: Jimmyx 27. 07. 2023, 12:32:33
... a ve vsech tzv odbornych predmetech sem si vystacil bohate s tou stredoskolskou.
K tomu se ale hodí doplnit, že to co v odborných předmětech berete na SŠ celý rok se na VŠ probere za 1/2 až 2/3 semestru. Takže kdo má správnou SŠ, tak je to pro něj zrychlené opakování plus něco trochu nového. Kdo má ale SŠ jiného typu si musí trochu máknout, protože tímto tempem to žádná zívačka jako na SŠ není.
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: CPU 27. 07. 2023, 12:35:37
tak ja osobne, pokud bych uz byl pred VS opravdu dobry programator, tak bych sel studovat matematiku (Jaderka, MFF), protoze kombinace dobry programator plus matematika otevira dvere do mist, kam se bezny (i kdyz dobry) programator hned tak nepodiva.

Tím se z tebe stane nepostradatelný-hardcore Umpa-Lump, pro hloubavého introverta skvělá volba.
Pokud máš hlavu na hardcore matiku, tak se snadno podíváš s platem za sto a později i za dvě stě tisíc Kč - hlavně se pak nezahrabat v ve firmě v ČR!

Pro extroverta jsou cesty do DevOps, Projektového řízení, KAM. Čím víc managementu se to týká, tím víc to chce VŠ.
Název: Re:Vysoká školy pro pokročilého programátora
Přispěvatel: oss 27. 07. 2023, 13:26:33
... a ve vsech tzv odbornych predmetech sem si vystacil bohate s tou stredoskolskou.
K tomu se ale hodí doplnit, že to co v odborných předmětech berete na SŠ celý rok se na VŠ probere za 1/2 až 2/3 semestru. Takže kdo má správnou SŠ, tak je to pro něj zrychlené opakování plus něco trochu nového. Kdo má ale SŠ jiného typu si musí trochu máknout, protože tímto tempem to žádná zívačka jako na SŠ není.

To zalezi od skoly.
ja som to mal skor tak, ze co sa na strednej preberalo rok, tak na vyske to bola jedna trojhodinova prednaska (a velka cast z toho bola ponechana na samostudium a projekty).
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: peete 27. 07. 2023, 13:39:21
...jako doktor...
• delat doktora je stejne jako delat programatora, musis se cely zivot ucit a veci se rychle vyviji
• programovani a management je neco uplne jineho. Bohuzel dnes mnoho programatoru dela managery. Bohuzel! A to nerikam, ze moderni kapitalisticky priruckovy manager je nejaka vyhra. Spis myslim na nekoho, kdo ma povahu jako John Vanhara, to jsou opravdu manazeri. A jsme zpatky u tve teorie, ze nestaci si precist knizku o managementu. Je potreba si to zkusit a zjistit, jestli na to mam bunky, a pokud mama, ziskat praxi. Zavidim mlademu OP, ze uz si toho tolik zkusil a uz ma v mnohem jasno. V jeho veku jsem bohuzel takove jasno nemel.
• "Prectu si knizku o programovani a umim programovat." to je proste uvaha 1) typicky ceska, 2) typicky zastarala, 3) vuci skutecnemu vzdelani opovrzliva. Ono totiz, dneska se nikdo z knizek neuci, jenom mozna nejaci kmeti jako my.  Dneska lidi zacnou kurzama, ktery maji vysokou kvalitu (Mooc Fi, Helsinska univerzita (java, Python) pro uplne zacatecniky, SC50 od Harvardu, Laracasts (full-stack PHP+Vue3) a pod.) a pak uz ctou rovnou dokumentaci a knihy jako "Clean Code" a jine. Za druhe, aby ses dneska nekam dostal daleko (treba i bez VS), musis umet dokonale anglicky. Opravdu nestaci umet zhruba prechroustat kousek dokumentace s pomoci Deepl. Musis ten jazyk umet na near native urovni (asi tak jako Finove, Svedi, Nemci...), aby sis ani nevsiml, ze vlastne ctes neco anglicky nebo pripadne poslouchas (bez titulku). Zatimco my se tady bavime, jestli jit na nakou VS, kde maji takove ty cernobile skripta psane na stroji (nevim, jestli to jeste dnes existuje:-) tak na Redditu si povidaji lidi z USA+UK, jak delali internship (to je samozrejmost) a pak delali pohovor ve FAANG pred komisi 8 senioru. Jak delaji kazdy den Leetcode zadani. Jak maji GitHub narvany projektama. Atd. OP z tohoto vlakna je jeden z mala, ktery jede podobnou kvalitu. Konecne nekdo kdo nerekne "tak sem si precet Python na itNetworku a kde me tedka vezmou, kdyz chci programovat tu AI"?? Za treti, jit na to opacne, teda napriklad delat managera kdyz jsem si o tom v zivote ani nic neprecetl je o nicem, protoze budu opakovat chyby svych predchudcu. Za ctvrte jsem opet u anglictiny. Zajimalo by me jaka doopravdy puvodni ceska kvalitni kniha, ktera se vyrovna zahranicnim, vysla v cestine. Za me teda "Bity do bytu" a par dalsich. Musime si uvedomit, ze ani v medicine, ani v programovani nam proste cestina nepomuze, je mi lito. Neni to jazyk tech oboru (kolik odbornych studii v medicine vychazi v cestine?).
• A nakonec, ale to uz jsme tu probirali, dneska je to jedno i kdybys mel 10 VS a ucil se jak chtel a mel narvany GitHub projektama atd., nikoho to nezajima. Jedina skutecne relevantni otazka u dnesnich pohovoru je: "uz jste pracoval nekolik roku v nejake firme jako programator"? Nastesti, OP ma tuto otazku vyresenou svym internshipem.
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: peete 27. 07. 2023, 13:51:02
No, a abych nebyl tak OT, v zahraničí je pár celkem kvalitních Computer Science VŠ, které se dají studovat online. Pokud náš mladý umí hodne dobře anglicky a má hromadu peněz (protože ty VŠ jsou drahé jak sviňa), tak bych šel do toho. Celkem známé jsou tyhle programy:
MSDSO: https://cdso.utexas.edu/msds (https://cdso.utexas.edu/msds)
OMSCS: https://omscs.gatech.edu/ (https://omscs.gatech.edu/)
SNHU: https://www.snhu.edu/online-degrees/bachelors/bs-in-computer-science (https://www.snhu.edu/online-degrees/bachelors/bs-in-computer-science)
Bližší info na Redditu, hledejte zmíněné zkratky.
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: prevadecspojitostivole 27. 07. 2023, 15:56:59
Hodnotis hned podle prvni, nebo to musi byt specificka kombinace? Co reknes na Teologickou, nasledovanou FFUK a pak nejakou prestizni techniku v USA? Podotykam, ze dotycny mel vazny duvod ke studiu vsech uvedenych.

zminim jiny scenar, zminku o vysoke skole jen preletim, ale pokud tam uvidim neco jako "DAMU", tak s tim posukem se ztracet cas nebude.
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: mikrom 27. 07. 2023, 21:15:18
Ty zkušenosti, projekty, atd. zní na první pohled impresivně, ale není to zabíjení mládí, když od 15 let chodíš jen do školy a přitom pracuješ? Mně se to zdá dost nezdravé. Já bych to jako teenager tak nesilil. Peníze nejsou všechno. Chodil bych raději třeba do fitka a užíval si mládí. Vždyť pracovat budeš muset až do roku .. (nevím vypočítaj si svůj penzijní věk)
Nejít na VŠ je dost krátkozraké, na VŠ se naučíš věci o kterých dosud nemáš ponětí.
Vypadáš, že máš dost velké ego a že si věříš. K tomu se zde nebudu dále vyjadřovat. Ale když mluvíš že máš problémy s středoškolskou matikou připadá mi to dost divné. Myslíš že když budeš mít rodinu a věk 40-50 bude tě stále bavit učit se nějaké nové technologie?
Každopádně, doporučuji jít na VŠ. Jak tady už někdo psal na VŠ se naučíš přemýšlet, neučíš se nejnovější technologie ale principy. A když VŠ dokážeš projít získáš i vlastnosti jako vydrž a cílevědomost. To' jsou velmi důležité vlastnosti.
Možná jsem stará struktura, ale když si vybírám kolegu tak chci rozumného logicky rozmýšlejícího člověka a nechci nějakého chytrolina, který nedokázal ani ukončit adekvatní VŠ.
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: Lord_Pitzbudka 27. 07. 2023, 23:00:50
Dovolím si tu VŠ trošku vyhejtit. A předem zdůraznuju - to co napíšu dál rozhodně nemá znamenat, že vejška je špatně nebo že tě od ní zrazuju či snad že je zbytečná. Jen je to mírně neorganizovaný pohled od člověka, kterej začal prgat v roce 2000, takže teď už skoro důchodce :-D.

- Nemám vejšku. nemám ani nějakou nadstandardní IT střední (ono toho v roce 1995 zas tolik nebylo). obyčejnou elektroprůmyslovku, kde jsme nějak IT předmět měli jednou tejdně.

- Nikdy (slovy nikdy) nikoho moje absentující vejška nezajímala. Ani v roce 2000, když jsem se hlásil do svý první práce, ani v roce 2002, když jsem se hlásil do svý druhý práce, natož teď.  Nikdy to nebyla překážka nějakého postupu, účasti na projektu, účasti na jednání (to je reakce na to, jak tu někdo psal, že když nemáš VŠ, tak tě obchodák nevezme na schůzku - to mě fakt pobavilo :)

- vš tě na soukromou sféru a vývoj v ní moc nepřipraví - protože teorie je šedá, ale strom života je zelený. Praxe je výrazně odlišná. a na většině druhů práce, se kterou se v dnešní době setkáš (zdůraznuji, většinou, neplatí to obecně) je ti i VŠ matematika v podstatě k ničemu. Zužitkuješ úplně jiné schopnosti. Kreativitu. Zkušenosti s různými technologiemi. Schopnost přelouskat a pochopit zadání i když není 100%. Zamyslet se a vidět to zadání v širších souvislostech celého projektu. Být schopen domyslet dosah tvé změny na jiné části systému. Nebo je odhadnout. Schopnost potykat si za dva tři dny s nějakým novým frameworkem / technologií / toolem, který zrovna ted na projektu chtěj použít. A to nezískáš na škole. To získáš jen praxí. I tu schopnost za pár dní začít pracovat s něčím, o čem jsi před týdnem ani nevěděl, že existuje.

- pokud už máš něco za sebou (což vypadá, že ano) - tím spíš nikdo nebude řešit, jestli máš vejšku (mohla by pomoct, pokud by jsi byl jakože-fakt-junior). tady mnohem víc lidi při náboru zajímá, co jsi dělal, jaké byly technologie, jaká byla tvoje role v týmu

- podílel jsem se na náboru v několika firmách, kde jsem se v minulosti vyskytl - vejšku nikdy nikde nikdo neřešil. jako že ale vůbec. ani na ni nikdo nekoukal. o člověku to o jeho schopnostech pro vývoj nic neřekne.

- potkal jsem za život stovky programátorů, kolegů či jen třeba uchazečů o práci ...řada z nich vejšku neměla, řada měla a mohu (klidně pod přísahou) konstatovat, že skutečnost, jestli měli či neměli vejšku vůbec nekorelovala s tím, jak schopní byli či co předvedli

- takže podtrženo sečteno - na tvoji kariéru vejška nebude mít nějaký zásadní přímý vliv. Pokud jsi schopný a jsi schopný těžit z vlastních zkušeností, vejška ti zadnou specialni pridanou hodnotu asi neprinese. Co ti vejška může dát, tak základy k tomu, aby jsi na nich v budoucnu stavěl (nap. pokud by jsi ted byl bez zkusenosti a rikal si, ze by jsi chtel cestou IT jít). Pro lidi, co už ale zkušenosti mají, se ale nabízí otázka, jestli to stojí za "ztracené" tři roky, protože 3 roky v praktickém vývoji v nějaké solidnější firmě ti daj úplně to samé. Občas i víc.

(a k tomu, jak tady někdo psal, že češi neumí anglicky - velký omyl. češi, a zejména nastupující generace ajťáků (a samo i dalších rolí - testerů, různých skrumíku a podobných), která nás důchodce za chvíli začne vytlačovat, umí anglicky velmi dobře. posledních deset let dělám na projektech pro anglicky a německy mluvící svět - a ne jen jako programátor, jehož nutnost znalosti angličtiny končí někdě v jiře, ale i jako architekt či konzultant, takže kváknout si celkem troufám - a dnešní omladina stejně jede angličtinu desetkrát líp jak já)
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: TDiblik 28. 07. 2023, 00:34:10
-- Část 1

Ahoj, děkuji za spoustu relevantních poznámek, odpovědí a rad! Všechny jsem je pomalu ale jistě pročítal a bral v potaz, aby však v této diskuzi nevznikl "chaos", tak jsem se rozhodl místo toho, abych vytvářel na každou odpověď nové "vlákno", že shrnu a odpovím na posledních +- 34 zpráv v jedné zprávě. Nutno podotknout, že nebudu reagovat na všechny, vzhledem k tomu, že není úplně potřeba vždy na vše reagovat, ale stačí si to přečíst a vzít k srdci :D (jo a pokud by se vám zdálo, že je něco vytaženého z kontextu, ozvěte se prosím v další konverzaci! Citace zkracuji čistě protože jich v této odpovědi je hodně)

Citace
Tak mě napadá, nezvládl bys třeba toho bakaláře si napráskat do jednoho/dvou let, odchodit si přednášky, co tě zajímají, a ostatní projekty/úkoly jen formálně odevzdat.
- @hmmmw
> Zajímavé.... O něčem takovém jsem slyšel a trochu jsem nad tím přemýšlel, avšak nevím jak se to dá / nedá, nebo celkově jak to funguje?

Citace
.... možná přijde technokolaps ; zrušena hotovost ....
- @technomaniak
> dej (https://c2pa.org/) tomu (https://github.com/RupertBenWiser/Web-Environment-Integrity/) pár (https://twitter.com/LinusEkenstam/status/1682757547948646400) let (https://worldcoin.org/cofounder-letter) ; Monero (https://www.youtube.com/watch?v=QrHsFZBab4U) :D (celá tato odpověď je sakrasmus)

Citace
že jsou oblasti, kde to bez školy nejde a nebo jen s velkým úsilím
- @JaaSt
> Tohle je právě to čeho se tak trochu bojím... Bohužel moje aktuální zkušenost je to, že když se jednou za čas kouknu na nabídky, které by mě zajímali (něco více než řadový programátor), tak VŽDY vyžadují vysokou školu.

Citace
To ze neplatis skolny neznamena, ze to je zdarma
Citace
Nase skolstvi je cely koncipovany tak, ze se vzdy zacina od nuly
- @jjrsk
> "zdarma" bylo myšleno ve smyslu, že máme v Čechách tu výhodu, že pokud bych chtěl studovat, tak se nemusím do konce života zadlužit (https://www.forbes.com/advisor/student-loans/average-student-loan-debt-statistics/), i když co přinese budoucnost nikdo neví (https://www.vysokeskoly.cz/clanek/v-cesku-se-znovu-rozhorela-debata-o-skolnem-na-vs) :/. Každopádně po tomto komentáři jsem si šel přepočítat kolik by mě +- stálo žít, a je pravda že realita je výší než jsem původně předpokládal
> Nevím přesně proč, ale přijde mi to špatně a správně zároveň. Polemizovat bychom tady o tom mohli dalších X hodin, ale stejně to asi nic nezmění, tudíž je to nejspíše fakt s kterým se budu muset smířit :(

Citace
ted jsi praktik, na vysce k tomu muzes ziskat teoreticke podklady.
- @alex6bbc
> Jenže, já nevím co to znamená? Co si pod tím mám představit? Jak je možné prohloubit teoretické chápání něčeho jako jsou například sítě, či architektury počítače? Protokoly a procesy se přece tak často rapidně nemění (counterpoint, za chvíli pojede internet na UDP místo TCP, ale celý proces stejně trval okolo 12ti let (https://en.wikipedia.org/wiki/QUIC))? Všechny tyto teoretické věci mám nastudované, vzhledem k tomu, že opravdu nerad pracuji "nad" technologiemi, kterým nerozumím. Například dneska jsem do jednoho mého projektu implementoval icmp ping request (ano, používá to knihovnu pnet, ale to kvůli tomu, že potřebuji aby byl projekt cross-platform + ji využívám na více místech programu), pointa je čistě to, že tyhle teoretické věci již mám projduté, ať už v rámci samostudia, či střední školy, kde se právě i takovéto teoretické věci učíme (CCNA (https://www.credly.com/badges/8fac96e0-ab08-438a-97d3-c359edacf074) ; Networking Essentials (https://www.credly.com/badges/a7f4d44c-ddda-4b4f-ba75-fb654c16806a))
Kód: (Rust) [Vybrat]
use std::{
    net::IpAddr,
    sync::{Arc, Mutex, RwLock},
    thread,
    time::{Duration, Instant},
};

use anyhow::anyhow;
use log::error;
use rand::random;

use pnet::packet::{
    icmp::{
        echo_reply::EchoReplyPacket,
        echo_request::{IcmpCodes, MutableEchoRequestPacket},
        IcmpCode, IcmpType, IcmpTypes,
    },
    ip::IpNextHeaderProtocols,
    util::checksum,
    Packet,
};
use pnet::transport::icmp_packet_iter;
use pnet::transport::TransportChannelType::Layer4;
use pnet::transport::{transport_channel, TransportProtocol};

const ICMP_SIZE: usize = 64;
pub const DEFAULT_PING_ENSURED_CONNECTIVITY_TIMEOUT_MS: u64 = 5000;
pub const DEFAULT_PING_ENSURED_CONNECTIVITY_CHECKUP_MS: u64 = 20;

struct PingStatus {
    got_reply: bool,
    reply: Option<EchoReplyInfo>,
    stringified_err: Option<String>,
}

#[derive(Debug, Clone)]
pub struct EchoReplyInfo {
    pub addr: IpAddr,
    pub rtt: Duration,

    pub identifier: u16,
    pub icmp_code: IcmpCode,
    pub icmp_type: IcmpType,

    pub raw_packet: Vec<u8>,
    pub raw_payload: Vec<u8>,
    pub checksum: u16,
}

// Could be optimized by sending multiple pings at once, but I don't really care about perfomance atm
// Pro forum.root.cz:
// Vím že to není úplně nejoptimálnější řešení, ale funguje :D. Ideální by bylo místo spawnování threadu udělat to asynchronní,
// ale to je bohužel (aktuálně) poměrně těžké v kontextu celé aplikace -- jedná se o egui (což je immediate ui), tudíž musím spawnout nový thread
// abych neblokoval renderování + kdyby to hodilo error tak aby nespadla celá aplikace, tak celá tato funkce je volaná ještě z dalšího threadu, tudíž na jeden ping spawnuju 2 thready,
// což je extrémní neefektivní blbost, ale kvůli rychlosti vývoje je to aktuálně preferované řešení a abstrakce je psaná tak aby to v budoucnu byl jenom implementační detail.
// V budoucnu to plánuju sepsat tak že spawnu na začátku druhý thread a tomu budu do queue posílat async tásky, a potom budu na output reagovat na začátku/konci každého re-renderu
pub fn send_icmp_echo_request_ping(
    address: IpAddr,
    ping_timeout_ms: u64,
    ping_checkup_ms: u64,
) -> anyhow::Result<Option<EchoReplyInfo>> {
    let protocol = Layer4(TransportProtocol::Ipv4(IpNextHeaderProtocols::Icmp));
    let (mut tx, mut rx) = match transport_channel(4096, protocol) {
        Ok((tx, rx)) => (tx, rx),
        Err(e) => return Err(e.into()),
    };

    let mut icmp_header: [u8; ICMP_SIZE] = [0; ICMP_SIZE];
    let icmp_packet = create_icmp_echo_request_packet(&mut icmp_header);
    let sent_at = Arc::new(RwLock::new(Instant::now()));
    tx.send_to(icmp_packet, address)?;

    let status: Arc<Mutex<PingStatus>> = Arc::new(Mutex::new(PingStatus {
        got_reply: false,
        reply: None,
        stringified_err: None,
    }));

    let closure_status = Arc::clone(&status);
    let closure_sent_at = Arc::clone(&sent_at);
    thread::spawn(move || {
        let mut iter = icmp_packet_iter(&mut rx);
        match iter.next() {
            Ok((packet, addr)) => {
                if let Some(echo_reply) = EchoReplyPacket::new(packet.packet()) {
                    let mut new_status = closure_status.lock().unwrap();
                    new_status.reply = Some(EchoReplyInfo {
                        addr,
                        rtt: Instant::now().duration_since(*closure_sent_at.read().unwrap()),
                        identifier: echo_reply.get_identifier(),
                        icmp_code: echo_reply.get_icmp_code(),
                        icmp_type: echo_reply.get_icmp_type(),
                        raw_packet: echo_reply.packet().into(),
                        raw_payload: echo_reply.payload().into(),
                        checksum: echo_reply.get_checksum(),
                    });
                    new_status.got_reply = true;
                }
            }
            Err(e) => {
                error!(
                    "An error occurred while reading icmp echo request ping: {}",
                    e
                );
                closure_status.lock().unwrap().stringified_err = Some(e.to_string());
            }
        }
    });

    let ping_timeout = Duration::from_millis(ping_timeout_ms);
    let ping_checkup = Duration::from_millis(ping_checkup_ms);
    loop {
        thread::sleep(ping_checkup);

        let status_lock = status.lock().unwrap();
        if let Some(err_text) = status_lock.stringified_err.clone() {
            return Err(anyhow!(err_text));
        }

        if status_lock.got_reply || Instant::now() - *sent_at.read().unwrap() > ping_timeout {
            return Ok(status_lock.reply.clone());
        }
    }
}

fn create_icmp_echo_request_packet(icmp_header: &mut [u8]) -> MutableEchoRequestPacket<'_> {
    let mut icmp_packet = MutableEchoRequestPacket::new(icmp_header).unwrap();
    icmp_packet.set_icmp_type(IcmpTypes::EchoRequest);
    icmp_packet.set_icmp_code(IcmpCodes::NoCode);
    icmp_packet.set_identifier(random::<u16>());
    icmp_packet.set_sequence_number(1);
    icmp_packet.set_checksum(checksum(icmp_packet.packet(), 1));

    icmp_packet
}

Citace
Pokud se vážně zakousnete do low-level věcí a embedded vývoje, jako že mezi hardwarem a co se děje v kernelu, napadá mě jeden konkrétní potenciální zaměstnavatel, se kterým byste výhledově mohl mít společné zájmy: Sysgo
- František Ryšánek
> Sysgo vypadá hooodně zajímavě! Upřímně jsem měl trochu v plánu se příští rok před vysokou hlásit na nějakou delší embedded, nebo security code auditing stáž, aktuálně si znalostmi ještě nevěřím, protože jsem ještě ani nesestavil svoji vlastní funkční desku, ale určitě to tam na příští rok zkusím!

Citace
.... Ako spolupracovat s ludmi, ktorych nemas rad .... Kedze ale za sebou uz nieco odrobene mas, tak mozno toto ani nepotrebujes
- @Halofon
> Upřímně tohle je něco co mi chybí. Aktuálně jsem měl zatím pořád štěstí spolupracovat pouze se super lidmi a v jednu chvíli jsem pracoval v max 3 členném týmu, tudíž i to je důvod proč tam jít. Je pravda že jsem snad na každé škole viděl nespočet skupinových projektů.

Citace
Najít člověka bez VŠ vzdělání, který by znal rozdíl mezi joiny u SQL, který by uměl vyhodnotit latency systému v čase (vlastně správně počítání percentilu a směrodatné odchylky bývá velký problém), který by dokázal popsat běžné komunikační protokoly a jejich vliv na bezpečnost, dostupnost, latency a propustnost, který by chápal rozdíl mezi heapou, stackem a různýma datovýma strukturama v javě je prostě problém.
- @_Tomáš_
> Uf, to jsou docela základy no... Druhá věc je, že je důležité vědět kdy jaké abstrakce SPRÁVNĚ aplikovat (to je naopak něco co jsem si všiml že často neumí lidé z vysokých škol, kteří se látku nadrtili)! Je sice pravda že věci jako Hashmapa mají hledání v čase O(1), avšak 90% času je rychlejší normální array (čistě kvůli tomu že procházet hodnoty poskládané za sebou v paměti je milionkrát rychlejší než kalkulování daného hashe v konstantním čase)! Velká "O" notace označuje to jak roste počet operací na základě počtu prvků, ne to jak rychle algoritmus běží! Například toto (https://github.com/TDiblik/deps-graph/blob/30f79cafe590f5b563e8ca62ad7cd8ebca4d9789/data-preprocessor/src/utils.rs#L232) je dle mého názoru jedno z správných míst, kde použít hashmapu. Tím se snažím naznačit, že je často důležité uvědomit si s kolika prvky reálně budu pracovat, jelikož pokud vím že budu pracovat např s klávesami a vím že čísla kláves se pohybují od 0 do 256 (https://github.com/TDiblik/KeyXpert/blob/2de40687f2c2e2295881acd3452a6a3c80dc6f3d/mapper_service/src/main.rs#L19) tak je možná jednoduší předalokovat prázdnou array a jednotlivou klávesu reprezentovat jako index, než vymýšlet jak to budu dělat přes nějakou datovou strukturu, jelikož direct access do paměti je a vždy bude rychlejší než složité algoritmy (nehledě na to, že použití těchto datastruktur vypadá dobře na papíře, avšak v realitě za použití těchto algortimů dochází ke spoustě CPU cache missům (https://en.wikipedia.org/wiki/CPU_cache#Cache_miss). Co se tím snažím říct je to, že je extrémně důležité znát VŠECHNY tradeoffy daných datových struktur a algoritmů. Zde je docela zajímavý poslech na toto téma od Bjarne Stroustrupa (tvůrce jazyka c++) (https://www.youtube.com/watch?v=YQs6IC-vgmo). A tato myšlenka by mohla pokračovat dál na programovací koncepty, například pokud mi někdo řekne že leakování paměti nemá své využití, předem mohu říct že pořádně neví, jak funguje paměť, jelikož leakovat paměť je velice užitečné, pokud máte např program který potřebuje něco extrémně rychle udělat a potom se vypnout (hint: při vypnutí systém stejně paměť uvolní, takže pokud jí leakuju po krátkou dobu životnosti programu, nemusím řešit cleanup, který je poměrně drahý, co se operací týče). TLDR; ano, je dobré znát teoretickou část datastruktur, algortimů, komunikačních protokolů a atd, ale zdá se mi že je v dnešní době extrémně málo známá praktická část těchto témat. Spoustu lidí prostě řekne že je to rychlejší a konec, i když to tak nemusí úplně být. Vlastně celý tento odstavec byl o tom že s Vámi souhlasím, ale měl jsem potřebu k tomu dodat pár mých názorů :D. PS: Zkuste si rozjet quick sort (https://en.wikipedia.org/wiki/Quicksort) VS counting sort (https://en.wikipedia.org/wiki/Counting_sort) na N množství prvků v hodnotách do u8max :D. Prostě se snažím říct že je důležité vědět jak správně dané algoritmy uplatnit a né že vidím search mezi hodnotami a hnedka na to mrdnu Hashmapu.

Citace
První taková aproximace je přečíst si Průvodce a měl bys tomu rozumět.
- @_Jenda
> Za odkaz na průvodce děkuji, určitě ho přidám do seznamu budoucí četby! Jak jsem ho ale trochu proletěl očima, tak rovnou vidím, že s ním budu mít ten samý problém co jsem vypíchl výše, a to je to že určuje účinnost algoritmu na základě "O" notace, což není špatně, ale celou problematiku cache misů, toho že konstantní neznamená vždy rychlejší, a podobě (se zdá že, ještě jsem to nepřečetl, ale jenom proletěl očima) smete ze stolu prvními dvěmi odstavci na stránce 42, viz citace:
Citace
Dejme tomu, že chceme změřit dobu běhu našeho příkladu „Hello world“ z předchozího
oddílu. Spustíme-li ho na svém počítači několikrát, nejspíš naměříme o něco rozdílné časy.
Může za to aktivita ostatních procesů, stav operačního systému, obsahy nejrůznějších
vyrovnávacích pamětí a desítky dalších věcí. A to ještě ukázkový program nečte žádná
vstupní data. Co kdyby se doba jeho běhu odvíjela od nich?
Takový přístup se tedy hodí pouze pro testování kvality konkrétního programu na konkrétním hardwaru a konfiguraci. Nezatracujeme ho, velmi často se používá pro testování
programů určených k nasazení v těch nejvypjatějších situacích. Ale naším cílem v této kapitole je vyvinout prostředek na měření doby běhu obecně popsaného algoritmu,
bez nutnosti naprogramování v konkrétním programovacím jazyce a architektuře. Zatím
předpokládejme, že program dostane nějaký konkrétní vstup.

Citace
programátoři jsou buď Umpa-lumpové nebo Vonkové, první jsou divní trpajzlíci, řadová omáčka, kterou řídí Vonkové....no a Vonka byl původně Onka, než si udělal VŠ
- @CPU
> Za komentář a odkazy na Karlíka a továrna na čokoládu děkuji, takhle dobře jsem se dloooouho nepobavil xDD. Pokud bych měl být úplně upřímný, mám docela problém s tím že nechci být řadový programátor, jelikož mám docela problémy s tím pracovat jak někdo píská. Zároveň ale aktuálně postrádám zkušenosti a možná i sebevědomí na to dělat managera. Můj hlavní problém je v tom že doslova úplně všechny (školní i volnočasové) projekty, které jsem v minulosti vedl bych kategorizoval jako osobní selhání, jelikož jsem nebyl schopný donutit ostatní pracovat (doslova 0 commitů od mých "spolupracovníků" po X týdnech, když jsem jasně přiřadil práci, samozřejmě i SOBĚ), takže to vždy skončilo tak že jsem to stejně udělal sám (nejenom že to nakonec bylo Xkrát rychlejší, ale to mě od managementu poměrně odradilo). Od té doby většinou skupinové projekty dělám sám, nebo pokud jsem donucen spolupracovat, řeknu něco ve stylu: "Udělám tohle a tohle (většinou okolo 50% celkové práce), zbytek je na vás, GL HF". Naopak co mi extrémně vyhovovalo bylo, když tým vedl někdo velice zkušený, ale zároveň mi dával insight a probíral se mnou další vývoj po technologické i business stránce, tudíž jsem vždy mohl lépe chápat a ovlivnit budoucí dění a vývoj. Takovouto spolupráci jsem měl v AKAENE pod Ing. Martin Ledvinka, Ph.D. a nemůžu si to vynachválit! Myslel jsem si že bych se mohl v něčem takovém zlepšit tím, že bych vedl kroužek, což jsem udělal, ale líp než poslední věty tohoto blog postu kde jsem o tom psal (https://tomasdiblik.cz/pages/blog/personal/25-06-2023/my-experience-teaching-middle-schoolers-programming), bych to popsat nemohl (hodím sem jako quote, ať nemusíte chodit na jinou stránku):
Citace
Personally, I really enjoyed and am thankful for this experience / opportunity, truth be told, it gave me a lot of insight to see the process of teaching from the other side, however, I do not feel like I would like to repeat it in the near future again. It was fun and all, and the students were more than amazing, however, it was very, I mean VERY, hard. I always questioned myself if the lessons were enjoyable, whether I explained something correctly, and whether I communicated the knowledge the way I intended it. I like explaining stuff I know a lot about, and sharing my knowledge with the people that ask me in general, however, 90 minutes is a bit too much (even for me :D). Another thing I did not like was the position of authority. I usually prefer more leveled / equal work-related relations. Don't get me wrong, I am able to respect and acknowledge that something / somebody is an authority, but, I feel like I don't have it in me to BE the authority at the moment (like come on, I'm 17 :D).
Nějaké rady, tipy, triky a názory? Nejenom že mám problém když někdo píská a neříká mi proč a nedá mi možnost do toho vstoupit, ale mám zároveň i problém být v pozici kdy pískám, jelikož extrémně nerad otravuju lidi. Pozice toho kdy jsem někde "mezi" těmito rolemi mi tak nějak zatím vyhovuje (DevOps zní docela hezky? Docela, jak toto píšu, přemýšlím že DevSecOps by nemuselo být úplně špatný, jelikož to splňuje všechny moje požadavky?). Chápu že management je asi "další krok" pro většinu programátorů a osobně si dokážu představit že bych přes den dělal management a po práci bych si dělal svoje programovací projektíky, ale trochu se bojím že by ze mě tuny byrokracie pomalu ale jistě vysáli život. Další věc je, že se dnes bohužel i programátor potýká s tunou byrokratických procesů. (https://edw519.posthaven.com/it-takes-6-days-to-change-1-line-of-code)

Citace
...projektové řízení se musíš pořádně naučit jako programování, jinak to bude daleko větší dřina...
- @CPU
> Nojo, jenže učit se programování je o tom že nad tím při nejhorším ztratím svůj čas. Učit se projektové řízení je o tom, že potencionálně ztratím čas X lidí, financování které do projektu padlo a pokud nebudu dostatečně rychlý, tak projektu peníze dojdou nebo to nestihnu dotáhnout dostatečně rychle na market. Hlavně, jako programátor vím, že jakýkoliv odhad který mi programátoři dají je nereálný, jelikož odhadnout vývoj softwaru je extrémně těžké! Na projekt působí X neznámích proměnných, které se mohou změnit nebo posrat N různými způsoby. Jak se to potom člověk má naučit!
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: TDiblik 28. 07. 2023, 00:36:21
--- Část 2 (ano, taky se divím že jsem narazil na maximální limit slov :DD)

Citace
Programovat uz umis, ted bych se zameril na shodu podmetu s prisudkem ;)

Citace
Takze si rekni, co od sve kariery ocekavas

- @mr.rubrik
> Joooo, to by bylo potřeba, čeština je reálně jediný předmět s kterým mám reálný problém, a to že mám úplně vše v angličtině a konzumuji převážně média v anglickém jazyce tomu vůbec nepomáhá :D (any HN enjoyers around here :eyes: ?)
> Tohle je hodně dobrá otázka. Nevím. Nemám tušení. Na jednu stranu si říkám že by bylo jednoduchý prostě pokračovat v programování pro mě již jednoduchých věcí a uživím se tím hooodně dobře. Na druhou stranu chci od života víc, ale tyto specializované role často třeba neplatí ani více než někdo kdo buší non-stop C# aplikace (tak proč se potom vůbec snažit). Pořád se snažím o to aby byla moje budoucí práce zajímavá a nejlépe i můj koníček, ale když to jde jednodušeji, tak proč to prostě nevnímat jako zaměstnání a zajímavé témata / projekty si nechat domů na Github? Věřím tomu že bych ve výsledku měl mnohem lepší work-life balance. Nevím, tohle je něco nad čím se musím ještě zamyslet...

Citace
Pokud náš mladý umí hodne dobře anglicky a má hromadu peněz (protože ty VŠ jsou drahé jak sviňa)
- @peete
> Uf, eh, asi úplně ne, pokud bych měl za školné vysoké školy platit jako v jiných státech, tak by bylo rozhodnutí hotové hnedka :D

Citace
Ty zkušenosti, projekty, atd. zní na první pohled impresivně, ale není to zabíjení mládí, když od 15 let chodíš jen do školy a přitom pracuješ? Mně se to zdá dost nezdravé. Já bych to jako teenager tak nesilil. Peníze nejsou všechno. Chodil bych raději třeba do fitka a užíval si mládí. Vždyť pracovat budeš muset až do roku .. (nevím vypočítaj si svůj penzijní věk)
Citace
Vypadáš, že máš dost velké ego a že si věříš
Citace
Ale když mluvíš že máš problémy s středoškolskou matikou připadá mi to dost divné
- @mikrom
> Přemýšlením nad tímto tématem jsem strávil hodně času, tudíž ti na to můžu jednoduše odpovědět. Věřím tomu že by to bylo zabíjení mládí, pokud bych to dělal kvůli penězům (ty amortizují na hodnotě dříve než tu vysokou dokončím :D!). Já to však dělám kvůli tomu že to je můj koníček (stejně jako 3d tisk, fyzická bezpečnost, nebo teď mě poměrně začalo bavit vytvářet obsah na youtube). Když už jsi to zmínil, tak je důležité starat se o své fyzické zdraví, tudíž chodím +-3x týdně do takového lokálního vesnického fitka a za poslední 2 roky jsem shodil +-20kg, takže tam vůbec není problém (+ je to super relaxace mezi dny programování). Bohužel pokud zůstanu v čechách tak budu muset pracovat až do roku {VLOŽTE_ROK_ÚMRTÍ} (nevěřím tomu že bych se já nebo někdo z mé generace dožil důchodu).
> Uf, I wish, ano, věřím si, ale ego je na tom trochu hůř :( --- to se ale dá jednoduše skrýt na textových fórech 8)
> Né že bych měl problém, držím se okolo 2 no, ale spíše nemám moc času a iniciativy tomu ten čas aktuálně dát (hodlám příští rok změnit), tudíž se na to prostě neučím (max večer před testem) a potom to dopadá tak že lituju toho že jsem to lépe nepochopil. Prostě jelikož se tomu aktuálně nevěnuju ve volném čase, tak si v tom tolik nevěřím, takže pokud bych si například měl spočítat roční úroky ve výši např 5% před zdaněním s měsíčním úročením, tak mnohem radši napíšu python script, který simuluje měsíční úročení a danění po dobu 12ti měsíců, než abych sáhnul po vzorci, který jsme se učili.

--- Odpověď na #34, jelikož jsem nemohl najít jednu speciální věc co citovat (celá odpověď byla super a zajímavá, vzhledem k tomu že to je unikátní pohled s kterým jsem se ještě před začátkem diskuze z velké části ztotožňoval)
@ Lord_Pitzbudka
> Chápu všechno co jste napsal a děkuji za feedback, ale problém který v tomto náhledu vidím je ten, že ve vaší generaci nebylo tolik lidí, kteří měli vysokou na IT (nebo co vůbec dělali IT), tudíž se to od vás nečeká (+ kdo nechce někoho s 20ti a více lety v oboru). Naproti tomu skoro každý v mé generaci si tu vysokou dělá (a docela dost lidí to dotáhne až na PhD), tudíž mám pocit že existuje nepsané (avšak velice často i psané) očekávání že tu výšku programátoři nové generace budou mít (bohužel to vidím skoro u každé pozice :(, která by mě zajímala). Na druhou stranu doslova souhlasím se vším co jste napsal (docela divný pocit :D). Jsem usvědčený v tom, že pokud bych nabíral, tak mnohem radši vezmu někoho se zkušenostmi, nebo někoho kdo má bohatý GitHub účet, problém je v tom že lidi na HR často zajímají okýnka na zaškrtnutí (obzvláště v první fázi interview, kdy filtrují mezi stovkami lidí), no a pokud je jedno z těch okýnek vysoká škola tak s tím nic nenadělám... Toto je AFAIK převážně pravda u FAANG společností. Také bych se nerad zaseknul v Čechách a bojím se toho že bych měl obzvl. v zahraničí problém bez vysoké školy. Nebo minimálně takto nad tím přemýšlím po odpoledni, kdy jsem několikrát pečlivě pročítal všechny odpovědi. V ideálním světě by vše fungovalo tak jak jste napsal, avšak bojím se že v tomto světě nežijeme :(. Problém v tom je to, že co tady čtu tak snad každý má jinou osobní zkušenost s potřebou vysoké školy, což na jednu stranu dává smysl, ale na druhou mě zajímá jak je možné že jsou tyto zkušenosti tak odlišné.
[Po druhém přečtení tento poslední odstavec vyzněl divně, skoro až urážlivě, což nebyl záměr, ale nevím jak lépe to přepsat, aby byl význam pořád stejný]

PS:
- Několikrát jsem zde viděl "Clean Code" a vzhledem k tomu, že na to mám docela vyhrazený názor, ale nechtěl, bych to probírat tady, tak jenom doporučím toto video (https://www.youtube.com/watch?v=tD5NrevFtbU).
- Co se Angličtiny týče, osobně bych se zařadil na C1 úrovni. Neoficiálně jsem si dělal EfSet test, který mě umístil na C2 (https://www.efset.org/cert/SZYCt9). Oficiálně se tento, nebo příští rok pokusím o C1 od Cambridge, tak uvidíme :D.
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: hmmmw 28. 07. 2023, 07:16:04

Citace
Tak mě napadá, nezvládl bys třeba toho bakaláře si napráskat do jednoho/dvou let, odchodit si přednášky, co tě zajímají, a ostatní projekty/úkoly jen formálně odevzdat.
- @hmmmw
> Zajímavé.... O něčem takovém jsem slyšel a trochu jsem nad tím přemýšlel, avšak nevím jak se to dá / nedá, nebo celkově jak to funguje?


Opravdu velice zjednodušeně. V současné době je systém postaven na kreditech, což je jakási metrika náročnosti studia. Obvykle se požaduje absolvovat předměty za 60 kreditů za každý rok studia.

Do toho pak leze to, že na daném oboru máš nějakou sadu povinných/povinně volitených předmětů, které musíš prolézt. A zbytek předmětů do té šedesátky si navolíš z těch dále nabízených (volitených).

A teoreticky, ti škola může dovolit nabouchat si předměty za 90 kreditů za rok, a tím pádem máš za dva roky tu studijní část splněnu. Během toho napíšeš bakalářku, a přihlásíš se k obhajobě/státnicím.

Ale jak někdo jiný tady poznamenal. Využij Erasmus a podobné programy, je to příležitost, která už v životě nepřijde. Zapoj se do školních projektů, kterým se věnuje univerzita v rámci výzkumů.

Napracuješ se ještě hromadu let, a peníze, co teď vyděláš jsou třeba velké (obzvláště ve srovnání s příjmy vrstevníků), ale rozhodně to budou šušně ve srovnání toho, co budeš brát za dvacet let, tak nepromarni v práci tu skvělou etapu života.
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: Jimmyx 28. 07. 2023, 07:55:36
A teoreticky, ti škola může dovolit nabouchat si předměty za 90 kreditů za rok, a tím pádem máš za dva roky tu studijní část splněnu. Během toho napíšeš bakalářku, a přihlásíš se k obhajobě/státnicím.
Tohle je ale jen teorie. V reálu narazíte na to, že nelze být na 2 či 3 místech zároveň. Ty předměty jsou v čase rozvržené tak aby jste povinné a povinně volitelné předměty si mohl zapsat a nebyla tam kolize. Pokud si ale chcete zapsat něco mimo obor nebo svůj ročník není žádná garance že se to nebude krýt s něčím co musíte mít. A pokud si zapíšete předmět mimo váš obor či ročník a vyjde vám že můžete chodit jen cvičení tak je to dost naprd (osobní zkušenost). Takže občas si můžete napsat něco navíc, ale spoléhat na to, že stlačíte 3 roky studia do 2 je nereálná iluze.
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: Alpatron 28. 07. 2023, 07:57:32
Jsem na FIT VUT. Nechci se tady pouštět do větších debat, ale můžu shrnout, jak by vypadalo studium "jenom pro papír" u nás: na přednášky a na většinu cvičení nemusíš vůbec chodit—jsou nepovinné. Víceméně se můžeš objevit na univerzitě "jenom na zkoušky", což někteří lidi dělají, ale většinou jsou to "aspiranti na minimum", ale pak je pár lidí, kteří jsou takoví a jejich studium vypadá takhle (https://www.vut.cz/www_base/zav_prace_soubor_verejne.php?file_id=245399&zp_id=145290).

Jinak se můžeš připojit na náš studentský Discord (https://discord.com/invite/yG7m6gM) a poptat se, jak to u nás přesně funguje a co se přesně učíme.
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: dfxxfd 28. 07. 2023, 08:24:17
Ak chceš celý život programovať, tak nemusíš ísť na VŠ. Ale ak ťa programovanie prestane baviť alebo nastane v informatike príliš veľká zmena, napríklad nástup AI alebo kvantových počítačov, tak budeš mať dosť veľký problém bez VŠ.

Ak ťa informatika zaujíma, tak si urob aspoň Bc. na nejakej fakulte so zameraním na informatiku. Ani nevieš, kedy to využiješ.

Ak chceš pracovať s ľuďmi, tak choď na ekonomiku s odborom na IT.

Ak ťa baví niečo elektrotechnické bastliť doma, tak choď na elektrotechniku alebo strojarinu.

Ak ťa zaujíma matematika alebo fyzika, tak choď na matfyz.

Ak pôjdeš na VŠ, tak si určite urob PhD. A čo najviac využívaj erasmus alebo niečo podobné. Otvorí to kopec príležitostí do zahraničia.
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: Pavel... 28. 07. 2023, 08:45:24
Pre pobavenie: ja som sa kedysi +- v Tvojej pozicii rozhodol ist na studovat na VS non-IT odbor. Potom som samozrejme skoncil v IT, pretoze  peniaze nesmrdia :).

Na Tvojom mieste by som si skusil utriast zivotne priority a nerozmyslal nad tym "chcem-nechcem ist na nejaku nahodnu VS". Ale "co by som tak asi chcel od zivota".
Keby som chcel stravit zivot na plazi oberanim kokosovych orechov, tak asi nepojdem na Matfyz, ale zbalim batoh a tradaaa do Mikronezie.
Ono pravdpodobne si po rokoch povies "dost bolo kokosovych orechov", ale ked si sikovny clovek, tak si proste najdes iny ciel a kolegovia v korporate (ktori pojdu cestou VS->Praca->Rodina) Ti budu tisko zavidiet mnozstvo zjedenych kokosovych orechov :).
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: Ink 28. 07. 2023, 09:07:22
Hodnotis hned podle prvni, nebo to musi byt specificka kombinace? Co reknes na Teologickou, nasledovanou FFUK a pak nejakou prestizni techniku v USA? Podotykam, ze dotycny mel vazny duvod ke studiu vsech uvedenych.

Hele, čistě za sebe - pokud někdo dělá všechno možné a jeho životopis není nějak zázračně přitažlivý z pohledu pracovních zkušeností, ani bych ho na pohovor nepozval. Resp. možná bych, pokud bych byl v dobrém rozmaru, zvednul telefon a pár minut ho zkusil zpovídat, ale vesměs to je k ničemu. Úplně chápu, že někdo chce být všechno, ale v IT oboru (konkrétně u programátorů) je potřeba znát věci do hloubky, ne jen do šířky, mít specifické myšlení a základní sebedisciplínu. To tyhle renesanční typy skoro jistě postrádají a člověk, který dělá dvě humanitní školy a pak jde programovat (následné studium computer science na MIT je sci-fi, ale budiž, je to pořád totéž), má podle mě zůstat mimo hardcore IT. Těchto uchazečů jsem pár zažil, není to jenom teorie.

Tohle naštěstí není případ tazatele, ten ví co chce (skoro bych řekl, že až moc, ale to je na něm).
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: mikrom 28. 07. 2023, 09:48:55
Když už jsi to zmínil, tak je důležité starat se o své fyzické zdraví, tudíž chodím +-3x týdně do takového lokálního vesnického fitka a za poslední 2 roky jsem shodil +-20kg, takže tam vůbec není problém (+ je to super relaxace mezi dny programování).
Tak to je super. Duševní práci je třeba vyvažovat fyzickou.
A i ta matika ti jde dobře na to, že se tomu moc nevěnuješ.
Byla by velká škoda, kdyby si na VŠ nešel.
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: mr.rubik 28. 07. 2023, 10:01:17

...

PS:
- Několikrát jsem zde viděl "Clean Code" a vzhledem k tomu, že na to mám docela vyhrazený názor, ale nechtěl, bych to probírat tady, tak jenom doporučím toto video (https://www.youtube.com/watch?v=tD5NrevFtbU).
- Co se Angličtiny týče, osobně bych se zařadil na C1 úrovni. Neoficiálně jsem si dělal EfSet test, který mě umístil na C2 (https://www.efset.org/cert/SZYCt9). Oficiálně se tento, nebo příští rok pokusím o C1 od Cambridge, tak uvidíme :D.

Jeste jedna dobre minena rada - sam s tim bojuju... Zkrat to :) Az budes delat code review a psat tam slohovky, nikdo s tebou nebude chtit pracovat.

Cambridge certifikaty jsem sam delal, C1 mam, na C2 delam... Nevim, co je efset, ale jestli tam neni speaking a writing (jakoze asi ne, kdyz to je free), tak to nevypovida o nicem. K tomuhle potrebujes hlavne "vedet, jak projit test" - ale tim se prave hodne anglictiny naucis. Zkouset to na blind jsou podle me vyhozeny penize.

Co se tyce toho videa ohledne clean-code, tak ten pan tam vcelku dost manipuluje - nebo absolutne nepochopil, co clean-code znamena.

1. Clean-code nikdo nikdy nedaval do souvislosti s "rychlym" nebo efektivnim kodem. Kod se ma psat vzdycky nejdriv spravne a pekne. Pak se ma zmerit a kriticke casti zoptimalizovat. Ono se casto prijde na to, ze i ta "neoptimalizovana, ale pekna verze" je dost rychla. A naopak - kdo rika, ze dobytek, kterej neumi pouzit (compile-time [sic!]) template, aby nemusil 10x rozkopirovat kod, umi napsat rychlejsi kod...
2. Uz asi milionkrat sem se potkal s trubcema, ktery si vymysleli tuny nesmyslnejch duvodu, proc nepsat hezkej kod. Priklad za vsechny: "nez bych premejslel, jak kod unifikovat a stravil tim pul hodiny, to to radsi behem dvaceti vterin desetkrat rozkopiruju..." - s tim sem se potkal nekolikrat a fakt bych za tohle vrazdil...
3. Mnohokrat sem se vrtal ve stary codebase. Je to asi jako kdyz se nekdo rozhodne, ze bude genialni, kdyz da do auta pneumatiku misto volantu a volant misto kola, protoze to vsechno prece musi bejt abstraktni a reusable.
4. Jednou jsem dokonce refaktoroval kod, kde ten blbec linearne vyhledaval v poli podle integer IDcka. Zmenil sem to na hashmapu a kod tim (pro nas use-case) zrychlil o pul hodiny...

Takze clean-code je nejlepsi vec na svete, musis ale vedet, co to znamena...
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: jjrsk 28. 07. 2023, 10:50:35
Jenže, já nevím co to znamená? Co si pod tím mám představit? Jak je možné prohloubit teoretické chápání něčeho jako jsou například sítě, či architektury počítače?
Dost obtizne sdelitelna informace ;D.... udelej si cas, a zajdi si na nejakou prednasku(jsou verejne) neceho, o cem mas nejakou predstavu (=myslis si ze obsah by mel byt nejaky) a zjistis, ze tvoje predstava se zasadne lisi od reality.

Zkusim prirovnani ... chces byt krumpacistou, mas zkusenosti, vis jak se krumpacem haze ... a chces se o tom neco dozvedet. Na VS ti zacnou vysvetlovat, ze krumpac se sklada z kvarku. Coz je ti uplne knicemu. A kdyz se vyucujiciho zeptas, jestli vi jak vypada krumpac, namaluje ti trikolku.
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: Tomas-T 28. 07. 2023, 11:43:17
Ale taky ti může začít vysvětlovat rozklad sil při různých způsobech držení krumpáče, výpočet deformací a pevnosti krumpáče, rezonanční frekvence při kopnutí do skály...
A to už není úplně mimo.
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: f-k-r 28. 07. 2023, 12:32:14
Dívám se na to, co jste dokázal, a říkám si, jestli Vás na obyčejné IT není škoda, jestli byste se spíše neměl věnovat vědě, tedy se zásadně zamyslet nad svou dlouhodobou orientací. Na tomto fóru moc rad nehledejte, viz lehká/těžká vysoká.
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: Zdenek Henek 28. 07. 2023, 13:34:31
Citace
ted jsi praktik, na vysce k tomu muzes ziskat teoreticke podklady.
- @alex6bbc
> Jenže, já nevím co to znamená? Co si pod tím mám představit? Jak je možné prohloubit teoretické chápání něčeho jako jsou například sítě, či architektury počítače? Protokoly a procesy se přece tak často rapidně nemění

Existuje spousta zajímavých problémů, které mají přesah. Chceš psát kód. To je super. Dostal jsi se sám dost daleko, ale pro některé zajímavé oblasti, se už bez té teorie moc daleko nedostaneš.

Dělám GISy, řešili jsme například jak rozdělit nějakou oblast spravedlivě pro X obchodníků. Další zajímavé téma je Traveling Salesman Problem, Vehicle Routing Problem. Všeobecně tomu matematici říkají Matematické Optimalizace, nebo Operační výzkum. Jednou jsem hledal chyby v  transformacích souřadných systémů, taky docela dost matematiky.

Je toho tuny. Na VŠ jsem si napsal svůj vlastní překladač programovacího jazyka. V teoretické informatice jsem trochu narážel na svoje limity. Matematiku jsem udělal, ale při řešení složitějších problémů vidím, že to není ono.

Spousta lidí tvrdí, že napsat si vlastní překladač je ztráta času, nebo že ta teoretická informatika / matematika je stejně k ničemu, protože nevidí pro toto uplatnění. Mají pravdu, dokud se k něčemu, kde je ta matematika nenachomejtneš. Pak člověk lituje, že toho neumí z matematiky víc a jede cestou pokus omyl, nebo to dají někomu jinému, kdo vypadá víc sebevědomě (buď to opravdu umí, nebo se přemýšlením moc nezatěžuje a neřekne, že by potřeboval čas na studium matematiky :) )

No a když jsi zmínil ty sítě, tak to taky nejdříve musel někdo vymyslet. Ty protokoly jsou postavené na výzkumu lidí. Detekce chyb, samoopravné kódy atd.
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: miro simko 28. 07. 2023, 14:19:21
Ako možnosť by som videl aj nasledovné: nastúpiť na školu, ktorá Ťa oslovila magisterským programom. Nie je nikde napísané, že bakalársky program musí trvať celé tri roky. Keď už teraz viac menej ovládaš bakalársku látku, zapíš si potrebné skúšky a sprav ich v priebehu roku-dvoch ;-)

Ak budeš mať stále kopec času navyše, môžeš si už počas druhého ročníku vybrať náročnú tému na diplomku a pracovať na tom. Úvod odovzdáš a obhájiš ako bakalárku a následne už študuješ to, kvôli čomu by si na školu šiel.

VŠ mne osobne nepriniesla ani tak samotné konkrétne znalosti. Možno ešte viac si cením iných vecí - dopracovať sa pred 20r k diplomu z Matfyzu alebo ČVUT vyžadovalo okrem tvorivého prístupu a nezľaknutia sa prekážok aj pomerne veľkú vytrvalosť. Všetko to sa mi veľmi hodí v práci, ktorú robím (hoci to vôbec nie je matematika a fyzika, ktoré som študoval).
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: enhaut 28. 07. 2023, 18:32:56
Myslim ze sa to tu opat strhava na krcmovu diskusiu taborov VS/bez VS.
Tento rok som dokoncil Bc na FIT VUT a pred nastupom na skolu som bol v podobnej pozicii ako ty, mas asi rok naskok ale tiez som uz pracoval, myslel som si ze uz nieco viem. Na strednej som sa tiez nudil, chodil som na IT odbor a presiel som viac menej s prstom v nose.

Z vlastnej skusenosti, ti mozem odporucit, aby si na tu VS siel. Ukaze ti to nove suvislosti, vrstvy medzi jednotlivymi technologiami. Na velku cast prednasok som nechodil (co pri niektorych predmetoch spatne lutujem) ale aj tak mi to velmi vela dalo a dufam, ze magister ma posunie este dalej. Ono to nie je uplne o tom, co ti skola da, ale o tom, co si z tej ponuky zoberies ty sam. Aj preto neodporucam vyhadzovat kredity za jednoduche kreditovky ale nabrat si volitelne predmety, ktore nepatria medzi jednoduche a budu ta bavit.

Dalsou vecou co na VS mozes (a silne ju odporucam) je ist do vyskumu, neviem ako na inych VS ale na FITe sa k vyskumu pripojit mozes, spatne by som sa do toho pustil skor. Mozes sa tak dostat k zaujimavym projektom, ktore sa vacsinou nehodia do suflika.
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: anonacct 28. 07. 2023, 21:03:15
Nečetl jsem diskuzi:

Pro autora - ono možná to teď vypadá, že ti vysoká třeba nic nedá, protože všechno umíš, ale neumíš... To co děláš je začátek slibné kariéry, ale potřebuješ právě ten rozhled a tu teorii. Já jsem taky šel na vysokou a proplul jsem jak nic, protože cokoliv kde se programovalo jsem měl "zadarmo" díky tomu, že jsem programoval už na základce, ale rozhodně jsem nevěděl všechno a ta teorie je hrozně důležitá pro ty zajímavější věci, které budeš chtít dělat. Pokud máš talent a chceš ho zabít tím, že budeš dělat CRUD aplikace, UI, nebo skripty pro automatizaci, tak běž do praxe, ale pokud máš talent a v životě se chceš dostat k něčemu fakt zajímavému a dobře placenému, tak zkus školu.

Navíc nikdy nevíš koho tam potkáš - představ si, že najednou nebudeš nejlepší a budou tam lidi, od kterých se něco naučíš.
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: František Ryšánek 29. 07. 2023, 01:30:44
Na svůj věk máte na spoustu věcí překvapivě jasný názor. Jako že když se nezadaří dokonale skloubit práci a zábavu, tak v práci vydělávat peníze a hezkou tvorbu si řešit ve volném čase (než přijde rodina, a pokud zaměstnavatel dovolí). Nebo to věčné dilemma, zda "jít šéfovat" znamená pro schopného codera cestu někam vzhůru.

Můj subjektivní názor: nejlepší budete v tom, co Vás baví. Pokud NEjste ten typ, který ví jistě, že chce co nejdřív šéfovat, tak si s tím možná teď nelamte hlavu. To rozhodnutí může přijít později, v práci, ad hoc. Pokud máte určité podezření, že to tak časem může dopadnout, tak v tuhle chvíli chybu neuděláte, pokud na vejšce absolvujete pár kurzů o project managementu, řízení vývoje SW apod. Netroufnu si tvrdit, zda je pro tenhle směr lepší VŠE, FIT ČVUT nebo která škola. Pokud budete nějakými školními vědomostmi v tomto směru poznamenaný, tak to z Vás bude na pracovišti určitým způsobem vyzařovat, i pokud zůstanete nominálně na čistě technické pozici. A můžete třeba citlivě inspirovat svoje šéfy, když vidíte, že zkoumají slepé uličky, které vy ze školy znáte předem, nadšeně objevují kolo apod.

Jak při vedení projektu odhadovat pracnost / časovou náročnost: na tohle téma jsem před nějakou dobou viděl povídání uncle Boba Martina.
https://www.youtube.com/results?search_query=uncle+bob+martin+on+estimation
Stručně: ono to bolí, nejde to přesně, a v průběhu projektu se ten odhad bude upravovat, ale je třeba mít aspoň něco. Zákazníci jsou vděční za aspoň nějaký odhad, a za včasné upozornění, pokud odhad bude nutné upravit. Popisoval tam metodu s kartami, já bych k tomu přidal Ganttův graf. Vlastně mám z blízkého okolí takový příběh i z praxe. Když se bavíte s novým potenciálním zákazníkem o případném projektu nějakého vývoje, tak v momentě, kdy vytáhnete aspoň Ganttův graf, a je jedno co v něm je, najednou zmizí pochybnost o tom, zda na to máte.
Ve škole nám říkali, že databáze reálných průběhů a časových náročností předchozích softwarových projektů je největším bohatstvím projektového managera :-)

Jak již výše zmíněno, otázka je, zda by Vás tahle práce jednou bavila. Šéfování znamená řešit lidi a jednat s nimi, být ve dvojím ohni (zdola i shora), komunikovat se zákazníkem, věčně řešit že je někde skluz / průser, uklízet po ostatních když udělají chybu, chodit na porady...
Jsou lidi, kteří přesně tohle chtějí, a třeba jdou "cestou rychlokvašky" = vystudují šéfování a jdou rovnou ze školy šéfovat.
A znám taky firmy, kde někdo na úrovni generálního ředitele na část úvazku dělá softwarový vývoj nebo něco na ten způsob. A třeba si i nechá v tomto dílčím oboru šéfovat od svého jmenovitého podřízeného (šéfa vývoje softwaru).

A ještě jiná otázka je, zda se dokážete dostat na šéfovskou pozici někde, kde pod sebou budete mít lidi natolik schopné, že se Vám nebude neustále otvírat kudla v kapse, že byste jejich práci nejradši udělal sám.
Naprosto s Vámi souhlasím v jedné věci: není větší žůžo, než mít šéfa, který rozumí svojí práci a je to "člověk na svém místě". Mě se to párkrát poštěstilo (jsem stárnoucí umpalumpa, ovšem nikoli programátor).


Na úroky jsou primitivní hotové vzorce. Úročitel / odúročitel / střadatel / fondovatel / umořovatel / zásobitel. Ne že bych si je pamatoval, jenom vím, že když budu potřebovat, stačí si to nalistovat. Jinak prosté složené úročení je trapná N-tá mocnina (exponenciála podle času). A ty pojmenované vzorce do toho přidávají různé varianty průběžného spoření/umořování nebo čerpání jistiny.


Clean code: už máte dost vlastního rozumu, než abyste skočil na špek youtuberovi, který si zvyšuje počet zhlédnutí provokativním obsahem. (Vyfabuluje falešnou modlu a pak ji půl hodiny horlivě vyvrací.) Mimochodem... za mých mladých let býval na ekně předmět, kde se bazírovalo na strukturovaném programování a studenti byli nuceni, používat jednoduchý grafický editor vývojových diagramů, ze kterých měl padat hotový strukturovaný kód v Pascalu... fungovalo to bezvadně jako lekce "tudy cesta vážně nevede, tzn. přinejmenším nic se nesmí přehánět". Naštěstí to tak chápali nakonec i vyučující. Tolik k různým idealismům.


Ještě k té low-level problematice a kam se "studijně zaměřit", ať už ve škole nebo na vlastní pěst:

Obecně v dnešní době nemohou umět všichni všechno. Osobně razím zásadu, že o co jsem si prakticky nenatloukl nos, tomu nemohu pořádně rozumět. Zároveň ten proces praktických pokusů a omylů vždycky trvá nějaký nenulový čas, přestože máte třeba předem teoreticky nastudováno. A času máme všichni stejně. Z toho právě plyne, že nemůžete umět všechno, protože to prostě nejde stihnout. A od toho máme dělbu práce. I ve firmách, které vyvíjejí embedded věci, pro automotive nebo jinam, existuje dělba práce minimálně na návrháře desek a programátory softwaru (ti se dále člení). Není špatné, pokud programátor blízko hardwaru třeba někdy držel v ruce páječku nebo si navrhl plošák, ale asi není úplně vhodné, aby dělal oboje. U projektu většího než triviálního to není časově možné.

Bohužel český domácí trh, tím že je malý, je zřejmě odsouzen do role "téměř čistého konzumenta integrovaných řešení". Není tu až tolik fajnové vývojářské práce pro globální trh - většina firem v širším oboru IT skládají dohromady stavebnici, kterou vyvinul a vyrábí někdo jiný. To co tady tvoříte, tvoříte často jednorázově nebo pro relativně malý počet zákazníků. Čest výjimkám, které se uchytily se svým produktem na globálním trhu.

Sysgo jsem zmínil hlavně kvůli jejich projektu PikeOS. Je to zajímavý kus softwaru, na kterém pracují špičkoví programátoři. Popravdě třeba nevím, jaký s tím mají úspěch na trhu... I v téhle firmě bude řada různých pozic s různou náplní práce.

Pokud pomineme programování MCUček přímo na holém železe, jsou v "embedded" oblasti populární různé RealTime operační systémy (RtOS). Tzn. tu nejtěžší dřinu už někdo odvedl. Pokud byste se motal kolem nějakého RtOS, tak nejspíš jako údržbář kernelu / tvůrce ovladačů pro periferie / tvůrce "aplikačního" softwaru. Nemám ale o tomhle trhu valný přehled. Různých malých RtOS je spousta a podle mého zdaleka ne všechny jsou kdovíjak úspěšné. Takže je otázka, čeho se chytit, co je perspektivní.

Hardware vespod může být PCčko nebo ne-PCčko.
Osobně znám z práce především x86 PC hardware. Jakožto profesionální průserář hlavně hledám mouchy na věcech, které navrhl někdo jiný - což není úplně tvůrčí práce, zcela jistě nikoli pro globální publikum. Snažím se problémy řešit přednostně v technické rovině, takže se občas o hardwaru něco dozvím...

Napadá mě nějaké prázdninové čtení na pomezí oborů PC HW / OS, případně o x86 asm/disasm...
Nevím, zda je zrovna tohle Váš obor zájmu, nebo jestli třeba nejste dávno úplně jinde...
berte nebo nechte bejt :-) a přeskakovat termíny či pasáže, kterým zatím nerozumíte, to jistě ovládáte dávno. U mě je to vždycky otázka motivace. Nejlíp se mi študuje nějaká neznámá oblast, pokud narazím na praktický problém, který mě k tomu poňouká. Číst to jako beletrii mi moc nejde.

Tak tedy:

Vynechávám letitý materiál, jak se daly PCčka programovat v éře MS-DOSu, jak si napsat holý DOSový exáč v ASM, jak sahat na paralelní port apod. Ta doba je pryč, pro Vás mladé už to nemá ani tu nostalgickou hodnotu.

Vzpomněl jsem si na pár článků od Michaela Kourdakise - začnu zprostředka článkem, který načrtává, jak na holém x86 hardwaru odstartovat SMP. V úvodu jsou tam hned odkazy na předchozí díly, které se více věnují základům.
https://www.codeproject.com/Articles/889245/Deep-inside-CPU-Raw-multicore-programming

Zkusil jste si stáhnout nějaký disassembler? Třeba free edici IDA Pro.
https://hex-rays.com/ida-free/
A loadnout nějaký binár, a koukat, jak vypadají funkce disassemblované z bináru, který původně vypadl nejspíš z Céčkového kompilátoru.

Nedávno jsem narazil na webíky jedné paní z Polska, která se věnuje hlavně analýze malwaru a napsala pro tyto potřeby i nějaké jednoduché pomůcky (software).
https://hshrzd.wordpress.com/how-to-start/
https://hasherezade.github.io/
https://www.youtube.com/@hasherezade/videos
https://twitter.com/hasherezade

Formáty binárek:
https://en.wikipedia.org/wiki/Comparison_of_executable_file_formats
https://en.wikipedia.org/wiki/Portable_Executable
https://en.wikipedia.org/wiki/Executable_and_Linkable_Format

K nahlédnutí do hlaviček PE binárů existují editory.
Klasiký byl LordPE, který je ale tuším 32bit-only.
Aktuálně mi Google našel toto:
https://github.com/petoolse/petools/releases

Ohledně RtOSů... měl jsem v úmyslu, navrhnout nějaké čtení ohledně RTAI, protože je z toho hezky vidět některé problémy, které se různé RtOS snaží řešit... ale boužel RTAI vypadá poněkud polochcíple :-) Hrál jsem si s tím asi před 15 lety a tehdy mi nějaké základní examply fungovaly.

RtOS může existovat buď samostatně jako plnohodnotný OS na holém železe, nebo může tvořit nějaký "hybrid" se stolním OS. Viděl jsem zřejmě cca následující hybridní varianty:

a) na holém železe RtOS mikrokernel, normální OS běží jako jeden z jeho tasků. Takto funguje RTAI a další.

b) na holém železe běží normální OS, který se ale dá přesvědčit, aby se vzdal jednoho konkrétního jádra CPU (nebo i více jader) a na těchto jádrech se zahnízdí "real-time exekutiva". Koordinací s "hostitelským OS" lze nalinkovat doručování IRQ od konkrétní periferie na procesory zabrané RtOS. Tady mě napadá B&R ARwin, který jsem viděl na vlastní oči.

c) RtOS má svůj vlastní hypervizor, normální OS běží vlastně ve virtuálu

Nicméně je třeba říct, že na spoustu "real-time" věcí vlastně stačí standardní Linux :-)

Možná bych na závěr ještě k PCčkům zmínil pár svých tlejících starších spisků:
http://support.fccps.cz/download/adv/frr/MSI/PCIe-MSI.html
https://stackoverflow.com/questions/27470885/how-does-dma-work-with-pci-express-devices
https://electronics.stackexchange.com/questions/76867/what-do-the-different-interrupts-in-pcie-do-i-referring-to-msi-msi-x-and-intx/343218#343218
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: Liquids 29. 07. 2023, 07:13:04
Téměř vše už bylo řečeno tady v jiných tématech. Pouze bych důrazně doporučil jít studovat do zahraničí na západ, pokud je to možné. Mobilita v EU je jjedna z největších příležitostí a benefitů.
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: Blabla123 29. 07. 2023, 20:05:41
Na (dobre) VS se neuci technologie, ale principy. Kdyz znas par technologii, naucit se principialne jinou na obskurni platforme (tj. napriklad funkcionalni programovani v C++ templatech) je vyznamne tezsi nez kdyz znas tyhle principy uz davno z VS. Nebo napriklad kryptografie, to je kapitola sama o sobe...
Normalne moc neprispivam, ale tohle mi nedalo. Po VS jsem hledal docela dlouho job kde by se dala kryptografie vyuzit. Nic krome par pozic na NUKIB jsem nenasel. To, ze to oproti klasice .NET nebo Java jobum platove bude stat asi za starou belu, kdyz je to statni, zminovat asi nemusim... Muzu se teda zeptat na vyuziti, konkretni firma, job, cokoliv?
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: František Ryšánek 30. 07. 2023, 01:05:41
Na (dobre) VS se neuci technologie, ale principy. Kdyz znas par technologii, naucit se principialne jinou na obskurni platforme (tj. napriklad funkcionalni programovani v C++ templatech) je vyznamne tezsi nez kdyz znas tyhle principy uz davno z VS. Nebo napriklad kryptografie, to je kapitola sama o sobe...
Normalne moc neprispivam, ale tohle mi nedalo. Po VS jsem hledal docela dlouho job kde by se dala kryptografie vyuzit. Nic krome par pozic na NUKIB jsem nenasel. To, ze to oproti klasice .NET nebo Java jobum platove bude stat asi za starou belu, kdyz je to statni, zminovat asi nemusim... Muzu se teda zeptat na vyuziti, konkretni firma, job, cokoliv?
Tenhle rybníček je zřejmě malý. Dneska kdo chce šifrovat, použije nějaký hotový software nebo standardní knihovnu... Základní výzkum/vývoj zřejmě leda někde v akademické sféře. Jinak užitou kryptografii by mohly pěstovat teoreticky pro svou potřebu banky, pro Vás kromě Raiffky protože pro tu údajně už dělá Tomáš Rosa ;-) ... napadá mě jedna konkrétní integrátorská firma: S.ICZ. Možná ve zbrojařském odvětví by se taky něco našlo (Czechoslovak Group není jenom těžká technika, patří tam radarové firmy apod.). Velké konzultantské firmy myslím taky občas experta potřebují, ale u nich bych se nedivil, pokud si najmou někoho externě na živnosťák na konkrétní akci.
Pak tu mají pobočky všelijaké zahraniční softwarové firmy...

Popravdě se o tento obor nijak zvlášť nezajímám, nejspíš mi mnohé uniká.
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: Maor 30. 07. 2023, 12:09:14
pro tazatele

máš praxi dobrý, potřebuješ jít někam, kde ti daj zabrat a nebudeš nejchytřejší v místnosti.

Jdi na něco teoretického, nauč se dobře matiku

Pokud můžeš běž do ciziny EU/UK - TU Munich, ETH Zurich, Delft, Cambridge, Manchester,... USA - Ivy league, MIT, Stanford

V ČR se zeptej na individuální studijní plány a jezdi do ciziny jak jen to jde. Můžeš jet v každé etapě studia na Erasmus a pak jsou možné výjezdy v rámci jiných programů, takže ve výsledku v ČR odstuduješ jen prvák a pak jeden semestr až se vrátíš abys dopsal bakalářku.

Na magistru jsou pak joint/double degree programy. Důléžité je jezdit na školy, které jsou lepší než co máme v ČR. https://www.topuniversities.com/

Díky kontaktům z ciziny se ti pak bude snáz hledat dobrá práce na západě

a poslední doporučení, vždy se dá škola nedodělat
Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: Tuxedoassassin 30. 07. 2023, 13:58:07
Rozhodně na VŠ jdi, určitě na to máš a není to vyhozený čas. Já jsem absolvoval VŠB FEI (průmyslovou automatizaci), takže o pražských VŠ toho moc nevím, nicméně už mám něco odpracováno v oboru a musím říct, že na VŠ hlavně máš příležitost odjet někam studijní pobyt nebo tím lépe i na stáž. (Spolužáci třeba byli v Jižní Koreji nebo na Taiwanu) To se pak dostaneš na místa, kde by ses běžně nedostal a většinu nákladů ti pokryje škola.

A taky, třeba si jednoho dne uvědomíš že to programování už tě nebaví nebo se trh práce změní, tak se ten titul opravdu hodí.

Název: Re:Vysoká škola pro pokročilého programátora
Přispěvatel: marwyn 01. 08. 2023, 16:28:54
To zní jako perfektní ztráta dalších 3-5 let :/.

Pokud jsi tak dobrý, tak by neměl být žádný problém vystudovat distančně a podle individuálního studijního plánu za podstatně kratší dobu.

Ve volném čase doporučuji věnovat se trochu české gramatice. Není úplně od věci umět dobře rodný jazyk a třeba shoda podmětu s přísudkem ti dělá docela potíže :/.