Byg 111 projekter, optjen 10 certificeringer - nu med Python

Opdater 2. juli 2020: De 4 nye Python-certificeringer er nu live.

Vi har arbejdet hårdt på version 7.0 af freeCodeCamp-læseplanen. Her er hvad vi bygger.

Nogle af disse forbedringer - inklusive 4 nye Python-certificeringer - vil blive sat i drift i begyndelsen af ​​2020.

Bemærk: Hvis du allerede gennemgår den aktuelle version af læseplanen, skal du fortsætte. Som du vil se, er der ingen grund til at stoppe.

Læreplanen til version 7.0 ...

Vil tage en person med meget grundlæggende computerviden ...

Byg denne person op gennem 3.000 timers kursusarbejde ...

Forøg deres programmeringsfærdigheder ...

Stør deres softwaretekniske grundlæggende ...

Og de vil dukke op på den anden side som en afrundet udvikler, klar til de fleste udviklerjob på entry level.

Som altid er der ingen valgfag. Der er ingen gætterier. Du kan bare gennemgå læseplanen fra start til slut.

Og undervejs lærer du de værktøjer og koncepter, der bruges af moderne softwareudviklingsteams.

Med version 7.0 lærer du stadig Front End Web Development færdigheder og Back End API design.

Og nu lærer du også Python og dens kraftfulde pakke med datalogi og maskinlæringsværktøjer.

Forbedring nr. 1: Vi tilføjer 4 nye datafokuserede certificeringer.

Ud over de 6 certificeringer, vi har haft siden 2017, tilføjer vi 4 nye certificeringer, der alle bruger Python:

  • Videnskabelig databehandling
  • Dataanalyse
  • Informationssikkerhed
  • Maskinelæring

Du bruger biblioteker som Numpy, Matplotlib og TensorFlow til at opbygge en lang række projekter.

Forbedring nr. 2: I stedet for individuelle lektioner vil alt være et projekt.

Vores nuværende læseplan har blokke af individuelle lektioner. Disse kan føles frakoblet fra hinanden - og endda lidt som "interaktiv dokumentation."

Denne tilgang har været effektiv nok til at hjælpe 40.000 mennesker med at få deres første udviklerjob. Men byggeprojekter er meget sjovere. Og læring skal være sjovt. ?

Så med version 7.0 erstatter vi disse valgfri lektioner med vores helt nye øvelsesprojekter.

For hvert af disse øvelsesprojekter opbygger du en codebase - den ene bestået test efter den anden.

Indtil - hundreder af beståede tests senere - har du et fuldt funktionelt projekt.

For eksempel lærer du JavaScript ved at opbygge et fuldt spilbart rollespil i stedet for at lære JavaScript gennem en serie på 200 diskrete lektioner.

Vi vil bygge mere gentagelse ind for at hjælpe dig med at styrke din "muskelhukommelse" til kodning.

Forbedring nr. 3: Vi tilføjer crashkurser på Git, Linux og SQL.

Tidligere versioner af freeCodeCamp-læseplanen underviste i Git, Linux og SQL.

Men vi ønskede at gøre læseplanen fuldt interaktiv. Ingen artikler. Ingen videoer. Bare kodning fra start til slut.

Så vi fik vores læseplan til at køre helt på klientsiden. Du kan bare jamme gennem freeCodeCamp i din browser og køre en feedback-loop på nul millisekunder.

Konventionel visdom på det tidspunkt var, at undervisning i Git, Linux eller SQL ville kræve et filsystem. Og dette ville kræve servere. Og servere ville indføre en masse ventetid.

Så vi fjernede disse dele fra vores læseplan og sagde dybest set: "gå og lær disse fra vores YouTube-kanal eller fra andre ressourcer."

Nå i dag er jeg begejstret for at meddele, at vi arbejder på nogle interaktive crashkurser for disse tre værktøjer.

Disse vil ikke være certificeringer. De vil være selvstændige tutorials. Og du vil være i stand til at gøre dem, når du vil. Ingen andre dele af læseplanen afhænger af disse færdigheder.

Da vi underviser disse i din browser, kan vi kun tilnærme et fuldt servermiljø. Men vi er sikre på, at vi stadig kan lære dig mange af kernebegreberne interaktivt.

