Friday, December 09, 2005

Finals finally finished

I hope this was my toughest quarter, because it was really hard. I have basically done nothing but study for the last two months. I have spent every night and every weekend working on homeworks, programming assignments, group projects, reading and preparing for quizzes. I had completely forgotten that school implied so much work! I've been out of school for a very long time, and my brain has adapted to a very different rythm from the one students are used to. (Plus, I must say, that students here are *really* smart!)

So, I've spent the whole quarter trying to get into gear. Developing efficiency, learning to prioritize when getting everything done is not possible, gathering speed when reading course material and taking tests. The first quiz I took was over before I started writing the first problem. I got a 1 out of 10 on that one. But the beginning of the quarter seems like another life already. And I have learned tons since then.

I now know how a computer works, how a processor is designed, know how to put together an arithmetic logic unit out of logical circuits, can write binary code, assembly language and translate from one to the other, and know how to evaluate the performance of a CPU. I know what the operating system does and how, understand the functions of the kernel, know how to handle processes and threads, do priority scheduling and ensure synchronization for multiprogramming with locks, semaphores and condition variables, implement memory management, sharing, paging and virtual memory, understand file systems, disks, protection mechanisms and security policies. I now have a basic idea of programming languages paradigms, the pros and cons of functional, imperative, object oriented and logic programming, I know how to program in C, C++, Python and SML, and I (finally) know how to write an interface in Java, how to implement it and how to extend and inherit from classes. And aside from all this, I now know my way around Linux, how to use emacs and makefiles and how to use CVS in UNIX.

So, I have definitely added to my knowledge, and I am sure these concepts will be very helpful during the rest of my studies. I just wish that learning all this hadn't been such a painful, debilitating experience. But, it's over now (for the moment). I passed my last final yesterday. Now I will have winter break for a month.

No comments: