Be comsci student

>be comsci student
>studying algorithms
>have to prove correctness for algorithms
>all algorithms I have to do this for are basically sorting algorithms and shit, which are not used by any software as they are in their pure form

Why people in academics do this bullshit? Aren't they aware there exist much more complex algorithms which would probably take a human months or years to prove correctness for (if that's even possible)
Take a web browser for example, how the fuck can anyone prove correctness for it without going insane? What purpose does this exercise exist for other than jerking off ones PhD encrusted dick?

>Take a web browser for example, how the fuck can anyone prove correctness for it without going insane?
If you can think of a way, let us know.

>What purpose does this exercise exist for other than jerking off ones PhD encrusted dick?
So that maybe someday, you'll think of a way to actually pull this off at large scales.

just fucking do it. take your degree and leave. collect a nice paycheck.

Sorry man, but I'm the kind of person that can't stand not questioning something that looks weird to me

>he fell for the CS meme degree

/sci/ will laughter so hard

Please just take bootcamp and work as web dev, whole Computer Science based on algortihm design

This is just basic mathematical induction, the only nuance to it is selecting the correct set for the induction step, and knowing when to use strong induction.

So you basicly wants to proof correctness for large complex algorithms without first learning how to do it for basic algorithms? Are you the kind of guy whos first project is an OS in C because you don't want to do easy dummy projects to learn the stuff needed for the big projects first?

You are studying computer science, this is the science of understanding how computers function and how they can be used to solve problems.
This involves mathematics in a lot of places and learning some mathematics has to be part of your computer science education.

You aren't studying programming, the goal of the University isn't just to give you valuable skill needed for a job, if you wanted to do that you should have learned a trade, it is an institution of science, where people do research potentially unrelated to all marketable skills.

You learn to prove the correctness of programs, because that is part of computer science, if you didn't want to prove the correctness of computer programs you shouldn't have studied computer science.
It is fine if you don't like it, either take courses which don't involve doing that or drop out, but don't complain that you are doing computer science in a computer science degree.

People would laugh at a mathematics student who refused to solve Integrals by hand, it is an entirely useless skill, but he still has to learn it.

Because silly duck, all the software you're seeing that does not use those algorithms in their pure form were influenced or based on them.
You can expect to change or create these algorithms without understanding how they work and why they work, it goes beyond just understanding the code.
Also, you're doing CS which means one of the main purposes of your degree is research, you can't publish anything without proving why/how it works, that' another reason for this "pointless" exercise.

tl:dr Learn a trade and leave CS for people that actually want to be scientists/professors

Tfw my computer architecture prof is obsessed with sorting algorithms and every assignment is implementing a different one in assembly.

It's a bit shit and really makes me appreciate high level languages but you gotta just do your work man.

>first project is an OS in C
whilst not my first project this type of project helped me understand C more than any other type of tutorial type project

>be compsci minor
>constantly confuse myself with swapping memory and swapping values in memory
I'm fucked

I've been on your situation before, and what I would advise you or anyone reading this is that you should take everything with that is presented to you at your university with a grain of salt, never rely or even trust your teacher or lecturer to tell you what things are useful for, you need to look them up yourself.

Don't know why you're doing "stupid algorithms bullshit"? Duckduckgo is your friend. You shoudn't give a shit about academia and how it works if you don't plan on working on it. Period. Don't waste your time on things you have no control over, it would be much better spent on improving your resume and building personal projects that can really prove what you can do on real life, and as time goes on and you do real work in the real world, you will understand that this retarded shit that you see on university isn't what you thought it were, and you also start to realise how retarded you were for thinking that a guy would help learn things just because he spent about 10 years of his life studying and writing about some topic that isn't even related to what he is "teaching" you.

I don't have time to even stay here so I won't correct any typos

You won't get a nice paycheck just for getting a CS degree, even if you get straight A's at a good school. It's getting saturated fast.

>which are not used by any software as they are in their pure form
Yes, they are. All the fucking time.

Gay.

you learn the basics on easy examples and once you're proficient in these basics you can apply them to increasingly complex problems.

>To be fair, you have to have an extremely high IQ to waste time trying to rationalize the cucked academia

Shut up pajeet

Which assembly language?

How would you go around proving correctness for a large browser if you can't even prove correctness for a sorting algorithm?

By rewriting the browser in Coq of course.

...

Thanks user, also studying Comp Sci and was wondering why an Algorithms class existed.

Suck that I suck at writing proofs though...

I mean that's not wrong, scientists rarely make anything useful, its by definition the job of engineers

While I think you are 100 percent correct, I think the point of OP going to college and getting a Comp Science degree is so he can get a higher pay check later on than if he went to a trade school. It seems hypocritical that you might have more marketable skills, therefore being better at your job, going to a trade school and receive less pay than someone who did some seemingly bullshit studies and is in fact worse at their job. I'm totally open to an explanation as to why I might be wrong, but it's just food for thought.

>just teach yourself bro, employers love people without degrees

Nigga that's nothing. I'm in one class where we spent weeks learning set theory, strings, and state machines. I can barely grasp the point of anything we're learning, and we'll probably never see any code during the course.

this is what a code monkey brainlet looks like

God help future employers if I'm one of the top performing students of the class.

*Block your Path*

They do in IT baby

