Application development for Google Assistant - course 50,400 rub. from Coddy School of Programming for Children, training 6 modules (months)
Miscellaneous / / December 03, 2023
Duration: from 6 modules (months), from 48 hours*.
Format: individual and group lessons, offline and online (real time).
Number of children: from 1 to 15.
from 1050 rub./hour in an online group,
from 1100 rub./hour in an offline group,
from 1665 RUR/hour individually online,
from 2400 rub./hour individually offline.
Google is one of the most famous companies in the world, which most people know for its search algorithm, but still, Google is much more than a simple search algorithm.
Google develops services and products designed for the following tasks:
Google products and services are used to organize your work environment and improve work efficiency. For example, you can organize online meetings via Google Hangouts, post video instructions on your YouTube channel, prepare joint documents in Google Docs, and much more. These are natural things that Google employees use in their daily lives. To transfer skills that are common and in demand at Google, CODDY International Programming School has developed a new in-depth 6-month course on “Google Assistant Application Development” together with experts from Google.
In the “Developing an Application for Google Assistant” course, students create socially significant projects for Google’s voice assistant with subsequent defense in Google’s Moscow office. Throughout the course, children use Google services to improve their learning and work on projects.
The course “Development of an application for Google Assistant” lasting 6 months includes several modules in various areas of programming in the language Python, design thinking and entrepreneurship, the basics of preparing professional presentations and speaking in front of an audience and digital literacy.
To develop professional skills, the modules of the “Developing an Application for Google Assistant” course include:
To develop skills to increase self-efficacy and organize the work environment, the course includes a detailed study of Google services, such as:
All the great work on the course will lead to the main result - the defense of your own technological project in the Moscow office of Google. Projects will be evaluated by experienced Google experts. Students who successfully defend their project will receive a certificate of completion of the course and a pleasant surprise from specialists from Google.
Course teacher:
“Programming games in Python”, “Development of chat bots in Python together with the Computer Science and Technology Complex of Moscow State University. M.V. Lomonosov", "Development of an application for Google Assistant", "Olympiad programming", "Bots on Python", "Programming in Python3", "Game Development in C++", "Game Programming in Java", "English&Python"
Education:
Innopolis University, bachelor's degree, department of Informatics and Computer Science.
Projects:
Online application Fix My English ( https://fix-my-english-c6270.web.app/#/). ( https://fix-my-englishc6270.web.app/#/) Using it, you can quickly find and correct errors related to the style of academic writing (essays, diplomas, etc.).
Telegram bot ( https://t.me/InnoMafiaBot) for the mafia club to track game statistics.
R2D2 robot visualization ( https://github.com/Zener085/ROS_project), controlled by keyboard based on Gazebo.
Self-taught Python tutorials ( https://github.com/Zeneriode/CoddyPython) (syntax, development of bots on Discord and Telegram, game development on Pygame and Arcade) and C++ ( https://github.com/Zeneriode/CoddyCpp) (just the syntax of the language).
Implementation ( https://github.com/Zener085/Data-structures-and-Algorithms) popular algorithms and data structures.
Interests:
He is interested in the Python programming language, wants to become a specialist in the field of Data Science, and create his own company. Respects a healthy lifestyle, enjoys football and swimming, and has no bad habits. Young and kind, knows how to motivate, loves to teach new things and help with difficulties.
“To get what you want, it’s not always all up to the person. However, by working hard to achieve a goal, he greatly increases his chances of getting it.”
The first day:
Introductory lesson
• Briefing
• Team building
• Division of roles in the team
Second day:
Introduction to Python and Design Thinking
• Data types in Python
• Input and output in Python
• Type conversion
• Learn Google Hangouts and Google Drive and sign up for Gmail
Result of the lesson: the necessary knowledge of data types was acquired and methods of interaction between the program and the user were studied. Team chats have been created.
Day three:
Loops and conditionals and design thinking
• While and For loops
• Conditional If/Else constructs
• Product prototyping
• Explore Google Calendar and Google Docs
Result of the lesson: With the help of conditional statements, it became possible to make branches, which meant the beginning of data analysis by the program. Possible ideas for our own project were also discussed.
Day four:
Deep Loops and Conditionals and Design Thinking
• Deep While Loops
• Deep For Loops
• Recessed IF designs
• Product prototyping
Result of the lesson: knowledge of conditional operators and while loops was deepened, which makes it possible to continuously communicate with the device, problems of understanding the studied algorithms were solved. One socially significant problem was chosen that each team would work on.
Day five:
Flowcharts for Python and Design Thinking
• Learning flowcharts for algorithms
• Studying the draw.io service
• Protection of project ideas
Result of the lesson: The student can independently write a console application in Python using While loops and conditional statements. Understanding the studied algorithms, especially conditional statements, is necessary for developing the assistant. The basic principles of constructing block diagrams were outlined using the example of problems solved earlier.
Day six:
Python Lists and Design Thinking
• Repeating For Loops
• Learning lists in Python
• Development of your own flowcharts for the project
Result of the lesson: lists were studied as a data storage structure, as well as methods of interacting with them, in particular: creating a list, changing a list element, adding new elements and deleting unnecessary ones.
Day seven:
Google Assistant Script and Design Thinking
• Developing a script for an assistant
• Development of scripts for your own projects
• Development of your own flowcharts for the project
• Explore Google Sheets
Result of the lesson: the basics of script construction have been studied. Each team began creating a flowchart for how their own voice assistant would work. Time was spent collectively solving problems for different cycles. Obtained the necessary skills for working with lists to create an assistant bot.
Day eight:
Dictionaries and methods of working with them in Python and design thinking
• Python dictionaries
• Pre-protection of script flowcharts for Google Assistant
Result of the lesson: continued study of data structures using dictionaries as an example. Examples were shown in which it is more convenient to use dictionaries rather than lists, and methods for deleting elements and creating copies of dictionaries were also studied. In addition, each team must take into account pre-defense errors and refine their scripts.
Day five:
Flowcharts for Python and Design Thinking
• Learning flowcharts for algorithms
• Studying the draw.io service
• Protection of project ideas
Result of the lesson: The student can independently write a console application in Python using While loops and conditional statements. Understanding the studied algorithms, especially conditional statements, is necessary for developing the assistant. The basic principles of constructing block diagrams were outlined using the example of problems solved earlier.
Day six:
Python Lists and Design Thinking
• Repeating For Loops
• Learning lists in Python
• Development of your own flowcharts for the project
Result of the lesson: lists were studied as a data storage structure, as well as methods of interacting with them, in particular: creating a list, changing a list element, adding new elements and deleting unnecessary ones.
Day seven:
Google Assistant Script and Design Thinking
• Developing a script for an assistant
• Development of scripts for your own projects
• Development of your own flowcharts for the project
• Explore Google Sheets
Result of the lesson: the basics of script construction have been studied. Each team began creating a flowchart for how their own voice assistant would work. Time was spent collectively solving problems for different cycles. Obtained the necessary skills for working with lists to create an assistant bot.
Day eight:
Dictionaries and methods of working with them in Python and design thinking
• Python dictionaries
• Pre-protection of script flowcharts for Google Assistant
Result of the lesson: continued study of data structures using dictionaries as an example. Examples were shown in which it is more convenient to use dictionaries rather than lists, and methods for deleting elements and creating copies of dictionaries were also studied. In addition, each team must take into account pre-defense errors and refine their scripts.
Day thirteen:
Creating a website and working with files in Python
• Studying the service and creating a website using Google Sites
• Working with files in Python
Result of the lesson: With the help of practice solving problems on a covered topic, the student is able to work with files. It was shown how we can use the requests library to download an image from a website. In addition, the interface of the Google Sites service was studied, and each team began to transfer the prototype of the business card site to a real site.
Day fourteen:
Parsing, web scraping and design thinking
• Parsing and web scraping
• Pre-protection of the site for your project
Result of the lesson: Practical skills were acquired in searching for Internet page data using the example of several popular sites, including the example of an advertising site. Each team presented its website, once again emphasizing the most positive qualities of its product; the shortcomings of each team were collectively identified and sent for improvement.
Day fifteen:
Creating a chatbot using VK API
• Creating a chatbot
• Presentation of the project website
Result of the lesson: Each team created its own chatbot and trained it in simple commands. Training in simple commands was necessary in order to understand how to transfer the developed script of your product to the chat bot.
Day sixteen:
Improving chatbot functionality
• Expanding the functionality of the chatbot
• Business game “Sell me a pen”
Result of the lesson: The bot was optimized, each student expanded their knowledge of the capabilities of the VK API library, in particular, they learned how to make alternative buttons and taught the bot to send media files. The game “Sell me your bot” was played, the purpose of which was to make the student understand what questions await him during real adult project work
Day seventeen:
DialogFlow Service, Actions on Google and Public Speaking
• Study of the Dialog Flow service
• Creating Actions on Google
• Exploring the Google Slides service
• Oratory lesson on analysis of presentation topics
(extra hour)
Result of the lesson: work began on a voice assistant. The Action technology itself in Google Assistant was examined in detail, and the main goals and capabilities of the DialogFlow service, which will be worked with in the coming classes, were also discussed. We completed the initial setup and created our first agent. In addition, an hour-long session on public speaking and presentations was held, during which each team analyzed the topics of the project and decided on goals.
Day eighteen:
Intent for voice assistant and public speaking skills
• Creating intent for the voice assistant
• Public speaking lesson on creating texts for presentation (additional hour)
Result of the lesson: Various kinds of custom intents were added through DialogFlow. For each command, we analyzed phrases that the user can say at each stage of the scenario.
Day nineteen:
Entities and public speaking
• Study Entities to improve your own project
• Lesson on public speaking and creating a presentation on prototyping presentations (additional hour)
Result of the lesson: Using an example, it was shown how intents can be improved using Entities. The voice assistant begins to recognize more variants of phrases as soon as we add Entities. The main stages of the presentation were identified, the main idea and conclusion for public speaking were identified.
Day twentieth:
Learning Contexts and Public Speaking
• Studying the context to improve the project
• Lesson on public speaking and presentation on presentation design (additional hour)
Result of the lesson: the concept of context was analyzed from the point of view of storing information of the “key-value” type. The basics of successful presentation were learned. Text information has been added to the slides.
Day twenty one:
WebHook and public speaking
• Code integration into the Webhook fulfillment voice assistant
• Work on presentation design
• Oratory lesson on analysis of the presentation topic (additional hour)
Result of the lesson: the acquired programming knowledge was applied, each team, divided into roles, wrote code that “pulls” information from open sources and the code was integrated into the voice assistant. Each team created its own presentation style and design, without using ready-made layouts.
Day twenty two:
Code Audit, SSML and Public Speaking
• Code review
• Learning the voice markup language SSML
• Lesson on public speaking (extra hour)
Result of the lesson: bugs were fixed and the Webhook Fulfillment code was protected. As examples for studying SSML, we took poems and songs, which, according to the assignment, had to be marked for pauses/raising or lowering the tone/adding sounds. Preparations for the final presentation began, the basic rules for writing texts for presentations were explained.
Day twenty three:
Finalization of the project and dress rehearsal for the defense of the project
• Correction of shortcomings in the project and presentation
• Dress rehearsal for defending projects (additional hour)
Result of the lesson: shortcomings in the project were finalized and a rehearsal for defending projects was held
Day twenty four:
Defending projects in front of specialists from Google
• Project protection
• Presentation of awards