Remote Development Tools

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.

Getting started guide

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)