Jump to content

Is Computer Science Hard?

OkLoL
Go to solution Solved by GoodBytes,
20 hours ago, neonfirefox said:

Im applying for a computer science major, and im average in math, how much math is required to become a software engineer or a software developer? Is this major hard to learn?

As a person who recently graduated (last year) in Computer Science, I can tell you that, you can put Computer Science part of the group of hardest degrees. What I mean, is that it isn't something you need to be gifted for graduating, what I mean, is that you need to take it very seriously starting day 1. Depending on your university, and option you take in the program, expect many times have "no life", and just be at university and working 8-9h per day, 7h on a good day. That is of course, if you want good grades, and not marginally passing, and failing courses here and there.

 

There is actually little programing in Computer Science. You have your Java/C++ course.. maybe haskell or F# or other rarely used programming languages, but that is it. Of course you only learn the programming language, there is no: How to develop a Windows application, course, or How to use Visual Studio... etc. Why? because University focuses on you being a researcher, not be in the work field. So, beside Computer Science, (and this adds to the program difficulty), is that you need to do the rest on your own time, including personal projects, that is if you want to stand out for when you apply for a summer interships/job or your first job in your resume. Remember, MANY people just have a CS degree. Why would they pick you over anyone else? So you need something to stand out. Of course, that does not apply if you plan to do a Master degree and phD later on.. in that case, just focus on your academic work, as that is the only thing that matters.

 

The program is filled with "math". Why did I put math in quotes? Because while you have your standard engineering math classes, which may or may not apply to your career depending on what you plan to do, you have other courses that uses the LOGIC side of math. So, it isn't some more calculus or linear algebra classes or what not, but it is the logic side that takes place. You also have LOTS of proofs to make, which will test your deep understanding of the material.

 

I was average on math, but I like math. I made it. You just have to be persistent, and motivated to push yourself continuously. Basically, what I am saying is, that any degree is "easy", if you know what you want to do at the end, if you are interested in it (it is normal to have a few courses you end up not liking), you'll be engaged to learn as you'll have fun, despite the many challenges one can face.

 

That is my advice.

21 minutes ago, Scruffy90 said:

The schools I've been too have changed all the classes they teach over the course of the last few years. And I'm pretty sure that they don't think about learning concurrent languages. That has always been my biggest issue with the schools. For instance in the last year I've learned c++,object oriented Java, SQL, HTML, UNIX shell scripting, and others, and the only ones I see that could be easily used together are HTML, shell, SQL and Java. Im probably going to start a different thread to get everyone's thoughts on the matter. I feel like that's the biggest obstacle even when going to school. I feel unprepared so close to the end of uni.

Once again, university does not prepare you for the work field. The point of University is Research. When you are researcher you do little to no programming.

This is what contributes engineers having a Master degree having a very difficult time for getting a job. In the work place, hiring a junior engineer/developer is a risk. You need to be trained, they expect you to adapt and do whatever it takes for you to do, they hope you didn't lie in your resume or exaggerated, or miss understood a skill, you need to fit in the work environment, and company culture. All these things are evaluated in your job interviews. So, you can answer with perfection any programming questions they throw at you, but if they see your personality won't make you fit with others, they won't consider you. The reverse holds true, as well, of course. So you are a high risk, and over time, as you get experience, that risk diminishes, and therefor your wage increases.

 

Now, if you have a Master degree, and no work experience, then well, you have the following problem added:

 -> You master in a field that doesn't currently match with the job position, which they see that you will probably be not interested in, and not motivated to work in, and therefor not stay long.

 -> You have a master degree, but no experience (or long time since), and that makes you wanting a higher wage, but you are a high risk. So the offered wage might be too low for you, so you might be disinterested, or you'll jump out soon after to another job, with higher wage.

 

Saying that you know C/C++, C#, VB, COBOL, FORTRAN, JavaScript, HTML, CSS, PHP, Perl, punch card binary coding, won't help you much, as while it is nice, unless you have a nice personal project to show and back-up, it doesn't mean much, as they assume you just did the course, and did a silly Hello world program, or some basic calculator, or such. (What is more annoying is that in most companies, they give little value having those personal projects, by the first person looking at your resume: HR, and many companies uses a database to put in your CV in their form on their website, and there is no field for it, but if you are selected, on your second interview, which is usually with an Engineer, NOW you have something to talk about as that person knows).

 

