Kotlin
Java

Getting Started with MP0
Kotlin

Created By: Geoffrey Challen
/ Updated: 2021-10-17

Welcome back! Today we begin a new chapter in our journey together, as we begin work on the machine project.

MP0

Welcome to the machine project! Over the course of several checkpoints you'll apply the knowledge you've taken from the homework to a real-world application: completing a simple Android app. Let's get started!

Goals of the Machine Project

We've built your programming abilities through a series of small homework problems. Now we're excited to show you what you can do by applying those skills! So if the homework problems are like playing etudes on a musical instrument, now it's time to learn a simple song. If the homework problems are like running cone drills at sports practice, now it's time to scrimmage. If the homework problems are like the mise en place when preparing a meal, now it's time to turn up the heat and get cooking.

Real world programming is also a very different challenge that you've experienced solving the homework problems. On each homework problem you start from scratch. In real life, you almost never do. On each homework problem you spend most of your time programming and debugging. In real life, you spend most of your time reading, scratching your head, and even just trying to figure out where to start!

Compared to the homework problems: when completing the machine project, you'll spend much more time:

  • reading existing code
  • reading documentation
  • trying to understand what is going on
  • tracing the execution of your app
  • figuring out what is going wrong
  • determining what code actually needs to be changed, and how

And you'll spend much less time writing code! This is normal, good, healthy, and not a sign that you are doing anything wrong.

Getting Started

Let's go through the steps required to get you up and running on the machine project.

  1. First, we'll install Android Studio and Git.
  2. Next, you'll create a GitHub account, if you don't have one already, and create your Fall 2021 MP repository.
  3. Once that's done, you'll import that repository into Android Studio and run the test suites and grader.
  4. And, finally, you have a few small fixes to make before you can earn full credit!

We'll get started on these tasks today and continue work tomorrow.

Decide on Collaboration

Before you get too far, please review the MP collaboration policy. As a brief reminder, you may choose to collaborate with one other student for the first two MP checkpoints—this one (MP0) on setup, and the next one (MP1) where we'll get started with some initial MP development. All students must complete the final two MP checkpoints individually.

If you choose to collaborate, you must complete all work on MP0 and MP1 with your partner. Please review the collaboration policy for more details.

Install Android Studio and Git

Before you can start the machine project, you need to install some software onto your development machine. These instructions should help with that. Return here when you're all set up.

Clone the Machine Project Repository

Next, you need to get your copy of our MP starter code. We don't expect you to start the project from nothing! And in fact, working with an existing codebase is the norm in the real world of software development. One of our learning goals is to get you comfortable with this type of development.

If you don't already have a GitHub account, start here to create one. Note that if you sign up with your @illinois.edu email address there are usually some freebies thrown in...

Once you have your GitHub account, you can use this GitHub Classroom link to access the MP starter code. That may take a minute to set up, so please be patient. Once your repository is ready, we'll move on to the next step.

Load the Machine Project into Android Studio

So now we have Android Studio, and our own copy of the machine project. The next step is to import that repository into Android Studio! The screencast above walks you through that process and what you should expect from your initial copy of the MP.

To identify yourself you'll need to add a unique ID to your project. Your ID should be shown below, and the screencast above shows you how to use it.

No Homework Today

On lessons where we focus on the machine project we will not assign a homework problem! However, the lesson will usually focus on helping you complete a particular part of the MP test suite, and so we encourage you to spend time on that in lieu of a homework problem.

Today your goal should be to get Android Studio installed, the MP code imported, and to run the app in the emulator for the first time! If you get stuck, find us for help on the help site or forum.