This class adds two layers of complexity to the solitary game/app development you have all done before.
- Apps or games that are networked, generally involving multiple clients and a server running different programs, plus cloud-based service providers with their own peculiarities.
- Tools that facilitate synchronous and asynchronous collaborative development.
This can be a lot to take but don’t worry, we are going to experiment with different tools and processes, and it’s going to be an learning process for everybody (including me).
Let’s start with the latter and make sure you have a development environment on your machine that works for you.
Code Editors
There are plenty of free code editors around, you may already have your favorite one.
In this class I’m going to use Visual Studio Code for node.js and javascript and Visual Studio for Unity programming.
Download Visual Studio Code.
Quick poll: do you already work with either of these and, if not, what other editor are you used to (type in the chat)
Github
Version control and source code hosting.
Survey: do you commonly use github or similar services (not just for downloading other people’s code)? Green icon for yes.
There are many intro videos online, find the least obnoxious.
Git itself is a command line tool but I prefer the GitHub desktop application.
If you are a beginner, download it.
Let go through some of the most common operations together:
Creating a repository from scratch
Opening an issue as user
Make and commit changes to your project
Cloning a repository
Forking a repository
Creating a new branch
Making commits to your branch
Opening a pull request
Discuss changes
Merging pull requests
Glitch
Glitch is a community and a series of friendly tools to develop web based applications.
Glitch provides free hosting for node projects, most web hosts don’t give you that degree of access. Another popular platform is heroku.
Glitch offers: a multi-user code editor, file storage, and an integrated terminal.
Glitch allows you to browse and remix other people projects, and clone a project from GitHub.
Take a minute to explore it:
glitch.com
Let’s split in groups and mod a simple single player game directly in glitch.
This will also be an introduction to p5.js.
You can sync github repositories with glitch (cloning from github to glitch, the other way around is more complicated)