Tuesday, May 22

End of the Year

This is Tuesday; in one week and a day the school year will be over. We only have class tomorrow and Friday. Summer's almost here; it's kind of exciting. Also kind of disappointing, in a way.

Early this year, we were playing with single Java methods. Our class learned the language from variables to classes; inheritance and interfaces. Personally, I didn't like it that much, knowing just about everything already. The AP exam, however, was surprising.

It was supposed to be a class on computer science, and the exam was supposed to test our grasp of it all. Yet we were just taught Java, and that's what the test was on. I wonder, though, if that's what computer science is supposed to be?

Every time I have that notion, however, I remember everything else. One day we were taught sorting and searching methods. Others, we had to figure out how to program something; it was a step forwards. That was the second, free response part of the AP exam. Better.

My only real regret with the entire class is that we rarely made anything useful. I've been working on assignments on my own the whole year, and I can say that some of these things I could use again. In school? A few methods, good for libraries, and maybe a Pong game replica.

With all that said, computer science class was good for time for programming those things that did have some use. At the beginning of the year, I started reading the "Elements of Computing Systems" book; I know how they work, now. Later, I started (and finished!) a simple raytracer and then a raycaster; I seem to be making a habit of trying out different 3D rendering methods by implementing them myself. Therefore, I now know what these programs do behind the scenes, as they say, and hold them in great respect. That's probably much more than most people I know.

Finally, just a week or two ago, I began a CAD program. I thought I needed to make one myself, since, SolidWorks, a 3D package, is very good and I'm used to using it here at school, but even the student one year version costs $100. A professional license is in the thousands. At home, I wanted something easy that could hold quite a few features; I'm getting along very well.


From rectangles last week, I can create points, lines, quadrilaterals, other polygons, and circles, and with ease. I plan to add a constraint system so that I can provide dimensions and relationships between elements. In short, it's probably the best thing that I've every made. That's the legacy of this class.