Programmazione di chatbot e giochi in Python: corso CODDY e VMK MSU - corso 58.800 rubli. da Coddy School of Programming for Children, formazione 7 moduli (mesi)
Miscellanea / / December 04, 2023
Durata: da 7 moduli (mesi), da 56 ore*.
Formato: lezioni di gruppo, offline e online (in tempo reale).
Numero di bambini: da 1 a 15.
da 1050 rub./ora in un gruppo online,
da 1100 rub./ora in un gruppo offline,
da 1665 RUR/ora individualmente online,
da 2400 rub./ora individualmente offline.
Python rimane con sicurezza ai vertici dei linguaggi di programmazione più diffusi. È abbastanza semplice e ha una sintassi concisa: grazie a questa funzionalità, la velocità di sviluppo aumenta notevolmente. Python ha un'enorme libreria di moduli, buoni meccanismi di riutilizzo del codice, un comodo ambiente di sviluppo e altri vantaggi.
Nel gennaio 2019, la VMK MSU intitolata a M.V. Lomonosova e la CODDY School hanno lanciato un progetto congiunto per studiare le basi di Python per adolescenti dai 13 ai 16 anni. Il corso pilota si è rivelato efficace e di successo. Ora abbiamo deciso di affinare e migliorare leggermente il programma ed estendere il periodo di formazione da 4 a 7 mesi. Le lezioni dureranno 2 ore e gli studenti potranno dedicare più tempo a lavorare sui progetti. Insieme agli insegnanti scriveremo chat bot e creeremo anche i nostri giochi.
I ragazzi realizzeranno progetti e li difenderanno davanti alla giuria. Ogni studente proporrà e implementerà in modo indipendente l'idea del proprio lavoro: l'insegnante lo approverà solo. La giuria comprenderà insegnanti della scuola CODDY, insegnanti del Complesso informatico e tecnologico dell'Università statale di Mosca e specialisti delle principali aziende IT. Dopo la difesa, consegneranno ai giovani programmatori i certificati del Comitato di informatica dell'Università statale di Mosca: per i ragazzi questo sarà uno dei primi risultati nel campo dell'acquisizione di competenze di programmazione.
La parte principale del corso sarà dedicata all'apprendimento del linguaggio Python propriamente detto. Tuttavia, abbiamo incluso altri argomenti utili per il lavoro futuro:
· lezione sulla creazione di presentazioni;
· lezione di parlare in pubblico.
Condurremo anche diverse lezioni sul team building. In queste lezioni i bambini studieranno i seguenti argomenti:
· conoscenza di base della gestione dei progetti e del lavoro con essi;
· lavoro di squadra;
· pianificazione;
· capacità di valutare i rischi.
Anche i piccoli programmatori parteciperanno ad un business game. Se il bambino difende il lavoro non da solo, ma insieme alla sua squadra, riceverà punti aggiuntivi.
I nostri insegnanti valutano sia la comprensione teorica dell'argomento sia la capacità di applicare le conoscenze nella pratica. Non diamo voti: gli studenti stessi dimostrano le loro conoscenze in classe, quando sostengono i test e quando difendono un progetto.
Tuo figlio vuole entrare nel mondo della programmazione in un'atmosfera amichevole e solidale? Partecipa a un corso completo su Python tenuto da CODDY e dal Complesso informatico dell'Università statale di Mosca, dove i principali esperti condivideranno le loro conoscenze con i bambini!
Docente del corso:
“Programmazione di giochi in Python”, “Hacker etico”, “Creazione di giochi in Roblox Studio”, “Sviluppo di chatbot in Python insieme all'Università statale di Mosca. M.V. Lomonosov", "Bots in Python", "Applicazioni Web in Python in collaborazione con il Complesso di informatica e tecnologia dell'Università statale di Mosca. M.V. Lomonosov"
Formazione scolastica:
Politecnico di Mosca, direzione “Sicurezza dell’informazione”
Esperienza:
2 anni di esperienza come ingegnere della sicurezza presso APIBank. 1,5 anni di sviluppo di applicazioni Web in outsourcing in Python.
Interessi:
Programmazione, sicurezza informatica, White Hacking, ingegneria DEV-ops.
“La privacy online è un diritto umano inalienabile e un’esigenza da mantenere
dignità umana e rispetto."
Docente del corso:
“Programmazione di giochi in Python”, “Hacker etico”, “Sviluppo di chatbot in Python insieme al Complesso di informatica e informatica dell'Università statale di Mosca. M.V. Lomonosov", "Python e machine learning", "Bots in Python", "Applicazioni web in Python in collaborazione con l'Università statale di Mosca. M.V. Lomonosov"
Formazione scolastica:
Università tecnica statale di Mosca dal nome. Bauman, specialità "Sicurezza dell'informazione".
Esperienza:
Ottima conoscenza dei linguaggi di programmazione Python, C\C++, Golang, Pascal. Ha esperienza nello sviluppo di varie applicazioni.
Interessi:
Gli piace programmare in Python per risolvere un'ampia varietà di problemi e più il compito è complesso e interessante, meglio è. Pratica sport, ama la fotografia e ama viaggiare. Sono convinto che ogni persona che si impegna abbastanza per raggiungere un obiettivo lo raggiunge. Ama aiutare gli altri a raggiungere i loro obiettivi. Giovane e attento alle persone, trova un linguaggio comune con ogni bambino e lo aiuta a rivelare le sue migliori qualità durante l'apprendimento, rendendo l'apprendimento piacevole ed efficace per tutti.
“La programmazione nel 21° secolo è il secondo alfabeto che ogni persona di successo dovrebbe padroneggiare, indipendentemente dal suo campo di interesse. Python è il primo passo perfetto per imparare a programmare, con semplicità e versatilità che rendono l'apprendimento facile per i bambini questa lingua non è uno studio obbligatorio, ma un piacevole passatempo e capiscono che la programmazione è estremamente interessante ed entusiasmante processi!"
Docente del corso:
“Programmazione di giochi in Python”, “Sviluppo di chatbot in Python insieme al Complesso di informatica e tecnologia dell'Università statale di Mosca. M.V. Lomonosov", "Corso Harvard CS50", "Programmazione Web", "Bot in Python", "Programmazione in Python3"
Formazione scolastica:
MSTU im. NE Bauman, specialità “Sistemi e complessi radioelettronici”.
Esperienza:
Insegna informatica e scienze esatte ai bambini da più di 3 anni. Sempre alla ricerca di nuovi progetti interessanti, che studia, migliora e aiuta i suoi studenti a percorrere tutte le fasi della loro creazione. Affina costantemente le sue competenze tecniche e didattiche.
Interessi:
Creazione di dispositivi elettronici, informatica, economia, viaggi, cucina, sport.
“La conoscenza è la via verso la libertà e le opportunità.”
1° modulo
Il primo giorno
Introduzione a Python e IDLE
− Introduzione al linguaggio di programmazione Python
− Conoscenza dell'ambiente di sviluppo
− Cosa sono le variabili?
− Ingresso dell'utente
Risultato della lezione: lo studente può installare autonomamente Python sul proprio computer e iniziare a lavorare con il linguaggio, scrivendo un programma-questionario in Python.
Secondo giorno
Istruzioni condizionali e primi cicli
− Operazioni con variabili
− Istruzioni condizionali If
− Ciclo while e completamento dello sviluppo del minigioco
Compito pratico: mini-progetto individuale a casa sulla comprensione del materiale studiato
Risultato della lezione: scritto diversi semplici programmi di esempio come “Indovina il numero”
Giorno tre
Continua ad imparare Python
− Per i loop
− funzione intervallo()
− Tipi di dati e come funziona la memoria?
Risultato della lezione: lo studente ha una conoscenza di base della memoria necessaria per selezionare il tipo di dati corretto
Quarto giorno
Elenchi e dizionari
− Elenchi e generatori di elenchi
− Ordinamento semplice dell'elenco
− Genera chiavi di dizionario casuali
Compito pratico: lo studente riceve un incarico tecnico e programma la calcolatrice in base ad una specifica tecnica individuale.
Risultato della lezione: gli studenti acquisiscono familiarità con le strutture dati, approfondiscono e mettono in pratica le proprie competenze nell'utilizzo delle competenze For.
2° modulo
Il primo giorno
Esplorando la libreria standard Python
− Il tipo di dati stringa viene discusso in dettaglio
− Analisi degli errori del progetto casa
− Come utilizzare correttamente la documentazione su python.org
− Imparare i metodi delle stringhe utilizzando la documentazione
Risultato della lezione: lo studente è pronto per un ulteriore sviluppo indipendente di Python "standard" secondo necessità
Secondo giorno
Funzioni e programmi multifile
− Comprendere una funzione e creare le proprie funzioni
− Cos'è un modulo e perché sono necessari programmi multi-file?
− Alcune informazioni sui decoratori
Compito pratico: migliora i tuoi programmi con le tue funzioni in file separati
Risultato della lezione: lo studente capisce perché può essere utile dividere un compito grande in più compiti piccoli e come ciò può ottimizzare il codice
Giorno tre
L'inizio della programmazione orientata agli oggetti
− Concetti base dell'OOP
− Classi, metodi e attributi
− Metodi e campi delle classi. Cos'è un costruttore?
Risultato della lezione: lo studente apprende le basi della programmazione orientata agli oggetti, importante per un'ulteriore comprensione dei bot
Quarto giorno
Continua a imparare l'OOP
− Ereditarietà in Python
− Utilizzo di decoratori utilizzando l'esempio dei chatbot
− Incapsulamento e tipi di ereditarietà
Compito pratico: Ad ogni studente viene affidato il compito di sviluppare la propria classe, assumendo il ruolo della classe genitore creata dal docente.
Risultato della lezione: lo studente ha studiato in dettaglio i postulati di base dell'OOP e ha studiato esempi di implementazione di questa tecnica
3° modulo
Il primo giorno
Creazione del primo bot per VKontakte
− Installazione e configurazione delle librerie necessarie
− Creazione di un token bot e apprendimento dei metodi selezionati della libreria VK
− Sviluppo di un chatbot che risponde a semplici comandi
Risultato della lezione: un bot funzionante sul social network VK in grado di rispondere a semplici comandi
Secondo giorno
Miglioramento della funzionalità del bot
− Pensare a più comandi e più risposte
− Implementazione indipendente da parte di ogni studente
− Imparare a inviare adesivi
Compito pratico: realizzare un piccolo bot interattivo secondo le specifiche tecniche
Risultato della lezione: corretti i metodi VK Api per l'invio di messaggi di testo e deciso l'ulteriore sviluppo della funzionalità del bot
Giorno tre
Generazione di richieste bot
− Stiamo riflettendo attraverso un dialogo avviato dai bot
− Il bot ricorda i dati immessi dall'utente
− Utilizzo di programmi scritti in precedenza per migliorare l'utilità del bot
Risultato della lezione: ogni studente inizia ad aggiungere sempre più funzioni utili al proprio bot
Quarto giorno
Ciclo di ricezione dei messaggi
− Sviluppo di una mini-calcolatrice utilizzando il dialogo con l'utente
− Rendere il dialogo più vivace
− Meccanismo di gestione delle eccezioni studiato e applicato
Compito pratico: ogni studente riceve il proprio compito per espandere le funzionalità del bot
Risultato della lezione: Abbiamo ricevuto una piattaforma per creare un bot con le funzionalità necessarie. Sono stati mostrati e discussi diversi esempi di bot conversazionali.
4° modulo
Il primo giorno
Sessioni utente
− Breve esplorazione del database
− Diversi stati dei chatbot
− Utilizzo del database e ripristino dello stato
Risultato della lezione: il chatbot ora ha diversi stati per ogni fase di lavoro. Il bot può essere riavviato e riutilizzato
Secondo giorno
Interazione con file multimediali
− Analisi dettagliata della tipologia Messaggio
− Selezione indipendente dei contenuti da VK
− Implementazione dell'invio di file audio e immagini
Compito pratico: aggiungi una richiesta al bot per inviare una registrazione audio casuale e un'immagine casuale a comando
Risultato della lezione: corretti i metodi VK Api per l'invio di messaggi di testo e deciso l'ulteriore sviluppo della funzionalità del bot
Giorno tre
Continua a lavorare con i file multimediali
− Creare un nuovo database di file multimediali preferiti
− Imparare a ordinare le richieste musicali per genere
− Quali altri file multimediali possiamo inviare?
Risultato della lezione: Dopo questa lezione, il bot può accettare richieste di musica di diversi generi e inviarla come registrazione audio
Quarto giorno
Sessione di team building
− Dividiamo il gruppo in squadre, distribuiamo i ruoli
− Distribuzione dei ruoli, coordinamento delle idee progettuali
− Metodi per implementare le idee, stabilire connessioni extracurriculari
Compito pratico: prepararsi collettivamente a difendere l'idea per la lezione successiva, elaborare un piano per l'attuazione del progetto
Risultato della lezione: il gruppo viene diviso in squadre di più persone, ogni gruppo inizia a sviluppare un prototipo per il bot di progetto
5° modulo
Il primo giorno
Sistema di controllo della versione
− Introduzione a Git e apprendimento dei comandi base
− Registrazione e caricamento del progetto su Github
− Modello client-server
Risultato della lezione: sono stati studiati comandi importanti per il sistema di controllo della versione
Compito pratico: creare un nuovo ramo e impegnare lì l'intero progetto
Secondo giorno
Collaborazione con biblioteche di terze parti
− Conoscere l'API openweathermap
− Imparare ad estrarre le informazioni necessarie dalla risposta del server
− Stiamo scrivendo le basi per un bot che fornisce informazioni meteorologiche
Compito pratico: realizzare un piccolo bot interattivo secondo le specifiche tecniche
Risultato della lezione: Abbiamo iniziato a studiare una libreria di terze parti per la visualizzazione del meteo. Abbiamo studiato i metodi necessari e insegnato al bot a inviare informazioni meteorologiche
Giorno tre
Introduzione all'intelligenza artificiale
− Cos'è l'intelligenza artificiale e introduzione a DialogFlow
− Studio dell'API e connessione di DialogFlow al bot
− Imparare a lavorare con DialogFlow
Risultato della lezione: ho conosciuto il concetto di intelligenza artificiale ed esaminato le caratteristiche interessanti di DialogFlow
Quarto giorno
DialogFlow e progettazione dei bot
− Continuiamo a studiare e implementare DialogFlow
− Combiniamo tutte le funzionalità in un unico bot
− Stiamo pensando al design e alle nuove tastiere
Compito pratico: rendi il tuo bot il design più adatto, dopo aver ascoltato i consigli dell'insegnante
Risultato della lezione: Sono state analizzate varie opzioni di design e tastiere
6° modulo
Il primo giorno
Supporto bot nella conversazione
− Continuiamo a lavorare sulla progettazione del bot
− Quali funzionalità può apportare un bot a una conversazione?
− Studiamo la documentazione necessaria. Aggiunta di un chatbot a una conversazione
Compito pratico: inventare e descrivere le fasi di sviluppo di un bot in una conversazione
Risultato della lezione: è stata studiata un'ulteriore funzionalità del chat bot che ora possiamo aggiungere alle conversazioni con l'utente.
Secondo giorno
Interazione dell'utente tramite bot
− Elaborazione delle idee e loro realizzazione
− Effettuiamo una chiamata al bot con una replica/immagine attraverso un appello
− Testarli in preparazione al caricamento del bot su Heroku
Compito pratico: leggi materiali su due metodi per connettere un bot a un server
Risultato della lezione: il bot ora risponde alle risposte dell'utente sia dalla conversazione che nel chatbot stesso
Giorno tre
Distribuzione di un bot su un server
− Caricamento della versione aggiornata su GitHub
− Installa e conosci da vicino Heroku
− Distribuire il bot sul server
Risultato della lezione: Ora il bot funziona senza eseguire script dal computer, 24 ore su 24, 7 giorni su 7
Quarto giorno
Lezione di parlare in pubblico
− Come presentare correttamente il tuo progetto?
− Esercitazione vocale
− Quali strutture del discorso dovrebbero assolutamente essere evitate durante le presentazioni?
Compito pratico: un relatore di ogni squadra dovrà preparare un discorso per presentare il proprio progetto
Risultato della lezione: iniziano i lavori per la presentazione finale. Con ciascun gruppo sono stati elaborati i punti di forza e di debolezza del progetto e sono stati preparati gli abstract per la presentazione.
7° modulo
Il primo giorno
Lavorare ai propri progetti
− Qualche parola sull'analisi delle pagine web
− modulo richieste
− Analisi delle pagine HTML utilizzando l'esempio del monitoraggio degli sconti
Compito pratico: esercizio di analisi delle informazioni con una determinata pagina Internet da parte dell'insegnante
Risultato della lezione: Continuiamo a lavorare sui nostri progetti. Facoltativamente, è stata aggiunta la funzionalità di analisi degli sconti da siti selezionati
Secondo giorno
Lavorare ai propri progetti
− Scaricare file multimediali di terze parti
− Lavorare con fotografie e database
− Continuiamo la formazione sull'analisi dei siti Web
Risultato della lezione: Ora il bot può funzionare con file esterni a VK.
Giorno tre
Distribuzione di un bot su un server
− Richieste URL
− Imparare a fare una richiesta su YouTube
− Elaborazione della richiesta e risposta all'utente
Risultato della lezione: oltre a lavorare sui propri progetti, ogni studente ha imparato come trasferire video da YouTube in un chatbot
Quarto giorno
Lezione sulla creazione di presentazioni
− Realizzazione di diapositive e decisione sui punti principali
− Abbiamo imparato e realizzato animazioni di diapositive appropriate e belle
− Preparato un discorso e deciso a quali caratteristiche del bot si dovrebbe prestare particolare attenzione
Risultato della lezione: il lavoro sul progetto è completato, le presentazioni sono pronte, i robot sono scaricati