Exercises demonstrated during lectures will be made available for you in Active Classroom Programmer (ACP).

On this page:




Your ACP username and password

You should have received a password to use ACP, sent to your @aucklanduni.ac.nz email. If you did not receive such an email, email Nasser. Please note that this password is compleletey different from your UoA password.

If you have forgotten your password, you can reset it by clicking on the “Reset password” link on the web login page. For your convenience, here is the reset password link:

https://acp.foe.auckland.ac.nz/forgot-password




Using ACP

There are two ways to use ACP. Either through the web interface, or through the VS Code extension.




Using the ACP web interface

To use ACP through your web browswer, simply visit https://acp.foe.auckland.ac.nz/ide.

The following screenshot shows the ACP web IDE and how to run a particular version of a project:

Edit

  1. Select your course
  2. Select the project you want to run
  3. Select the version of the project you want to run
  4. Select the file you want to view
  5. Click on the “Run” button
  6. View the output of the program




Using the the VS Code extension

The recommended way to use ACP is through the VS Code extension. This allows you to use the full power of VS Code to edit and run your programs.

To install the extension, go to the VS Code extension marketplace:

Edit

Search for “ACP” in the VS Code extension marketplace, then click the Install button:

Edit

Next go to the Explorer tab in VS Code:

Edit

You will find a new ACP PROJECTS tab at the bottom. Click on it to open it:

Edit

Click on the Login to ACP button:

Edit

Enter your ACP username and password as prompted:

Edit

You can stretch the tab to make it easier to see the projects:

Edit

Select your course, then select the project you want to explore. Click on the Download icon next to a particular version to download it to your computer. The folder needs to be either an empty folder, or a folder that is already dedicated to ACP projects (see Troubleshooting below if you encounter an error message when downloading a project). This is a safety precaution to avoid you accidentally overwriting important files on your system with ACP projects.

Edit

You can run the project as usual in VS Code:

Edit

You can switch to different versions of the project using the Download icon for another version:

Edit

You will be prompted to confirm that the current files in your workspace will be overwritten:

Edit

After you confirm, the new code will appear:

Edit


Troubleshooting

Edit “Download failed: Cannot download to a nonempty project without a .acpmeta file”

If you see the following error message, it means that the folder you are trying to download the project to is not empty, or is not a folder that is already dedicated to ACP projects:

Edit

To fix this, either download the project to an empty folder, or to a folder that is already dedicated to ACP projects. This is a safety precaution to avoid you accidentally overwriting important files on your system with ACP projects as you download them.


Edit Why does the code disappear on a new version?

To understand why the code disappears when you switch to a new version of the project, you need to understand a bit of the ACP philosophy. ACP was designed to be used as a “scratchpad” for you to experiment with code that the instructor has provided and to seamlessly switch between different versions of the code as it is progressed. As such, when you switch to a new version of the project, the code in your workspace is immediately replaced with the code from the new version. In other words, you are “stepping through” different versions of the same project.

If you would like to keep the code from the previous version, you will need to copy it to a new file (outside the current project) before switching to a new version.

Before we had ACP, we used to provide a ZIP of the “final code” at the end of the lecture uploaded to Canvas. But that was tedious for you to download, unzip, and open in VS Code. ACP makes it easier to switch between different versions of the code (and for you to actually have access to the “in between” versions rather than only the final version at the end of the lecture).