>Undergrad
>Knowing better than Academia

You think they should teach Newtonian physics with a inverted pendulum to start or a fucking mass-spring dampener? Use your head dickhead, you learn form first principles and you can do a masters or PhD when you've "proven" to the institution you can handle the "basic sorting algorithms"

> set theory, strings, and state machines
> I can barely grasp the point of anything we're learning

That shit's... pretty bare basic compsci stuff. Hopefully you'll look back on this later and see why it makes sense

That banding triggers me

what are theorem provers
what are formal verification frameworks

what are tests (for large hard to prove correct software)

Because academia exists to steal money from people in exchange for credentials.

Literally what I did

>get IT degree take some CS courses, program in free time, learn enough to be self sufficient
>get internship in data engineering
>get hired couple months in
>get good salary right out the gate
>get 35% raise 1 year later

>sorting algorithms aren't used in programs
Look at this literal fucking retard.

Not only the the important part of the class is to teach you about those algorithms and how and when they work.

Unless you're working on retard pages you will use variations of dijkstra and shortest path algorithms, etc..

And it's simple algorithm proofs, how retarded are you?

There is no such thing as proving the correctness of a web browser.

You prove the correctness of the many subcomponents and base algorithms that a web browser relies on. Underlying firmware, drivers, sorting algorithm libraries, etc.
You make sure a library is right so you don't have to patch it 13 years later.

>proving correctness

It works. There, I saved you many hour hours trying to prove that a thing that works is "correct". This is computers, not fucking physics or math where proofs matter a lot. Wanna see if computer shit is correct? It runs as intended. Tell your teachers to shove their self fellating sophistry up their ass.

>it just werks
I'm glad people like you are so prevalent in programming. Literally the best form of job security.

What else do you need? As long as shit runs and works who cares if it is "correct"? Especially since any flaws that exist for hackers or anyone like that would have nothing to do with how "correct" a thing is. Give me a fucking break. In fields like math and science it does matter. But nobody gives a shit if your program is correct. It has nothing to do with security and makes zero difference to the end user. So, I guess you can jerk off pretending anyone cares about what your code looks like or how correct it is. Just make it work and make it secure. I don't care about the rest, you belligerant code monkey.

Can confirm. Use math once in two years for an employment related task.

...

If you have to ask that question you're never going to be successful in the field. The people who are getting jobs are the ones to are passionate about compsci, do side projects, go to clubs, etc. You might be getting a good grade or something within the confines of the class, but when you get into the real work you're going to be a low-paid code monkey because you don't actually know enough other than the baseline.

He's in programming while you're in academia

>computer science
>not about computers
>not a science
What did they mean by this?

>can't stand not questioning something
you're not *questioning* jack shit OP, you're just complaining like a whiny cunt. If you actually want to know why formal verification is useful, read some books on the subject like 'Software Foundations' or 'Certified Programming With Dependent Types'. Otherwise just shut up and do your homework.

>computers are a science
I can't even find a reaction image to express my disgust and the hilarity of this kind of claim. Fuck off, code monkeys. Scientists do real work and you IT niggers sit around in an office all day jerking off or being replaced by pajeets. You are as much of a science as the social sciences.

>doesn't know what computation is
>doesn't know CS is a math discipline
gtfo pajeet

That doesn't sound real

What's the deal with "computer science"? It's not about computers. It's not a science. They should just call it "applied computational theory".

Helps you think about problems better. this course is actually pretty interesting, but you do have to grind through in order to really get what you're trying to do

SURPRISE!!

college is a meme meant to keep niggers from getting high paying jobs and nothing more.

grow up, kid.

Youre a fag

Cool what field

Candidate? Holy shit is this my competition? This cant be real. Is over saturation a meme?

you pay for college smart guy, means you are super smart programmer, qualified for job. Ask a fucking prof faggot, and then lie to yourself that it was worth investment and that you are qualified for programming jobs.

You're fucking retarded. If a web browser is not "correct", it has bugs, some of which may be security holes. It would be absolutely great if at least parts of browsers could be verified for correctness, like the javascript engine, so you could be 100% sure it doesn't have an arbitrary code execution exploit.

>wah wah using my brain hurts, I was told this would be easy I just want to make games wah wah
No, you don't need this if you're just going to be a shitskin codemonkey. For those who actually want to program well this is important - even if you don't use it directly it still trains your brain to think logically.

>work in GIS software on route analysis
>see this

bruh my life is graph traversal algorithms

Get fucked, pajeet. I mentioned security. But if it works then it is correct. You don't have to "prove" that it is correct in any real way. Even in a thing that was 100% proven to be correct there are exploits, that is the nature of the way shit works. You do not need to make up some kind of proof to look at code and see if there are vulnerabilities or if a thing is up to date in being coded properly. You look at it and test it. At what point would a proof of that be useful? It's just computer """""""scientists"""""""" trying to inflate their sense of self importance by pretending they have proofs like the real sciences and mathematics do. Proving whether a thing is correct or not is in no way required to make shit functional, up to date, or free of as many vulnerabilities as possible.

Get off your ass and do real work if you want to be considered a scientist or mathematician.

>b-b-b-but boolean logic
Shut the fuck up, that doesn't make you a scientist. You fucking compsci retards are barely above creationists with your idea of science and math.