Overview of Colony 42: Colony 42 is a comprehensive online learning platform aimed at software engineering, leveraging advanced AI tools, Git integration, and automated code reviews. The platform provides a hands-on learning experience through practical coding exercises, real-world projects, and interactive narrative-driven modules. The narrative framework of Colony 42 involves remote interactions with a stranded AI system (the Colony Corporation), which serves as both a guide and an evaluator for student assignments. Core Features and Design Philosophy: Git Integration: Central to the learning experience. The platform integrates directly with Git, allowing students to interact with code repositories, push their own changes, and have those changes automatically reviewed by the system. Support for Version Control. Students get their own repositories, and each task or "mission" is version-controlled, ensuring that code history and contributions are tracked. Interactive Git Workflow. Students can clone repositories, push changes, and use CI/CD pipelines that integrate seamlessly with the Colony 42 framework. AI-Powered Code Review and Assistance: AI-Based Code Review (Code Review and Assessment Guide - RAG): The AI reviews students' code submissions, pointing out errors, highlighting best practices, and suggesting improvements. Error Detection & Analysis: The AI can identify "code smells," bugs, and common pitfalls, and provide targeted feedback. Intelligent Tutoring: The AI starts "broken" or limited, symbolizing the gradual unlocking of capabilities as students progress and achieve milestones, creating a natural learning curve. Context-Aware Assistance: The AI adapts its responses based on the student’s progress, current module, and specific code assignments. Narrative Structure and Gamification: Story-Driven Learning Modules: Each learning module is framed as a "mission" that students must complete to help restore or fix the ship’s systems. Contextual Tasks: Missions are tied to the narrative (e.g., the AI is protecting itself, and students must "hack" it by solving a series of code problems). AI Communication Through Chat: All interactions happen via a chatbot interface, designed to simulate a broken AI assistant on a stranded ship. Remote Access Setup: Students are not directly aboard the ship but work remotely, using their coding skills to solve problems and unlock features. Custom Learning Pathways: Differentiated by Roles: Modules, classes, and projects can be tailored to different learning levels and profiles, e.g., beginner, intermediate, and advanced. Support for Individual and Group Learning: Scenarios include group collaboration via shared Git repositories, enabling teams of students to work on the same project. Subscription and Licensing Model: Individual and Institutional Sales: Colony 42 supports both direct-to-student subscriptions and bulk licenses for educational institutions. Seat Management: Institutions can purchase seat licenses that allow multiple students to access the platform under one subscription, with varying pricing models based on the number of seats and billing frequency (e.g., monthly or yearly). Portal for Admins and Instructors: The system includes an admin portal where instructors or program managers can monitor student progress, assign missions, and manage the subscription. Course and Module Setup: POD/Mission Structure: Each module (referred to as a POD initially, now considered as "missions") serves as a learning unit, focusing on a specific topic or project. Missions are structured to start with a quiz that unlocks subsequent tasks and quizzes. Technical Setup: Dynamic Integration of New Courses: New courses can be dynamically added to the platform. Each course is versioned and mapped to a series of activities. IMS QTI and Common Cartridge Support: The platform is capable of generating and parsing QTI-compliant content, making it interoperable with other learning management systems. xAPI and LTI Integration: Colony 42 uses xAPI statements for tracking complex analytics and performance metrics. Analytics and Progress Monitoring: Advanced Analytics using xAPI and OpenSearch. Integration with Elasticsearch/OpenSearch for storing and querying detailed xAPI statements. Student Progress & Performance Tracking: Real-time dashboards that track student progress, task completion, and code quality over time. Detailed Narrative and Mission Setup: Narrative Perspective: Colony Corporation Interface: The Colony Corporation is the in-universe entity that assigns tasks to students. It serves as a wrapper around the AI that the student must "fix" by completing coding assignments. AI Interface: The AI presents as broken or limited, but it unlocks more features and assistance as students demonstrate proficiency. Remote-Only Interaction: The system makes it clear that the student is not physically present, keeping the interaction virtual. Mission and POD-Level Progression: Missions are framed as problem-solving tasks that must be completed in sequence. Some missions are gate-locked by quizzes, and students must meet criteria before proceeding. xAPI Rules for Task Completion: Progress is tracked using xAPI rules such as "user completed code assignment" or "student submitted code." Course Management and Structure: Learning Groups & Access Control: The platform uses "learning groups" to manage access and permissions. These groups are tied to user profiles and can be customized per institution. Integration of User Roles: Each user role (student, instructor, admin) is linked to a specific set of permissions within the platform. Narrative Changes Over Time: The initial setting involved a physical ship, but it has since been adapted to a virtual AI aboard a drifting ship at sea, maintaining the mystery and isolation theme. The goal is to remotely unlock and repair different systems using programming skills. System and Platform Design: Evolution Stack: Colony 42 is built on the "Evolution Stack," a robust platform supporting AI, data analytics, and real-time interactions. Velocity-Based Templating and Configuration: The backend uses the Velocity templating engine for flexible rendering of content and easy generation of IMS QTI files. Modular Integration: The platform is designed to be extensible, with modules for different functions such as chat integration, Git event handlers, and common cartridge generation. Implementation and Testing: Testing with Stripe and Subscription Handling: The payment and subscription model was set up using Stripe, with a focus on handling recurring payments and subscriptions. Webhook Handlers: A robust webhook system was implemented to handle Stripe events, including checkout.session.completed and subscription.updated. Managing Subscriptions and Users: The platform keeps track of user subscriptions and links them to their access permissions, ensuring that only active subscribers can use the learning modules. Invoice and Order Processing: Each successful payment is converted into an order, and orders are linked back to users and their subscriptions. Admin and Instructor Tools: Manage Subscriptions: Admins and instructors can launch a "Manage Subscriptions" portal for each student, with tools to update payment methods or view invoices. Institutional Orders: Support for setting up multi-seat subscriptions for educational institutions, enabling bulk management of student licenses. Future Considerations: Dynamic Content Customization: Expanding the narrative scope to include personalized AI interactions based on previous performance. Additional Mission Types: Adding group activities, where multiple students work in a shared repository, simulating real-world coding team environments. Advanced CI/CD Integration: Incorporating more advanced CI/CD capabilities, allowing students to deploy and debug their code live. Overall, Colony 42 is designed as a flexible, AI-powered learning platform that combines narrative-driven problem-solving with real-world coding tools. It’s a unique blend of education, technology, and gamification, with a focus on making complex programming concepts accessible and engaging.