A personal project is sadly not something that is possible at University. It needs to be something that defines you and your interests, and not a project that everyone else has.

So it is a "course" you need to add yourself in your calendar, that is time consuming (because it is), where you do the research work needed, to make your project idea a reality.

Link to comment
Share on other sites

Link to post
Share on other sites

If you are honor student this helps getting a first job... depending on where you apply it can be more valuable than personal project, depending on how HR or the company as a whole sees things.

Link to comment
Share on other sites

Link to post
Share on other sites

24 minutes ago, GoodBytes said:

Once again, university does not prepare you for the work field. The point of University is Research. When you are researcher you do little to no programming.

This is what contributes engineers having a Master degree having a very difficult time for getting a job. In the work place, hiring a junior engineer/developer is a risk. You need to be trained, they expect you to adapt and do whatever it takes for you to do, they hope you didn't lie in your resume or exaggerated, or miss understood a skill, you need to fit in the work environment, and company culture. All these things are evaluated in your job interviews. So, you can answer with perfection any programming questions they throw at you, but if they see your personality won't make you fit with others, they won't consider you. The reverse holds true, as well, of course. So you are a high risk, and over time, as you get experience, that risk diminishes, and therefor your wage increases.

 

Now, if you have a Master degree, and no work experience, then well, you have the following problem added:

 -> You master in a field that doesn't currently match with the job position, which they see that you will probably be not interested in, and not motivated to work in, and therefor not stay long.

 -> You have a master degree, but no experience (or long time since), and that makes you wanting a higher wage, but you are a high risk. So the offered wage might be too low for you, so you might be disinterested, or you'll jump out soon after to another job, with higher wage.

 

Saying that you know C/C++, C#, VB, COBOL, FORTRAN, JavaScript, HTML, CSS, PHP, Perl, punch card binary coding, won't help you much, as while it is nice, unless you have a nice personal project to show and back-up, it doesn't mean much, as they assume you just did the course, and did a silly Hello world program, or some basic calculator, or such. (What is more annoying is that in most companies, they give little value having those personal projects, by the first person looking at your resume: HR, and many companies uses a database to put in your CV in their form on their website, and there is no field for it, but if you are selected, on your second interview, which is usually with an Engineer, NOW you have something to talk about as that person knows).

 

A personal project is sadly not something that is possible at University. It needs to be something that defines you and your interests, and not a project that everyone else has.

So it is a "course" you need to add yourself in your calendar, that is time consuming (because it is), where you do the research work needed, to make your project idea a reality.

 

I figured as much.

 

I have been working on some personal projects since my C++ professor told me that working on a personal project would be the way to getting internships and jobs.

 

I'm going to start another thread soon because I'm fairly certain that I'm not the only person who is having these concerns and questions. I appreciate the info since a lot of this isn't talked about in school, or seemingly anywhere else.

Windows 10 Edu | Asus ROG Strix X570-F Gaming | Ryzen 9 3950x | 4x 16GB G.Skill Trident Z RGB| ROG Strix GeForce® RTX 2080 SUPER™ Advanced edition | Samsung 980 PRO 500GB + Samsung 970 Evo Plus 2TB + 8TB Seagate Barracuda | EVGA Supernova 650 G2 | Alienware AW3418DW + LG 34uc87c + Dell u3419w | Asus Zephyrus G14

Link to comment
Share on other sites

Link to post
Share on other sites

For those in mid/late Computer Science degree:

computer_science_major.png