Her er den fulde læseplan for version 7.0. Alle 111 projekter.

Ved udgangen af ​​2020 vil freeCodeCamp's læseplan se sådan ud:

[HTML + CSS] Responsivt webdesign (16 projekter)

? ️ Øvelsesprojekter: ️

  • Lær grundlæggende HTML ved at opbygge en katfoto-app
  • Lær grundlæggende CSS ved at opbygge en blog
  • Lær mellemliggende CSS ved at bygge et Picasso-maleri
  • Lær CSS Box Model ved at opbygge et Rothko-maleri
  • Lær CSS-variabler ved at opbygge en byhorisont
  • Lær CSS-animationer ved at bygge et pariserhjul
  • Lær typografi ved at opbygge et ernæringsmærke
  • Lær tilgængelighed ved at oprette en brugerfeedback-undersøgelse
  • Lær responsivt webdesign ved at bygge et klaver
  • Lær CSS Flexbox ved at oprette et fotogalleri
  • Lær CSS Grid ved at opbygge et magasin

? Certificeringsprojekter:

  • Hyldest side
  • Undersøgelsesformular
  • Produktlandingsside
  • Teknisk dokumentationsside
  • Personlig portefølje webside

[JavaScript] Algoritmer og datastrukturer (13 projekter)

? ️ Øvelsesprojekter:

  • Lær grundlæggende JavaScript ved at opbygge et rollespil
  • Lær mellemliggende JavaScript ved at opbygge en kaloritæller
  • Lær regelmæssige udtryk ved at oprette et spamfilter
  • Lær fejlfinding ved at opbygge et terningespil
  • Lær datastrukturer ved at bygge en indkøbskurv
  • Lær grundlæggende algoritmer ved at opbygge et algoritmisk nyhedsfeed
  • Lær mellemliggende algoritmer ved at opbygge et Yahtzee-spil
  • Lær funktionel programmering ved at opbygge et regneark

? Certificeringsprojekter:

  • Palindrome Checker
  • Romersk talekonverter
  • Caesars Cipher
  • Validator af telefonnummer
  • Kasseapparat

[JavaScript] Frontend-biblioteker (10 projekter)

? ️ Øvelsesprojekter:

  • Lær grundlæggende reaktion ved at oprette en quiz-app
  • Lær mellemreaktion ved at opbygge Flappy Bird
  • Lær grundlæggende redux ved at opbygge en motionsspor
  • Lær mellemliggende redux ved at opbygge Tetris
  • Lær TypeScript ved at opbygge et pokerspil

? Certificeringsprojekter:

  • Tilfældig citat maskine
  • Markdown Previewer
  • Trommemaskine
  • JavaScript-regnemaskine
  • Pomodoro ur

[JavaScript] Datavisualisering (11 projekter)

? ️ Øvelsesprojekter:

  • Lær CSV ved at oprette en postliste
  • Lær JSON ved at opbygge et sportshold
  • Lær AJAX ved at opbygge en visningstæller
  • Lean Data Visualization ved at opbygge et dashboard
  • Lær SVG ved at opbygge et solsystem
  • Lær D3 ved at opbygge et kort over jorden

? Certificeringsprojekter:

  • Søjlediagram
  • Scatterplot-graf
  • Varmekort
  • Choropleth Kort
  • Treemap-diagram

[JavaScript] API'er og mikroservices (10 projekter)

? ️ Øvelsesprojekter:

  • Lær npm ved at opbygge et npm-modul
  • Lær Node.js ved at opbygge en webserver
  • Lær Express.js ved at opbygge en aktiehandelsplatform
  • Lær RESTful API'er ved at opbygge en vejrtjeneste
  • Lær MongoDB ved at opbygge en filmanmeldelsesdatabase

? Certificeringsprojekter:

  • Tidsstempel mikroservice
  • Anmod Header Parser Microservice
  • URL Shortener Microservice
  • Trænings Tracker
  • Fil metadata mikroservice

[JavaScript] Kvalitetssikring (10 projekter)

? ️ Øvelsesprojekter:

  • Lær det grundlæggende at teste ved at oprette en opskriftingrediensparser
  • Lær enhedstest ved at skrive tests til et e-handelssted
  • Lær integrationstest ved at skrive tests til et e-handelssted
  • Lær funktionstest ved at skrive tests til et e-handelssted
  • Lær Jest and React Testing Library ved at teste et React Tic Tac Toe-spil

