Computer science

Im starting on computer science at university after this summer.
Is there anything special I should look out for or stay away from?
What are your horror stories?

Other urls found in this thread:

kernel.org/doc/Documentation/CodingStyle
betterexplained.com/articles/swap-two-variables-using-xor/
twitter.com/NSFWRedditVideo

just hope that you're not actually a business major lost in the cs department with over half your class

bump

use large monitors, at least 32 inch, for your work.

dont jerk off to porno, this will decrease your brain function

drive, if you havent started to drive yet, so you can go out and buy the 32 inch monitor

If you can't already, start learning to program

This. If you actually like CS you won't drop out by the 2nd year.

Start programming now. If you're stuck on something read your book or Google, don't just ignore it. Indians smell like curry and BO, avoid classes that are 90% Indian. Don't be stuck-up or pompous and try to outsmart the teacher.

remember you are learning to be used by other people

Have 2 monitors, one portrait, one landscape, this is the most important thing you can do

Make sure you learn to hack mainframes like zero cool, they will quiz you on that movie 9 times a week just to let you know, so watch it.

Prepare for a difficulty curve if you have never programmed before, you will have probably half a year just learning shit like variable types and bullshit easy conditionals and loops, after those you really have to start listening.

Make sure you are prepared for a lifetime of depression too.

>Make sure you are prepared for a lifetime of depression too.
This. The most important skill you need.

>portrait
enjoy you're lack of subpixel rendering

Is there a special reason for monitors at least 32 inches?

don't question the authority, just do it

Work hard, study hard, even the classes that seem like pointless theory with few real applications are worth it. Learn everything, you actually will use it one day.

Also, you're going to think that you have no free time. You do. I look back at college and am amazed at how much gaming and anime watching I did. Enjoy it, but only when your studies are done. I didn't learn how to study until it was almost too late.

Don't get sidetracked by Sup Forums bullshit either. Mac vs. PC, text editor wars, language fanboying, etc. I spent too much time configuring tiling window managers and it almost cost me failing classes.

Also, get an internship in your field for the summer. Some extra $$$ and the experience are great. It also sets you apart from all the classmates who spend their summer flipping burgers or traveling when it comes time for the real job hunt.

If your curriculum of choice is 'theory' heavy (functional programming, complexity theory, algorithms, calculus, etc.), DON'T fuck around regarding study groups and homework: Stay on top of it! It's a lot more like math than 'programming', and you will NOT have fun trying to bang out assignments the night before ;-)

The theory and math classes will be the most important classes, no matter what you think about them when doing them. Take them seriously.

Go to website: inhousepharmacy.vu

Buy estrofem 2mg and spiractin 100

these drugs will help prepare you for your new life as a worthless programmer fuck toy

That sounds really sketchy, I think I'll pass.

Expect shitty Indian professors with accents you can't understand and a lot of self teaching desu

there is a zen koan about the prince who comes to the zen master...

he wants to know all the memes

so the zen master says lets have some tea

and the prince is rich he already has tea so when the master pours him some tea is overflows and spills all over

and the zen master says you cannot into memes go back to lebbid

Gonna get educated so you can get all those jobs out there?

If you can't already program, start learning NOW. The non-retards who don't drop out is majorly people who could already program.

Remember that you are up against people who have been programming for years, and the classes will move very quickly because they can't just cater to the lowest common denominator and allow the people who actually care about CS to be doing trivial shit.

This. Don't go back to whatever minimum wage job you were doing in high school.

>professor speaking with strong foreign accent

Any suggested sites to learn how to program. I went last semester with no prior knowledge and am retaking the class this semester. I found the hardest part to be creating functions. As in "you need a function that pulls every other instance of the letter 'g' and sorts it into one of these three files depending on what letter follows" or some shit like that. Any suggestions on how to learn to get good with things like that, most sites seem to focus on how to use different special words and assignment operators and left me feeling kinda left out when it came to actually building something. Also my professor refuses to let us use pre-made functions in any language if that helps the suggestion at all.

Two things I wish I read a long time ago are:

kernel.org/doc/Documentation/CodingStyle

and cracking the coding interview.

>you need a function that pulls every other instance of the letter 'g' and sorts it into one of these three files depending on what letter follows
write out all the steps you need to solve your problems, then write the functions

example:

1. create count variable initialized to 0
2. read a 'g', if no 'g's are left then you are done
3. check to see if count is even
4. if it's even, then read the next character after 'g', then put it in whatever file
5. if it's odd then do nothing
6. increment count
7. go back to 2

>Don't be stuck-up or pompous and try to outsmart the teacher

This advice is applicable for all situations.

If you've done enough coding, you can come up with the solution pretty quick. This is the only way to become good at it.

What if the instances of 'g' are at an odd position?

then you skip them
since he said he wants every other instance

>See 5
If you're looking for 'g' in odd positions, then swap all instances of 'even' and 'odd'.

>Im starting on computer science at university after this summer.

Unless it's a major university with a highly-respected, rigorous CS program, then you're wasting your time.

Better plans from hardest to easiest:

* Get a real engineering degree. Mech-E or EE.

* Get a mathematics degree. CS is literally babby math.

* Get a linguistics degree. CS minor, or just learn CS on your own.

* Get a business degree with a CS minor. You'll be better prepared to communicate with your superiors, move into management, and start your own business.

* Get a business degree and go into accounting, forget about CS. If you're just "good with computers" then you could easily become the most productive person on your team by actually understanding how to fully use and automate common software.

A CS degree from a no-name university (like mine) is nearly worthless. You could learn pretty much everything useful (structures & algorithms, basic graph theory, not really compilers because that has never been useful aside from understanding edge-case weirdness in C++). Most of the people I graduated alongside were profoundly incompetent. They had virtually zero actual programming experience, and had demonstrated no ability to actually get real work done.

school means literally nothing for CS majors as long as you have a good portfolio

you are making excuses for being shit

This. If Indians and Chinese can do it without speaking English any anybody can do it.

Have a master's degree in cybersecurity, A+ 801 802 C|EH tons of shit and I work writting essays for people in college for about $35,000 ish at this time. I need it certs to get a job pass all of that shit means way more than college. Try to look into learning about bug bounty go to thinkful.com and take their courses in addition to yours. Python is a great thing to start.

Here is my email [email protected] I can send you so many programs or tips on writing an APA format essay as well for your projects if you need help email me thanks

Buy a Mac

avoid any module to do with formal methods. Complete waste of time.

awww mate you are fucked haha.

>school means literally nothing for CS majors as long as you have a good portfolio

You've slightly missed the point.

Knowledge and performance are what matters. The only value in a CS degree is in assuring the employer that you have gone through a rigorous program. The vast majority of CS programs are not, at all. They're mediocre, they cover minimal theory, and they try to be more of a tech school than a computer science program.

The only schools that have any value as indicators are those which are well-known to have a rigorous CS program. Berkeley, Cal-Tech, MIT, Stanford. Probably some others.

>you are making excuses for being shit

1) What compels you to be aggressive and mean spirited like that?

2) How is that even vaguely supported by what I wrote? I'm talking about the actual VALUE of a CS program. If anything, your first sentence agrees with my points.

>1) What compels you to be aggressive and mean spirited like that?

High levels of testosterone and no gf to release it.

you still need the degree, even if it's from a lesser school since companies just throw away resumes from people who are "self taught"

what is your job title and description?

>you still need the degree, even if it's from a lesser school

So get a degree in something that school is competent at teaching. A math degree from a no-name school is more valuable than a CS degree from the same school.

As has been stated already, your demonstrated value will be FAR more important once you get past some HR drone.

> since companies just throw away resumes from people who are "self taught"

Given the number of self-taught people I've worked with, I'm going to say that's not entirely true.

Rate my C averaging function:

void swap(int *x, int *y)
{
int tmp = *x;
*x = *y;
*y = tmp;
}

int average(int x, int y)
{
if (x > y) {
swap(&x, &y);
}

while (x < y) {
x++;
y--;
}

if (x == y) {
return x;
} else {
return y;
}
}

