Meeting Summary for CS 326 Lecture/Lab Spring 2025
Date: January 22, 2025
Time: 06:29 PM Pacific Time (US and Canada)
Meeting ID: 813 3845 7711
Quick Recap
Greg led a hands-on session covering several key areas:
- Active Participation: Emphasized the importance of engaging in class discussions, especially via CampusWire.
- Grading Breakdown: Reviewed how attendance, labs, projects, and exams contribute to final grades. See the Syllabus.
- Coding Assistance Tools: Introduced tools like ChatGPT for coding help, stressing that students must understand any generated code.
- Class Policies: Outlined attendance expectations and the need to follow development environment setup guidelines.
- Open Router: Demonstrated the use of OpenRouter.a to access various AI models.
- Technical Difficulties: Addressed initial issues with setup and provided practical solutions.
Next Steps
All students need to complete the following tasks:
- Python Environment
- Set up a Python 3 virtual environment.
- Open Router Account
- Create an Open Router account and obtain an API key.
- Add credits (between $5–$10) to the account.
- Tool Installation
- Install the LLM CLI and configure it using the Open Router API key.
- Install Aider and configure it to use Open Router models.
- Additional Resources
- Await links from Professor Greg for additional AI tools (e.g., Perplexity).
- Experiment with Aider for various coding tasks.
Detailed Summary
Class Communication and Grading Policies
Communication:
Active participation via CampusWire was stressed, with an emphasis on asking questions openly as posts instead of direct messages (DMs) that could benefit the entire class. You can post anonymously to other students.Grading:
The grading scheme includes attendance, labs, projects, and exams.
A new policy permits the use of coding assistance tools like ChatGPT, provided their output is fully understood by the student.Future Projects:
A potential group project involving container support for an existing kernel was mentioned for the end of the semester.
Class Attendance and Development Environment
- Attendance Policy:
- A 5-day free period is provided for both excused and unexcused absences.
- After the free period, the attendance rate is based on the number of classes attended over the total number of meetings (excluding these 5 days).
- There is a 3% penalty for each day of lateness.
- Development Environment Setup:
The session focused on establishing an open source coding environment, with recommendations for:- Using Python 3.
- Installing WSL for Windows users to ensure access to a Linux environment.
Python Virtual Environment and Open Router
Python Virtual Environment:
The importance of creating a Python virtual environment to manage packages and avoid conflicts was discussed.Open Router Benefits:
Open Router allows users to select from various AI models without locking into a single provider.
The session also introduced the LLM CLI, which lets users interact with AI models directly from the command line.
Exploring Coding Models and Tools
Planet Model:
Explored the capabilities of a coding model Claude 3.5 Sonnet, including writing a C program to process text files by counting characters, words, and lines.Aider Tool:
- Demonstrated Aider’s ability to interact with source code and handle tasks such as git commits.
- Explained the significance of understanding larger codebases with AI assistance.
- Highlighted the need to install an LLM Command Line Program plugin, with a reminder to securely store the API key (as it appears only once).
Python 3 Virtual Environment Setup
- Practical Demonstration:
- Setting up a Python 3 virtual environment.
- Configuring the environment with an Open Router API key.
- Career Preparedness:
Students were advised that developing expertise in a domain is crucial for future employability.
Setting Up Virtual Environment and Tools
- Step-by-Step Guidance:
The session covered:- Establishing the virtual environment and obtaining the necessary API key.
- Installing the LLM CLI and integrating the Open Router Plugin.
- Updating Aider to leverage its full potential.
- Troubleshooting:
Technical issues included:- Difficulties with activating the virtual environment.
- Recommendations to reorder the installation steps and avoid tools that could lead to potential data leaks.
- Encouragement was given to experiment and ask for help when needed.
Virtual Environment and DevOps Considerations
- Terminal Use:
Emphasized the importance of basic terminal skills for setting up and running code in the virtual environment.
References
- Aider:
- C program to process text files:
- ChatGPT:
- Coding Assistance Tools:
- LLM CLI:
- Open Router:
- Perplexity:
- Python 3 Virtual Environment: