Today started early for me. As a junior, today was the first day that I could register and pick out my classes for the next semester. The registration opened at 7 am, so to make sure I got a spot in the classes I wanted I had to wake up early and be ready to pounce. I signed up for 5 courses and will be taking 15 credits in the Spring.
I was disappointed because one of the courses I was excited about taking had already been filled, so I was forced to be put on the wait-list. That course was CSE-297 Web Applications, where you learn about how to build web applications using multiple programming languages. It filled up this semester before I was able to register for it in the summer. It’s unfortunate because it’s a temporary course that might not continue to be offered. I can only hope it’ll be offered next year and I’ll be able to sign up for it being I’ll have first dibs having senior standing.
But anyway, the classes I did register for are as follows:
CSE-202 Computer Organization & Architecture – Interaction between low-level computer architectural properties and high-level program behaviors: instruction set design; digital logic and assembly language; processor organization; the memory hierarchy; multicore and GPU architectures; and processor interrupt/exception models.
- I have heard nightmarish stories about this course, so I know it will be difficult and require a lot of time.
CSE-216 Software Engineering – The software lifecycle; lifecycle models; software planning; testing; specification methods; maintenance. Emphasis on team work and large-scale software systems, including oral presentations and written reports.
- This course I am looking forward to because from what I have been told, the entire class works together on one large-scale program. The class is broken down into groups and each group is responsible for a portion of the program. I like this concept because it is similar to how projects in companies are done.
CSE-340 Design and Analysis of Algorithms – Algorithms for searching, sorting, manipulating graphs and trees, finding shortest paths and minimum spanning trees, scheduling tasks, etc.: proofs of their correctness and analysis of their asymptotic runtime and memory demands. Designing algorithms: recursion, divide-and-conquer, greediness, dynamic programming. Limits on algorithm efficiency using elementary NP-completeness theory.
- This is one of the required courses to be completed as a CSE major. This course sounds difficult as it is a lot of proofs and is ultimately a mathematics course concentrated from the computer science aspect, however, it will be very useful.
CSE-241 Database Systems and Applications – Design of large databases: Integration of databases and applications using SQL and JDBC; transaction processing; performance tuning; data mining and data warehouses.
- This is the course I decided to take as an elective after I found out CSE-297 Web Applications was full. This course interests me and I am looking forward to taking it.
MATH-231 Probability and Statistics – This is a math course that is required to take and to quote Forrest Gump, “That’s all I really have to say about that.”
This Spring semester seems like a challenging and daunting one, but I am looking forward to it and the classes I’ll be taking, regardless of how difficult they may be.