betterexplained.com/articles/swap-two-variables-using-xor/

>Would you really use this?
>No way

What is the original image?

THAT is what you think is wrong with the code?!

>business majors lost in the cs department
holy fuck as a ta for undergrad programming I've never read words more true

Is CIS worthless vs. CS or pretty much the same thing? If I did that + self learning would I be able to do software development or engineering

Also is it too late to learn to program as a Uni freshman?

Do all your programming homework assignments in two languages. If the class is using Java, do them again privately in C++ or scheme or python or whatever. It's a good way to learn things.

Hey, not OP but in a similar situation. I have been programming 6 years and I am about to enter an undergrad program at a good uni (top 20 in the uk iirc).

Basically, I want to go into academia as a career. I like the idea of researching and writing books as well as educating.

Any tips?

so what's the tic-toc for that fucking garbage

the tic-toc?
It should fill out all the necessary forms to change majors.

You have a major advantage by having so much software experience. Supplement it by learning basic logic and proofs. Learn propositional calculus, first order logic, how to do basic proofs, then build up to graph theory, combinatorics, basic number theory and abstract algebra. All this is extremely useful. After you are familiar with proofs move into data structures and algorithms. MIT OCW has a good series on mathematics for computer scientist. Start with those videos and build up your math background

>What are your horror stories?

I graduated top of my class and I am a NEET sitting in my bedroom. No one owes you shit just cause you have a degree.

...

How long do you think that'll take me to do?

oh yeah sorry long day
actually not terrible, took points of for not learning how to use loops.

>not terrible

It's a travesty
What does terrible look like in your world

He thinks Mech or Elec Eng is harder than a maths degree.

Are engineers really this deluded?

what he said is about 3 (undergrad) college courses worth of material. You can study any of those topics at great depth at a graduate level.

I wish I still had access to the course, once the semester is over I'm locked out.
That assignment was like 4 weeks in, I wish i could show you some of the final projects.

start with Mit Math for CS I explained to you.

Other guy is right about it being several semesters worth of topics. Focus on discrete math

In my humble and honest opinion the hardest degree one can undertake is Physics. Apparently the classes on magnetism and electricity are witchcraft.

Thanks anons

>read your book

Not either user, should I read my technical books page by page like a novel or skim for important parts and skip a lot? I've been trying to learn C from K&R and want to know if I miss much skimming or not. Also I'm a slow reader.

My advice? ABC: Always Be Coding.

You will sort of learn to code at university,but like others have mentioned, you should know at least a little bit before starting school. Find a free online python course like code Academy and learn the syntax. If you can consistently construct a for loop in your language of choice, I think you're sitting pretty. Don't get comfortable just learning code from classes, there is an absolute ton of literature put there about programming and programming languages that you could easily self-teach programming without going to school at all. But also don't blow off your classes entirely, especially math and higher level theory courses. Learning the right way to do something, is just as important as learning to do it in the first place

It's just fine to skim your first read-through. I usually skim the first time, and then use the book as a reference for when I have questions later

That's what I suspected, even the intro of K&R has me hanging on pages for some reason.

>Ctrl + F ``math''
>Found 11 instances of ``math''

Sup Forums didn't let you down, OP.

What if two of the numbers are equal

It will still display what the lowest and highest value is, it doesnt matter when it was input.

>gives an opinion about a major he never took

>* Get a business degree with a CS minor. You'll be better prepared to communicate with your superiors, move into management, and start your own business.

Start your own business by getting a business degree? Nothing you learn in school can prepare you to run your own business. I'm not knocking business degrees (I have a master in accountancy and work as a tax accountant) but this line of thinking is silly.

What actually goes on in business majors? I hear people knock them a lot (my grandpa subbed for an MBA professor and was embarrassed by it), but I never knew what they covered aside from basic bookkeeping.

Study hard so you can be replaced by H1B Pajeet slave labour. Eventually the companies will drive the wages for IT staff down to the point where you'd be better off studying burger flipping.

