Transition Lab
In this lab, we will wrap up Unit 2, set up your final project, and get hands-on with AI coding agents.
Part 1: Unit 2 Wrap-Up
Wrap up any remaining GitHub Issues from Unit 2 projects. Grades for Unit 2 including your project and Unit 2 exam will be posted next week.
Before we move fully onto your final project, take a moment to reflect on what you learned in Unit 2 and how you can apply it to your final project.
Part 2: Final Project Setup
Demo day is May 1st at 3:30pm. That is only a little over 3 weeks away! We want to make sure you are able to demo something you are proud of and can use as a portfolio piece within those time constraints.
Unit 3 is all about your final project. All class periods and labs will be mostly dedicated to working on your project.
Here is what you will need to build by demo day:
- A working and demo-able Python project.
- A public GitHub repository that you can use as a portfolio piece.
- A simple presentation that you can use to demo your project.
The project will be divided into three checkpoints:
- Checkpoint 1: Plan, scaffold, and first working slice (Due Thursday, April 16th)
- Checkpoint 2: Working MVP (Due Thursday, April 23rd)
- Checkpoint 3: Final polish and presentation (Due Friday, May 2nd at 3:30pm for demo day)
This is an ambitious timeline, so we are doing a few things to help you make progress:
- On-demand guides: You may request a project guide at any time. To request a guide, push your latest code and write a short description of what you have done and what you want to do next in your project journal. Send me a link to your updated journal and I will send you a guide within 24 hours.
- AI assistance: You are permitted (and encouraged) to use AI to help you with your project. Read more about permitted AI assistance.
- Weekly progress reports: You will write a progress report each week in your project journal. This will help you stay on track and make sure you are making progress.
Accept the Assignment
You should see the following files and folders:
final-project/
├── AGENTS.md
├── README.md
├── project.spec.md
├── project.journal.md
└── data/
Take a few minutes to look through these files:
| File | Purpose |
|---|---|
README.md | The front page of your repository. Update this with your project name, description, and instructions as you go. |
project.spec.md | Your project plan. Fill this out for Checkpoint 1: pick a category, describe your idea, and list your features. |
project.journal.md | Your progress journal. Write an entry after each work session so your instructor can create guides for you. |
AGENTS.md | Instructions for AI coding agents. This tells agents about your project and what they should help with. |
data/ | A folder for any data files your project needs (CSV files, JSON, images, etc.). |
Part 3: Introducing Coding Agents
Coding agents are quickly becoming standard in modern software development. Unlike chat-based AI like ChatGPT, coding agents work directly in your editor or terminal. They can read your files, write code, run commands, and fix errors autonomously.
This is a powerful tool, but "with great power comes great responsibility." We want to use these tools mindfully and in a way that helps you learn and grow as a developer. Make sure you have read the AI Assistance Policy.
There are many different coding agents available, but they tend to fall into two main categories:
- IDE agents work inside your code editor (e.g. Cursor, GitHub Copilot in VS Code, Windsurf)
- Terminal agents work in the command line alongside any editor (e.g. Claude Code, OpenCode, pi)
For this lab, we are going to try two options: an IDE agent and a terminal agent.
Option A: Try Cursor (Recommended)
Cursor is a VS Code-based editor with AI agents built in. It works just like VS Code (same extensions, same shortcuts) but with powerful agent features. Furman students can get a free year of Cursor Pro.
Now let's try your first agent interaction. Open the Cursor agent panel by pressing Cmd+I on Mac or Ctrl+I on Windows. Type the following prompt:
Read my project.spec.md file. Based on the categories available (Web Development, Data Science, or Games/Simulations), suggest three project ideas that would be good for a beginner Python developer to build in 3 weeks. Ask me questions about my interests and background to help me brainstorm. For each idea, list the main features and what libraries I would need.
Option B: Stay with Copilot in VS Code
If you prefer to stay in VS Code, GitHub Copilot is already available to you. It has an agent mode that works similarly to Cursor's agent.
Try a Terminal Agent: Claude Code
Terminal agents work in the command line and can be used alongside any editor. Let's try Claude Code, which is one of the most capable coding agents available. It has a 30-day free trial.
Step 1: Sign Up
Step 2: Install
Open your terminal (Terminal app on Mac, PowerShell on Windows) and run the install command for your operating system:
macOS:
curl -fsSL https://claude.ai/install.sh | bash
Windows (PowerShell):
irm https://claude.ai/install.ps1 | iex
You may need to close and reopen your terminal after installation.
Step 3: Try It
Read the files in this project. This is a final project for a Python course. Review project.spec.md and help me brainstorm project ideas. Suggest three ideas in different categories (web, data, or game) and explain what each would involve.
See the Claude Code Guide for more details.
Part 4: Start Planning and Building Your Project
Now that you have tried out some coding agents, it is time to start planning your final project and building the smallest useful version of it.
- Web: one route or one form that accepts input and shows a result
- Data: load one dataset and produce one chart or summary
- Game: one controllable interaction with visible state changes
- what your project does
- what tiny slice works now
- what code you wrote yourself
- what your agent helped with
- what you want to build next
Use your agent for brainstorming, setup, debugging, and explanation. For the core logic of your first slice, stay in the driver's seat and make sure you can explain the code line by line.
If you want a prompt to use, try this:
Read my `project.spec.md`. Help me build the smallest possible first feature for this project. Keep the core logic simple and explain each step so I can understand and modify it myself.
You will have time during the next class to keep refining your spec and extend this first slice toward your MVP.
This was a quick intro to the fast-changing and exciting world of coding agents. There are many options available and you can switch tools at any time throughout the project. Check out the comparison guide to explore more.
Agent Comparison Guide