? Certificeringsprojekter:

  • Metrisk-imperial konverter
  • Issue Tracker
  • Personligt bogbibliotek
  • Sudoku Solver (erstatter aktiekurschecker, der flytter til informationssikkerhed)
  • Grammatik Checker (Udskiftning af anonyme opslagstavler, der flytter til informationssikkerhed)

[Python] Scientific Computing (10 projekter)

? ️ Øvelsesprojekter:

  • Lær Python Basics ved at opbygge et blackjack spil
  • Lær mellemliggende python ved at opbygge et kontaktbogsprogram
  • Lær objektorienteret programmering ved at opbygge et minesveger-spil
  • Lær rekursion ved at løse Tower of Hanoi Puzzle
  • Lær samtidighed ved at opbygge en primtalgenerator

? Certificeringsprojekter:

  • Aritmetisk formatering
  • Tidsregner
  • Batterilevetid Lommeregner
  • Polygon Area Calculator
  • N Queens Solver

[Python] Data Analysis (10 projekter)

? ️ Øvelsesprojekter:

  • Lær grundlæggende NumPy ved at oprette og manipulere arrays
  • Lær mellemliggende NumPy ved at bygge Conway's Game of Life
  • Lær pandaer ved at analysere salgsdata
  • Lær Data Wrangling ved at organisere USDA Food Database
  • Lær matplotlib og datavisualisering ved at tegne webstedsanalyse

? Certificeringsprojekter:

  • Middel-varians-standardafvigelsesberegner
  • Demografisk data tidsserie analysator
  • Visualiseringsmedicin
  • Akademisk citatgraf
  • Produktoversigt Data Dashboard

[JavaScript + Python] Informationssikkerhed (11 projekter)

? ️ Øvelsesprojekter:

  • Lær informationssikkerhed ved at opbygge en kreditkortformular (JS)
  • Lær kryptografi ved at opbygge et digitalt signatursystem (JS)
  • Lær godkendelse ved at oprette en tilmeldingsside (JS)
  • Lær websockets ved at opbygge et chatrum (JS)
  • Lær mere om netværkssikkerhed ved at opbygge en pakkesniffer (PY)
  • Lær Scapy ved at oprette pakker fra Scratch (PY)

? Certificeringsprojekter:

  • Aktiekurschecker (i eksisterende læseplan, flyttes)
  • Anonymt opslagstavle (i eksisterende læseplan, flyttes)
  • Port Scanner
  • Packet Capturer
  • Sikker realtids-multiplayer-spil

[Python] Machine Learning (10 projekter)

? ️ Øvelsesprojekter:

  • Lær det grundlæggende i maskinindlæring ved at opbygge et program til identifikation af håndskrevne cifre
  • Lær Tensorflow ved at opbygge et filmanbefalingssystem
  • Lær regressionsmodeller ved at opbygge en husprisforudsigelse
  • Lær klassificeringsalgoritmer ved at klassificere irisblomstebilleder
  • Lær dyb læring ved at analysere trafiksignaler

? Certificeringsprojekter:

  • Rock Paper Scissors Analyzer
  • Cat and Dog Image Classifier
  • Musikanbefalingsmotor
  • Lineær regression Fuel Economy Calculator
  • Neural Network Text Analyzer

? ️ Og vores 3 crashkurser:

  • Relationsdatabaser - Lær SQL ved at opbygge en universitetsdatabase
  • Linux - Lær grundlæggende om Bash ved at spille Capture the Flag
  • Git - Lær Git ved at oprette et open source-projekt

? ️‍♀️ Og selvfølgelig tilbyder vores Coding Interview Prep sektion (allerede tilgængelig) tusindvis af timers ekstra øvelse:

  • Avancerede algoritmer (9 algoritmer)
  • Avancerede datastrukturer (46 algoritmer)
  • Rosetta-kodealgoritmer (134 algoritmer)
  • Project Euler-algoritmer (480 algoritmer)
  • Take Home Projects (20 projekter)

Hvordan vi ruller alt ud

Vi udruller disse ændringer i 4 faser. Ingen af ​​disse bryder ændringer. Læreplanen forbliver fuldt bagudkompatibel.

