1. Learning something I can use: Not only is computer science something that I'm interested in, I'm hoping to make it my career. In the past few classes that I have taken and am taking now, I have been exposed to different paths I can take in utilizing an ICS degree. All of the professors do a great job in showing the different careers that an ICS student can pursue, and how they can reach that goal.
2. It's interesting: Although the computer is something that I use everyday, there is so much that I don't know about it. Throughout the ICS classes that I have taken, I have gained a better and better understanding of what makes it tick. The courses offered are really interesting and it's very exciting when you learn something you never knew about the thing you use day after day.
I like being a ICS student at UH for a lot of reasons. I'm very happy with my choice, and it's difficult to capture this in three points. But I'll do my best:
1. The ability to get a taste of a wide variety of subjects through computer science.
As more and more subjects of research begin to require specialized software for investigation, us computer science majors get a sample plate of the various topics out there. In my term at UH, I've touched upon bioinformatics, high performance computing, and various psychological topics through artificial intelligence, with more to come!
2. The wide variety of research assistant positions available at UH
I've always been able to find an RA ship for each semester. And the only thing better than an education is a free education!
3. it hones my raw computer science skills
Classes like Advanced Software Architecture allows me to continually refine my raw programming ability!
1. I think that the ICS program has done a good job of informing us of jobs and internships in the community. Gerald has done an excellent job of counseling me and trying to guide me in the right direction. I'm a little nervous about j
2. The ICS program also allowed us to have a joint class with the ACM department to develop games. Really interesting class and self-paced so the responsibility of staying on schedule fell on ourselves.
3. Learning open-source. The ICS dept has exposed me to open source projects and Linux. Using these fundamental tools, I was able to setup my own webserver at home and develop a php/MySQL database that is accessible from anywhere on the internet.
I'm sure all of this has been said before but I believe these are the best reasons to be an ICS student at UH:
1. The classes are challenging but there is always help when needed. I haven't met a ICS teacher or TA that I disliked yet. In almost all of the classes I've taken I have barraged my teachers and TA's with questions and I have never been turned down; without all this help I would have struggled to succeed in this field. The overall quality of teachers and people in the ICS department is great!
2. The amount of skill and knowledge that I've gained is probably the most rewarding thing I've gained from being an ICS student at UH. Starting off as a freshman I had very basic knowledge of programming and web design. The past few years at UH have allowed my to fine tune and further develop my programming skills.
3. I know I mentioned how people in the ICS department are extremely helpful, but a lot of them really care about the students. Gerald Lau for one has been an amazing help throughout my school career at UH; he helped me make my way through the ICS program with ease. Curtis Ikehara, Edo Biagioni, and Henri Casanova are some of the best professors I know and they really take an interest in their students; to me this makes a huge impact on how I learn.
1. Textbooks are often available online in pdf or another digital format. If you know where to look.
2. Computer science, in some aspects, is still a relatively new field. As such, opportunity abounds for those that achieve greatness. Also, it will be around for quite awhile, further securing your future.
1. The undergraduate program is a broad area of study since the ICS program focuses upon theory and its application. I could do programming outside my language translation focus with a little effort since the theory of programming does not vary a great deal between programming languages, just the syntax does.
2. The online courses for the ICS courses are great because usually the actual learning of programming and theory must be done by oneself in the long run. A professor can speak about the theory, but really it takes the student to go read and understand the material to become proficient at ICS theory. The lack of a class meeting time is replaced by a forum post, office hours, or email.
As previously mentioned, MSDNAA is a great resource. I can't image the money that I would have had to spend on software if I didn't have access to it. It's great to be able to pull whatever you need from the shelf, and accessing beta software is a nice plus. This past summer I used MSDNAA to get up to speed on MS Infopath and Sharepoint for my internship. It's been invaluable over the course of my ICS career, and I'll be sad to see it go when I graduate.
2. Great Adviser
Gerald's great, he's always got stories to share, and hes full of insight. Hes really friendly and willing to do a lot of the leg work to get you what you need. Hes experienced, and can help you avoid the pitfalls of ICS. Whenever I go to see Gerald, I come out feeling inspired and re-motivated. ICS can be a tough major to get though, but Gerald really helps you get through it.
3. Spirit of Comradery
ICS classes can be insanely hard, but they say friendships are born out of shared experiences. I've made a lot of friends in ICS simply by sitting in class and talking about how the professor's gone crazy and assigned an impossible problem. It's those moments that make you feel like your not the only one struggling, and help you to get past the culling classes.
1. Access to a good selection of professors from different areas of computer science. I haven't met all the professors, but you can see just by browsing through the people section in the UHM ICS homepage that our department faculty have a fairly diverse background in computer science. If someone has a particular field of interest, these professors are probably the best people to be around and learn how working in that field is or how to get employment there.
2. Very flexible degree requirements, particularly for people on the BA path. I don't think you can find any other degree program at UH that will let you double count up to 12 major credits except in the ICS BA program. Double count meaning those 12 credits counts towards a double major if you choose to do so. This is a good path for people who want to apply computer science towards another field of interest. This can also open you up to another field of employment.
3. The curriculum is planned very well. Based upon what I've seen at career fairs, the ICS curriculum seems to fit well with employers. Not every employer has curriculum specifications on their table. But the ones to do are typically from the federal government. One agency that comes to mind is the NSA. I can't remember specifics, but from their fliers it appeared that ICS students can fulfill recruitment standards with the ICS core and a few electives.
I believe three good things about being a UH ICS student include:
- Being able to learn the discipline of computer science from very smart and capable teachers & teaching assistants. Having to learn the discipline by ourselves could be very daunting. These professionals can also provide insight on our skills and capabilities. This will provide direction for our careers and allow us to strengthen our weaknesses.
- The environment provided to a UH ICS student is decent. Most of my fellow students seem very interested in acquiring computer knowledge & skills. Thus, many of us share the same interests. Also, all those who I have met so far have been fun to be around. In an earlier life, I previously associated myself with many pre-med students during my biology degree. They are a very different type of people than the ICS chaps. The new environment is a breath of fresh air.
- The free software provided by the MSDN is also helpful as the software can be very expensive. Since Microsoft products are ubiquitous, it is to our advantage to learn how to use these applications.