Programmere chatbots og spill i Python: CODDY kurs og VMK MSU - kurs 58 800 rub. fra Coddy School of Programming for Children, trener 7 moduler (måneder)
Miscellanea / / December 04, 2023
Varighet: fra 7 moduler (måneder), fra 56 timer*.
Format: gruppetimer, offline og online (sanntid).
Antall barn: fra 1 til 15.
fra 1050 rub./time i en nettgruppe,
fra 1100 rub./time i en frakoblet gruppe,
fra 1665 RUR/time individuelt online,
fra 2400 rub./time individuelt offline.
Python forblir trygt i toppen av populære programmeringsspråk. Den er ganske enkel og har en kortfattet syntaks - takket være denne funksjonen økes utviklingshastigheten betydelig. Python har et enormt bibliotek med moduler, gode kodegjenbruksmekanismer, et praktisk utviklingsmiljø og andre fordeler.
I januar 2019 ble VMK MSU oppkalt etter M.V. Lomonosova og CODDY-skolen har lansert et felles prosjekt for å studere det grunnleggende om Python for tenåringer 13–16 år. Pilotkurset viste seg å være vellykket og vellykket. Nå har vi bestemt oss for å finpusse og forbedre programmet litt og utvide treningsperioden fra 4 til 7 måneder. Klassene vil vare 2 timer og elevene vil kunne bruke mer tid på å jobbe med prosjekter. Sammen med lærere skal vi skrive chat-bots og også lage våre egne spill.
Gutta skal lage prosjekter og forsvare dem foran juryen. Hver student vil selvstendig komme opp med og implementere ideen om arbeidet sitt - læreren godkjenner det bare. Juryen vil inkludere lærere fra CODDY-skolen, lærere fra Moscow State University Computer Science and Technology Complex, og spesialister fra ledende IT-selskaper. Etter forsvaret vil de presentere de unge programmererne med sertifikater fra Moscow State University Computer Science Committee - for gutta vil dette være en av de første prestasjonene innen å tilegne seg programmeringsferdigheter.
Hoveddelen av kurset vil være viet til å lære Python-språket som sådan. Vi har imidlertid inkludert andre emner som er nyttige for fremtidig arbeid:
· leksjon om å lage presentasjoner;
· undervisning i offentlig tale.
Vi vil også gjennomføre flere timer om teambuilding. I disse leksjonene skal barna studere følgende emner:
· grunnleggende kunnskap om prosjektledelse og arbeid med dem;
· teamarbeid;
· planlegger;
· evne til å vurdere risiko.
Små programmerere vil også ta del i et forretningsspill. Hvis barnet forsvarer arbeidet ikke alene, men sammen med teamet sitt, vil det motta ytterligere poeng.
Våre lærere vurderer både den teoretiske forståelsen av temaet og evnen til å anvende kunnskap i praksis. Vi gir ikke karakterer – studentene demonstrerer selv kunnskapene sine i timene, når de tar prøver og når de forsvarer et prosjekt.
Ønsker barnet ditt å bli med i programmeringsverdenen i en vennlig og støttende atmosfære? Kom til et fullverdig kurs om Python fra CODDY og Moscow State University Computer Science Complex, hvor ledende eksperter vil dele sin kunnskap med barn!
Kurslærer:
«Spillprogrammering i Python», «Etisk hacker», «Opprette spill i Roblox Studio», «Utvikling av chatbots i Python sammen med Moscow State University. M.V. Lomonosov", "Bots in Python", "Webapplikasjoner i Python i samarbeid med Computer Science and Technology Complex ved Moscow State University. M.V. Lomonosov"
Utdanning:
Moskva polytekniske universitet, retning "Informasjonssikkerhet"
Erfaring:
2 års erfaring som sikkerhetsingeniør i APIBank. 1,5 år outsource webapplikasjonsutvikler i Python.
Interesser:
Programmering, Cybersecurity, White Hacking, DEV-ops engineering.
«Personvern på nett er en umistelig menneskerettighet og et krav å opprettholde
menneskeverd og respekt."
Kurslærer:
«Spillprogrammering i Python», «Etisk hacker», «Utvikling av chatbots i Python sammen med Computer Science and Computing Complex ved Moscow State University. M.V. Lomonosov", "Python og maskinlæring", "Botter i Python", "Webapplikasjoner i Python i samarbeid med Moscow State University. M.V. Lomonosov"
Utdanning:
Moscow State Technical University oppkalt etter. Bauman, spesialitet "Informasjonssikkerhet".
Erfaring:
Beherske programmeringsspråkene Python, C\C++, Golang, Pascal. Har erfaring med utvikling av ulike applikasjoner.
Interesser:
Han liker å programmere i Python for å løse en lang rekke problemer, og jo mer kompleks og interessant oppgaven er, jo bedre. Han driver med sport, liker å fotografere og elsker å reise. Jeg er overbevist om at hver person som gjør nok innsats for å oppnå et mål, oppnår det. Liker å hjelpe andre med å nå sine mål. Ung og oppmerksom på mennesker, finner et felles språk med ethvert barn og hjelper dem å avsløre sine beste egenskaper under læring, noe som gjør læring morsomt og effektivt for alle.
"Programmering i det 21. århundre er det andre alfabetet som enhver vellykket person bør mestre, uavhengig av interesseområdet. Python er det perfekte første trinnet for å lære programmering, med enkelhet og allsidighet som gjør læring enkelt for barn dette språket er ikke et obligatorisk studium, men et hyggelig tidsfordriv og de forstår at programmering er ekstremt interessant og spennende prosess!"
Kurslærer:
"Programmering av spill i Python", "Utvikling av chat-bots i Python sammen med Computer Science and Technology Complex ved Moscow State University. M.V. Lomonosov", "Harvard-kurs CS50", "Webprogrammering", "Botter i Python", "Programmering i Python3"
Utdanning:
MSTU im. N.E. Bauman, spesialitet "Radio-elektroniske systemer og komplekser".
Erfaring:
Hun har undervist barn i datavitenskap og eksakte vitenskaper i mer enn 3 år. Alltid på jakt etter nye interessante prosjekter, som han studerer, forbedrer og hjelper studentene sine med å gå gjennom alle stadier av deres skapelse. Han forbedrer hele tiden sine tekniske og pedagogiske ferdigheter.
Interesser:
Opprettelse av elektroniske enheter, IT, økonomi, reise, matlaging, sport.
"Kunnskap er veien til frihet og muligheter."
1. modul
Første dagen
Introduksjon til Python og IDLE
− Introduksjon til programmeringsspråket Python
− Kjennskap til utviklingsmiljøet
− Hva er variabler?
− Brukerinndata
Resultatet av leksjonen: studenten kan selvstendig installere Python på datamaskinen sin og begynne å jobbe med språket ved å skrive et programspørreskjema i Python.
Andre dagen
Betingede utsagn og første løkker
− Operasjoner med variabler
− Betingede If-utsagn
− Mens looper og fullføring av utvikling av minispill
Praktisk oppgave: hjemme individuelt miniprosjekt om å forstå det studerte materialet
Resultatet av leksjonen: skrevet flere enkle eksempelprogrammer som "Gjett tallet"
Dag tre
Fortsett å lære Python
− For løkker
− range() funksjon
− Datatyper og hvordan minne fungerer?
Resultatet av leksjonen: eleven har en grunnleggende forståelse av minne nødvendig for å velge riktig datatype
Dag fire
Lister og ordbøker
− Lister og listegeneratorer
− Enkel listesortering
− Generer tilfeldige ordboknøkler
Praktisk oppgave: eleven får en teknisk oppgave og programmerer kalkulatoren ut fra en individuell teknisk spesifikasjon.
Resultatet av leksjonen: studentene blir kjent med datastrukturer, utdyper og øver på sine ferdigheter i å bruke For-ferdigheter.
2. modul
Første dagen
Utforsker Python Standard Library
− Strengedatatypen diskuteres i detalj
− Analyse av feil i hjemmeprosjektet
− Hvordan bruke dokumentasjonen på python.org riktig
− Lær strengmetoder ved hjelp av dokumentasjon
Resultatet av leksjonen: studenten er klar for videre selvstendig utvikling av "standard" python etter behov
Andre dagen
Funksjoner og multi-fil programmer
− Forstå en funksjon og lage dine egne funksjoner
− Hva er en modul og hvorfor trengs flerfilprogrammer?
− Litt informasjon om dekoratører
Praktisk oppgave: forbedre programmene dine med dine egne funksjoner i separate filer
Resultatet av leksjonen: eleven forstår hvorfor det kan være nyttig å dele en stor oppgave i flere små, og hvordan dette kan optimere koden
Dag tre
Begynnelsen på objektorientert programmering
− Grunnleggende konsepter for OOP
− Klasser, metoder og attributter
− Klassemetoder og felt. Hva er en konstruktør?
Resultatet av leksjonen: eleven lærer det grunnleggende om objektorientert programmering, noe som er viktig for videre forståelse av roboter
Dag fire
Fortsett å lære OOP
− Arv i Python
− Bruke dekoratører ved å bruke eksempelet med chatbots
− Innkapsling og arvetyper
Praktisk oppgave: Hver elev får i oppgave å utvikle sin egen klasse, og ta på seg foreldreklassen opprettet av læreren.
Resultatet av leksjonen: studenten studerte i detalj de grunnleggende postulatene til OOP og studerte eksempler på implementeringen av denne teknikken
3. modul
Første dagen
Opprette den første boten for VKontakte
− Installasjon og konfigurering av nødvendige biblioteker
− Opprette et bot-token og lære utvalgte VK-biblioteksmetoder
− Utvikling av en chatbot som svarer på enkle kommandoer
Resultatet av leksjonen: en fungerende bot på det sosiale nettverket VK som kan svare på enkle kommandoer
Andre dagen
Forbedre funksjonaliteten til boten
− Tenker gjennom flere kommandoer og flere svar
− Selvstendig implementering av hver student
− Lære å sende klistremerker
Praktisk oppgave: lage en liten interaktiv bot i henhold til tekniske spesifikasjoner
Resultatet av leksjonen: fikset VK Api-metodene for å sende tekstmeldinger og bestemte seg for videreutvikling av bot-funksjonaliteten
Dag tre
Generer bot-forespørsler
− Vi tenker gjennom en dialog initiert av roboter
− Boten husker inndataene fra brukeren
− Bruke tidligere skrevne programmer for å forbedre botens nytteverdi
Resultatet av leksjonen: hver student begynner å legge til flere og flere nyttige funksjoner til sin bot
Dag fire
Meldingsmottakssyklus
− Utvikling av minikalkulator ved bruk av dialog med bruker
− Gjøre dialogen mer levende
− Studert og anvendt unntakshåndteringsmekanisme
Praktisk oppgave: hver elev får sin egen oppgave for å utvide funksjonaliteten til boten
Resultatet av leksjonen: Vi fikk en plattform for å lage en bot med nødvendig funksjonalitet. Flere eksempler på samtaleroboter ble vist og diskutert.
4. modul
Første dagen
Brukerøkter
− Kort ekskursjon inn i databasen
− Ulike chatbot-statuser
− Bruke databasen og tilbakestille statusen
Resultatet av leksjonen: chatboten har nå flere statuser for hvert trinn i arbeidet. Boten kan startes på nytt og gjenbrukes
Andre dagen
Samhandle med mediefiler
− Detaljert analyse av meldingstypen
− Uavhengig utvalg av innhold fra VK
− Implementering av sending av lydfiler og bilder
Praktisk oppgave: legg til en bot-forespørsel for å sende et tilfeldig lydopptak og et tilfeldig bilde på kommando
Resultatet av leksjonen: fikset VK Api-metodene for å sende tekstmeldinger og bestemte seg for videreutvikling av bot-funksjonaliteten
Dag tre
Fortsett å jobbe med mediefiler
− Lag en ny database med favorittmediefiler
− Lære å sortere musikkforespørsler etter sjanger
− Hvilke andre mediefiler kan vi sende?
Resultatet av leksjonen: Etter denne leksjonen kan boten godta forespørsler om musikk i forskjellige sjangere og sende den som et lydopptak
Dag fire
Teambuilding økt
− Vi deler gruppen inn i team, fordeler roller
− Rollefordeling, koordinering av prosjektideer
− Metoder for å implementere ideer, etablere utenomfaglige forbindelser
Praktisk oppgave: i fellesskap forberede seg på å forsvare ideen til neste leksjon, lage en plan for gjennomføringen av prosjektet
Resultatet av leksjonen: gruppen er delt inn i team med flere personer, hver gruppe begynner å utvikle en prototype for prosjektboten
5. modul
Første dagen
Versjonskontrollsystem
− Introduksjon til Git og læring av grunnleggende kommandoer
− Registrering og opplasting av prosjektet til Github
− Klient-server-modell
Resultatet av leksjonen: viktige kommandoer for versjonskontrollsystemet ble studert
Praktisk oppgave: opprette en ny filial og forplikte hele prosjektet der
Andre dagen
Arbeider med tredjepartsbiblioteker
− Bli kjent med openweathermap API
− Lære å trekke ut nødvendig informasjon fra serverresponsen
− Vi skriver grunnlaget for en bot som gir værinformasjon
Praktisk oppgave: lage en liten interaktiv bot i henhold til tekniske spesifikasjoner
Resultatet av leksjonen: Vi begynte å studere et tredjepartsbibliotek for å vise været. Vi studerte de nødvendige metodene og lærte roboten å sende værinformasjon
Dag tre
Introduksjon til kunstig intelligens
− Hva er AI og introduksjon til DialogFlow
− Studere API og koble DialogFlow til boten
− Lære å jobbe med DialogFlow
Resultatet av leksjonen: ble kjent med begrepet kunstig intelligens og undersøkte de interessante egenskapene til DialogFlow
Dag fire
DialogFlow og robotdesign
− Vi fortsetter å studere og implementere DialogFlow
− Vi kombinerer all funksjonalitet i én bot
− Vi tenker på design og nye tastaturer
Praktisk oppgave: gjør boten din til det mest passende designet etter å ha tatt råd fra læreren
Resultatet av leksjonen: Ulike designalternativer og tastaturer har blitt analysert
6. modul
Første dagen
Botstøtte i samtale
− Vi fortsetter å jobbe med utformingen av boten
− Hvilken funksjonalitet kan en robot bringe til en samtale?
− Vi studerer nødvendig dokumentasjon. Legge til en chatbot i en samtale
Praktisk oppgave: kom opp med og beskriv trinnene for å utvikle en bot i en samtale
Resultatet av leksjonen: tilleggsfunksjonaliteten til chat-boten ble studert, som vi nå kan legge til i samtaler med brukeren.
Andre dagen
Brukerinteraksjon via bot
− Bearbeiding av ideer og implementering av disse
− Vi ringer boten med en kopi/bilde gjennom en appell
− Tester dem som forberedelse til å laste opp boten til Heroku
Praktisk oppgave: les materiale om to metoder for å koble en bot med en server
Resultatet av leksjonen: boten svarer nå på brukersvar både fra samtalen og i selve chatboten
Dag tre
Distribuere en bot på en server
− Laster opp den oppdaterte versjonen til GitHub
− Installer og bli kjent med Heroku tett
− Distribuer boten til serveren
Resultatet av leksjonen: Nå fungerer boten uten å kjøre skript fra datamaskinen, 24/7
Dag fire
Offentlig tale leksjon
− Hvordan presentere prosjektet ditt riktig?
− Taletrening
− Hvilke talestrukturer bør absolutt unngås under presentasjoner?
Praktisk oppgave: en foredragsholder fra hvert team må forberede en tale for å presentere prosjektet sitt
Resultatet av leksjonen: arbeidet starter med den endelige presentasjonen. Med hver gruppe ble det utarbeidet styrker og svakheter ved prosjektet, og sammendrag ble utarbeidet for presentasjon.
7. modul
Første dagen
Jobber med egne prosjekter
− Noen få ord om websideparsing
− forespørsler modul
− Parsing av HTML-sider ved å bruke eksemplet med overvåking av rabatter
Praktisk oppgave: øvelse om å analysere informasjon med en gitt internettside av læreren
Resultatet av leksjonen: Vi jobber videre med våre egne prosjekter. Alternativt er funksjonaliteten til å analysere rabatter fra utvalgte nettsteder lagt til
Andre dagen
Jobber med egne prosjekter
− Last ned tredjeparts mediefiler
− Arbeide med fotografier og databaser
− Vi fortsetter å trene i nettsideparsing
Resultatet av leksjonen: Nå kan boten jobbe med filer utenfor VK.
Dag tre
Distribuere en bot på en server
− URL-forespørsler
− Lære å sende en forespørsel på YouTube
− Behandle forespørselen og svare brukeren
Resultatet av leksjonen: i tillegg til å jobbe med sine egne prosjekter, lærte hver student hvordan man kan få videoer fra YouTube til en chatbot
Dag fire
Leksjon om å lage presentasjoner
− Lagde lysbilder og bestemte hovedpunktene
− Vi lærte og laget passende og vakre lysbildeanimasjoner
− Forberedte en tale og bestemte hvilke funksjoner i roboten som skulle vies spesiell oppmerksomhet
Resultatet av leksjonen: arbeidet med prosjektet er fullført, presentasjoner er klare, roboter er lastet ut