Wednesday, June 10, 2015

C++ (actually java) == F

public class AP_Computer_Science(){
I'd like to believe life is an experiment divided into independent and dependent variables. The independent variables are activities, and people that I associate with and the dependent variables are typically my subsequent emotions. Independent variable: day at the beach. Dependent variable: cool, calm, and collected. Independent variable: washing my dog. Dependent variable: soaked, slimy, and smelly.  School had always generated positive dependent variables of appreciation and accomplishment--yes I'm a nerd I know, get over it. Besides waking up to the rooster's crow school was something to look forward too in a very non-pitiful way. I've always appreciated the enthusiasm brought to the classroom by the teachers who were probably grading papers until 2:00 am and changing their child's diapers around  4. Anyways, I'm not sure if it was just the staff in the science department or my grandfather's chemical engineering genes(yes, that's a real thing) that triggered  a love for all things math and science, but it was truly invigorating to learn quantum mechanics in chemistry, differential equations in calculus, and most of all bread boarding and  soldering in Digital Electronics. This passion prompted me to take AP Computer Science my junior year having skipped Computer Science I and II. I felt on top of the world after completing my CompTIA A+ training as an information technology intern the summer prior to junior year. I knew the ins and outs of hardware, as well as learned desktop cleaning tricks, and most importantly client etiquette when replacing PCs.
I walked into the first day of class, saw familiar faces around the room. The introductory topics were conversions from binary to hexadecmial and  octadecimal, as well as logic (AND && and OR ||). As I spent my entire sophomore year refining those skills in Digital Electronics, I took the quiz and got a 100 with ease. That also happened to be not only one of the only hundreds I received that quarter, but also one of the few passing grades for the weeks to come. I am the type of person that does corrections on anything that is a 95 or lower, so this downturn came as a shock. The more hours I would put in, face glued to the Blue Pelican online textbook teaching me how to write java in blue jay and in codingbats the more my scores plummeted.

70, 65, 60, 78.
Although I did quite literally fail a few of the quizzes, it was more than that. I failed at adaptation. I relied too heavily primarily on my seemingly not so innate knack for software, and also failed to study any other way. Computer Science was my first hands on practical application, therefore my typical quick flip of the textbook would not suffice. I needed practice and direction, both of which I also failed to have any knowledge of finding.
75, 58, 65.
So many questions were colliding with my skull that my skull pressure sky rocketed:why was my studying bringing me nowhere? why were all of these programs and books named after winged animals? why were they blue? were bats mammals?


50.

How could a number have so much power over me?
Suffocated. I felt unqualified, and out of place as my peers were receiving 80's and 90's without any studying. Meanwhile, I would spend hours rereading what we learned in class, and my grades were decreasing by an increasingly negative rate. I learned how to solder in 10 minutes, and wire in 5. Lost in a sea of tormenting curly brackets and ruthless semicolons, java syntax, I asked my teacher if  he could set me up with a tutor so that I could gain some sort of footing before the next quiz. He said he no.


50.

I was to come in early for the next few weeks and understand syntactically what was wrong with my code, and how I could improve it. First couple of sessions I managed to bring my 50's up to 65's. Passing. How wonderful.

65.

That is when I started writing code for the new and improved Facebook, after Zucherberg hired me. Okay, maybe I'm being a little too sarcastic, but still increasing my grades by 15 points did not deserve extol nor provide me with any sense of relief.I kept chipping away, showing up to school at 7:00 am everyday.

I realized it was not the grades I was unhappy with--although I wasn't exactly ecstatic about them either--it was the fact that I understood they were an accurate reflection of my mastery of the material. I was frustrated. I enjoy being in control of what I do, and believe hard work should translate into success. My weeks of 3am study sessions had no evident results. The class was centered towards creating your own programs, but the truth was that the programs owned me. I continued to chug along focusing on practicing skill alone and disregarding the new quiz materials.

75, 85, 95.

Soon a 15 point increase turned into a 25 point increase, then 35, and 45.The daunting semi-colons transmuted into writing programs incorporating abstract classes, implementing interfaces, utilizing inheritance, and writing some truly impressive programs including a program that serves the same function as photoshop.

Idiosyncratic as the course was, it gave insight into this idea of "practical application" that was skills based, not straight memorization. This was unlike the typical drone mentality of other courses.

100.
 

Currently, I am learning two other languages simultaneously: python and C++. Java was like learning Spanish, a foreign language but once learned it was, it was easier to learn other languages such as French (Python), and Italian(C++) as they utilize similar stems.
Although I may not go directly into programming, this course did influence my choice as I hope to pursue an engineering field. I consider myself to be a efficient and savy programmer now. There is nothing more rewarding than compiling with out any errors, and having a project run. I am grateful that I learned this skill and will continue to use it over the summer and for years to come. The moral of the story is that bats are mammals; in fact the only mammals that fly. Second moral is that flying squirrels don't fly they just glide. Unlike the flying squirrel, I can't just glide through schools but have to actively flap my wings like a bat. 

I would like to not only fly but rocket my way through chemical engineering.  
Codingbats.
Click here to practice java AP codingbats}

1 comment:

  1. I think coding to me seems way out of my league, but the fact that you can do it so easily is very impressive. You are going places Rubin!

    ReplyDelete