Students will learn to apply 21st Century Skills by programming personal computers using Java. Topics include mathematical notation, read, write, and decision statements, loops, nested loops, generation of random numbers, procedures, and arrays. The emphasis will be on developing good programming style and technique.
Covers advanced programming and problem-solving using Java. Topics include object-oriented design, data types, searching and sorting, and debugging. Students are prepared for the Advanced Placement Computer Science exam.
This course delves into Android app development, covering the lifecycle of applications, activities, fragments, adapters, widgets, broadcasts, services, and multi-threading. Students gain hands-on experience through projects, emphasizing practical skills over written assessments. Additionally, they explore RESTful web services, work with a game engine, explore AI workflows, experiment with LLMs, utilize RAG techniques, and explore MCP server use.
In this project-based course, students explore VR and game development using the Unity game engine. They create both 2D and 3D games, mastering concepts like physics, animation, networking, and AI. Additionally, students delve into level design, real-time multiplayer games, UI design, and deploying games across various platforms, including VR. The scripting language of choice is C#. Students will also design and train an AI agent that can play against a user or act independently.
An advanced Java course examining how data representation and algorithm design affect correctness, efficiency, and scalability. Students use and implement core data structures, analyze their operations, compare alternative solutions, and apply them to data-processing and network problems. The course progresses from file processing and time-complexity analysis through union-find, dynamic arrays, stacks, queues, linked lists, hashing, maps, search trees, tries, heaps, and graph algorithms. Programming laboratories, individual written assessments, experimental investigations, and applied projects provide complementary evidence of learning.
Focusing on current technology trends, this project-based course equips you with skills essential for internships. Topics span virtualization, version control, memory management, client-server relationships, web development, and resume building. Throughout the course, you’ll explore diverse programming languages, IDEs, operating systems, and hardware. The instructor will also cover how AI agents can improve, computer vision, robotics, agentic workflows, and will add topics as the overall tech stack changes. At the end of the course all students will create a culminating project that is based on a topic selected by the student and approved by the instructor.