RJ was an IMACS student from kindergarten through 12th grade and took every class IMACS offered, including all levels of Math Enrichment, Computer Enrichment, Hi-Tech Summer Camp, University-Level Computer Science, AP Computer Science: Java Programming, and University-Level Logic for Mathematics.
With a 5.9 GPA and 2360 on the SAT, RJ graduated as co-valedictorian and was honored as a US Presidential Scholar candidate, National AP Scholar and National Merit Scholar. He and his teammates were also four-time Science Olympiad state champions.
RJ was accepted to Caltech, Georgia Tech, Carnegie Mellon, and the University of Florida. He chose Caltech where he took junior-level Computer Science classes as a freshman and served as a Teaching Assistant for those classes as a sophomore. RJ conducted summer research in computer vision and was selected for an internship at Northrup Grumman. He will graduate with a double major in Computer Science and Philosophy and plans to attend graduate school to specialize in Machine Learning.
“IMACS taught me an organic approach to problem-solving, a way of thinking that demonstrates the necessary rigor required to solve genuinely challenging problems. The introduction to proofs and logic that I got at IMACS was absolutely critical to my success at Caltech.”
Cori wanted to understand the fundamental concepts that make up the sophisticated theories of Computer Science. She started IMACS during the summer before tenth grade and went on to complete IMACS’ University Computer Science track and AP Computer Science: Java Programming course. Cori scored a 5 on the AP Computer Science A exam, 800 on the math portion of the SAT, and was named a National Merit Scholarship Finalist.
Cori’s keen interest in using her knowledge to understand real-world problems inspired her to write a Naive Bayes machine learning algorithm to detect political bias in online news articles. Her paper on it was selected for presentation at the Georgetown Junior Science and Humanities Symposium, and she was honored as an affiliate winner for the National Center for Women and Information Technology’s Aspirations Award.
Cori chose Brown University where she was accepted early decision and plans to study Computer Science and Economics. She hopes to pursue a career applying data science within education or a service-based field.
“IMACS turned the slightly enigmatic, ever-changing field of Computer Science into a never-ending set of fun puzzles for me to solve. It brought to my attention the intricacy and beauty of the field while illustrating how I could become a part of it.”
Fiona first attended IMACS Hi-Tech Summer Camp when she was ten. Over the next eight years, she went on to complete IMACS’ university-level courses in University Computer Science, AP Computer Science: Java Programming, and Logic for Mathematics. Homeschooled since fifth grade, Fiona was awarded a National Merit Scholarship, named an AP Scholar with Distinction, and scored 2360 on the SAT. She is also a second degree black belt in Taekwondo and won a bronze medal at the 2013 AAU Junior Olympic Games.
As a high school student, Fiona studied four years of undergraduate, advanced undergraduate, and graduate classes in mathematics and physics at Northwestern University where she is the only student to have won the Outstanding Achievement in Advanced Mathematics Classes by a High School Student prize four years in a row. During that time, Fiona also served as a Teaching Assistant for the University of Chicago’s Young Scholars Program, a position usually reserved for undergraduates.
Fiona chose the University of Chicago, where she intends to major in Mathematics and Physics. She plans to pursue a career as a university professor of mathematics. Fiona directly credits IMACS for helping her to develop a deeper appreciation for and a sense of ownership of the mathematics that she learns.
“Logic and computer programming classes at IMACS taught me to how to organize my thinking and break problems into solvable pieces. The natural structure of logic and computer programming allowed me to see the structure of a mathematical proof as I was writing or reading it. When I understand it at that level, I feel I can reconstruct it and use it creatively as well.”
Zac began taking IMACS classes in first grade. Nine years later, he had completed all of IMACS Mathematics Enrichment and Computer Enrichment and IMACS University-Level Computer Science. Zac graduated valedictorian of St. Thomas Aquinas High School, but not before being founder and captain of the Robotics Club and the Programming Team, earning the rank of Eagle Scout, and being named a National Merit Scholar Finalist and National AP Scholar.
Having scored 2350 on the SAT, 800 on the SAT Math II Subject Test and 5’s on the AP Calculus AB, AP Computer Science, AP Calculus BC, and AP Statistics exams, Zac was accepted at Stanford, Cornell, UC Berkeley, Georgia Tech, Rice, and RPI. He chose Stanford where he plans to major in computer science.
Zac directly credits IMACS for preparing him to master the concept-based materials of his rigorous, freshman-year courses at Stanford.
“Being able to think both analytically and creatively is why Stanford students are at the forefront of technological innovation. My IMACS background taught me HOW to think, allowing me to stand out among my classmates. Because of this, I was able to easily understand the concepts taught in the accelerated freshman courses in programming, multivariable calculus, and differential equations.”
This week, the IMACS Blog visits with eIMACS student Shuli Jones. Shuli is one of our star students, having excelled in our university-level computer science courses since the 6th grade. She recently attained the highest score possible on the AP Computer Science A test exam as a high school freshman. A multitalented young lady with a passion for programming, Shuli is well on her way to a bright future.
Please tell our readers a little bit about yourself and what you enjoy doing.
My name is Shuli Jones. I’m fifteen years old, and I’m currently a sophomore in high school. In my spare time, I like to participate in a variety of activities: I love to read, I do archery recreationally, I’m part of a trivia team and a classics society at my school, and, of course, I love programming. I’m also interested in learning new languages, coding and otherwise!
You’ve done some amazing things already at a young age. Tell us about the accomplishments and experiences of which you are most proud.
In recent memory, the thing I am the most proud of is scoring a 5 on the AP Computer Science A test. I took it while still a freshman, so it was my first AP test and I was very nervous beforehand. However, eIMACS had prepared me unbelievably well, and that, combined with my own hard studying, meant the test was nowhere near as hard as I expected. When the results came in, both my parents and I were really pleased.
Something else I’m proud of is my performance in my school’s classics society. Every year in May, we participate in the Ontario Student Classics Conference. This is a three-day competition with numerous other schools that tests knowledge of Latin grammar and vocabulary, as well as Roman life, mythology, and history. For me, this was my biggest commitment during the school year, and it’s something that I love to do. I put in many, many hours of hard work studying and working on projects with my team members, and it paid off.
My team won the Phyllis Morgan Trophy for Overall Excellence, which is typically regarded as the "top" trophy at the conference. I won several individual awards in the Intermediate category (for those having taken two years of Latin): First in Pentathlon, for having the best overall score on the five main events (notably with a first in Latin Derivatives), and first in Latin Oral Reading. I was also part of a group of four students who came second in Quaerite Summa ("Reach for the Top"), which is a quiz-bowl style competition based solely on Roman life. It felt great to get recognition for my work on something I love so much.
How did you become interested in computer science?
When I was in sixth grade, I spent Spring Break at a Girls Learning Code camp. They had partnered with eIMACS to give away a scholarship for the first eIMACS programming course, University Computer Science I. To apply for the scholarship, I took the eIMACS Aptitude Test. The test was interesting and challenging, so my parents said they would sign me up for the course. From there, my interest only increased. I’ve taken three eIMACS courses now, and each one has introduced me to new programming languages, topics, and ideas.
What do you enjoy most about the eIMACS computer science courses?
I have to say, the thing that appeals to me the most about these courses is their rigor. I can tell a lot of care was put into creating them: the information is always laid out in a logical sequence, and the learning curve is perfect. Assignments are usually just the right difficulty level to leave me challenged but not frustrated. At the same time, the programming that I’m learning is very in-depth; I feel that I’m being prepared very well to succeed in the rest of the coding world. I especially liked the variety of languages that eIMACS introduced me to (Scheme, Haskell, Python and Java), as well as the focus on "good" programming and not just on getting things done.
What are some ways in which your eIMACS experience has had a positive effect on your academic and non-academic pursuits?
Completely thanks to the knowledge I gained from my eIMACS courses, this past summer I was offered my very first paid programming internship. It was a great opportunity to learn more about the outside world of programming (and the endless debugging that real coders must carry out!). The courses I’ve taken through eIMACS have also greatly increased my capacity for logical analysis and thought; I often find myself applying the programming principles I’ve learned to my schoolwork and assignments. Additionally, eIMACS has had a positive effect on my life overall. I’ve been participating in their courses for three years now, and they have broadened my mind and introduced me to new things I might never have experienced otherwise. I’m so happy that I chose to learn computer science through eIMACS.
What kinds of things do you see yourself doing in the future?
I’m not sure yet. I know that I want to work in a STEM field, and right now my thinking is that I’d like to do something with engineering — perhaps be a mechanical engineer? I want my job to be something that lets me create new things and leave my mark on the world. Whatever that may be, I know eIMACS has helped to prepare me by giving me a solid grounding in programming and logical thought.
As a homeschooled student, Shakthi could learn computer science anywhere. She chose IMACS. From 10th grade to 12th grade, Shakthi completed IMACS’ Modern Computer Science track, which includes University Computer Science I, University Computer Science II and AP Computer Science: Java Programming. Shakthi directly credits IMACS for her ability to deftly switch between various programming languages.
Shakthi’s multiple talents have earned her numerous honors. Original research in Number Theory propelled her and her teammates to the finals of the 2014 Siemens Competition in Math, Science & Technology where they won a $20,000 scholarship. Shakthi shines as a writer as well, having been named a 2015 YoungArts Winner in Poetry by the National YoungArts Foundation. As a high school student, she earned an "A" in UT Austin’s graduate-level course in Abstract Algebra.
Shakthi was accepted at Princeton, Harvard, UC Berkeley and UCLA and will attend Princeton where she plans to study theoretical math, creative writing and philosophy. She hopes to do research in some capacity throughout her career, either in academia or in a think-tank.
“I chose IMACS because it was thorough — it combined my predilection for theory and concept with rigor and practicality, both of which are needed to learn computer science well.”
Rachel began attending IMACS as a first grader. Homeschooled since third grade, she has always made time for IMACS in a busy schedule that revolved around competitive chess. While rising to the rank of #1 player in the US and #15 player in the world among girls under 14 and later attaining the title of Woman FIDE Master at just 16 years old, Rachel completed IMACS’ Advanced Math Enrichment and university-level courses in Computer Science and Logic for Mathematics.
As a high school student, Rachel earned A’s in multiple undergraduate math, science and computer science courses taken at Carnegie Mellon. She also scored a perfect 2400 on the SAT on her first attempt and earned 5’s on all of her Advanced Placement exams, including Computer Science A, Calculus BC, Statistics and Physics C.
Rachel chose Harvard, where she plans to major in Computer Science and Mathematics. She credits IMACS for motivating her to choose Computer Science as a major.
“IMACS fostered precisely the clear, logical thought processes necessary to succeed in advanced math and computer science classes. It is very important, both in math and computer science, to be able to think in an abstract manner, and I am grateful that IMACS prepared me very well.”
Related Blog Posts:
The "learn to code" movement has emphasized teaching computer programming to children, and so many parents are asking, "Which language should my child learn?" It’s easy to be overwhelmed by the myriad choices: Java, Python, Ruby, C++, Objective-C, and so on. Ten years ago, the list of languages would have been different, but the question would still have been the same. So instead of focusing on learning a particular language that is popular at the moment and wondering if it’s the "right" choice, consider that your child would benefit most from learning the fundamental concepts in computer science that are applicable across all programming languages. Understanding these foundational ideas well enables a person to problem-solve in any programming environment more effectively than knowing the rules of syntax for one particular language. It’s a lot like the craft of photography. If you’ve mastered the fundamentals — composition, lighting, exposure, etc. — then you’re in a much better position to take memorable photographs regardless of whether you’re handed a Canon, an iPhone, or a disposable camera. The same is true in computer science where computational thinking and the ability to learn are and always will be more highly valued than code manipulation. Besides, by the time your child is a working professional, it’s likely that a different set of languages, some not yet invented, will be in vogue. Wouldn’t it be better for him or her to have a timeless set of skills and abilities?
This month the IMACS Blog caught up with Azzara Nincevic, who has been a star student at IMACS for seven years now. Azzara enjoys reading, drawing, and classical ballet. Although she dances at least 12 hours per week and performs throughout the year, she always finds time for IMACS.
“When I began IMACS in first grade, I immediately loved it.” Azzara says. “Having taken an interest in math, I quickly learned the traditional material and was looking for more challenging enrichment. When I attended class at IMACS, all of the problems were thought-provoking.”
As a member of her school’s math team, Azzara attends competitions such as MATHCOUNTS and Mu Alpha Theta where her IMACS background has been an invaluable asset. As Azzara describes it, “The IMACS curriculum helped me to develop logical thinking skills and the ability to quickly solve math problems, which are key to succeeding at math competitions.”
“With the preparation that IMACS gave me, I was able to score a 5 on the AP® Computer Science exam as a seventh grader.”
While Azzara’s achievements in mathematics and ballet, by themselves, are enough to impress anyone, it’s her recent performance on the AP® Computer Science A exam that readers will recognize as a rare feat. Soon after starting IMACS Math Enrichment program, Azzara enrolled in our Computer Enrichment & Virtual Robotics class where she developed a great interest in programming. Over the years, she continued with IMACS University Computer Science (UCS) track, which culminates in our AP® Computer Science: Java Programming course.
AP® exams are typically administered to high school students, but at the time that Azzara was ready for APCS, she was only just entering seventh grade. That didn’t deter her. “After inquiring, my mom and I found out that there is no minimum age requirement for an AP® exam, so I registered. With the preparation that IMACS gave me, I was able to score a 5 on the AP® Computer Science exam as a seventh grader.”
With such a busy schedule, Azzara appreciates that one of the greatest benefits of IMACS is that the computer science and logic programs are accessible online and self-paced. “I was able to excel at my own pace and access the IMACS curriculum anytime and anywhere.”
What does the future hold for Azzara? “I am entering the eighth grade with a greater passion for and interest in math and computer science. IMACS made me realize that I would like to pursue computer science in college and after. The fundamental skills that I have learned in the UCS courses and the logical thinking skills I have learned in the Math Enrichment and Mathematical Logic courses give me the advantage I need to be successful. As such, I plan to continue with IMACS in the upcoming years.”
UPDATE, July 28, 2014: IMACS has completed the update of our AP® Computer Science: Java Programming course to include eight fully-elaborated labs that far exceed the minimum requirements of the College Board. IMACS’ Be Prepared for the AP® Computer Science Exam online course has been updated as well. Students who are enrolled directly through eIMACS in our AP® Computer Science: Java Programming online course receive free access to the Be Prepared course.
Following a recent review of the AP® Computer Science A course and exam, the College Board has decided to replace its case study requirement with a requirement to complete a minimum of 20 hours of hands-on lab experiences. This change, which will take effect for the 2014-2015 school year, is being implemented to more effectively support student learning of core concepts in computer science. IMACS continues to follow closely all communications from the College Board, as well as discussions within the APCS community, on the forthcoming changes and will act accordingly.
From the beginning, IMACS’s philosophy has been to emphasize computational thinking and mastery of foundational ideas in computer science. This approach is reflected in how our Curriculum Development Group has meticulously designed our CS courses and, more importantly, in the success our CS graduates find in college, graduate school and at top tech companies. As such, IMACS fully expects that our AP® Computer Science: Java Programming course will continue to exceed, as it always has, all of the College Board’s requirements and remain College Board-approved.
GridWorld Case Study
Since the 2007-2008 school year, AP® Computer Science A has used the GridWorld Case Study to reinforce lessons on object-oriented programming.* GridWorld provides Java code designed to simulate the behavior of objects (Rock, Flower, Bug and Critter) in a grid. Ground rules such as Rocks cannot move, Critters eat Flowers and Bugs move forward and turn 45 degrees if blocked are part of the initial set-up. Given these starting parameters, students then write additional code that extends these various classes of objects. A student’s understanding of computer science concepts in the context of the GridWorld code is then tested on the AP exam with one free-response question and a handful of multiple choice questions.
College Curriculum Study
In 2011, the College Board undertook a College Curriculum Study in which institutions of higher education were surveyed about the AP® Computer Science A course case study.^ Of the 117 institutions that responded, 91% said they were not likely to change their credit/placement policy for AP® CS A if questions on the case study were not included in the exam. About two-thirds of respondents rated the inclusion of a case study as not important or only somewhat important.
“Although case studies have important benefits, their size and complexity have constrained the AP® CS program in adapting to new course content and pedagogy.”
— AP® CS A Exploration of a Change from GridWorld to Labs
Clearly, GridWorld is now past its prime. As the College Board noted on its website, the case study requirement in AP® Computer Science A needed updating “to stay aligned with the most recent practices in the continually changing field of computer science.”
Labs, Labs, and More Labs
This March, the College Board plans to release details of three sample AP® Computer Science A labs as examples of how the new lab experience requirement may be implemented. One expectation is that their shorter length will make the labs easier to integrate into the course curriculum throughout the school year. Teachers and curriculum developers will have the flexibility to include sample labs or other comparable labs at points they feel are most relevant and pedagogically effective. It is also expected that the sample labs will be more connected to real-world situations, perhaps increasing student interest in taking the course and studying computer science.
Most importantly, labs are expected to support student learning of fundamental ideas in computer science. Whereas the case study questions on the current exam are tied heavily to the context of the GridWorld code, the 2015 AP® Computer Science A Exam will test a student’s understanding of core concepts that are reinforced by hands-on lab experience, not knowledge specific to any particular lab. As an educational institution that has always emphasized foundational concepts in CS over code manipulation skills in the programming language du jour, IMACS is pleased to see the College Board take this important step.
Learn how you can give your child an unfair advantage in computer science. To find an IMACS teaching center near you, visit www.imacs.org. Talented middle and high school students can take university-level computer science online through our eIMACS distance-learning division.
*For readers who may be unfamiliar with object-oriented programming, it’s an approach in which the programmer creates “objects” with specified attributes and behaviors as modular, reusable code.
Older Posts »