Hvis du tidligere har opnået en certificering, beholder du den. Ingen bliver nødt til at genoprette projekter.

Trin 1 : Udgiv Python-certificeringsprojekter

Trin 2 : Opdater vores brugergrænseflade til at understøtte nye øvelsesprojekter

Trin 3 : Udgiv Python-øvelsesprojekter

Trin 4 : Udgiv JavaScript-øvelsesprojekter til erstatning af eksisterende JavaScript-lektioner

Ofte stillede spørgsmål

Jeg er midt i den nuværende læseplan. Skal jeg fortsætte?

Ja. Fortsæt. Intet af dette vil påvirke noget, du lærer i dag. Den nye læseplan er fuldt bagudkompatibel.

Jeg har allerede opnået certificeringer med den aktuelle læseplan. Hvad vil der ske med disse?

Tillykke med dine certificeringer. Gode ​​nyheder: vores nuværende 6 certificeringer ændrer sig ikke. De vil stadig være i læseplanen, og hver af dem beholder de samme 5 certificeringsprojekter.

Husk: For at optjene en certificering er alt, hvad du skal gøre, at bygge sine 5 certificeringsprojekter. Alle lektioner er valgfri.

Så selvom vi erstatter disse lektioner med øvelsesprojekter, behøver du ikke gå tilbage og gøre disse. Øvelsesprojekterne - ligesom lektionerne - vil være helt valgfri.

Hvad er de andre ændringer, jeg bør vide om?

Vi ændrer navnet på certificeringen "Kvalitetssikring og informationssikkerhed" til bare at være "Kvalitetssikring." Vi gør dette, fordi vi har en ny certificering, der kun fokuserer på informationssikkerhed.

Kvalitetssikringscertificeringen vil dække meget mere test. To af dets gamle certificeringsprojekter flyttes til den nye informationssikkerhedscertificering. Og vi erstatter dem med 2 nye kvalitetssikringscertificeringsprojekter.

Hvis du allerede har optjent den gamle kvalitetssikringscertificering, behøver du ikke opbygge disse 2 nye projekter. Men du kan bygge dem, hvis du vil have ekstra træning.

Skal jeg udføre alle 3.000 timers kurser, før jeg kan begynde at ansøge om job?

I praksis gennemfører meget få mennesker hele læseplanen, inden de går ud og får et job.

Så tænk ikke på denne læseplan som "alt hvad du bør vide, før du starter din jobsøgning."

Tænk i stedet på dette som: "alt, hvad en moderne udvikler skal vide tidligt i deres karriere." Du kan fortsætte med at lære nye færdigheder gennem læseplanen, selv efter at du har fået dit første udviklerjob.

Kan jeg ansøge om datavidenskabelige job med dette?

Data Science er et tværfagligt felt, der kombinerer programmering, statistik og domæne viden. Det er ikke et startfelt, men snarere en karriere, du går over i, når du først har fået din ph.d. eller arbejde på en række forskellige job i industrien.

Vi underviser i mange datavidenskabelige værktøjer, fordi disse også er værdifulde for generalistudviklere. Bemærk, at vi ikke underviser i matematik eller branchespecifik domæneviden, du har brug for som dataforsker. Så hvis dit mål er at blive datavidenskabsmand, vil du sandsynligvis lære dem i skolen eller på jobbet.

Hvordan kan jeg hjælpe?

Vi er en lille nonprofit med et komisk lille budget. Men vi er ekstremt effektive. I 2019 leverede vi mere end 1,1 milliarder minutters instruktion på et budget på kun $ 373.000. Det kommer ud til 50 timers instruktion pr. Doneret dollar.

Den bedste måde at hjælpe vores mission er at støtte freeCodeCamp.org direkte med en donation.

Du kan også hjælpe ved at hænge ud på freeCodeCamp-forummet og besvare folks spørgsmål. Vi er nu et af de største programmeringssamfund på nettet takket være så mange nyttige frivillige.

Tak igen for at være en del af freeCodeCamp-samfundet. 2019 har været et grundlæggende år. 2020 bliver året, hvor vores bestræbelser gennemføres.

Jeg er taknemmelig for, at du vil være her med os, da vores samfund tager sit næste store skridt ind i fremtiden.