For me, the first downside from being an ICS student is that the course work doesn't allow for creativity as much as other majors like Art or English. When approaching assignments, my usual process is to lookup how to do certain things rather than just putting my pen or my brush down and just write whatever comes to mind. The second bad thing would be the amount of documentation or reading that is required before using a technology. Until I've used many different tools, like django, flask, or react, I won't be able to intuitively learn them on-the-fly without spending sometime with the documentation. Lastly, the material could be too abstracted sometimes. Learning algorithms or discrete math requires understanding new, theoretical topics that could be unintuitive. In a humanity courses like history, the material you are learning is about often about human interactions that I could imagine to happen. After working through the courses in the ICS program, I hope to get used to these downsides.
1.) The classes offered from the ICS department can be somewhat unpredictable, which makes taking certain classes almost impossible as the time between each offering may be too great.
2.) The ICS program could also benefit from hiring more staff, as there are some classes that are bottlenecks, but there are only a few sections available for these bottleneck classes. Also, more staff could lead to a wider variety of classes being added.
3.) Some class prerequisites could also be updated to make registering for classes easier, since taking AP exams count as a credit for ICS 111. An example is ICS 314, where the prerequisite for the class is a B in both ICS 211 and ICS 111, but ICS 211 has a prerequisite of getting a B in ICS 111. This is redundant and makes registering for certain classes more complex than needed.
Three bad things about being an ICS student
1) You have to buy a laptop. I built a machine learning desktop for $3000 and it broke my bank, but figured it would be useful for school and work. However my teacher requires that we bring laptops to class that are very high-end and so I had to fork out another $1000 for a minimum qualifying laptop, which was put on my credit card.
2) As an ICS student we are sitting a lot. This is very bad for our health. I'm currently battling severe stomach issues because of this and have been to the hospital about 30 time in 2019.
3) It's harder having a full time job for ICS studenst than it is for people in other majors. This is because ICS students have much harder classes and much larger work loads. Most other majors don't have to complete Calculus 2 or Physics 2, which are classes that many ICS students fail because of the difficulty.
1. Not many courses that can help complete focus requirements
2. Not many ICS tutor for tutoring
3. Some ICS courses have limited seating space
1. The physical and mental stress that you will have to encounter and overcome while solving problems. Sometimes you don't know where to even start, or how to ask a question when stumped and you can easily be overwhelmed. It feels worse when someone tries to explain things to you and it is still very difficult to understand.
2. The availability of classes and the time constraints of these classes. Sometimes the only classes that are offered are late in the evening or afternoon and usually, students plan to be at home or work around this time.
3. Knowing which resources to use online and deciding the most effective way to learn is also a challenge because while there is so much information out there, it is easy to be fooled and use the wrong resources, which can lead to ineffective learning.
1) I wish there were more introductory level courses besides the ICS 100 ones for those who are willing to learn
2) Higher frequency on the amount of upper divisional ICS course offerings
3) A better ICS lab or easier access for students who are taking ICS courses
Three bad things about being an ICS student?
These are three ways that the UH's ICS program could improve:
Allow for more credits to be given in an ICS class to help students fast track their educational goals.
Not all projects and assignments are fun, but teaching students how to have fun with doing these things will improve mindset and completion rates.
Being more concerned about students finding their direction. I commonly see fellow classmates switch their track, this could be avoided if more effort was made to show students what they are getting into, plus the work involved.
1. The ICS department could add more opportunities for Freshmen to assimilate into programming easier. While some people come from a background of programming, there are a vast amount of those unaccounted for who have never programmed in their life, and would like to learn. By having either more tutors, or more hands on projects that would help push those students to challenge themselves, students would be forced to become better programmers.
2. More opportunities for undergraduates in Computer Science who are interested in teaching. Whether it be teaching elementary, middle, or high school, I think that being able to teach what you know makes you a better programmer.
3. More requirements for students to be able to create projects in school that can add to their portfolio that shows their growth as a future professional in the field of computer science.
What are three ways that the UH ICS program could improve?
1) One of the major ways that it could improve is by helping students choose a specialization a little more early on. Of course many are just going through the basics needed for the specialization, but I'm already 2 years in and I'm wondering which type of field I wanna get into later on.
2) Better recommendations for which classes to take per semester because although it is well explained through counselors, they don't actually show how difficult a specific class is in comparison with other classes required with it (i.e. ICS 314 with ICS 311).
3) Make the environment feel more social friendly. I know that a lot of the students in this field have trouble with communication and linking with other students, so perhaps more facets for people to meet in and outside the classes.
1. Some professors in the ICS department don't really convey the subject well leaving students with more questions than they started with.
2. Professors already emphasize it, but more emphasis on how much of a foundation the lower division (ex. Discrete Math) courses are to the thought process of programming.
3. It would be nice to have ICS courses with more focus requirements. I found myself in a spot where I have to take a whole bunch of WI's to just meet those requirements when I really want to do more ICS related work.
1. I find that ICS professors often have such extensive knowledge on the subjects they teach, that they sometimes overcomplicate subjects while they explain them. This can leave you very confused.
2. The class availability is sparse, sometimes forcing commuting students to stay on campus for extended periods of time.
3. Stress! My computer science classes are the most stressful out of any other subjects, and they require a lot of time; leaving you with very little time to de-stress.