Why the F U C K is this bullshit in my CS major?

What's the fucking point differential equations are bunch of lines and curves why would a real life programmer need to know this crap???

Attached: [email protected] (1030x1060, 182K)

Other urls found in this thread:

www-wp.maths.cam.ac.uk/documents/part-iii_advanced-financial-models.pdf/
twitter.com/SFWRedditGifs

youre either not gonna make it or you're gonna be a webdev 200k starting

There's literally 0 differential equations in webdev I swear

yeah that's what I mean. it's useful for some fields (that pay a lot) but you can do webdev and get paid a lot and not need to know any real math/cs

I'm specialising in OSs, kernels, compilers. Now they want me to do this crap.

Op you're such a brainlet

my advice to you is to keep your mind open and try to learn as much as you can while you're young.

very soon (your late 20s) you won't be able to keep up. who knows, this stuff might come in handy down the road.

Your CS major requires you to use nonfree matlab?

Yeah ass opposed to what anyways

I fucking HATE this shit I have to plot a harmony oscillator and resonance and shit like that. What is that even. God fuckign damnit

maple is infinitely superior

Do you know Computer Science is the study of theory of computation and the practice of designing software systems. Computer Science is NOT just teaching you how to be a code monkey. Go pay for a boot camp run by Pajeet and Pajeeta to learn how to use Java libraries.

squiggly lines and curves have nothing to do with computation and software systems. diff. eq. have nothing to do with programming.

that stuff is fun, shit taste detected

This is funny because I also had to take that class.
At first I thought it was going to be cool but then it turned into just doing toy problems with matlab and a lot of math stuff on paper without even programming and I was getting so pissed and demoralized. I kept at it thought and ended up getting through it.

CHECKED AND BASED

delet these quads

Attached: knowpeacebate.jpg (500x574, 166K)

No reason for shitlab. There are better python libs for free for everything matlab does.

MATLAB has made deals with the university and we're only allowed to use that specific variant of crapheap

Mathfag here.
Differential equations (partial ones especially) is the tool that you use to model the behaviour of almost all kinds of systems that are not static.
Weather, stocks, mechanical systems, proteins, biological and natural phenomena, populations, etc.

However very, very few differential equations can be solved analytically (I.e. with a “clean” formula as the solution), with the current mathematical tools. To oaraograse a famous quote, splitting differential equations between “solvable” and “not solvable” is like splitting the universe between “bananas” and “not bananas”.

*However*, there are numerical methods that approximate the solutions to those “hard” equations to any desired accuracy. And this is what everyone does, and where matlab that you used as OP excels at. But with any numerical method implemented in a *computer*, especially one involving tons of operations, you have to deal with numerical errors. Errors derived from the way computers work and the conversion to binary numbers. These errors are exacerbated when the number of operations increases a lot, at some point the result is useless.

So to answer your question, as a programmer you have to be aware of those things, so as not to do stupid shit that will give gibberish as a result.
If you’re unfamiliar with it, you might say “oh, I can set an accuracy parameter, and I want better accuracy, so i’ll Set it to 0.01% instead of 0.1%”. And you’ll get *worse* accuracy as a result.
Because if you know how approximations to differential equations equations work, you know that to increase accuracy, you vastly increase the number of operations (usually exponentially). So when those are performed in a computer, you really exacerbate the numerical errors, and after some point the result is not just less accurate, but useless; even though you increased the accuracy parameter in your algorithm/script.

(Cont.)

uuuuuggggghhhhhhhh

>uuuuuggggghhhhhhhh
Jesus the absolute state of modern programmers

Attached: vO7lRZ7.png (621x702, 56K)

(Cont.)

Similarly you might be asked to model a chaotic system, I.e. a system whose behaviour is described by diff equations where a *small* change in the initial parameters *vastly* changes the behaviour of the system down the line.
Knowing this, you can set some set up some disclaimers how after some timepoint, prediction is completely inaccurate, or even better, restrict your software from even attempting it, preventing your employer from using it wrongly. And also emphasise the sensitivity/importance of accurate initial conditions. If you know that initial conditions can not be measured with the required accuracy, you can restrict even further the timeline for which your software provides predictions, again, from preventing people from using it wrongly.
Very real and practical examples of that are the stock markets and weather forecasts.


And of course lastly, there’s the educational and problem solving aspect.
When you’re familiar with differential equations, you can recognise when a problem requires the use of those and all the related tools to be solved properly, instead of trying to reinvent the wheel.

Sorry you're too stupid to comprehend math and computers

Shut the fuck up nerd

Some fields i.e. R&D and some defense industry jobs use MATLAB. I'd get familiar with it but don't get discouraged if you have to use it for school. You most likely won't use it for work unless you work in said fields.

based yet moderately brainletpilled

What does the defense industry use matlab for????

>those digits
I guess he shut our trap user

Attached: NO-BULLY-ZONE.png (1710x1668, 66K)

Anything involving physics for example (there's many many uses for it). Keep in mind these types of projects have hundreds of people working on different parts.
t. defense industry worker, have never touched matlab in my life.

meant to quote

For quick prototyping.
It has a vast number of packages that just work, and the syntax is standardised, so you don’t have to learn the syntax of every library or script you use in Python. This speeds up things quite a lot for *prototyping*. Also, far less chanche of encountering bugs due to a new lib version or a shared dependency to that lib that got updated and changed its behaviour.

When more performance is required for the final product, you might switch to python.
And when absolute performance is required with huge data sets to be crunched, even FORTRAN.
(Even though lots of python code calls FORTRAN functions anyway).

What, I thought everything is written in specialised minimalistic C++

During prototyping, nothing, ever, is written in C++.

For final products, could be. It doesn’t mater much though what the logic will be written in, since there will be calls to other languages anyway to do the actual data crunching.
What’s shocking to most people entering the industry is how much FORTRAN is still used. Cause everyone expects it to be a dead language like COBOL.

Also, in the situations that you have to use something minimal and a C variant, it’s usually SystemC for embedded, which is a wholly different beast.

I don't understand, why is fortran used? Does it even have optimising compilers? Does it even work?

Yes.
It’s the fastest option for data crunching.
Minimal gains for small amount of data, noticeable gains for huge amount of data.

When huge matrices and operation on then are involved, FORTRAN is the fastest.

>I'm specializing in gentoo

This

You pleb.

not gonna make it

>neural networks literally everywhere
>differential equations have nothing to do with programming

kek
he's right tho

Show me where differential equations are used in the Linux kernel.

sounds good. """coders""" will shit all over it anyway.

Show me a kernel developer that doesn't know how to solve a differential equation.

Good job deflecting the question. I'm sure there are plenty of them. Why would a kernel developer need to know how to solve differential equations?

>What's the fucking point differential equations are bunch of lines and curves why would a real life programmer need to know this crap???

Because you also learn Fourier Series and Laplace Transforms which are useful.

>and people wonder why CS majors are utter shit in math classes

>ass opposed to what anyways
Julia or Octave
the real answer though is that any scientific computing curriculum worth its salt would have you implement all of the major things people use Matlab for by hand so that you can actually understand how it works
the problem is that this requires brainlets to actually understand both mathematics and programming, so it's reserved for applied mathematicians while the CS majors (and even grad students, sadly) basically act as code-monkeys using plug-n-chug pre-built formulas and libraries while learning absolutely nothing useful

t. math+CS undergrad, now PhD in CS working in high-performance computing and scientific computing

ρε γιαννη εδω πεθαινουμε να περασουμε την αριθμητιkη αναλυση kαι αkουω kαι matlab kαι ξερναω

Thanks based math user.

>Good job deflecting the question.
how so? there's correlation between someone who's a kernel developer and someone who can solve differential equations.
>Why would a kernel developer need to know how to solve differential equations?
learning that helps with general problem solving skills which are crucial for someone like a kernel developer.
knowing math is obligatory but it really fucking helps in the long run.

Fortran being faster than something like C++ has been debunked. It's faster for some cases of array access due to column-major element ordering, more often than not being on par or slower. In reality it's just easier to modify old Fortran programs than to engineer your own solutions from the ground up using a language with higher abstractions.

You are retarded. Not even joking.

Good timing, I'm about to take this class so I have a question. What are the odds I can get through the matlab course using octave instead? I'm linux only and don't want to deal with wine if I don't have to.

Attached: 1538209264641.png (1280x732, 255K)

>going to school
retard

Depends. Matlab toolboxes are the ones that are really useful, if your course is about that, just pirate Matlab for Linux. If not, go with Octave or Python with Scipy.

>stocks
Besides just the Black Scholes model, and stochastic calculus used to solve sde's on the sell-side, do differential equations show up anywhere else?

Asking as a brainlet quant who's trying to make it.

Because the whole point of a bachelor's degree is to give you some generalized knowledge of the field.
That includes the areas you like and the ones you don't.

So while areas you may like maybe don't use DEs, plenty of others do, hence why you need to know it.

Honestly, I feel bad about pirating these days, but just find one of the completely up-to-date Matlab torrents that are around if you really need some package's functionalities.

Mathlets are a special kind of scum

I'm in differential equations right now. Not only is it easy for anyone with calculus experience, it's also kind of fun. You're just a fucking moron codemonkey.

compare fortran readability to the obscenity of the same programs in sepples

Just pirate matlab for linux if you can, I'd advise against octave, it's really not even close with matlab these days and horrendously slow, even though matlab isn't the greatest thing in speed, octave is even worse.
Also matlab does have some neat features like converting your code to C or C++ automagically, so you can give machine generated hell code to programmers who have to deal with your code kek

Simulations. If you want to go to aeronautical industry, you will have to do a ton of simulations. If you're actually good, you can go for simulations software development.

>There are better python libs for free for everything matlab does.

wrong

It's widely used in the sciences too, in the physics department you'd literally have physics professors tell you learn it for scientific computing if not directly taught in a class.

Μια απ'τα ίδια...

For big arrays and matrices computing, Fortran is the best. That's why Scipy is good even when Python being ultra slow, the backend is optimized in Fortran.

There are more accurate and general models, and it's used in those. It's the same rationale, you make some assumptions on your brownian-motion-like system, and you derive a model, for those assumptions/parameters you set. There's lots of competing models, with their pros and cons, many parameters being trade secrets. (The science is not a trade secret of course, but the parameters you painstakingly come up with so that the diff-eq derived model is more accurate than your competitor's, are).

Nobody actually uses the stock, original Black-Scholes model to do business anymore.

nice get, but something close source even if it is well documented will never be relevant :/

>few years ago teacher askd me code in matlab
>sent a code in matlab, one in C, in Fortran and in Pyhton(idk why I did this one)
>teacher ignore other language
>best grade at final exam anyway :D
Math, in particular logic and probability are great tools for a programmer/software engineers
If I can remind you, the more you know the better, and yes during your studies you ll learn more stuff than you ll need.

If you compare learning a computer language as a real language
Then learning Matlab is like being able to know and understand what other ppl do from a completely different field.
(like
said for science and engineering application).
Is it a good or a bad thing idk to know what others do ?

Yeah, I knew Black Scholes is a dinosaur in its simplicity. Any books you would recommend on how to make more advanced sde models? I'm stuck trying to get the theory, and I just want an intuitive guide to it.

> why would a real life programmer need to know this crap???
You don't, but the university needs your tuition dollars to keep worthless academics employed and off the dole.

I ended up just buying the student version, I wasn't aware matlab just werks on linux.

All the math and science software just werks on linux since it's probably the most used OS in the area.
Things like CERNLIB might as well be linux only.

>What's the fucking point differential equations are bunch of lines and curves why would a real life programmer need to know this crap???
please kys

Sorry man, I didn't carry on in that area, I started a masters and took the Algebra+Geometry track, so I don't know of any good materials.
Usually, Cambridge's lecture notes have tons of examples. If you can find the notes for this class (or any of the suggested literature in libgen), you're golden:
>www-wp.maths.cam.ac.uk/documents/part-iii_advanced-financial-models.pdf/

Because the major is "computer science", not "computer programming".

Math is not a science

You just cant make it through modern engineering if you cant use matlab.

bump

in America they call IT computer science. It gets /sci/ all fucked up

In the USA they call many trash diploma mills colleges and universities and they let them issue academic degrees.

After what I've seen I pretty much trust actual Indian degrees more unless I recognize the name as not a diploma mill.

ITT: brainlets who can't open up a book for five minutes to learn how to solve a problem. If you hate problem solving, why in the everloving mother of fuck would you want to be a programmer? Hell. I'm a math major because I hate computers. The fucks wrong with yall?
Math is applied science, and considering it's the greatest way of proving objective statements, it's safe to say you cannot have science without math.

Attached: 1546932654910.jpg (1125x1417, 456K)

Thanks user. There's always something interesting new to learn about coding and why we use particular tools or do things in particular ways.
I really need to improve my math areas.

>not the proof is obvious and left to the reader :)

Attached: externalscreaming.jpg (519x447, 40K)

This.
If it weren't proprietary I'd use matlab for everything.

If you're in CS and can't pick up matlab on a whim you're fucking retarded.

You're even more retarded if you don't understand why Matlab is useful to know. (even though literally everyone hates it, including myself.)

Maths is applied logic, and Science uses maths as a language to communicate the behavior of systems.

based greekbro

>About to finish my B.S. in computer science
>Never had to use Matlab for anything
>Only worked with Java, Python, and C
>Been an intern for the past year and only been using Javascript
>Have a position lined up already once I graduate
I have mixed feelings about my current situation. I feel that my major didn't teach enough yet I don't really need much more than that because on the job training will cover whatever I'll need.

In CS this stuff is primarily a brainlet filter and it looks like it's working.

>diff. eq. have nothing to do with programming.

The vast majority of differential equations encountered in reality can't be solved analytically (pencil & paper) - they're solved numerically.

Learning how a computer solves DEs is really interesting, and it is absolutely mandatory if you want to develop really cool stuff like computational fluid dynamics codes, or quantum mechanics codes, or pretty much any computational model of real world processes.

I work in this field, and one of the huge problems we have is that while there are tons of people who understand physics, and tons of people who are really good at programming, there are very few people who can e.g. write a numerical solver for the Schrodinger equation, much less write one for more advanced QM models on GPUs, which is something we really need. The cool thing about understanding how to solve diff eqs on computers is that once you know how to do it for one particular diff eq, it's really not hard to do it for any diff eq.

what did you expect nerd

Though let me add, Matlab is a fucking piece of shit and the only reason I use it is because of legacy codes at work. Anything you can do in Matlab you can do better in Python (using e.g. numPy) and C for optimizing any slow parts.

This. I work in signal processing... my career took off when I realized the theoretical folks only knew how to MATLAB a solution, and even then suboptimally. Being able to numerically process PDEs and ODEs one step above MATLAB tier is responsible for about 30% of my 150k/year at age 28.

this is a really stupid argument.

>Laplace Transforms
cause I really need to know how to determine the composition of interstellar planets when I'm writing javascript

t. 30k codemonkey

Matlab has been one of the most useful tools I own because it's more than just a tool for making curves. It's essentially a scripting engine for large-scale math operations.

You need a sparse data equation? Matlab can do that.
You need to analyze a 3D matrix and compare it to a hundred other examples? Matlab can do that.
You need to make a quick and effective Neural Network in under a few minutes that can analyze thousands of samples and provide a best-case sort between a million more samples, and even spit out a linear equation that is bisected to the best tolerance that you can just drop into your program? Matlab can do that.

Matlab has been, unironically, one of the most helpful tools as a software engineer I've ever encountered. The learning curve was steep, but it was worth it.

Now Simulink, THAT shit I never understood.

Oh and most useful I've found: Large sparse data structures. Do you want to make one that doesn't take ten gigabytes? Matlab can simplify it for you.

Plus it reads every scientific file extension under the sun.