This week I've begun the final semester at the University of Utah! Part of me is excited to be finished with school, but part of me is sad. I've had some great classes, and I've had interesting electives, but there's other electives I'd like to take that I won't have a chance to, such as Natural Language Processing, Compilers, Advanced Algorithms, Machine Learning, Artificial Intelligence, etc... I've contemplated pursuing my Master's Degree and taking these courses. I know that I'll probably get exposure to these topics in my professional career, and I don't have to be enrolled in the University to learn any particular subject!
While I am infected with the infamous "senior-itis", I chose a particularly difficult final semester. Thus far in my schooling career, I've taken electives that focus on application building. I enjoy developing software. When I started this major, I wanted to know how to make websites, desktop applications, and mobile apps. For the first year and a half, I felt like I didn't know how build anything that would be useful in the real world. I was unsatisfied. Then I started taking electives that bridged the abstract programming skills I learned into creating real world applications. In my Databases class, I created a robust website to manage a bookstore. In my Web Software Architecture course, we learned how to create complex websites from scratch. I designed and implemented my own multi-user Android App, that utilized a REST API that I created myself. It was a great feeling, knowing that I could create applications that could be useful and help people!
Our Undergraduate Adviser discouraged people from taking courses that I just described. He said that all you learned from those courses was how to program, and you can learn how to program at any job. Ironically he's the instructor for the Web Software Architecture course. He emphasized the need to take classes that were more low-level, and more involved with math. He said that that was the difference between a mere programmer, and a computer scientist. I don't agree 100% but, now that I feel comfortable in the different facets of software development, the more inclined I find myself towards wanting to learn more about the low-level layers, and math based stuff.
I've chosen to take Data-Mining and Computer Vision to finish up my schooling career. They're both heavily involved with Linear Algebra, Discrete Math, Probability, Statistics and 3D Calculus. It's going to be a challenge, but I want to step outside my comfort zone and learn more about these topics. I feel like data-mining is essential in the world of big data. I don't see the amount of generated data decreasing any time soon. Also image recognition is going to be very important as the world immerses itself deeper and deeper into a digital era.
Go Utes!
No comments:
Post a Comment