I feel so privileged right now it’s about 600 students in there paying 40+ thousand dollars to get this lecture and I’m getting it free soaking up all this Harvard knowledge and apply it
@@murderboys1 learncpp is 100% free and goes way more in-depth than this… I don’t even get how they get away with having a 40k price tag on such a bad course. Not to insult the instructor… but a lot of this should be expected before you go into cs….
Day 2 of teaching myself C and I am so happy to have found this video and the CS50 sandbox, my god...it's perfect for what I need. Reading your and other peoples comments lets me know I've made the correct choice.
Terrific video, even as a developer I found this to be a joy to as an intro and would gladly show this to my own child. David Malan is very charismatic and good at explaining complex topics.
C holds the place for the greatest programming language for me. I learned C++ as my first programming language in high school and loved and appreciated C even more after that.
Both of these professors are great. Even when the abstraction starts to get heavy like with pointers and structures, where the way it's taught starts to really matter, they do a great job at making it more intuitive.
Good teacher is a treasure. You need to know how to teach and have a deep insight of the knowledge. Otherwise you can't show a reasonable overview and point the right path to enter a new area, which is extremely important in an intro course. This man is a treasure.
This kind of teaching is really get u understand the very fundamental of programming bfore u start coding. Jumping straight to coding with just a definition of it wouldnt be enough like most youtube tutorials.
I wish I was taking the course 5 years ago. Type of university and instructor makes a major contribution to the society. Better society = Better instructors
one of the best things about CS50 is that it's never about the programming itself. David J. Malan explains many more concepts such as algorithms, inputs and outputs, problems, and solutions. It's more about computer science and presenting real-life scenarios rather than just writing some functions and syntax on the screen.
I got my bachelor's in Computer Science from Florida State University and their curriculum with programming is based on C++ with classes for intro, object-oriented, and data structures. After those classes, we start getting into using C with concurrent and parallel programming, computer organization, and computer architecture.
If my cs fundamental course are taught this way, I would be happier to learn more instead of struggling on self-learning the whole time! While self learning, to some degree is necessary, but I would rather learn this way. Thanks!
incredibly informative video. david mulan states everything in a very understandable way. learned more in the first hour than the other 4 hour long "courses" elsewhere on youtube.
He is so good at teaching and say's humans so many times, that I'm starting to think he isn't one. No wonder Harvard are so good, they have extraterrestrials for lecturers.
I dont have tecnic class nor programming class. It says on my shedelue that we do, but i think its just a cover for the school. They do not want to learn out tec witch results in not passing the grade. And my score will get low
My school back in the late 70's early 80s got a computer , I learned logo and lisp in fourth grade and got an Atari 400 when it came out , using basic and assembly at home.. I was teaching the 6 graders.. Can you do an auto complete/correct program subroutine in scratch? Or is it too oversimplified? I mean can you detect key presses, scanning and interups and handle them yourself, at least a get() instead of input()? I took a c class in college , watching this because I forgotten most of it in the last 30 years... Looking back, I had a talent, that's what I should have been doing ....
I JUST WATCH THE HOLE VIDEO EVEN WHEN I LEARN C IN THE PAST SEMESTER IN MY UNIVERSITY, BUT... OMG THIS TEACHER IS AMAZING, HE CATCH MY ATTENTION SINCE SECOND ONE!!!!
Nice graphics and video for a lecture. I remember my programming (lisp,PL/1,Pascal, learned C on my own) classes as much quicker and denser information. The only class I had trouble was assembly, had a poor teacher (grad student, first time on subject. Later I took assembly from a retired industry professional at a junior college and it was tremendous. He had the best students trying to save machine cycles and make well structured programs. T
I'd like to offer an alternative interpretation for the rationale of starting from 0: offsets. When you have a pointer to some address in memory, and then you have a second pointer that will start from the first pointer and "walk" along the data structure, what do you say the difference is when both pointers are equal,. i.e. when the mobile pointer is pointing to the first element? The difference is zero, that's its offset. So to say you're grabbing the value at address `pointer + 0` (offset zero units from the start of the data) is to say that you're grabbing the first element. if `*(array + 0)` was equivalent to `array[1]` instead of `array[0]`, arrays would be a LOT harder to navigate and off-by-one errors would be a lot more common. That's the real reason: Pointer arithmetic, file offsets, anywhere you are dealing with offsets (which turns out to be most of the time), zero indexing is more mathematically natural. Or if you're pushing elements into an array by using its length: `array[length] = value`, `memcpy(array + length, array2, MIN(availablesize, length2))`, and then `array` s length is incremented by the number of bytes added. It's simple. People only think it's hard because they deal with C strings which tack on an extra byte at the end while not considering it part of the array (strlen returns the length excluding the final byte).
Thank you very much for this. HAD MADE IT MY NEW YEAR RESOLUTION to finally learn some COMPUTER SCIENCE....Better late than never as some say EYE GUESS ;0).....well guess am a Millennial Minority but maybe there are others like me BORN IN 1984
This is the second video in the course. Check out the full playlist: ru-vid.com/group/PLWKjhJtqVAbmGw5fN5BQlwuug-8bDmabi Here is a forum to discuss CS50 with other people from freeCodeCamp: www.freecodecamp.org/forum/c/harvard-cs50
Really enjoyed this. Although I would have preferred if he advised students that you should not use your own stylistic way of writing code but to write it as he did because it's considered the industry standard.
A Compiler is a Virtual Machine that Understands more than 1's or 0's. You can even make a Machine that Understands that Without 1 / 0 hardware. A quantum Computer is a Different type of Machine.
It is a very interesting... and clear explaining. C Language is the predecessor of C++, Java, C# ..... etc. Basically before C Language, Pascal was a best structural language for Computer Science students. Pascal gives you essence of Computer High Level Language easily.
C does not have boolean data types, and normally uses integers for boolean testing. ("bool" is defined in a library.) 1 is TRUE and 0 is FALSE. (Actually, anything other than 0 is TRUE.) The "while" statement for the infinite loop can be shortened to "while(1):".
For deciding when to use a float or a double, this is known as "Terry's God Question". You have to decide whether a decision in code is Divine Intellect, or if its too much voodoo for the intended purposes.