Our focus in this module is to harness the power of GitHub Copilot to create a classic rock, paper, scissors minigame. This hands-on experience will not only sharpen your programming skills but also enhance your ability to develop console applications in Python. The best part? We'll be leveraging GitHub Codespaces, eliminating the hassle of configuring your development environment. With GitHub Copilot as your AI pair programmer, you can concentrate on application development while seamlessly collaborating with your code assistant.
- Who this is for: Developers, DevOps Engineers, Software development managers, Testers.
- What you'll learn: Harnessing GitHub Copilot to create code and add comments to your work.
- What you'll build: Python files that will have code generated by Copilot AI for code and comment suggestions.
- Prerequisites: To use GitHub Copilot you must have an active GitHub Copilot subscription. Sign up for 30 days free Copilot.
- Timing: This course can be completed in under an hour.
By the end of this module, you'll acquire the skills to be able to:
- Experience GitHub Codespaces as a development environment.
- Develop input and output routines in a Python console application.
- Use GitHub Copilot as an assistant.
- Introduction to prompt engineering with GitHub Copilot
- Challenge project - Build a minigame with GitHub Copilot and Python
- Learn Live: Build a minigame console app with GitHub Copilot (Video below)
- Enable your GitHub Copilot service
You have already learned a bit about GitHub Codespaces and GitHub Copilot and how they work. In this challenge exercise, your goal is to develop a minigame in Python using GitHub Copilot.
-
Access your Codespaces and create a new file called app.py in Visual Studio Code.
Note: You may need to install the Python Extension in Visual Studio Code if it isn't currently installed.
-
Type the following comment:
# write 'hello world' to the console
-
GitHub Copilot should complete the code for you and provide the following result:
# write 'hello world' to the console print('hello world')
-
Run the application with the python app.py command in the terminal and check if the result is similar to the following console message:
hello world
Now that you've verified that Codespaces working with GitHub Copilot, your next step is to develop the logic of the Python minigame with the help of GitHub Copilot based on the following specifications:
The winner of the game is determined by three simple rules:
- Rock beats scissors.
- Scissors beat paper.
- Paper beats rock.
The computer will be your opponent and can randomly choose one of the elements (rock, paper, or scissors). Your game interaction will be through the console (Terminal).
- The player can choose one of the three options rock, paper, or scissors and should be warned if they enter an invalid option.
- At each round, the player must enter one of the options in the list and be informed if they won, lost, or tied with the opponent.
- By the end of each round, the player can choose whether to play again.
- Display the player's score at the end of the game.
- The minigame must handle user inputs, putting them in lowercase and informing the user if the option is invalid.
In your GitHub Codespaces, follow the given instructions to set up prompts that GitHub Copilot can understand and use to help you build the minigame. Keep in mind that GitHub Copilot relies on comments to grasp the context and give you helpful suggestions while you're working on your project.
- Run the minigame on the console with the python app.py command.
- At the prompt, type one of the game options: rock, paper, or scissors.
- The minigame should inform the player whether the player won, lost, or tied with the opponent.
- Choose to continue playing.
- At the prompt, type screen.
- The minigame should inform the player if the option entered by the player is invalid.
- Repeat steps 2 and 4 to play a few rounds and choose not to continue playing.
- Check if the minigame is terminated and if it displays your score, informing you of the number of wins and rounds.
Congratulations on completing this challenge exercise! You've created a Python console minigame using GitHub Copilot.