A city lit up at night

ADEN

About ADEN

ADEN is a course where students will expand their programming knowledge beyond AP Computer Science, exploring the application of advanced data structures and programming concepts to solve problems. Critical areas of focus will be on understanding the interactions between the intended platform(s), performance benchmarking, user experience and validation. In addition, students will gain experience with programming software to configure, control and interpret hardware in an embedded system.

What I Learned

  1. Implement advanced data structures such as queues, trees, maps, hashes and graphs.
  2. Solve complex problems using appropriate data structures and evaluate performance trade-offs of different implementations.
  3. Work collaboratively by partitioning projects and using industry-standard revision control (Github).
  4. Develop validation tests/regressions to hold functionality as part of the software development cycle.
  5. Develop code for embedded systems to autonomously complete several challenges, including controlling motors, reading sensors, finite state machines, interrupts and sampling intervals.

Projects

Hashes

Benchmarking the speed of various hash functions

Elevator Simulator

A finite state machine elevator simulation

Huffman Compression

A simple huffman compression implementation in Java