I was having my year 1 final exam on 16 to 23 July. It took me another week to prepare some teaching materials for my tutoring session. Now that I have some free time, I thought I’d share my experience in Asia Pacific University’s Computer Science Degree Year 1.

I took 5 core subjects in each semester excluding the Malaysian compulsory subjects.

Semester 1

As the first semester in university, the subjects were mostly introductory.

A screenshot of my Python Programming's assignment
A screenshot of my Python Programming's assignment
  • Python Programming

    This subject was mainly about pseudocodes, flowcharts and basic programming concepts like loops, conditions and functions through Python. The final assignment for this subject was writing a sports management system in Python (text-based program of course).

    However, as I had programming experience prior to taking this subject, I did not learn anything new, nor was the assignment challenging to me. Moreover, the use of pseudocodes and flowcharts in teaching programming seemed pointless and redundant to me. Not to mention pseudocodes and flowcharts were a big part of the assignment! Lastly, instead of any good editors or IDE, Python IDLE was used instead to conduct the lessons and for demonstrating the assignment which gave me a bad experience.

  • Introduction to Management

    This subject was regarding some business and management principles. The textbook used was Management from Pearson. It covers principles like Planning, Organizing, Leading, and Controlling. The assignment of the course was about an analysis on a company (which my group has chosen Tesla) and final assessment was a take home exam with several essay questions.

    Overall, I think this subject is rather interesting and provides good contents. However, I feel like this subject doesn’t fit well into my computer science course. I definitely wonder why Management instead of other essential subjects like Linear Algebra or Calculus.

My Digital Innovation assignment
My Digital Innovation assignment
  • Digital Thinking and Innovation

    This subject introduced me about several technological terms like Internet of Things (IoT), Agile, and more. The assignment for the subject was creating a solution to an existing issue in any of the medical domains.

    Well, frankly speaking, I don’t feel like this subject is necessary on its own. This is because the terms will be covered and taught more properly in other subjects. For example, Machine Learning would be taught in Introduction to AI subject. Again, from my opinion, it would be better if another programming or mathematical subject would be better than this.

Netacad's Packet Tracer was a big part in Introduction to Networking
Netacad's Packet Tracer was a big part in Introduction to Networking
  • Introduction to Networking

    As the name suggested, this subject taught everything about the basics of networking, from IP to MAC to routers and more. This subject was tied closely to Cisco’s textbook and courses. The final assignment was regarding building a complete network for two sites.

    I personally enjoyed this subject a lot. It taught me many important concepts that I still use until now. Furthermore, upon completion, I could even get a certificate from Cisco for free!

  • Operating System and Computer Architecture

    I’ve learned a lot of concepts about computer, operating system and many low level processes from this subject. The textbook I referred to was The Architecture of Computer… (title too long). We had to analyze a hardware model and write a report about it (My group has chosen one of the first personal computers, IBM 5150).

    Despite the subject being a bit dense and slightly boring, I do enjoy this subject very much as well. Nevertheless, the textbook was the most boring textbook I’ve ever read, like totally black and white with little details. Besides, I also enjoyed doing the assignment as my part (software) was quite interesting.

Summary

My first year was neither good nor bad, it was a mix of good subjects and so-so subjects. Nevertheless, most importantly, I’ve learned something new from this semester and to me, it is sufficient. Finally, I managed to get a decent 4.0 for this semester.

Beside those subjects, I was also required to take Hubungan Etnik (Ethnic Relationship) as a supplementary subject (Malaysia’s requirement). Not much comment for this subject, basically just a subject about history.

Semester 2

At the start of semester 2, I decided to take the career track Data Scientist with R from Datacamp. As a result, I kinda slacked off a bit during this semester and didn’t focus as much in the assignment and exam.

Introduction to C Programming's assignment presentation (ignore my stupid face haha)
Introduction to C Programming's assignment presentation (ignore my stupid face haha)
  • Introduction to C Programming

    The second programming subject, mainly about various concepts in C. Beside the basics, there were structs, enums (union wasn’t taught), pointers and linked list. Nevertheless, like Python Programming, extra libraries weren’t taught much. The assignment for the subject was about building a vaccine management system.

    Like Python Programming last semester, I’ve had some experience in C prior to this subject. Nevertheless, I did feel more confident in using some concepts like pointers and memory. However, flowcharts and pseudocodes were included again in the assignment. I don’t really understand why would my university care about both of those.

My prototype for System Analysis and Design subject. Honestly, I'm improving my web design skill more than whatever I'm supposed to learn from this subject.
My prototype for System Analysis and Design subject. Honestly, I'm improving my web design skill more than whatever I'm supposed to learn from this subject.
  • System Analysis and Design

    This was mainly an analysis subject focusing on planning and analyzing. Through this subject, I was exposed to several methods like waterfall, agile and software development life cycle. The assignment for this subject was going through a software development cycle, from planning up to design phase.

    Let’s just say that I’m not very fascinated by this subject. I didn’t even like it! However, one fact that I can’t deny is that whatever I got from this subject are very practical. This became true especially when teaming up with people to undertake a project.

Nutribot, my assignment for Introduction to AI.
Nutribot, my assignment for Introduction to AI.
  • Introduction to Artifical Intelligence

    This was a rather interesting subject. It taught about some terminologies and basics about artificial intelligence like searching algorithms, machine learning and Prolog. The assignment for this subject was building a chatbot.

    Though sounded interesting, I felt quite disappointed as well. There was no real programming involved in this subject (except some fundamental stuffs in Prolog). Besides, the lecturer expected the student to use some online chatbot tools like chatfuel which I’m not really into. Therefore, as a rebellious student, my group used Python to build the chatbot. Other than that, I’ve actually learned some of the syllabus through CS50AI. Nevertheless, I guess overall this subject is rather decent on its own.

  • Mathematical Concepts for Computing

    This was a very basic mathematics subject covering some number bases, proofs, and some maps. The best thing about it was that there wasn’t any assignment for this subject.

    This subject was rather disappointing to me. I expected calculus or linear algebra but what I got was some basic discrete mathematics stuffs that I learned quite some of it from high school or A levels.

  • Introduction to Database

    On the other hand, this subject is more practical. This subject taught about the usage of SQL and databases. The final assignment was about building a database for an airline system.

    Unluckily for me, I have studied SQL before and this subject did not even teach beyond what I already knew. Nevertheless, content wise, this subject is very practical and will be useful regardless of the domains in computer science.

Summary

The second semester feels less informative to me than the first semester. Many of the contents overlapped with what I have already learned prior to this semester. However, the assignments and materials weren’t as heavy as the first semester, so I had enough time to learn R on my own.

Like first semester, there was a Malaysian subject called Islamic Civilization. Besides, in this semester, the students were required to hold an event. It wasn’t very interesting for me, however, because the event was held online.

Conclusion

I definitely have a mixed feelings about this year. Some good and some bad. However, I believe there’s goods and bads in every university, and Asia Pacific University is one of them. After all, when I graduate, what matters most is that my university is recognized locally as a technology university. Furthermore, as there are many other CS students in my university, this would be beneficial to me as a part of my connections too.

Best subject?

Introduction to Networking is my favourite so far, the only subject I really enjoy studying.

Worst subject?

Digital Thinking and Innovation, I did not know the reason for this subject to be taught to us.