10 Math Concepts for Programmers

  Переглядів 1,730,877

Fireship

Fireship

День тому

Learn 10 essential math concepts for software engineering and technical interviews. Understand how programmers use mathematics in fields like AI, game dev, crypto, machine learning, and more.
#math #programming #top10
💬 Chat with Me on Discord
/ discord
🔗 Resources
Computer Science 101 • 100+ Computer Science ...
Cryptography for Developers • 7 Cryptography Concept...
Technical Interview Prep • How to NOT Fail a Tech...
📚 Chapters
🔥 Get More Content - Upgrade to PRO
Upgrade at fireship.io/pro
Use code YT25 for 25% off PRO access
🎨 My Editor Settings
- Atom One Dark
- vscode-icons
- Fira Code Font
🔖 Topics Covered
- Do programmers need math?
- Math tutorial for programming
- Machine learning math
- Do computer hackers use math?
- Linear algebra for programmers
- Boolean Algebra explained
- Combinatorics explained
- How does Big-O notation work

КОМЕНТАРІ: 2 200
@thecow7273
@thecow7273 Рік тому
Mathematics are the result of mysterious powers that nobody understands, and which the unconscious recognition of beauty must play an important part. Out of an infinity of designs, a mathematician chooses one pattern for beauty's sake and brings it down to earth.
@ceneo12
@ceneo12 Рік тому
congrats I guess, how you so fast I only got half way through
@ApplePi1
@ApplePi1 Рік тому
God damn it.
@Fireship
@Fireship Рік тому
That was quick! Email me from this account at hello@fireship.io with your size & shipping details.
@arczi1537
@arczi1537 Рік тому
wow, that's fast
@daskampffredchen9242
@daskampffredchen9242 Рік тому
Was it just using Base64 for the Text between topics?
@yadneshkhode3091
@yadneshkhode3091 Рік тому
1. Boolean algebra 2. Numeral systems 3. Floating points 4. Logarithms 5. Set Theory 6. Combinatorics 7. Graph Theory 8. Complexity Theory 9. Statistics 10. Linear Algebra Interestingly i learned all of these in college but barely remember anything.
@Rawi888
@Rawi888 Рік тому
I’m learning them in college right now and I legitimately want to forget it all.
@testolog
@testolog Рік тому
Same, but I remeber how to work with matrix, but don't know how to calculate complexity)
@midahe5548
@midahe5548 Рік тому
@@Rawi888 and when you will need them, you will hate the you from today that wanted to forget it :)
@Snbd26th
@Snbd26th Рік тому
Same here
@SamehMustafa007
@SamehMustafa007 Рік тому
Truth, Barely remember anything🫨, how I wish to return all this again and study it 🤯.
@chris-pee
@chris-pee Рік тому
Small correction: the Big O notation doesn't specify how fast something is. A constant time complexity of O(1) doesn't mean that the operation/algorithm is fast, but that the speed is constant as the input scales. As a consequence, an O(n^2) algo can be faster than an O(n) algo, for some range of small inputs.
@pawer122
@pawer122 Рік тому
Besides this notation is overly used and too often big theta and big omega notations are omitted. Big O is the worst case scenario complexity, it does not make much sense for algorithms which don't do conditional breaks and skips inside a loop.
@markpeschel8958
@markpeschel8958 Рік тому
@@pawer122 That's not quite true. You're right that O(f) is an imprecise "worst case" complexity, but not because some algorithms can skip conditionals or loops. O(f(n)) means precisely "the set of all functions g(n) such that there exist some constants c and n0 such that, for all n >= n0, f(n)
@Daniel_WR_Hart
@Daniel_WR_Hart Рік тому
@@markpeschel8958 there is also little o and little omega notation to consider
@aintaintaword666
@aintaintaword666 Рік тому
O(n^2) can be faster than O(n) only if you manage to find a way to run the program for zero point something times
@chris-pee
@chris-pee Рік тому
@@aintaintaword666 Absolutely wrong
@Chiaros
@Chiaros 7 місяців тому
Dude, your examples are so much better than anything we ever got at school. I kinda wanna become a teacher just to be as good as you one day.
@stayhungry1503
@stayhungry1503 4 місяці тому
whats the point? within 1-2 years AI will outperform us in every way possible.
@beatre
@beatre 4 місяці тому
@@stayhungry1503 maybe some people will still prefer human teachers, and maybe the whole point of doing something we want is self satisfaction
@babelboy-akababz2889
@babelboy-akababz2889 4 місяці тому
Fuckin ayyye. Let machines do the work whilst we do what we actually want to do. @@beatre
@attmultimedia67
@attmultimedia67 Рік тому
As a Asian Student, I can confirm you that we have learned all those math without knowing any use of it. 🙂
@thatsalot3577
@thatsalot3577 Рік тому
Yeah because we have sh*t ton of entrance exams to crack
@n0madfernan257
@n0madfernan257 Рік тому
yes, the teacher just teach them without no real world use case scenarios.
@patelmalavdev
@patelmalavdev Рік тому
+1
@hust_sami_slave
@hust_sami_slave Рік тому
me learning all those subject in college then forgot all in lightspeed when the semester end
@piyushpanpaliya
@piyushpanpaliya Рік тому
+1
@bekakilov9656
@bekakilov9656 Рік тому
In my opinion the most important math class for programmers is discrete mathematics. They helped me understand recursion and stuff like that mathematically
@TwitchCronos100
@TwitchCronos100 Рік тому
True, discrete maths was the only class I actually found enjoyable back in the day, and after school I went into programming.
@roberleyrodrigues9769
@roberleyrodrigues9769 Рік тому
@@TwitchCronos100 you guys are crazy, that shit made me leave my university course
@pattytheratty
@pattytheratty Рік тому
@@roberleyrodrigues9769 discrete math was my favorite math class ive taken 💀and I hate math, linear algebra was fucked. Probably because my discrete prof was a real G
@omarabdulla1296
@omarabdulla1296 Рік тому
@@roberleyrodrigues9769I wanna drop discrete math too
@nielsholmlassen8275
@nielsholmlassen8275 Рік тому
Programming is just recursion a lot of the time, so I think it's the most important concept for programming.
@codingphysics695
@codingphysics695 Рік тому
More math concepts for programmers: - Modular arithmetic (RSA encryption) - Differential geometry (smooth surfaces and curves) - Lambda calculus (functional programming) - Fourier transformation (image/audio compression & filtering) - Information theory (data compression) - Game theory (artifical intelligence) - Quaternions (computer graphics)
@angeloid_
@angeloid_ 9 місяців тому
OK STOP JUST GIVE ME THE ELECTRIC CHAIR ALREADY 😭
@konstantinsotov6251
@konstantinsotov6251 8 місяців тому
And now for the grand question Where tf do you learn all of that if your school sucks...
@kevintech7457
@kevintech7457 6 місяців тому
​@@konstantinsotov6251 on UKposts brother. Pull out a notebook and pencil. Write down everything like it's a lesson. When you encounter deeper topics within a larger topic, pause that video and go study that thing until you can return to the same video and keep watching with an understanding. Me personally, I'm building computers in minecraft and I've been coming up with a shape identifying algorithm, this forces me to learn what I "need" to know before I can continue it's design In the Minecraft world.
@kevintech7457
@kevintech7457 6 місяців тому
To OP, thanks for noting these other topics.
@justinrivera7674
@justinrivera7674 5 місяців тому
1. Boolean algebra 2. Numeral systems 3. Floating points 4. Logarithms 5. Set Theory 6. Combinatorics 7. Graph Theory 8. Complexity Theory 9. Statistics 10. Linear Algebra
@pneumaofficial9581
@pneumaofficial9581 11 місяців тому
I hated math in school, I avoided learning complex equations and algorithms when first learning to program, but once I saw a few of Sebastian Lagues videos where he does stuff in Unity, and started messing around with equations and learning to translate them from paper to code, I literally began to feel like I'm casting magic. Its so amazing what just a few dependent variables can change
@ChivGmail
@ChivGmail 11 місяців тому
Some people require an actual use case for their brain to be willing to learn something. Which is a shit thing to have in school, but it is what it is.
@Bluemoon_wav
@Bluemoon_wav 11 місяців тому
@@ChivGmailI am that kind of person, also same with math I literally swore to never do math again since high school, here I am happily binge watching math related videos
@ChivGmail
@ChivGmail 11 місяців тому
@@Bluemoon_wav I feel like a lot of interesting subjects are ruined by our current educational system. Our system isn't about learning, it's about seeing how good you are at forcing yourself to remember stuff you're not interested in.
@do_not_at_me_bro
@do_not_at_me_bro 11 місяців тому
​@@ChivGmail I agree. A person cannot simply retain a textbook of information at all times, the amount of information we retain are limited to capacity and how long we can retain that information for. As the environment and times we are in changes, so does our selection of information that we retain in a given place at a given time. The only information we retain is that which is most relevant to our situation and where our attention is focussed. While I am driving, I do not retain the words Shakespeare invented, because that information is not relevant to the situation I am in. When you go to a library to study a subject, you select books that are relevant to what you are studying. Yes all that information is stored in our memory like books in a library, but the point is our brain selects information from that memory that is relevant to the situation a person is in, the time and place and the environment. I could explain on more levels like how the retained information can be compiled to make a plate of decisions to choose from, and how we can assess those decisions before making a judgement which would cause us to do a thing, but I'll leave you with this thought. Humans learn by their own sensemaking.
@iothemighty
@iothemighty 10 місяців тому
Do you have any particular videos you would recommend?
@DK-ox7ze
@DK-ox7ze Рік тому
Please do more such videos on computer science fundamentals. Like how compilers work, how interrupts work, internal working of CPU, network fundamentals, OS fundamentals, etc.
@mrgalaxy396
@mrgalaxy396 Рік тому
Basically a 4 year CS/CE degree in a nutshell series. Great to refresh your memory on certain concepts or to introduce them to someone for the first time so they can go on to dive deeper on their own.
@universaltoons
@universaltoons Рік тому
fireship ruIe 34
@nbme-answers
@nbme-answers Рік тому
These topics are not how fireship got huge. They are important .. fundamental .. but not the primary concern of 2M+ working devs
@blitzedoblivion4280
@blitzedoblivion4280 Рік тому
And data structure
@skyhappy
@skyhappy Рік тому
​@@mrgalaxy396 4 year degrees don't cover this is in much depth, surface level at most, I go to a "top" uni and the professors are not good at teaching and aren't usually experts. Reading a textbook on the topic, or even better, a video course with animations made by a expert is better. Georgia Tech for example has a free online video course on OS that's well made
@Vivek2062
@Vivek2062 Рік тому
In an era of AI related content on this channel, I'm so relaxed to see a normal non-AI video recently!
@Vivek2062
@Vivek2062 Рік тому
@@uqams 😂😂
@Siroitin
@Siroitin Рік тому
All the stuff in this video is important for AI modeling, especially Bayesian statistics but thank god Fireship didn't go any deeper on that subject.
@Yusaq
@Yusaq Рік тому
linear algebira is using for ai
@XDarkGreyX
@XDarkGreyX Рік тому
This kind of comment is getting almost as old as the AI content.
@ogredev
@ogredev Рік тому
Have you tried MathGPT?
@TheEvilWalrusLord
@TheEvilWalrusLord Рік тому
I paused the video in the middle just to say, that was the greatest explanation of logarithmic functions I've ever seen in my entire life, thank you for gracing me with that analogy and visual
@sirplayalot
@sirplayalot 11 місяців тому
Hell yeah man!! That shit clicked instantly... I can believe I used to just memorise this while not really understanding anything..
@kecvu
@kecvu Рік тому
I'm currently studying Graph Theory for a test in the 2nd year of uni. And looking at my future classes everything matches up to what you said in this video! Amazing.
@eliavrad2845
@eliavrad2845 Рік тому
4:10 In math it's more common to use a different base (ln(x)), but it's easy to change by multiplying the result by a factor, so it's not really important if you're working in base 2, 10, or Euler's number.
@ladymercy5275
@ladymercy5275 Рік тому
Log base 2 of x is ln(x)/ln(2). Log base 10 of x is ln(x)/ln(10).
@eliavrad2845
@eliavrad2845 Рік тому
@@ladymercy5275 Yep! and for completeness, ln(x) = log10(x)/Log10(e). This means that an algorithm which is O(n log10(n)) is the same as O(nlog2(n)), because nlog10(n)=nlog2(n)/log2(10), and we ignore any constant factors in O notation O(Cn)==O(n). When we want to look at an algorithm, we can choose whichever base is most convenient, like using logarithms in base 3 to describe a tree with 3 children per node.
@obviouslyblack
@obviouslyblack Рік тому
yeah. base e stuff is MUCH more common in math because it was discovered through math itself and has a ton of beatiful properties built in. base 10 stuff is there for just for convenience of humans who count with 10 fingers and base 2 stuff is convenient for computers that count with on/off switches.
@stonebubbleprivat
@stonebubbleprivat Рік тому
Thanks! We never used base 10 in calculus
@lawrencedoliveiro9104
@lawrencedoliveiro9104 Рік тому
In the Ada programming language, you can write integer literals in any base from 2 to 36. Don’t you wish more languages had that feature?
@sreedev
@sreedev Рік тому
Functional programming is still very closely attached to its mathematical roots and it makes programming experience beautiful.
@pattytheratty
@pattytheratty Рік тому
bro when i first started coding and realized the functions were like math functions everything clicked 😩
@seriouslyWeird
@seriouslyWeird 11 місяців тому
and painful
@fastcalendar
@fastcalendar Рік тому
Very interesting and informative video. Very rarely does fireship ever miss, but some videos feel like they fall into a more repetitive format of namedropping a bunch of languages and frameworks loosely tied to a relevant topic. You're very good at explaining topics that can be hard to visualize, I hope you do more videos on general concepts
@franciscocordeiro8080
@franciscocordeiro8080 Рік тому
I feel like if teachers introduced some concepts as you introduced them here ppl would understand some things way faster, you've done some really nice visual aids, good job!
@franciscocordeiro8080
@franciscocordeiro8080 Рік тому
@@user-if1de8pt2j My comment refers to the benefits of visual aids in explaining a subject, which you seem to have misunderstood
@marloelefant7500
@marloelefant7500 Рік тому
If my teacher would introduce some concepts like he introduces them here, I would be completely lost. He's simply too fast and his introductions are very, very, very, very high-level, as if you'd only read the first sentence of a Wikipedia article to understand something.
@franciscocordeiro8080
@franciscocordeiro8080 Рік тому
@@marloelefant7500 missing my point, again, I am referring to the visual aids of course it's not the content of it, it's the concept of beginning with simple visual aids and going from there
@mygills3050
@mygills3050 11 місяців тому
check out 3blue1brown
@AugustusCheeser
@AugustusCheeser 8 місяців тому
​@@franciscocordeiro8080look, he doesn't get that unless you explain to him the way a Wikipedia topic is elaborated, he told you that
@NilesMontblair
@NilesMontblair Рік тому
I've taken some combinatorics classes as a part of my math minor while I finish up my computer science degree. Taking combinatorics has changed the way I think about programming problems. The part I like about it the most is how different it is than other higher level math classes. You don't need to know a lot of any other math to jump in and learn it!
@ChadDoebelin
@ChadDoebelin Рік тому
I love this! You did a really good job making these subjects relatable and show how important they are in computer science and software engineering.
@officialcommentcheckerofth9703
@officialcommentcheckerofth9703 Рік тому
As a first year undergrad studying Applied Math who has much interest in Computers, I enjoyed this video a lot! I'm currently studying Abstract Algebra and boy that thing is so tough to grasp.
@vladimirmijatovic4171
@vladimirmijatovic4171 Рік тому
This was one of the most important and interesting videos of my (fresh) coding career and even my whole education. I wish I had teachers that could share their knowledge in this way because I could rarely connect to them and had to learn the things on my own(the hard way). Thanks again, I wish I could subscribe more times as my behind is too poor to give any other kind of support.
@passportbro904
@passportbro904 8 місяців тому
Same bro, im gonna learn all of these concepts in a few days using chatgpt and put it on my resume, why not? I can always go back to Google or ai for further help in the future if needed.
@nemoteric
@nemoteric Рік тому
Your videos always feel like a freaking mind reader. Scans mind. Sees things that are a bit shaky. Explains them in easy to understand way that is also entertaining. Huge props! 😂
@thatsalot3577
@thatsalot3577 Рік тому
As a person who skipped linear algebra and trigonometry and jumped directly into gamedev, I'd suggest you to focus on your maths if you truly wanna build something breathtaking.
@nightflared
@nightflared Рік тому
I made both 2d/3d games, and I think you don't need it so often. Game engines already done most of the maths for you, unless you want to create your own engine from scratch
@thatsalot3577
@thatsalot3577 Рік тому
@@nightflared I mean it kinda does when you're building things other than platformers and fps shooters, especially doing things without tutorial and I'm taking mostly about 3d
@Vytor_01
@Vytor_01 Рік тому
i like trigonometry
@sourraabhcy_p
@sourraabhcy_p 4 місяці тому
that log cut in half analogy was so practical and good. m never forgetting log graph in my life
@HolyRamanRajya
@HolyRamanRajya Рік тому
As someone who started off in PL/SQL with Procedural querying using Cursors, newer gen people don't realise how beautiful Set Based operations are in regards to modern SQL, Hashsets, Functional Programming, GroupJoins etc; and its beautiful how it immediately clicks in our brains when we commit to these. E.g imagine a baby given those shape to socket toys, the baby doesn't go through it iteratively, but rather already computes in sets(shapes and sockets) and performs map or fold in one go.
@3mro_coding
@3mro_coding Рік тому
I've studied all of this while doing my UG and PG never found some one that summarize the overall concept of these topics in short video like this. Hat off bro.
@avi12
@avi12 Рік тому
I'm a university student studying some math courses and currently studying statistics This video is amazing at revealing how my studies are linked to computer science
@pinkiepingas
@pinkiepingas 10 місяців тому
You explained logarithmic functions in a way that no upper level or university class ever was able to. Congratulations, you did what a professor could not.
@JessehTheProphet
@JessehTheProphet 11 місяців тому
Love your videos! I am a software angineer who almost finished a degree in Mathematics with researchs in advanced boolean algebra before going back to CS in university, and it made my passion for programming only grow more and more! Now I'm finishing my graduation's final paper on Functional Programming and Category theory!
@romancandlefight1144
@romancandlefight1144 11 місяців тому
Angina is dangerous man good luck
@fahadalghamdi9316
@fahadalghamdi9316 11 місяців тому
I wish you success and joy. Good luck out there champ.
@rodneygraham5532
@rodneygraham5532 Рік тому
Dude this video is super cool because you were able to explain these concepts in a much simpler and easier to digest way than most of my professors did. It also makes me feel better as I see that while I'm not an expert in every concept, I'm familiar with all of them making me feel way less stupid 😅
@skun406
@skun406 Рік тому
The professors tried to lead you deeper into the Dunning-Kruger curve...
@pr3cious193
@pr3cious193 Рік тому
I was just about to say this, I wishing my teachers explained math like this when I was in school
@ViktorWingqvist
@ViktorWingqvist Рік тому
Please do understand that this video is an extreme simplification of the most basic concepts. Dont be fooled that this is even a decent, however indeed entertaining, quick recap, if you truly want or need to master these concepts and their applications.
@johnhamirkarim3696
@johnhamirkarim3696 Рік тому
​@@ViktorWingqvist this, and also the fact that everyone expects earning a degree in computer science just means attending some codecamp
@liamwelsh5565
@liamwelsh5565 Рік тому
Except for calculus, this video was my entire math journey through my first 2 years of my CS degree.
@GSBarlev
@GSBarlev Рік тому
It's interesting how calculus is part of the standard curriculum but is honestly a lot less important in day-to-day life than concepts that aren't as well taught, like Bayesian statistics. Of course, if quantum computing ever takes off, having a good handle on integral calculus is going to be one of the most useful skills in a CS arsenal.
@liamwelsh5565
@liamwelsh5565 Рік тому
@@GSBarlev I did see it pop up in some of my later math and cs courses but it’s very brief. For example, in my data structures and algorithms course, there were a couple algorithms that used calculus to prove its average time complexity. But we never had to do calculus nor were we tested on it, it was just the professor very briefly going over a proof.
@matheusaraujo6445
@matheusaraujo6445 Рік тому
​@@GSBarlev calculus is used everywhere in deep learning. I don't know about you. But in our current era of revolution of AI I want to be able to understand at least the basics about it
@jeltehoekstra2952
@jeltehoekstra2952 Рік тому
@@GSBarlev It's good to have in the curriculum as an academic exercise though. Trying to understand abstract math problems helps with understanding abstract programming problems.
@blackhole724
@blackhole724 Рік тому
I completely agree with this. Math is crucial in programming even when nowadays some people want to ignore it. It is not hard if you enjoy it. What is wrong is that many math-lover programmers lie about how they hate math and that you don't need to learn math if you wanna be a good programmer like in this video (but he already confirmed but actually by using sarcasm). The reality is: if you have any problem with math you are gonna face REALLY HARD life problems on your job, and projects.
@dani-gy2dy
@dani-gy2dy 11 місяців тому
How you explained these concepts with this speed and I still understood you is sick. You are the greatest teacher who walked on this earth. A sensei for all the sensei's. The ring doesn't control you, you control the ring. Amazing!
@brandonsoboleski5642
@brandonsoboleski5642 Рік тому
When you explain base 10 to begin explaining how bases in general work I think it might be better to think of it as each place's decimal value is equal to the number in that place which is less than the base value(10 for decimal) multiplied by the base to the power of the index(with this index starting at 0). This explanation should be easy to understand for programmers since any programmer should understand indexes that start at 0. To express this briefly you can say the decimal value 'D' is the place value 'P' multiplied by the base value 'B' to the power of the index 'I' or D = P*B^I. This is how I like to think about this and it works for any base. EX: for 1011 we have a base value of 2 and index 0, 1, 2, 3 from right to left. to get the decimal value we have D=((1*2^0)+(1*2^1)+(0*2^2)+(1*2^3)) = (1+2+0+8) = 11. Hopefully this helps someone and makes sense.
@qusayalawneh1963
@qusayalawneh1963 Рік тому
This is the first time I understood logarithms thanks alot, I think this will 'stick' with me for some time before I forget it
@MrEfi4
@MrEfi4 Рік тому
5yrs in programming, thanks for best explanation of big O complexity :D Video is nicely done, progressing from basics to advanced. I believe you will keep your job of educator for noobs even with GPT-10 :D
@xrexy
@xrexy Рік тому
This video does wonders... been procrastinating a few tasks today but the instant I clicked on this video I instantly jumped and started working on them
@robinheyer708
@robinheyer708 Рік тому
After dismissing it all for years when I couldn't appreciate it in high school... "Who would ever need the Pythagorean Theorem?". Now I'm learning about Fibonacci, the Russell paradox and the Mandelbrot set and I wish I would have known (more) about all this earlier and wasn't just taught enough to pass an exam in school. Could I have appreciated it more at an earlier age? I don't know. We're in a complex system that we don't have the tools to understand yet or maybe ever. Just like in AI development they have now found that language is the key to everything human, maths is the key to the universe.
@supercellodude
@supercellodude Рік тому
4:56 Set Theory is one of the foundations that enable defining the continuous structures of geometry, topology, and calculus. Zermelo-Fraenkel Set Theory with the Axiom of Choice (normally called just ZFC) can serve to specify the way a set interacts with an equipped topology, or how the set of real numbers contains numbers that cannot be reasoned about due to how uncountably transfinite it is.
@theblinkingbrownie4654
@theblinkingbrownie4654 11 місяців тому
But is it useful in cs? Seems like you'd need to be in incredibly specific fields before knowledge of ZFC is useful but I could be wrong
@imapimplykindapimp
@imapimplykindapimp 11 місяців тому
Category theory gang rise up
@MeiinUK
@MeiinUK 8 місяців тому
@@theblinkingbrownie4654: Set theory is useful in CS... cos it ties in with databases. So.. if you need to create a register for a car park, say... And you want the names of the owners, and the model and location of what it is placed etc. That could be useful for classification purposes. You just need to know DB Theories. Set theories is the pre-requisites towards databases. But this video is quite clever... cos I have never considered the different databases globally.... That is scary.
@SMCwasTaken
@SMCwasTaken 5 місяців тому
My Brain Broke at that point
@culpritdesign
@culpritdesign Рік тому
Vector vs Scalar quantities are pretty excellent to know when thinking about useful analytics. I'm so happy you mentioned them!
@AkiiiMatcha
@AkiiiMatcha Рік тому
omgggg actually I am at this point in my life where I basically need to understand those topics to progress further in my programming career. You really did a good job explaining those topics short and sweet, even for someone like me who always sucked at math and now has to work with linear algebra etc. for ML in my company. LOL
@nugget6723
@nugget6723 Рік тому
funny how I was JUST stressing about how much math I'm gonna have to learn for programming (and I'm beyond horrible with math). I feel a bit more confident now since I can grasp the concepts laid out here pretty easily (the excellent explanation makes it easy to understand, so props!) it's just the actual numbers part that gets me lol
@SkullCollectorD5
@SkullCollectorD5 Рік тому
If you can grasp the concepts, you're a good way into passing maths. Most people who "aren't good with maths" have an aversion to it that holds them back. Get past that, study until just one thing clicks and realise that you were never bad with maths to begin with. The thing is: everybody's starting point is different. I had to catch up on maths from year 11 (10th grade for US) while my study group breezed through the discrete maths module. But I did and now I love it.
@lukdb
@lukdb Рік тому
If the problem is just the numbers, then you'll be fine. Programming is basically outsourcing the boring arithmetic out of the concepts you're using.
@Zeero3846
@Zeero3846 Рік тому
No worries! You only need a lot of math if you're making games, simulations, and models. Everything else is literally just recordkeeping and string manipulation.
@Laszer271
@Laszer271 Рік тому
Depending on what you want to do with programming you may not need most of these concepts or you may need much much more than that. Programming is a vast field. Skills needed in database administration or web development are much different than those needed in data science or computer graphics. The most important skill is actually English which might be a problem for non-native speakers but if you already have it, you are golden.
@surreal6055
@surreal6055 Рік тому
​@@Zeero3846 even then if you're using a sophisticated game engine like 80% of the math needed goes away too
@TiagoMotonauta
@TiagoMotonauta Рік тому
I wonder how much time did it take you to compile this information... I understand all the concepts but to summarize them is not easy. Well done!
@puspamadak
@puspamadak 10 місяців тому
As a long-time fireship watcher, I can say that your examples are very funny. They help us to remember better and hence, to understand the concepts well.
@abdelsamie.bousba
@abdelsamie.bousba Рік тому
Wow, you will be VERY familiar with all of these concepts if you got a CS degree, I got one and now and only now I understand why we get to know those concepts, thanks.
@MasterGeekMX
@MasterGeekMX Рік тому
As a COmputer Sciences grad student, I had to take a course on every single subject mentioned (and more like calculus, numeric methods, group theory, differential equations and even some basic physics).
@rajpdus
@rajpdus Рік тому
Very concise and excellent content. Shall we make one on Theory of Computation?
@ahmadwael8541
@ahmadwael8541 Рік тому
I love that you give us as an expert that overall picture of our future path, and releives me a lot, thank u
@shantanu556
@shantanu556 Рік тому
the reference to Schrodinger's cat at 1:27 was aweoxme. Its always the details in FireShip's videos man.
@venkyakshaya
@venkyakshaya Рік тому
Thanks for being on of the best tech YT channels!
@yashmistry1918
@yashmistry1918 Рік тому
I was getting there but I see someone else is first, but putting my results here anyways. I only needed first 2 decoded, after searching for them I could find the binary quote Morse quote below: Mathematics are the result of mysterious powers which no one understands, and which the unconscious recognition of beauty must play an important part. Out of an infinity of designs a mathematician chooses one pattern for beauty's sake and pulls it down to earth.
@elitegamersiddhu5684
@elitegamersiddhu5684 Рік тому
PLEASE DO MORE VIDEOS LIKE THESE. Maybe dive deeper in the chapters shown in this video, it will be extremely helpful. For someone who wants to slowly start learning about neural networks, going to 3Blue1Brown and watching their series can get overwhelming due to so much maths on screen, ur graphical and creative methods are much less brain loading.
@val78787
@val78787 11 днів тому
Excellent video! Really well done, I appreciate the information and memes a lot!
@MidtownMadness1
@MidtownMadness1 Рік тому
Your explanation of the logarithm is outstanding
@propoop6991
@propoop6991 Рік тому
Now time for the prerequisites: strong understanding of high school math, calc 1-3, and proofs for the discrete math.
@pattytheratty
@pattytheratty Рік тому
i got a 64 in high school math and im doing fine
@TrentSterling
@TrentSterling Рік тому
As a math challenged programmer/gamedev, please give us more content like this! 😮🤯
@ehza
@ehza Рік тому
Nice. Thanks man. Please never stop these sorta videos. I am fond of this type of stuff.
@Falconleader117
@Falconleader117 Рік тому
There's 4 years of a CS degree in less than 10 minutes! AWESOME as usual!
@tzarcoal1018
@tzarcoal1018 Рік тому
​@@jasrajjohal apart from a few things: first semester...
@syedmohammadsannan964
@syedmohammadsannan964 Рік тому
... dude, what's with the trend of downplaying university degrees?
@syedmohammadsannan964
@syedmohammadsannan964 Рік тому
@@tzarcoal1018 Ikr
@rawrx
@rawrx Рік тому
The base64 you wrote through the video is the quote "Mathematics are the result of mysterious powers which no one understands, and which the unconscious recognition of beauty must play an important part. Out of an infinity of designs a mathematician chooses one pattern for beauty's sake and pulls it down to earth", notice that you forgot the dot in the end which would be Lg== in base 64. Which is also funny because Lg is binary logarithms if im not mistaken
@A.Belkhir
@A.Belkhir Рік тому
i can't believe how great your videos are as physicist we learn some similaire, we basically learn same maths the difference is in the amount of focus on those sub-section just wanted to point one thing which is in linear algebra you skipped one level which is tensors. good luck and keep up the learning and sharing
@nanakatz1492
@nanakatz1492 Місяць тому
I can’t believe the amount of useful information you just taught me in a matter of minutes. THANK YOU!!!
@AJ-AI
@AJ-AI Рік тому
The secret is a quote from Bertrand Russell on mathematics! Or at least one in a similar vein. Maybe you asked ChatGPT to make a quote about mathematics and it came up with this one lol. here's the text: "Mathematics are the result of mysterious powers which no one understands, and which the unconscious recognition of beauty must play an important part. Out of an infinity of designs, a mathematician chooses one pattern for beauty's sake and pulls it down to earth."
@alex_skobe
@alex_skobe Рік тому
Nice one, seems like it encoded in base64 UTF8. This is what Chat GPT gave me as a result on first string: "Mallhematics arT▒▒▒ result" . But as a lazy developer I used IPhone camera to take a string from a youtube video, and it capture couple characters in a wrong way.
@KingKong-oy4yr
@KingKong-oy4yr 2 місяці тому
As an class 10th student looking for career in cs. I can say that I understood nothing 😢😂 but I can guarantee that I will come back to this video after 4 years ..love you ❤❤
@monzerfaisal3673
@monzerfaisal3673 Рік тому
Mr. Fireship, forget math. You are magic. I have hated math since I was 7 but you just lit up a flame in me with this video and every other video you make!
@zxuiji
@zxuiji 8 місяців тому
2:58, the thing I find wrong about how floating point numbers are handled is the same reason get that .30...4, the exponent is used to represent where the decimal point is when the better way is to represent where the smallest support unit is so that the mantissa can be treated as an integer with N 0s in front/behind it from the known smallest of the containing bytes. For example, let's say we have a piece of paper that can support up to 32 digits (yes I'm referencing a standard float's number of bits), since we know that we can designate 8 digits to represent how far from the smallest digit we are, next we use half the max it can hold to tell us how small the smallest unit should be, so in this case 255 / 2 is 127.5, we'll round that down so that the fastest matching operating in a computer would be a simple right shift by 1, so now our smallest possible unit is 127 digits behind the decimal point & an exponent of 0 means exactly that, an exponent higher than 23 ( our remaining digits when accounting for the + & - prefixes) is definitely bigger than one with an exponent of 0 while any value between 23 & 0 would have to add the difference between the 2 values to the position of the highest digit to compare against the highest digit of the smaller exponent's mantissa. Yes we sacrifice the implied bit but instead we get 100% accurate results beyond the decimal point.. provided they're not longer than 127 digits that is *coughPI*
@WillJackDo
@WillJackDo Рік тому
With content like these, it'll be long before AI replaces you... Kudos.
@haku1089
@haku1089 Рік тому
As a computer science student its nice to refresh all of this concepts that i've been learning all over this years
@danypell2517
@danypell2517 Рік тому
Diving deeper of the harder topics here would be nice, like a 15 minute linear algebra video or something
@giovannironchi5332
@giovannironchi5332 Рік тому
I am a math teacher in a high school teaching to students studying informatics curriculum. Thanks a lot for this one!! 🙏🏻
@fbodirector7464
@fbodirector7464 Рік тому
This may be the best maths for programmers video I have seen so far. Surprisingly detailed for how quickly and consistently you go through each concept.
@BluesBoySid
@BluesBoySid 7 місяців тому
All what was shown her i learned in a humanist class in high school and at first year at the University. But i'm born and raised in Poland, so for plenty of us it's very common. Now i know why polish programmers are very often by deep data science, ai (including chatgpt) or security. Nice video :)
@itk77
@itk77 8 місяців тому
Matrices are definitely very important to learn as they have many uses and are very simple and easy to understand.
@badhbhchadh
@badhbhchadh Рік тому
joins are NOT set unions/intersections. In particular, the way you displayed left/right joins would mean they just return the original tables, which is obviously not the case. SQL *does* have UNION and INTERSECT operators for queries. But an INNER JOIN e.g. is the graph of the relation defined after the ON, and the other ones are unions (!) of the latter with elements of A x {null} or {null} x B
@HolyRamanRajya
@HolyRamanRajya Рік тому
Keep in mind tho, the practical realizations are not always consistent across all DBMS and versions for ANSI SQL. I had the displeasure having to work with a version of OracleDB that was made during their transition to ANSI and results were often ridiculous and an approximation and extensions of their bad non-ANSI Join operators(+,-).
@slowgoins
@slowgoins Рік тому
I used basic differential equations all the way through my PhD. But if I’m not using particular maths a lot then the core of the concept may not stick. So I love watching other people explain math concepts and you made byte binary make concrete and intuitive sense. Loved the idea of thinking of it as each position is a yes or no at a power of 2 and adding the result.
@christiantarnoski1231
@christiantarnoski1231 6 місяців тому
A little tip: exponents, roots and logarithms are interchangeable. If 3^2=9, then sqrt(9)=3 and log3(9)=2. Any exponentiation has three parts (base, exponent and result) and so there is a nth root that will give its base as a result and a logarithm that will give its exponent.
@TBButtSmoothy
@TBButtSmoothy 4 місяці тому
these bits of math "gotchas" are gold, thank you
@marckraw
@marckraw Рік тому
This is so good, it's like a math teacher is actually trying to teach you something instead of flexing his math muscle :D
@johnplays9654
@johnplays9654 11 місяців тому
Chat GPT can decrypt the message instantly. It also explains that it is encrypted in Base64 which is a common encoding scheme used to represent binary data in ASCII format. It even corrects misspellings in the encryption.
@krast0gaming40
@krast0gaming40 Рік тому
I am amazed by how programmers are still avoiding math.
@gavinholtzapple1439
@gavinholtzapple1439 Рік тому
@@bob-manuel bro thinks hes socrates
@jmilouise5097
@jmilouise5097 Рік тому
@Bob-Manuel i sense chatgpt in this comment
@russianvideovlogguy
@russianvideovlogguy Рік тому
I don't think they do tho
@mrgalaxy396
@mrgalaxy396 Рік тому
The ones that don't have a formal education in STEM fields, yeah. The rest of us didn't have a choice when it came to learning the math bits haha It's a shame though, because math is so incredibly useful and honestly very interesting when you strip away all the formalities and focus on the concepts themselves. That's kind of the problem though, math isn't really math unless it's strictly formal and the formal definitions often don't make it obvious what they actually mean in a practical sense, which prevents people from seeing the bigger picture that is so valuable. That's why many people get turned off by it, if you don't have a good teacher or do your own research you lose the value in the noise of the formalities.
@herikaniugu
@herikaniugu Рік тому
Only game dev and data scientists love math
@ironCheval
@ironCheval 10 місяців тому
Literally explained the most confusing part of binary to me in 10 seconds. Finally made the connection lol. Thank you!!!
@user-dorisY
@user-dorisY 6 місяців тому
This is the first time I really see (and so finally understand) what "left join" is and why it is necessary to have "left join" and other types of "join" (because as shown there is obvious distinction between them)
@rabik_dev
@rabik_dev Рік тому
Using logs to explain logarithm, brilliant ❤
@madhououinkyoma
@madhououinkyoma Рік тому
Took your comment for me to realize 🤣
@UltraMaXAtAXX
@UltraMaXAtAXX Рік тому
Small nitpick: linear regression isn't just for lines. Fitting a polynomial or some linear combination of functions makes it linear in the linear algebra sense.
@teamrocket0002
@teamrocket0002 Рік тому
This video is very interesting...I wanted to revise most of these concepts but i have been procrastinating to do so....This video is a really good motivation for me. Thank you! :)
@ZaphyrVonGenevese
@ZaphyrVonGenevese Рік тому
Thanks for the video. What I missed here would be an example for each math concept in real world. For example how Boolean algebra can simplify otherwise complex conditions etc. while I knew these concepts from university beforehand, for most of them I am not sure where and how to use them.
@lasham111
@lasham111 Рік тому
Fireship actually have ability to convince me that I need certain subject or tool for my career
@deepjoshi356
@deepjoshi356 Рік тому
Linear algebra for RSA. I think linear algebra is more related to AES.
@d3line
@d3line Рік тому
Yup. Cryptography in general is mostly number theory, specifically finite fields.
@Beowulf-sn8ir
@Beowulf-sn8ir 7 місяців тому
Mathematicians will unironically say something like "The volume of a superegg can be derived via squigonometry, a generalization of trigonometry to squircles. It is related to the gamma function" and expect people to understand.
@chrissmit6439
@chrissmit6439 11 місяців тому
We believe teachers are the core of our childrens education and therefor their future. My math teacher in primary school always told me how stupid I was etc and that I would never be able to properly function in society. She was partly right and partly wrong. I love being the odd one out and enjoy my personal space to the extend it may appear peculiar, this she nailed. What may offend her endlessly is to know that once I realised I could in fact do math it changed my universe and so many things around me came to blossom. Now I can program stuff she never even had the imagination to comprehend even if it was forced upon her. May her soul rest in peace, I have found mine. I mean this in all humbleness because talent is a gift and not an entitlement. Did I also mention my family were not rich. And I forgot to say she was an Apartheid teacher, very judgemental alike Apartheid religion. She could not teach me math, but she taught me to be strong. Thank you ms? Dreyer.
@traxx75
@traxx75 Рік тому
7:52 JIAN YAAAAAANG
@passportbro904
@passportbro904 8 місяців тому
Great video, im gonna learn all of these concepts in 10 minutes with notes each using chatgpt and put it on my resume, if i get a job where i feel ill need it, at least ill know the concepts at least.
@diegomarzo4001
@diegomarzo4001 Рік тому
Really good video, I loved it, very well explained like always. I just missed numerical methods and will be 10/10
@symphony_vk
@symphony_vk Рік тому
Thanks for the amazing video, Jeff! Your content is pure gold!
@alphonsereitz
@alphonsereitz 7 місяців тому
I definitely need boolean algebra. Trying to learn to write drivers for my mcu peripherals in C, and being able to do that with ternary operators would make easier in the end.
@QsPracticalNonsense
@QsPracticalNonsense 11 місяців тому
3:23-3:26 "Now that we know how numbers work..." My brain is fried and I am in tears
@Eta_Carinae__
@Eta_Carinae__ Рік тому
In linear regression, the input/output variables don't have to be linear wrt eachother. The linearity comes from the coefficients (\betas) being linear, such that we can have a vector representation of them.
@TheGuyvatzian
@TheGuyvatzian Рік тому
Small nitpick: RSA doesn't involve linear algebra at all. I think you might have meant to say AES instead, which represents the data to be encrypted as matrices and involves matrix multiplication in the MixColumns step
@jasdfpasdfakdsjhfa
@jasdfpasdfakdsjhfa Рік тому
Yeah was thinking the same. Number theory would've been a much better section title.
@mryan744
@mryan744 Рік тому
Fireship , please make a full computer science course in your style of teaching. i would definitely buy such a thing
@8bitgamerC64
@8bitgamerC64 10 місяців тому
This video takes me back to the good ol' days and when i wrote sprite routines using algebra and 6502 machine code.
@landotter
@landotter Рік тому
I wish I knew more about all this years ago.
@devon9374
@devon9374 Рік тому
So you know it now or will you say the same thing again in 10 years 🤔
@Eyad_faramawy
@Eyad_faramawy 9 місяців тому
1:07 this is a sensitive scene >:(
@I-am-Joe-Po
@I-am-Joe-Po 11 місяців тому
The first ever video I have watched at velocity x0.75. And going to watch again. Bravo!
100+ Computer Science Concepts Explained
13:08
Fireship
Переглядів 2,3 млн
Reacting to Controversial Opinions of Software Engineers
9:18
Fireship
Переглядів 1,9 млн
Сын Расстроился Из-за Новой Стрижки Папы 😂
00:21
Глеб Рандалайнен
Переглядів 3,1 млн
Зомби Апокалипсис  часть 1 🤯#shorts
00:29
INNA SERG
Переглядів 2,5 млн
Level 1 to 100 Mystery Buttons
00:46
A4
Переглядів 6 млн
Артем Пивоваров х Klavdia Petrivna - Барабан
03:16
Artem Pivovarov
Переглядів 3,6 млн
You probably won’t survive 2024... Top 10 Tech Trends
8:56
Fireship
Переглядів 1,6 млн
7 Cryptography Concepts EVERY Developer Should Know
11:55
Fireship
Переглядів 1,2 млн
The Man Who Revolutionized Computer Science With Math
7:50
Quanta Magazine
Переглядів 2,7 млн
10 weird algorithms
9:06
Fireship
Переглядів 1 млн
The Mathematics of Machine Learning
16:34
Zach Star
Переглядів 468 тис.
C++ Developer Learns Python
9:26
PolyMars
Переглядів 2,6 млн
10 Programmer Stereotypes
5:08
Fireship
Переглядів 3 млн
how NASA writes space-proof code
6:03
Low Level Learning
Переглядів 1,9 млн
Samsung or iPhone
0:19
rishton_vines😇
Переглядів 178 тис.
Лучший телефон на андроиде?
0:25
Опросный
Переглядів 119 тис.