← CSE101 homepage · Download the complete Word document

What Is New in CSE101

AI use and learning the fundamentals of computing

AI can help you build interesting programs, and I encourage you to use it in selected CSE101 assignments and projects where permission is explicitly given. At the same time, you must learn to reason about programs yourself. AI is not permitted in exams or quizzes. Both parts of this approach serve the same goal: helping you become a capable, independent learner who can also use modern tools well.

Why learning to code still matters

A program is a precise description of a process. Learning to write one teaches you to turn an idea into steps, choose how to represent information, and work out what happens when those steps execute. You develop this understanding by making predictions, writing code, finding mistakes, and trying again. Reading a finished solution can help, but you also need practice making the decisions yourself.

AI can produce code that looks convincing without meeting your actual needs. To evaluate it, you need to understand the problem and the program. In CSE101, this means connecting bits and number representations to instructions, memory, C programs, and Arduino systems. These foundations help you explain why something works and diagnose why it fails.

Consider an array with ten elements. In C, its valid indices are 0 through 9. A loop that also accesses element 10 has an error even if one run appears successful. Or consider integer division: 5 / 2 evaluates to 2 in C when both operands are integers. Understanding bounds and types lets you catch such mistakes in code written by you, a classmate, or an AI tool.

The same reasoning matters in an Arduino project. If a sensor reading is unexpected, you need to distinguish a problem in the code from a problem in the connection or your interpretation of the reading. Generating a different program is not always the right next step. Your understanding helps you decide what to test.

Where AI fits in this course

Selected assignments and projects: AI use is encouraged where the task explicitly permits it. Follow that task’s instructions about which parts may use assistance.

Exams and quizzes: No AI assistance is permitted. These assess what you can understand and do independently.

Other assessed work: Do not assume that permission for one project applies to another task. If the instructions do not explain whether AI is allowed, ask before using it.

An AI-assisted project and an independent quiz serve different purposes. A project gives you room to explore and build; a quiz or exam shows whether the underlying ideas have become your own. Practising without AI throughout the semester prepares you for that independent work.

Using permitted AI assistance to learn

When a task allows AI, use the interaction to improve your understanding. Begin by describing the problem in your own words and attempting the part you can do. Then ask for focused help. For example: “Give me a hint about this loop without writing the solution,” or “Ask me questions to check whether I understand how this function changes the array.”

Treat an AI response as something to examine. Trace a small example yourself, compare the answer with the course material, and test relevant cases. For a loop, consider its first and last iterations. For a function, consider which inputs it should accept and what result each should produce. A successful compilation or one successful demonstration is only part of the evidence.

Before moving on, close the AI conversation and check your understanding. Can you explain the important steps, predict the output for a new input, and make a small change yourself? If you cannot, return to the idea that is unclear. The useful result of the exercise is both a working program and knowledge you can use again.

Keep a brief note of how AI helped and what you checked; follow any disclosure instructions in the assignment. For example: “I used AI to suggest test cases for my loop. I checked the boundary cases myself and corrected the stopping condition.” This is a useful study habit, not a substitute for understanding the submitted work.

The website and reading materials

Use the CSE101 website as a starting point for course information and released resources. Lecture slides remain a main resource for reviewing the course. When reading documents are provided, use their explanations and examples to revisit difficult ideas and prepare questions. Follow the announced submission instructions; the website does not change how you submit assessed work.

Read actively. Pause before a worked solution, predict what will happen, and try a small example before checking the explanation. Bring unresolved questions to class or recitation. You can also return to these examples later and solve them without assistance to see what you have retained.

A course built around understanding

CSE101 connects the operation of computers with programming and practical work. Lectures introduce and explain ideas, recitation gives you further practice, and the coordinated CSE107 lab provides hands-on experience. Selected AI-assisted tasks extend what you can explore within that learning process.

You do not need to know everything before you begin, and mistakes are part of learning. What matters is that you can increasingly explain your choices, identify errors, and solve problems independently. Use AI where it is permitted, while continuing to build the knowledge that makes its assistance useful.

How to Use AI for Programming

CSE101 quick start • Use AI only where the assignment permits it. AI assistance is prohibited in exams and quizzes.

  1. Install Visual Studio Code. Download VS Code for your operating system using link 1 below, run the installer, and open the application.
  2. Install the official Codex extension. Open Extensions in VS Code, search for Codex, and select the extension published by OpenAI. Click Install. Link 2 below opens the official listing.
  3. Sign in with your ChatGPT account. Open the Codex icon in the sidebar and choose Sign in with ChatGPT. Complete the browser sign-in. If the icon is missing, open the Command Palette and run Codex: Open Codex Sidebar. Use your ChatGPT login for this setup; an API key uses separate billing.
  4. Open a practice folder. Create a folder such as cse101-practice and open it using File > Open Folder. Add your practice code. Save a backup before allowing changes. To compile C or upload to Arduino, you still need the compiler or Arduino tools specified for the course.
  5. Ask for help that develops understanding. Try: “I am a beginner learning C. Read this function and give me one hint. Do not edit the file or provide the complete solution. Ask me to predict the output first.” Explain what you tried and include the exact error when asking about a problem.
  6. Review and test the result. Read any suggested changes, run the program, and test a boundary case. Then close Codex and explain the code or make a small change yourself. If you cannot, ask for an explanation and practise again before submitting your work.
  7. Follow the Codex tutorial. Read OpenAI’s guide to using Codex, focusing on prompts, planning, and checking results. The guide is not specific to C; practise its approach on a small C program from your own practice work. Open the tutorial

ChatGPT Plus

If it fits your budget and you expect to use AI regularly, I encourage you to consider ChatGPT Plus. It includes Codex and offers more room for regular use; usage limits still apply. This is a recommendation, not a required purchase. You can begin with the available Free access. Plus is currently listed at US$20 per month; check the price and renewal terms shown for your account before subscribing. [3]