top of page
Search

The Computer Science Pathway at TJHSST

Overview of Computer Science at TJHSST

Computer Science at Thomas Jefferson High School for Science and Technology (TJHSST) is a core academic strength, offering students access to one of the most advanced secondary CS curricula in the nation. From Java programming fundamentals to machine learning and research, the pathway is flexible enough to accommodate both beginners and experienced coders, while remaining challenging at every level.


Foundations of Computer Science

Weight: Honors

This is the starting point for most students. It uses Java as the primary language and teaches object-oriented programming alongside key topics such as:

  • Classes, methods, and inheritance

  • Control structures: conditionals, loops, switches

  • Arrays, ArrayLists, and multidimensional arrays

  • Graphics, input/output, and user interfaces

  • Problem-solving strategies and debugging

It is a project-heavy course with many students developing complete applications such as games or tools by the end of the semester. This course must be completed unless a student qualifies to skip it.


Data Structures (AP Computer Science A + Beyond)

Weight: AP

This is the next core step in the pathway and includes the entire AP Computer Science A curriculum — but adds significantly more depth. Topics covered include:

  • Recursion and efficiency

  • Linked lists, stacks, queues, deques

  • Trees (binary, AVL, heaps), and graph theory

  • Sorting/searching algorithms with Big-O analysis

  • Hash maps, sets, and object-oriented design patterns

This course is considerably more rigorous than a standard AP Computer Science A class, and students are expected to write large, modular programs with performance considerations in mind.


The CS Readiness Assessment (“Skip Test”)

Students who have significant prior experience in Java — either through independent study or a prior course — may qualify to skip Foundations of Computer Science and enroll directly in Data Structures.

Key points:

  • The assessment is offered during the summer before the school year.

  • It is timed and includes both multiple-choice conceptual questions and Java coding tasks (typically involving classes, loops, arrays, and recursion).

  • Students who earn a score of 5 on the AP Computer Science A exam may also qualify to skip Foundations, pending department approval.

While many students take Foundations, skipping it can accelerate access to electives and research labs. However, students should only attempt the assessment if they are already highly fluent in Java.


Electives in Computer Science

Weight: All +1.0, unless noted otherwise

Once a student completes Data Structures, they may enroll in any number of semester-long electives. Each focuses on a specific application of computer science and provides practical, often project-based learning.


Artificial Intelligence 1 and 2

Covers classic AI techniques and machine learning fundamentals. Topics include:

  • Graph algorithms, game trees, heuristics

  • Supervised learning, decision trees, linear regression

  • Constraint satisfaction, natural language processing

  • Neural networks and introductory deep learning

AI 2 delves deeper into model optimization, evaluation, and use-case implementation.


Mobile and Web App Development

Students build both Android and web applications. Curriculum includes:

  • Android Studio and Java-based mobile development

  • HTML, CSS, JavaScript, Node.js, Express

  • Firebase integration, user authentication, API design

This course emphasizes real-world product development and is often selected by students interested in entrepreneurship or design.


Machine Learning 1 and 2

An advanced sequence that focuses entirely on modern machine learning. Students study:

  • Regression, classification, clustering

  • Neural networks, backpropagation

  • Autoencoders, reinforcement learning

  • TensorFlow and PyTorch frameworks

ML2 is one of the most technically challenging courses at TJ and may require concurrent enrollment in Multivariable Calculus.


Computer Vision 1 and 2

Uses C++ and image processing libraries (such as OpenCV) to study:

  • Feature detection and recognition

  • Motion tracking, segmentation, filtering

  • Augmented reality, camera calibration, pattern matching

A niche but advanced course for students interested in computer perception, robotics, or biomedical imaging.


Computer Simulation and Game Development

Introduces game engines, physics simulation, and object-oriented design in a visual setting. Tools include:

  • Unity and C#

  • Kinematics, collisions, lighting, animation

  • Game loops, input systems, HUD design

Projects are structured but allow creative freedom, with students typically designing playable games.


Research and Capstone Opportunities

After completing core and elective coursework, students may pursue year-long research labs. These are typically for those with multiple electives completed, strong programming portfolios, or interest in real-world problem-solving.

Computer Systems Lab

Focus on advanced computational topics such as:

  • High-performance computing

  • Computer architecture and parallel programming

  • Research in AI, cybersecurity, and systems modeling

Students work independently or in teams on publishable projects.

App Development Research Lab

Focused on product development, usability, and full-stack deployment. Students may:

  • Develop multi-platform apps

  • Integrate machine learning with web/mobile tools

  • Launch functional applications for real-world use

Students often submit these projects to competitions or open-source platforms.


Frequently Asked Questions

Do I have to follow a fixed order of courses?

No. While Foundations → Data Structures → Electives → Research is the standard path, students can skip ahead with the CS Readiness Assessment or double up on electives if they meet prerequisites.

Can I take multiple electives at once?

Yes. Many students take two electives in a year or even concurrently during the same semester, especially if they have already accelerated through core math or science requirements.

Is the program accessible to beginners?

Yes. Foundations of Computer Science assumes no prior experience. Students with no coding background can succeed with consistent effort.

Does Computer Science at TJHSST compare to college-level material?

In many cases, Computer Science at TJHSST exceeds college-level. Data Structures and electives such as AI or ML2 include content typically found in second-year university CS programs.


Teacher at TJHSST explaining Computer Science concepts to student

Conclusion

The Computer Science curriculum at TJHSST is both flexible and rigorous, allowing students to shape a pathway aligned with their interests and skills. Whether starting from scratch or entering with competitive programming experience, TJ’s CS offerings provide unmatched opportunities for growth, specialization, and real-world impact.


For families navigating the admissions process, understanding the depth of TJ’s CS program is essential — it’s one of the most compelling reasons students choose TJ in the first place.


 
 
 
bottom of page