Hvorfor jeg anbefaler Harvard 'S CS50x online kurs til hver selvlært utvikler

CS50S Introduksjon til Datavitenskap er et gratis online kurs basert på En av De mest populære kursene På Harvard University. I dette kurset kan du lære om sentrale datavitenskapskonsepter, for eksempel:

  • Algoritmer-binær søk, boble sortere, flette sortere etc.
  • datastrukturer-koblede lister, hashtabeller, etc.
  • Memory-stack og heap

språkene som brukes Er C, Python, SQL, pluss noen andre basert på hva du velger for det endelige sporet. Det er et mylder av GRATIS CS-kurs tilgjengelig på nettet, men dette er den mest underholdende og engasjerende jeg har funnet så langt.

jeg skrev «selvlært utvikler» i tittelen fordi jeg skjønte at de uten formell CS-utdanning er mindre sannsynlig å ha hatt en sjanse til å bli utsatt for disse emnene i dybden. Men selvfølgelig vil jeg anbefale det til alle som er interessert i disse emnene.

Her er tre poeng som jeg elsker om dette kurset, og to potensielle ulemper.

Proffene

  1. deres filosofi
  2. forelesningene er en fryd å se
  3. oppgavene er kreative

(Potensielle) Ulemper

  1. er kanskje ikke nyttig for ditt daglige arbeid
  2. du får ikke se personalimplementerte løsninger på oppdrag

Proffene

1. Deres filosofi

dette kurset er rettet mot folk på alle programmeringsnivåer. De forteller deg i den første uken:

det som til slutt betyr noe i dette kurset er ikke så mye hvor du ender opp i forhold til klassekameratene dine, men hvor du ender opp i forhold til deg selv da du begynte.

Bare for referanse har jeg 1 års yrkeserfaring, men ingen I C eller Python. Noen av oppgavene var fortsatt veldig tøffe for meg, og en ukes verdi av kurs ville ta meg om 10 timer å fullføre, avhengig av materialet (Som En Ruby dev var Python-tingene mye mer intuitive enn C!).

kurset gjør en god jobb med å være nybegynnervennlig og utfordrende samtidig, fordi forelesningene går deg gjennom innholdet godt, men oppgavene krever at du virkelig tenker og gjør mer forskning. Også ofte gir de deg et valg mellom to oppgaver, avhengig av om du er «mer komfortabel» eller «mindre komfortabel».

2. Forelesningene er en glede å se

I tillegg til å være informativ, Professor David Malan foredrag er godt tempo, animert, og kreative. Se noen av dem ,og du vil nok være enig (tilgjengelig på Youtube også).

3. Oppgavene er kreative

I Stedet for kjedelige oppgaver som «iterate over this array in C», får du implementere programmer som fotofiltre, stavekontroller, stemmesystemer og Hogwarts studentdatabaser, ved hjelp av konsepter du lærte underveis.

En annen ting jeg liker er deres testsystem Kalt Check50, som gir deg umiddelbar tilbakemelding når du sender inn koden din. Det er gledelig når du endelig får alle testene for å returnere et grønt smilefjes:)

Eksempel:

(Potensial) Ulemper

1. Kan ikke være nyttig for ditt daglige arbeid

for bedre eller verre, dette er ikke et lynkurs. Hvis du vil lære et bestemt emne raskt, som React for eksempel, er det bedre opplæringsprogrammer på nettet (komplett undertrykkelse, men jeg anbefaler Scrimba for å lære front-end språk / rammer inkludert React).

Når det er sagt, tror jeg at å lære disse kjernebegrepene i datavitenskap vil være gunstig for enhver utvikler på en eller annen måte.
for eksempel hadde jeg brukt Ruby hashes (ordbøker) i lang tid, og jeg visste at å finne en verdi fra en hash ved nøkkelen var mye raskere enn å finne en verdi fra en matrise. Men før jeg tok dette kurset, forsto jeg ikke hvordan hashes ble implementert under hetten. Lære om hash tabeller og faktisk implementere en tillot meg å også forstå Ruby hashes bedre.

2. Du får ikke se personalimplementerte løsninger på oppdrag

som jeg nevnte, når du sender inn en oppgave online, blir koden din testet via et system kalt Check50. Du får ikke se løsningen som de ansatte hadde i tankene eller gjøre en side-by-side sammenligning med din.

Dette var ikke alltid et problem, og jeg forstår deres grunner, men det var en spesiell anledning da jeg ønsket at jeg kunne se personaleimplementerte løsninger: da jeg skrev SQL-spørringer. Mine spørsmål fungerte, og besto Check50-testene, men det var ingen måte å fortelle om de kunne vært optimalisert ytterligere. Å se ansatte-implementerte svar ville ha hjulpet der.

hvis dette kurset høres interessant ut for deg, anbefaler jeg at du sjekker det ut på edX. Og hvis du bestemmer deg for å ta det, lykke til deg.

jeg er også fortsatt registrert, om å starte iOS-sporet. Ønsk meg lykke til!

Update – 2020-12-28

det siste prosjektet tok meg litt tid, men jeg har fullført kurset 🙂

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert.