-
Notifications
You must be signed in to change notification settings - Fork 0
first course
This tutorial walks you through creating your first course using the Intelligent IDE system, from initial setup to enrolling students and delivering your first lesson.
Before starting this tutorial, ensure you have:
- ✅ Intelligent IDE VS Code extension installed
- ✅ Valid instructor account with course creation permissions
- ✅ Basic familiarity with VS Code interface
- ✅ Course materials ready (syllabus, initial assignments)
-
Open VS Code and ensure the Intelligent IDE extension is active
-
Access the Authentication Panel
- Press
Ctrl+Shift+P
(Windows/Linux) orCmd+Shift+P
(macOS) - Type "Intelligent IDE: Login" and select it
- Press
-
Login with Instructor Credentials
Email: professor@university.edu Password: [Your secure password] Role: Instructor ✓
-
Verify Instructor Permissions
- Look for the "Create Course" option in the sidebar
- You should see instructor-specific features enabled
-
Access Profile Settings
- Click the user icon in the Intelligent IDE sidebar
- Select "Profile Settings"
-
Complete Instructor Information
{ "displayName": "Dr. Sarah Johnson", "department": "Computer Science", "office": "Room 314, CS Building", "officeHours": "MW 2-4 PM, F 10-12 PM", "contactEmail": "s.johnson@university.edu", "bio": "Professor of Computer Science specializing in algorithms and data structures" }
-
Access Course Creation
- Click "Courses" in the Intelligent IDE sidebar
- Click the "+ Create New Course" button
- This opens the Course Creation Wizard
-
Basic Course Information
Course Title: Introduction to Python Programming Course Code: CS101 Semester: Spring 2025 Credits: 3 Department: Computer Science
-
Course Description
# Course Description This course introduces fundamental programming concepts using Python. Students will learn variables, control structures, functions, and basic data structures through hands-on coding exercises. ## Learning Objectives - Understand basic programming concepts - Write Python programs using various data types - Implement control structures and functions - Debug and test Python code - Work with files and basic data processing
-
Enrollment Settings
{ "enrollmentType": "invite-only", "maxStudents": 30, "waitlistEnabled": true, "selfEnrollment": false, "approvalRequired": false }
-
Grading Configuration
{ "gradingScale": "percentage", "passingGrade": 70, "latePolicy": { "allowLateSubmissions": true, "latePenaltyPerDay": 5, "maxLateDays": 3 }, "gradingCategories": [ {"name": "Homework", "weight": 40}, {"name": "Quizzes", "weight": 20}, {"name": "Midterm", "weight": 15}, {"name": "Final Project", "weight": 25} ] }
-
Collaboration Policy
## Collaboration Policy - **Homework**: Individual work required - **Lab Exercises**: Pair programming encouraged - **Final Project**: Groups of 2-3 students allowed - **Quizzes**: Individual work only All collaboration must be properly documented and credited.
-
Access Course Structure
- After course creation, click "Manage Course Structure"
- You'll see the module organization interface
-
Create Weekly Modules
Week 1: Python Basics - Introduction to Programming - Variables and Data Types - Basic Input/Output - Lab: First Python Program Week 2: Control Structures - Conditional Statements - Loops (for, while) - Boolean Logic - Lab: Decision Making Programs Week 3: Functions - Function Definition and Calling - Parameters and Return Values - Scope and Local Variables - Lab: Function Practice
-
Module Creation Interface
// Example module configuration const module1 = { title: "Week 1: Python Basics", order: 1, description: "Introduction to Python programming fundamentals", startDate: "2025-01-15", endDate: "2025-01-21", content: [] };
-
Create Your First Notebook
- Click "+ Add Content" in Week 1 module
- Select "Interactive Notebook"
- Choose "Create New Notebook"
-
Sample First Lesson Notebook
# Week 1: Introduction to Python Programming ## Welcome to Python! 🐍 Python is a powerful, easy-to-learn programming language. Let's start with the basics. ### Your First Python Program print("Hello, World!") print("Welcome to CS101!")
### Exercise 1: Personal Introduction Write a Python program that prints your name, major, and why you're taking this course. **Template:** ```python # Complete this program name = "Your Name Here" major = "Your Major Here" reason = "Why you're taking this course" print(f"Hi, I'm {name}") print(f"My major is {major}") print(f"I'm taking this course because {reason}")
-
Add Learning Resources
### Additional Resources - [Python.org Official Tutorial](https://docs.python.org/3/tutorial/) - [Python Basics Interactive Tutorials](https://www.codecademy.com/learn/learn-python-3) - [Online Python Interpreter](https://repl.it/languages/python3)
-
Create Student Roster
- Prepare a CSV file with student information:
email,firstName,lastName,studentId john.doe@university.edu,John,Doe,12345678 jane.smith@university.edu,Jane,Smith,12345679 mike.wilson@university.edu,Mike,Wilson,12345680
-
Bulk Enrollment Process
- Navigate to Course Settings → Student Management
- Click "Bulk Enrollment"
- Upload the CSV file
- Review and confirm student list
-
Send Course Invitations
// The system automatically sends invitation emails const invitationTemplate = { subject: "Welcome to CS101 - Introduction to Python Programming", content: ` Dear {{studentName}}, You've been enrolled in CS101: Introduction to Python Programming for Spring 2025. Course Details: - Instructor: Dr. Sarah Johnson - Meeting Time: MWF 10:00-10:50 AM - First Class: January 15, 2025 To access course materials: 1. Install VS Code and the Intelligent IDE extension 2. Use this enrollment code: CS101-SPRING-2025 3. Check your email for login credentials See you in class! Dr. Johnson ` };
-
Monitor Enrollment Status
- Check the enrollment dashboard
- Track which students have accepted invitations
- Send reminders to pending students
-
Create Week 1 Assignment
- Navigate to Assignments section
- Click "+ Create Assignment"
- Select "Code Assignment" type
-
Assignment Configuration
{ "title": "Assignment 1: Python Basics", "description": "Practice with variables, input/output, and basic calculations", "dueDate": "2025-01-22T23:59:59Z", "points": 100, "assignmentType": "individual", "submissionFormat": "code", "allowedLanguages": ["python"] }
-
Write Assignment Instructions
# Assignment 1: Python Basics ## Objective Practice using variables, input/output, and basic mathematical operations in Python. ## Instructions ### Problem 1: Personal Calculator (30 points) Create a program that asks the user for two numbers and performs basic arithmetic: ```python # Your code here num1 = float(input("Enter first number: ")) num2 = float(input("Enter second number: ")) # Calculate and display results print(f"Sum: {num1 + num2}") print(f"Difference: {num1 - num2}") print(f"Product: {num1 * num2}") if num2 != 0: print(f"Quotient: {num1 / num2}") else: print("Cannot divide by zero!")
Write a program that calculates a student's final grade based on homework, quiz, and exam scores.
Create a program that converts temperatures between Celsius and Fahrenheit.
-
Add Starter Files
- Create template files for students
- Include test cases for validation
- Add sample input/output examples
-
Configure Auto-Grading
# test_assignment1.py - Automated test cases import unittest from assignment1 import calculate_grade, convert_temperature class TestAssignment1(unittest.TestCase): def test_grade_calculation(self): # Test cases for grade calculator self.assertAlmostEqual(calculate_grade(90, 85, 92), 89.0, places=1) def test_temperature_conversion(self): # Test cases for temperature converter self.assertAlmostEqual(convert_temperature(0, 'C'), 32.0, places=1) self.assertAlmostEqual(convert_temperature(32, 'F'), 0.0, places=1) if __name__ == '__main__': unittest.main()
Meet the team! This section will list all team members, their roles, and contact information.
Keep track of all meeting notes and agendas here. This will help ensure everyone is on the same page and can refer back to previous discussions.
A collection of useful links, documents, and tools that can assist you throughout the project.
A list of frequently asked questions to help new team members get up to speed quickly.
### Additional Pages
1. **Project_Overview.md**
- Detailed description of the project, objectives, and expected outcomes.
2. **Getting_Started.md**
- Step-by-step instructions on how to set up the project environment, including software requirements and installation steps.
3. **Team_Members.md**
- A list of team members with their roles, responsibilities, and contact information.
4. **Meeting_Notes.md**
- A log of meeting agendas, notes, and action items.
5. **Resources.md**
- Links to relevant documentation, tools, and libraries that the team will use.
6. **FAQs.md**
- Answers to common questions that may arise during the project.
### Tips for Maintaining the Wiki
- **Regular Updates**: Ensure that the wiki is updated regularly with new information, meeting notes, and resources.
- **Encourage Contributions**: Encourage all team members to contribute to the wiki to keep it comprehensive and up-to-date.
- **Organize Content**: Use clear headings and subheadings to make navigation easier for users.
Feel free to modify the content and structure according to your team's specific needs!
🏠 Home
- Getting Started
- Installation Guide
- Authentication
- Course Management
- Collaborative Editing
- Assignments
- Notebook Features
- File Management
- Troubleshooting
- Setup & Development
- Architecture Overview
- Backend Development
- Frontend Development
- API Reference
- Contributing
- Deployment