focus on your data structures class. you'll get a job mastering it without knowing other things

>but I never knew what they covered aside from basic bookkeeping.

leadership
business economics
communication & PR
management & corp organization
business law

obviously not 100% of human knowledge in every single one of those areas, but enough to function.

CS isn't the same as programmer

Good luck getting a job James.

What were some of your Sup Forumsuys' first internships?

Will start looking for one since my semester just ended, I really hate being a grocery store cashier.

>Is there anything special I should look out for or stay away from?

get an internship or some form of part-time comp sci job. Talk to professors to build up references for a resume.

also when you reach the optional courses try and expand into the weird fields. for instance I took these courses:
Artifical intelligence
intro to databases
web design
pervasive computing
cyber security

all of which were very eye opening and can lead to great jobs. I thought databases was going to be boring as shit but the project and course content made me want to be a database analyst(I am applying at amazon right now).

so you never know try out the weirder comp sci courses.

also be prepared for operating systems design, finite automata, file system design. Those courses are terrifying.

Honestly a lot of fluff. I have an MBA and I think everything covered was pretty fucking useless. My company loves it though...

>What were some of your Sup Forumsuys' first internships?

never got a real internship but I got a job developing a website for a biology grad student for $10 an hour.

was fun since I used an MVC-framework and developed the entire website from the ground up in PHP.

only problem is the HTML is a little fucked making some pages not visible to the search engines but other than that the website is in great condition and my boss is happy with it.

First internship was a programmer at a big videogame place (think ubisoft, ea, etc)

> intro to databases
If you have a CS degree and can't use databases, shot yourself.
> web design
Everybody can do this.
> Artifical intelligence, cyber security, pervasive computing
l i t e r a l l y meme tier

>If you have a CS degree and can't use databases, shot yourself.

my school doesn't enforce that it's optional.

>l i t e r a l l y meme tier

end yourself you filthy degenerate

There's absolutely nothing wrong with taking an AI class. It's a very fundamental area of CS. I agree on cyber security though.

>thinking a databases course is how to use database
Hello Rajesh.

Remember, an Introduction to Operating Systems class is how to install and use operating systems as well.

stay away from colleges
and universities
and professors

I think I'll just kill myself

Why?

t. Pajeet

as an EE all the math majors I worked with were intimidated by my major, and I was intimidated by theirs. they're roughly equivalent

Don't listen the majority of the advice given here. The job market for software engineers is only growing, having a CS degree will help you get a nice paying job.
Before you start university try your hand at learning how to program something, using something like codeacademy, the free parts are fine, will help you.
Your first language doesn't matter as once you have the basics down its very easy to pick up another one very quickly. That being said I'd try out Python first on the site as the syntax is simple and forgiving and there's lots of support and documentation online.
I'd recommend taking at least Algorithms I and maybe II on coursera (it's free) and it's taught by the writer of the book Algorithms (currently in its 4th edition) which is used by a lot universities for their undergraduate courses, so you'll have some understanding and be ahead of things. The book and course uses Java so learn that a little as you go.
Learn some functional programming, object oriented programming, a little on databases, brush up on your math.
All of this will greatly help you as you'll want to stay ahead of things as much as possible, that way you'll have more free time to do other things.
Make friends with your professors. Make friends with people that have already done the classes you're doing and ask them about what you should be reading, etc.
As you progress through university make sure you sign up to github and create some software as you go to show potential employers later, take internships at companies when offered or go out and get them yourself, it's very important to have some sort of work experience and a portfolio. Put your GitHub on your resume.
Join stackoverflow and start answering some easy questions, employers like to see this. Yes, really. It shows you know some shit and that you're passionate about programming in your free time.

Also, when you go for your interviews read Cracking the Coding Interview which teaches you the types of problems you'll be asked in interviews. It's basically going to you and the interviewer writing algorithms on a whiteboard, do practice with your uni friends with one person being the interviewer and the other the interviewee.

Because I'm honestly not that good at programming, I just finished my first Data Structures class.
There's easily better candidates than me.