juniorguru / junior.guru

The junior.guru website, Discord bot, and synchronization scripts
https://junior.guru
Other
43 stars 22 forks source link

Skills #3

Closed honzajavorek closed 3 years ago

honzajavorek commented 5 years ago

Seznam materiálů přes prisma trendu trhu - mám nabídky, podle poptávky můžu třídit skilly. Data můžu brát i z GitHubu, JetBrains, StackOverflow.


dalsi vzdelavani na skilly:
  kurzy:
    coursera, udemy, udacity, edx.org, codecademy

  workshopy:
    https://pyworking.cz/
    https://www.czechitas.cz/cs/kalendar-akci
    https://engeto.cz/workshopy/

  bash, command line, linux:
  https://linuxjourney.com/
  https://wizardzines.com/
  https://github.com/jlevy/the-art-of-command-line

  ekosystém jazyka - https://docs.python-guide.org/
  https://realpython.com/
  https://twitter.com/python_tip
  https://twitter.com/TheBeginnerDev

  Git, API, vývoj webu, datová analýza, SQL
  https://www.sedlakovi.org/kurzy/
  https://brohrer.github.io/blog.html - learn XYZ vpravo dole
  knihy?
    https://learncodethehardway.org/
    https://en.wikipedia.org/wiki/The_Pragmatic_Programmer
    https://www.amazon.com/Pragmatic-Programmer-journey-mastery-Anniversary/dp/0135957052

  databaze:
  PostgreSQL, MySQL, MongoDB, Redis, obecne SQL

  web:
  potrebujes HTML, CSS jako prerekvizity - https://coreskill.tech/
  djangogirls https://tutorial.djangogirls.org/
  https://www.djangoproject.com/start/

  api:
  cojeapi.cz
  https://apisyouwonthate.com/books

  dokumentace:
  https://guides.github.com/features/mastering-markdown/
  https://www.writethedocs.org/guide/
  https://www.divio.com/blog/documentation/

  git:
  https://guides.github.com/introduction/git-handbook/
  https://github.com/Gazler/githug
  v praxi - open source (viz vyse)

  datova analyza:
  ???

  machine learning:
  https://www.fast.ai/
honzajavorek commented 5 years ago

Open Source contributing:

honzajavorek commented 5 years ago

GIS - http://gismentors.cz/

mjablecnik commented 3 years ago

Myslím si, že by bylo nejlepší, rozdělit skilly které člověk potřebuje, podle zaměření, čemu se chce ve své profesi věnovat.. Jednoduše by byl nějaký článek, který by vysvětloval, že existuje:

A jednoduše podle toho co by kdo chtěl dělat by mu byly představeny technologie, se kterýma by se měl naučit.

Bylo by asi fajn to udělat více interaktivní, aby se to nezdálo jako moc informací na jedné stránce, ale jednoduše pomocí otázek:

-> Jsi začátečník v programování? 
    - Ano -> Python a naučíš se tak základy programování, které uplatníš i všude jinde
    - Ne (Už umím minimálně Python) 
        -> Jaký software bys chtěl vyvíjet?
            - Mobilní aplikace
                -> Pro jaký systém?
                   - Android  -> Kotlin
                   - iOS      -> Swift
                   - Obojí zároveň -> Flutter, React Native, Xamarin
            - Desktopové aplikace
                -> Pro jaký systém?
                   - Windows  -> C#/.NET
                   - Linux    -> Vala/GObject nebo C/C++
                   - Mac OS   -> Swift
                   - Multiplatformě -> Java/Kotlin + JavaFX, Flutter
            - Počitačové hry
                -> Chceš se tomu věnovat opravdu profesionálně?
                   - Ano  -> Unity, UnrealEngine, CryEngine
                   - Ne (chci si to jenom vyzkoušet jaké to je) -> Godot, GameMaker, Haxe, Python/Pygame, Java/libgdx, MonoGame 
            - Webové stránky
                -> Jaký druh webových stránek?
                   - Jednoduché webové stránky (jenom pár stránek nebo blog) -> HTML, CSS, JavaScript/nodejs
                   - Komplexnější webové aplikace (něco podobného jako Alza eshop nebo Email schánka od Seznamu či Googlu)
                       -> Chceš dělat na Frontendu (programovat to co vidí uživatel) nebo na Backendu (programovat to co se odehrává na serveru)
                          - Frontend -> JavaScript/TypeScript + React nebo Vue.js
                          - Backend  
                            -> Pro jaké servery?
                                 - Linux ->  Java/Spring, Kotlin/Spring, JavaScript, TypeScript, Go
                                 - Windows -> C#/.NET
            - Operační systémy
                - C, C++, Rust
            - Software pro hardware
                - Tady osobně nevím nikdy jsem software pro nějaký specifický hardware neprogramoval, ale typuju tak, že zde
                  může být: C, C++, Python

A potom ukaždé technologie by bylo krátké posouzení jaké jsou výhody/nevýhody v porovnání s ostatními pro stejnou platformu, zaměření, apod..

Navíc by se to ještě i dalo rozšířit i o další jiné IT obory a zaměření:

  - Ne (Ale nechci se věnovat vývoji softwaru chci zkusit něco jiného) 
      -> Chtěl bys zkusit spravovat servery?
      -> Chtěl by ses věnovat testování?
      -> Chtěl by ses věnovat technickému supportu?
      -> Chceš se naučit něco z počitačové bezpečnosti?
      - ...

Navíc aby tu nebyla všude obrovská škála všech možných jazyků, tak by se uváděli opravdu jenom ty nejpoužívanější a co jsou všeobecně mezi vývojáři oblíbené technologie. Například jsem zde neuvedl Angular nebo PHP, protože se poslední dobou v oblíbenosti mezi vývojáři neobjevují na moc vysokých pozicích a existují pro ně adekvátní náhrady: https://insights.stackoverflow.com/survey/2020#technology-most-loved-dreaded-and-wanted-languages-loved https://2019.stateofjs.com/front-end-frameworks/

Takže proč by se je Junioři měli učit?

honzajavorek commented 3 years ago

@mjablecnik Díky, jsou to dobré nápady a četl jsem to, ale stále to nechávám uzrát. Mám to rozmyšleno podobně, jak navrhuješ, podle profesí (viz https://github.com/honzajavorek/junior.guru/issues/19). Zároveň by mohl být nějaký rozhodovací strom podle toho, co člověka nejvíc láká. Akorát začátečníci občas vůbec nevědí, co chtějí, takže s tím by to muselo umět pracovat. Teď to řeším vlastně tak, že jim dám "tu nejlepší výchozí volbu" a toto rozhodování tím posunu v podstatě až někam na moment získávání první práce.

Mám Trello, kde mám všechny úkoly k junior.guru a maximálně mi to vyhovuje, takže toto issue zavřu. Issues na GitHubu nechám vyhrazeny pro případ, že chce někdo nahlásit chybu, poskytnout další nápad, apod.