(for the soon to apply or just started, you'll get it soon enougth).

 

Link to comment
Share on other sites

Link to post
Share on other sites

13 minutes ago, GoodBytes said:

For those in mid/late Computer Science degree:

computer_science_major.png

(for the soon to apply or just started, you'll get it soon enougth).

 

Pretty much what one of my friends told me. "I just like to code."

Edited by Shahnewaz
Quote

The problem is that this is an nVidia product and scoring any nVidia product a "zero" is also highly predictive of the number of nVidia products the reviewer will receive for review in the future.

On 2015-01-28 at 5:24 PM, Victorious Secret said:

Only yours, you don't shitpost on the same level that we can, mainly because this thread is finally dead and should be locked.

On 2016-06-07 at 11:25 PM, patrickjp93 said:

I wasn't wrong. It's extremely rare that I am. I provided sources as well. Different devs can disagree. Further, we now have confirmed discrepancy from Twitter about he use of the pre-release 1080 driver in AMD's demo despite the release 1080 driver having been out a week prior.

On 2016-09-10 at 4:32 PM, Hikaru12 said:

You apparently haven't seen his responses to questions on YouTube. He is very condescending and aggressive in his comments with which there is little justification. He acts totally different in his videos. I don't necessarily care for this content style and there is nothing really unique about him or his channel. His endless dick jokes and toilet humor are annoying as well.

 

 

Link to comment
Share on other sites

Link to post
Share on other sites

22 hours ago, neonfirefox said:

Im applying for a computer science major, and im average in math, how much math is required to become a software engineer or a software developer? Is this major hard to learn?

I currently a full time student myself going for a business degree. I will say this. It comes down to the effort you put in. If you are motivated and put a solid effort in then I would say you will be fine. Many of the basic's may be offered online. I would however leave you will this, start at a Community College first. Why? Because its cheaper. Get all of the courses you need done at a community college and then transfer to a 4 year University. Depending on how motivated you are, some classes might be offered online, however you need to make sure you are giving time to your studies. Im currently unemployed living on my financial aid and what I had saved up from my last job. Why? Because I have 5 classes this time around. So you need to make that decision on if you need to work or not. I would not go full time for any Computer Science degree if you plan on working a full time job. Because College is just like having a job. As @GoodBytes has stated you will possible be on campus for what would be an average work day. So you need to plan your life accordingly. 

I just want to sit back and watch the world burn. 

Link to comment
Share on other sites

Link to post
Share on other sites

I'm going to also agree with @GoodBytes, I'm in my third year of a 4 year course (UK Masters in Comp Sci).

 

Its a very strong idea of "Here is the tools to go and do this" and not "Here is how you go and do this". They don't teach you C++ or Python or whatever, they teach you to program. You don't really want to learn a language, you want to learn the skills that you can then apply to anything and everything, so swapping to a new language is just a case of a syntax swap and making sure you have the small nuances of that specific language down vs other languages.

 

I don't know how relevant this is to you, but I'd also look and see if a placement is possible for you. I know this is a UK thing at least.

I'm going to go and work for a year between my third and fourth years, I'll get trained, experience in both more team working and just general 9-5 work life, and its all stuff that uni can't really teach me. All those advantages and a wage for that year is nice too. 

It comes back to what has been said before, even if you have an amazing First Class Degree or masters, so will everyone applying to the job. I can say "Oh I know C++" on my CV, but being able to say "I know C++, here is 2 projects I've done, and a reference from this placement about it" then its obviously a lot more convincing.

 

Finally, again this could be UK specific but really think what you want to do, and the courses available.

I know that there are at least 3 types of course which are Comp Sci related. ( This is based on my knowledge, so I am a few years in now so it could have changed ish)

 

Pure Comp Sci  - Hell of a lot of maths, theory etc, and programming.

 

IT - Could be under another name, I think some places have it as "Applied Comp Sci". Its Comp Sci without a lot of the theory and maths. Whilst I go and have a lecture on Complexity Theory or something, they'll be having ones on more applied things. For example, first year I had a module called "Mathematics for Computing", whereas they had a module on web design and what not. Really depends, you may want or not want this maths bit.

 

Game Related Course - A course specifically for the game side of programming. I don't know much about this but its more applied to gaming obviously, but in some cases you'll be doing less in-depth things than a pure comp sci course. I did a Computer Graphics module and it was pure C++ since  "We'd be the people writing the engines", whereas the friends I have in game courses are more about using the engines up front, and the theory and maths they learn is the stuff that will help that. Ultimately if you want games maybe this is best for some people, but to me its a bit too specific.

 

Its hard, its tiring and stressful but its so much fun. I may feel half dead writing up my third year report, but damn all the research is interesting and I don't regret doing any of it.

CPU: 6700k GPU: Zotac RTX 2070 S RAM: 16GB 3200MHz  SSD: 2x1TB M.2  Case: DAN Case A4

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×