Тёмный

You Probably Shouldn't Watch This 

The Math Sorcerer
Подписаться 912 тыс.
Просмотров 303 тыс.
50% 1

In this video about learning and why it's important to learn what you really want to learn. We take a look at books on C programming, Fortran, and Python. Do you have any advice for people? If so, please leave a comment below.
C Programming Book: amzn.to/3y0YBmn
Python Book: amzn.to/4b7Yofr
Fortran Book: amzn.to/3WdjXqK
The Wizard Book: amzn.to/3UJOPLB
My Courses: www.freemathvids.com/
Best Place To Find Stocks: finviz.com/?a=593802429
Useful Math Supplies amzn.to/3Y5TGcv
My Recording Gear amzn.to/3BFvcxp
(these are my affiliate links)
**********Math, Physics, and Computer Science Books**********
Epic Math Book List amzn.to/3F98vT1
Pre-algebra, Algebra, and Geometry amzn.to/3FdbwSn
College Algebra, Precalculus, and Trigonometry amzn.to/3UKjvfb
Probability and Statistics amzn.to/3FaaxCq
Discrete Mathematics amzn.to/3P6jPE4
Proof Writing amzn.to/3XXukxo
Calculus amzn.to/3iEH3F3
Differential Equations Books amzn.to/3Fac5wi
Partial Differential Equations Books amzn.to/3uyk1SV
Linear Algebra amzn.to/3VHiN3G
Abstract Algebra Books amzn.to/3FzLZEr
Real Analysis/Advanced Calculus amzn.to/3VIO4Ua
Complex Analysis amzn.to/3P6kbuo
Number Theory amzn.to/3UEm3vw
Graph Theory amzn.to/3BfRd5m
Topology amzn.to/3BiAGhe
Graduate Level Books amzn.to/3uv1eIg
Computer Science amzn.to/3Hh8kaU
Physics amzn.to/3BhPCMp
These are my affiliate links. As an Amazon Associate I earn from qualifying purchases.
If you enjoyed this video please consider liking, sharing, and subscribing.
Udemy Courses Via My Website: mathsorcerer.com
My FaceBook Page: / themathsorcerer
My Instagram: / therealmathsorcerer
My TikTok: / therealmathsorcerer
There are several ways that you can help support my channel:)
Consider becoming a member of the channel: / @themathsorcerer
My GoFundMe Page: www.gofundme.com/f/support-ma...
My Patreon Page: / themathsorcerer
Donate via PayPal: paypal.com/donate/?cmd=_s-xcl...
***********Udemy Courses(Please Use These Links If You Sign Up!)************
Abstract Algebra Course
www.udemy.com/course/abstract...
Advanced Calculus Course
www.udemy.com/course/advanced...
Calculus 1 Course
www.udemy.com/course/calculus...
Calculus 2 Course
www.udemy.com/course/calculus...
Calculus 3 Course
www.udemy.com/course/calculus...
Calculus 1 Lectures with Assignments and a Final Exam
www.udemy.com/course/calculus...
Calculus Integration Insanity
www.udemy.com/course/calculus...
Differential Equations Course
www.udemy.com/course/differen...
Differential Equations Lectures Course (Includes Assignments + Final Exam)
www.udemy.com/course/differen...
College Algebra Course
www.udemy.com/course/college-...
How to Write Proofs with Sets Course
www.udemy.com/course/how-to-w...
How to Write Proofs with Functions Course
www.udemy.com/course/how-to-w...
Trigonometry 1 Course
www.udemy.com/course/trigonom...
Trigonometry 2 Course
www.udemy.com/course/trigonom...
Statistics with StatCrunch Course
www.udemy.com/course/statisti...
Math Graduate Programs, Applying, Advice, Motivation
www.udemy.com/course/math-gra...
Daily Devotionals for Motivation with The Math Sorcerer
www.udemy.com/course/daily-ma...
Thank you:)

Опубликовано:

 

23 апр 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 1,6 тыс.   
@za7304
@za7304 Месяц назад
I just clicked cuz I saw C
@bingofuel3545
@bingofuel3545 Месяц назад
Well, it cause today's lesson is sponsored by the letter"c".
@marcio603
@marcio603 Месяц назад
Same here...
@bangbinbash
@bangbinbash Месяц назад
Lol same bc I have that same exact C book in the thumbnail 😂
@walidoulondon8107
@walidoulondon8107 Месяц назад
Me too 😂
@disinlungkamei2869
@disinlungkamei2869 Месяц назад
Yyyeeaah 👍👍👍
@ciscoserrano
@ciscoserrano Месяц назад
I actually do have some advice for people on this topic. If you want to learn programming here is a very important concept: Every piece of software you've ever used can be broken down into 4 simple ideas. What I call The Four Friends of Programming. 1. Save data and use it later. (example: variables, memory allocation) 2. Conditionally execute things. (example: if statement, switch, match, jump) 3. Repeat yourself. (example: loops, recursion) 4. Organize the first three things. (example: structs, functions, classes) Thats it. Thats every program you've ever used. The next tip, is that every programming language is someone's opinion of HOW you use those four friends. programming languages are made by people who have opinions about how to program. What makes different languages interesting is that you get see/discover new ways of using those 4 simple rules to solve problems. The people that wrote Java believed that all data should be contained in a type. The people that made Lisp believed you only need lists and recursion to compute anything. But in the end its the same four rules wrapped in an opinion of computation. So. If you want to learn programming, pick a language, any language. One that you think will make you money or one that you think will enable to build what you love easily. Then MASTER the four friends in that language. When you do that and move on to the next language you can peel away syntax and jargon (because those are a someones opinions of how code should look) and really peer into the big ideas of the person that designed it.
@ciscoserrano
@ciscoserrano Месяц назад
P.S. @TheMathSorcerer I went through the Wizard book for the first time earlier this year and it was a mind expanding journey into computation. oh, and the MIT lectures on RU-vid really made the book come alive. I definitely feel like I'm a better engineer and problem solver having gone through it. I would love to see a dedicated video to hear your thoughts on what I feel is a perfect intro to programming book.
@b00gi3
@b00gi3 Месяц назад
7 likes? I feel like this is a top comment. Great insights.
@mike5629
@mike5629 Месяц назад
I like the way you broke that down. I'm currently learning javaScript and i'll defiantly keep this in mind . you have link any way to reach out to you for more tips ?
@greenhat7618
@greenhat7618 Месяц назад
I feel like that’s true for high level languages but the memory stuff in C or other lower level languages get really confusing
@lawrencejelsma8118
@lawrencejelsma8118 Месяц назад
Numbers 1 and 2 are useful for Spreadsheets GUI programming (Microsoft Excel, Oracle and Microsoft Access database). C++ extending the C programming language or just using Microsoft's Visual Basic or full Visual Studios languages are database advanced intensive for creating "front end" accounting entries to robust analysis of created database charts and full extent programming languages tools. I remember Visual Basic 6.0 used with any SQL database language (and especially behind Microsoft Excel) doing far more for the business and data entry in business than what engineers and scientists and game developers attain with C and C++ high end programming languages done on many computer systems.
@jeremypewterschmidt664
@jeremypewterschmidt664 Месяц назад
Once the system pushed "You Probably Shouldn't Watch This", I clicked into there immediately.
@TheMathSorcerer
@TheMathSorcerer Месяц назад
LOL
@garymemetoo2238
@garymemetoo2238 Месяц назад
Me too.
@SlinkyD
@SlinkyD Месяц назад
Yep
@lucasamarantelucas4524
@lucasamarantelucas4524 Месяц назад
Me too. But I'm studying C languague as my first language. I'm reading Fundamental algorithms from Knuth and others books about GCC and pointers. (I donnot know wtf I'm doing)
@simpleprogrammingcodes3834
@simpleprogrammingcodes3834 Месяц назад
I thought because everyone knows see, so nobody should watch the video about a C book. But I was curious about what was said about this book. Because people don't agree whether it's good or not.
@christosbinos8467
@christosbinos8467 Месяц назад
Assembly is very much taught today. I am doing a masters in cybersecurity currently and we have a course on C and Assembly. Understanding memory management for security is incredibly important.
@anonymes2884
@anonymes2884 Месяц назад
It's also extremely applicable in reverse engineering malware.
@michaelsommers2356
@michaelsommers2356 Месяц назад
Assembly is also a lot of fun.
@hrayz
@hrayz Месяц назад
I put ASM code in my C programmes whenever I know I do it better than what the compiler would spit out.
@pretzelogic2689
@pretzelogic2689 Месяц назад
Assembly should be a mandatory skill if you are interested in the field of programming. It will serve you well in so many non obvious ways.
@mitchellschoenbrun
@mitchellschoenbrun Месяц назад
When you say assembly, do you mean a specific one?
@tomroderick8213
@tomroderick8213 Месяц назад
I am a 77 year old retired engineer who worked with computer systems since 1971 until 2007. During that time I have lost track of how many programming languages I have learned, many just because I I wanted to. All were worth it, and all taught me what was tool I needed for a particular need. If your only tool is a hammer every problem looks like a nail.
@nachofroyo6493
@nachofroyo6493 Месяц назад
wow wise words
@uddhavachikara
@uddhavachikara 23 дня назад
Hope you’re doing great sir.. enjoy your retirement..🤌🏻✨ & thanks for sharing your experience/wisdom with us..
@phlurim
@phlurim 17 дней назад
I learned FORTRAN in mid-1960s on IBM mainframe. Loved it. Am now learning Python, but my results are still somewhat primitive. I’m by no means an expert, but I don’t currently see any significant programming logic differences between these languages. Except Python’s open-source paradigm seems to require extra effort to stay constantly on top of the development of new modules, tips, and tricks. Python seems very flexible, and ever-evolving. Or so it seems. In the meantime, it’s all just a fun, learning experience for me.
@ULTIMARAGNAR0K
@ULTIMARAGNAR0K 17 дней назад
The hammer is the best tool in C because its your only tool and you need the hammer to make other tools in C
@stephant913
@stephant913 16 дней назад
Cheers buddy! 74 retired here. Started in 1976 on mainframes and retired in 2021 working embedded. Started working in Assembler then Fortran and Cobol. Learned C and never quit it since. Any other language was a breeze once I mastered C.
@nedmerrill5705
@nedmerrill5705 Месяц назад
C is fundamental. Many other languages have borrowed the syntax developed for C.
@MrPilotStunts
@MrPilotStunts Месяц назад
In Lisp we trust
@nedmerrill5705
@nedmerrill5705 Месяц назад
@@MrPilotStunts I write a lot of emacs extensions...👍
@smoothemoveexlax
@smoothemoveexlax Месяц назад
Even if not borrowed most of them ultimately link to C libraries.
@HansBezemer
@HansBezemer Месяц назад
You can write everything in C. If you can't write it in C, it's not worth writing.
@nedmerrill5705
@nedmerrill5705 Месяц назад
@@HansBezemer Sure. You can write the compilers and interpreters for those other languages in C.
@kayleeson509
@kayleeson509 Месяц назад
Anyone coming in and saying "which language should I learn?" and talking about them as if you only learn one... That person has never worked in industry. Anyone coming in and saying "just learn javascript, you'll never need anything else" or similar... they have limited work experience. One or two well paying employers. Anyone who's worked in the industry for 10-20 years, anyone who's worked on legacy systems (banking, civil service, medical, etc)... you work in whatever language is infront of you, without proper training, and you learn something from each of them. There's a lot of money to be made from reverse engineering and maintaining old systems, and there's a lot of fun to be had in applying old concepts to new environments.
@kingki1953
@kingki1953 Месяц назад
Wow, thanks for sharing something that never taught by anyone
@kingki1953
@kingki1953 Месяц назад
It's new for me, but how do exactly you can create money from reverse engineering? Did someone paid you to break other's code?
@kayleeson509
@kayleeson509 Месяц назад
@@kingki1953 The guy who wrote the code retired. Five years later, they hired me to figure out how the code worked so the system could be upgraded. Happens frequently with systems that keep a business running where the business doesn't consider itself a coding shop - hospitals, airports, etc.
@doxanthropos
@doxanthropos Месяц назад
@@kingki1953 Sometimes reverse engineering is necessary to maintain and update legacy systems. You would be surprised how common it is to have a system, where one exe that someone, who left the organization, programmed and compiled one or two decade ago is necessary for a critical business process. When you want to change or update that process, you will first need to understand that exe, often without the source code.
@beentheredonethatunfortunately
@beentheredonethatunfortunately Месяц назад
Programming is logical thinking and learning syntax. Everything else is a library call. :)
@lorensims4846
@lorensims4846 Месяц назад
But don't start with that first edition of The C Programming Language. The 2nd edition covers the ANSI version of C, from 1989. The programming language (actually most programming languages) is/are regularly updated.
@xskinyx
@xskinyx Месяц назад
2nd edition is where it's at!
@douglasstrother6584
@douglasstrother6584 Месяц назад
"A Book on C: Programming in C" by Al Kelley & Ira Pohl is another good one.
@michaelsommers2356
@michaelsommers2356 Месяц назад
Let me second that. The first edition uses several features, and didn't use others that hadn't been invented yet but were later essential, that were obsolete by the late eighties. You may even have to use special flags to get the compiler to accept them.
@hrayz
@hrayz Месяц назад
In College I took the C Programming class. I would "amuse" my teacher by writing each assignment in a different "version" of C. K&R C, ANSI C, Turbo C, etc. Each with the small differences perfectly compliant to the version.
@michaelmicek
@michaelmicek Месяц назад
+
@guidichris
@guidichris Месяц назад
I took programming as a senior in high school 1977-1978. We had a teletype, an acoustic modem, and learned basic using a Wang 3300. The computer died in late February 1978. Learned Fortran in 1978 as I was studying Electrical Engineering. Learned Pascal. Learned assembly for 8085 as part of microprocessor system design. Like math, I learned various languages over the years. Right now I'm learning Rust. Never stop learning.
@dreed7312
@dreed7312 Месяц назад
We have a very similar background
@technobubba4
@technobubba4 Месяц назад
What for ? Now we go AI !!
@rogerforsman5064
@rogerforsman5064 Месяц назад
​@@technobubba4Good luck to get AI to optimize your unique embedded system program!
@freemasry-gr8hw
@freemasry-gr8hw Месяц назад
@@technobubba4 AI ha ? let me tell u something I had to do a frontend for a college project, I know nothing about frontend I managed to do it with chatgpt but it was hell because I didn't know javascript, css and I have no time to learn them its not my thing bassiclly u need to know ur shit to even know how to describe the problem properly to this AI thing. I am talking about the basic thing and ofc u won't let an AI program a space craft
@mfaracing
@mfaracing Месяц назад
@@rogerforsman5064 Think 5-10 years from now. AI is just born in the industrial world.
@pdfads
@pdfads Месяц назад
I'm retired now, but I did big-model scientific and engineering computing from 1973 (GE635), through multiple generations of the biggest computers on Earth: CDC, then various Cray models, to giant multiprocessor systems from SG and IBM by mid 2010s. It was pretty much all Fortran, for everybody, although I did some C (which was unusual). Most of the models are still running. I might add that the world's economies still run on COBOL (Sometimes the original source code has been lost!). COBOL joke: A programmer who was dying of cancer had himself frozen. Years later, he wakes up and says, "You found a cure?" The people say, "Unfortunately no, but it's 9999, and you know COBOL."
@vcv6560
@vcv6560 Месяц назад
I have a friend who's been writing in Cobol for almost forty years, You are right the systems are still running and nobody is being taught to maintain them. Old enough to retire but the job is still waiting for, and paying him
@ArthurvanH0udt
@ArthurvanH0udt Месяц назад
your are forgetting RPG kinda the predecessor of COBOL wrt the program engine cycle. RPG was even more connected to the machine code than COBOL, but both had the "auto" input cycle of the primary file thet was being processed. Two more reasons people don't do RPG/COBOL anymore IMHO: 1) not sexy 2) for a long time pay was (way) less than pay for newer language programmers. So the move/push forward was kinda "natural".
@charlesbaldo
@charlesbaldo Месяц назад
I have spent the last 20 years modernizing some of the exact stuff I myself wrote on system36 and AS400 in COBOL and RPG in the early 80's to C# and Visual Basic. It started during Y2K
@michaelsommers2356
@michaelsommers2356 Месяц назад
As the old joke went, I don't know what scientific programming language will be used in thirty years, but I know i will be called FORTRAN.
@segueoyuri
@segueoyuri Месяц назад
@@michaelsommers2356 a joke almost as old as FORTRAN itself lol but to be fair, at least here in my uni a lot of scientific programming is actually done in C/C++. As I can gather, most is. Only older engineering systems are still in FORTRAN. The thing about science is there's always people doing sth new and they not necessarily will care or use that old language. And Python is being used by scientists/people from all the other fields that weren't taught to program in their areas but for some reason need to program and can't learn stuff properly. So there's some programming done in python that is scientific but doesn't qualify as scientific programming, strictly
@fanshaw
@fanshaw 23 дня назад
I saw the C book I learnt from. I clicked.
@xskinyx
@xskinyx Месяц назад
The C Programming Language. Best programming book ever. You really have to read it to understand why. The pacing is perfect and there is no extraneous or repeated information. I love the description of the declarator syntax. It's really a work of art!
@michaelmicek
@michaelmicek Месяц назад
But don't use the 1st edition there.
@xskinyx
@xskinyx Месяц назад
@@michaelmicek The first edition is special because it was the textbook but also served as the language spec. To actually learn the language, 2nd edition is what you want, which is the '89 ANSI spec. Of course there are more modern versions of C that have great new features, but they aren't so crucial to learn since C and C++ diverged in '99, and most people use C as a complement to C++
@jboy55
@jboy55 26 дней назад
A grey beard at my first company I worked at out of school, back in the late 90s, said to me. "The K&R book is the greatest book written in the English language". He went on to describe how a complete understanding of complex concepts is in a thin book that can be understood by beginners. I read it, and was able to start writing soon after.
@Redman8086
@Redman8086 Месяц назад
C is God's programming language.
@travis8106
@travis8106 20 дней назад
I have been dabbling with programming for years on and off. I finally decided to take it seriously, and I am learning C. Learning C has given me a deeper appreciation for programming and computer science in general. I am finding myself falling in love with the language. The understanding it gave me for how computer hardware and programming works is absolutely priceless.
@ZaCaptain1229
@ZaCaptain1229 20 дней назад
Actually Holy C is God's Language
@Redman8086
@Redman8086 20 дней назад
@@travis8106 I program as a hobbyist and I don't enjoy any language as much as I enjoy C. You really feel like you're in control of everything. I like that the language doesn't do anything in the background that I don't tell it to do and has very few gotchas due to it's simplicity.
@nevokrien95
@nevokrien95 18 дней назад
Specifcly c99
@nevokrien95
@nevokrien95 18 дней назад
​@Redman8086 c has so many gotcha because of ub.... also weird memory bugs. Also macros. I still love it but it's one of the most gotcha langugess out there
@michaelglidewell1524
@michaelglidewell1524 Месяц назад
If you're going to learn one programming language, C (and I don't mean C++) would be the language to learn. Mainly because it will teach you to think about what the CPU is really doing. Then learn C++ and/or Python after that. Self-taught C/C++, Fortran, Python, Java, Linux/Unix shell script, etc. Used almost all of them professionally over my career. Last time I wrote Fortran code was probably 15 years ago. Last time I saw and/or ran Fortran code was yesterday. That's how prevalent it still is.
@TheMathSorcerer
@TheMathSorcerer Месяц назад
Awesome!!! Thank you for this comment!
@MartynDavies
@MartynDavies Месяц назад
I learned C in university and have used it in every job in my career. That skill has paid back a hundred times.
@vitalyl1327
@vitalyl1327 Месяц назад
It was true until around mid-80s. Since then, C was very detached from how the hardware actually worked. Just another high level language abstracting all the hardware fun away.
@jm.101
@jm.101 Месяц назад
I first learned Ruby and JavaScript, then C, then Java. Primary benefit of learning C is understanding pointers. I don’t really think the order you learn programming languages matters. Like you said, learn what you wanna learn.
@michaelmicek
@michaelmicek Месяц назад
​@@vitalyl1327I didn't dig into the details but in the 90s I was told that gcc's optimization involved converting the C code into a form of Lisp, optimizing that, and then compiling the result. About right?
@prism223
@prism223 Месяц назад
My 2 cents: 1. Programming is learned best when you have a fun problem to solve. For me, I was interested in math and physics, and I wanted to see solutions to problems that I couldn't solve by hand, but I had read that computers could solve those problems. 2. Start with whatever you have or can get access to easily. For me, it was a graphing calculator that had a BASIC dialect. 3. Follow your curiosity. Don't worry about what is popular, what other people say is the best path, at least not at first, unless you are also interested in what they say. The reason I say this is that your learning is like a fire. In the beginning, the fire is just a spark and easily goes out. You have to carefully place the ember in the right material and give it air so that it can grow strong enough to burn larger pieces of fuel. If you follow boring advice that is helpful in the long run, then you will probably quit in the short run. So, it's better to chase the interest until you gain the confidence to try the boring-but-useful path. This might be e.g. implementing your own bad physics engine instead of loading someone else's great physics engine. You will not get as much done in terms of practical output, but you will get much more in terms of learning and investment in the field.
@DannyMexen9
@DannyMexen9 21 день назад
I have to agree. The only reason I would learn a programming language for its own sake is have a consistent income stream that allows it.
@vonbayernDE
@vonbayernDE 18 дней назад
I use this approach. Help me to stay interested. I did django web tutorial. My brain will explode if i follow basic tutorial like loop, array etc.i would learn c, let say for controlling LED to make it iteresting.
@DunkSouth
@DunkSouth Месяц назад
I love FORTRAN! I am a physics grad student, and all our highest-performance codes are in F90/F95. I was so surprised when learning it by how simple and readable the syntax is.
@gabrielepicco3582
@gabrielepicco3582 Месяц назад
Same, currently updating to version 2023 of the language:) and the guys of the fortran discourse are doing an incredible job at delivering new, more up to date tools for the language
@ajarivas72
@ajarivas72 Месяц назад
@@gabrielepicco3582 What compiler are you using?
@henrikholst7490
@henrikholst7490 17 дней назад
@@gabrielepicco3582 too bad I think the Syntax and look of modern Fortran is worse than it was. There is not much else than Fortran that has a nice syntax for array computations. Matlab and Python has a nice syntax but they are not compiled so lacks in overall performance.
@gabrielepicco3582
@gabrielepicco3582 16 дней назад
@henrikholst7490 syntax has mostly not changed at all, fortran is typically fully retrocompatible. The only big changes are the new features, but you can still choose to stick to the old ones and their syntax is the very same
@geert5811
@geert5811 Месяц назад
I was a cobol programmer back in the eighties of the previous century. When I lay hand on the Brian Kernighan and Dennis Ritchie "C Programming Language" I was blown away! From there I went to unix and from there to linux. Now I'm retired, and dumped all of my IT books except the Brian Kernighan and Dennis Ritchie "C Programming Language" ... g.
@burkec33
@burkec33 Месяц назад
Yeah, still wish I kept my copy of that from years ago.
@alexanderpoplawski577
@alexanderpoplawski577 26 дней назад
Yes, still have it. First edition, that came with the IBM PC.
@flynnoflenniken7402
@flynnoflenniken7402 14 дней назад
Last company I worked for still uses cobol today. It's just lots of legacy stuff that's too costly for too little gain to bother rebuilding.
@martincox4520
@martincox4520 4 дня назад
I wrote my first COBOL programs in 1970. The course I was on we also used the "City and Guilds" assembler type language that ran on a Duce? system and the programs I have
@azimuth4850
@azimuth4850 Месяц назад
C is still very much in use. On the forums I see a lot of people at universities (and companies) writing their own libraries in C, just so they can make some algorithm run faster. Hardware is expensive, why buy more Nvidia GPU's when you can hire a C programmer to make it go 50% faster.
@hrayz
@hrayz Месяц назад
Back in the CGA and 8086/8 - 80286 days, I wrote my own graphics code in ASM (to insert in my C programmes) because my routines for basic points, lines, boxes, circles, etc. were over x200 faster than the included ones.
@azimuth4850
@azimuth4850 Месяц назад
@@hrayz 200x!! Very nice! I am still learning C myself, ASM is still a distant goal. For now I limp by with C++....it gets the job done.
@evancourtney7746
@evancourtney7746 Месяц назад
Shoot, 50% faster they can keep. Get the guy who turns your On^2 algorithm into an O nLog n one, that will save you some real hardware money.
@MadocComadrin
@MadocComadrin Месяц назад
@@evancourtney7746 A lot of that has already been done, but you ultimately need both. Even something well studied like the various FFTs can be improved significantly by cutting down constant factors, playing nice with the hardware, etc.
@dubhd4r4
@dubhd4r4 Месяц назад
For NVIDIA GPUs CUDA is written in a C like (well C++) language. Now you can use Pytorch on top, or one of the higher level languages, but C will never go out of style, just link punk rock.
@Gurblash
@Gurblash Месяц назад
I remember being 13 years old. Playing on a club soccer team, at the time my coach, Scott, was attending community college. We had been talking about my interests and had mentioned that I was learning Flash AS and HTML at the time. I had some basic BASIC experience. The next week he brought me his Pascal book he had just finished using for school. I never did anything with the Pascal language but I firmly believe that his little act of showing interest in what I was doing helped spur and continue my love for computers and programming languages.
@mfaracing
@mfaracing Месяц назад
It was very good to read your story. Thank you for sharing it.
@ksb2112
@ksb2112 Месяц назад
Ah, Flash AS. Those were the days. 🙂
@gorak9000
@gorak9000 Месяц назад
Pascal was actually the very first language I learned. Back in grade 9, taking the grade 11 programming course. The following year in the grade 12 course, we learned C++. I've never used Pascal for anything since, but it will always have a soft spot with me as my introduction to coding.
@Antonio_Gallego
@Antonio_Gallego Месяц назад
The paragraph you were looking for is section 1,1 Getting Started "The only way to learn a new programming language is by writing programs in it. The first program to write is the same for all languages: print the words 'hello, world' This is a big hurdle; to leap over it you have to be able to create the program text somewhere, compile it successfully, load it, run it, and find out where your output went. With these mechanical details mastered, everything else is comparatively easy."
@charg1nmalaz0r51
@charg1nmalaz0r51 Месяц назад
Its usually best to ignore people that are dogmatic and try to convince you to learn a certain thing. The amount of coding gatekeepers in programming is beyond tiresome.
@paradoxicalcat7173
@paradoxicalcat7173 19 дней назад
I use multiple languages (C, C++, C#, Java, Assembler) and I'm currently being rail-roaded into doing things a certain way "because C++ language feature". I don't need half that crap as I can use the primitives they are derived from without any problems. It really annoys the hell out of me when someone becomes obsessed with language features (ESPECIALLY in C++). I just look at them and ask how we ever wrote software before 1999.
@DaveJohnsonUTU
@DaveJohnsonUTU Месяц назад
I learned C from Kernighan and Ritchie (first edition) in 1982. I was programming in assembly (M68000) at the time and so I didn't really have a need to learn C at that moment. But people were saying that C was the up and coming language, and that it was similar in many ways to the M68000 assembly language. I didn't have a CS degree (mine was physics), so I had very little background in high level languages. But I wanted to learn everything I could about computers and programming. Anyway, the book was great, and I still have my old tattered copy. Thanks for your rant. It resonated with me.
@watkins1robert
@watkins1robert Месяц назад
I carried the K&R book and began to study the nuance - what was required and what wasn't explicitly stated. I examined the generated code from various compilers I had access to to learn which routes they took in ambiguous situations, like order of argument evaluation. There was something magic about the high level language and the resulting machine code that was still understandable on a large scale.
@LarryButler
@LarryButler Месяц назад
And so I'm watching this...just because..
@FPChris
@FPChris Месяц назад
C is still a great language.
@OleJoe
@OleJoe Месяц назад
Fortran is especially suited for mathematics. It was originally FORTRAN, which stood for "Formula Translation." I learned Fortran and Pascal in college. At the time Pascal was a big, big deal. They were even teaching it in high school. I kind of picked up C on my own. The coolest and maybe the hardest language I learned was "Plain TeX" by Donald Knuth. TeX is the ultimate markup language for writing math papers. You get ultimate control over everything. Needless to say some of my fellow teachers were not impressed by my class notes and tests, etc. I was accused of photocopying from some book, they were that good. Like I said, it's pretty hard to learn, but they do have frontend packages for TeX like LaTeX which does make it easier. I had several notebooks with examples on how to do stuff and would constantly refer back to them.
@2meters2
@2meters2 Месяц назад
You brought back great memories. Wrote my thesis and several scientific papers in LaTex, in the time that papers were really made of paper.
@JavaScripting64
@JavaScripting64 Месяц назад
I shouldn't have watched this
@zatornagirroc7175
@zatornagirroc7175 18 дней назад
One of the best classes I took when getting my associates degree in computer programming was a programming fundamentals class taught by one of the most intelligent people I have ever known (thanks, Paul, if you are still out there). We talked about the building blocks of structured code, flowcharting, single exit and entry points, if logic, different loops, algorithm design. And never once touched a programming language.
@srazash
@srazash Месяц назад
You were right about the quote, it is from TCPL - I know because I'm currently reading the 2nd edition! "The only way to learn a new programming language is by writing programs in it. The first program to write is the same for all languages: Print the words hello, world This is the big hurdle; to leap over it you have to be able to create the program text somewhere, compile it successfully, load it, run it, and find out where your output went. With these mechanical details mastered, everything else is com- paratively easy." That's on pages 5-6, chapter 1 of the 2nd edition.
@albertmagician8613
@albertmagician8613 10 дней назад
The big hurdle? I doubt it. The real problem is grasping repetition and conditions. And the architecture. Most large programs are a mess.
@ercntreras
@ercntreras Месяц назад
Yeah, we shouldn't stop learning the things that draw our attention and curiosity just because we should learn that things that only pay the bills.
@edwardnilges1675
@edwardnilges1675 Месяц назад
Basic as a junior in high school around 1984, Fortran in first year at college, followed by Pascal. Picked up the K&R book on C after college and have wanted to learn C since but have yet to get through it. Agree on appreciating the languages for what they are. My sister who is not too much older was programming with punch cards in college. I got to dial in with my college friend's Kaypro 10 and an analog modem to do my Fortran homework from my dorm room. Kids these days have it easy!
@ego-lay_atman-bay
@ego-lay_atman-bay 18 дней назад
I personally do programming because I love it. Every project I work on, is something I chose to do. I never learned any programming language solely for money, I learned these programming languages because I wanted to. I started out with scratch, moved onto snap (which is similar to scratch, but more advanced, and the creators love lisp, so much that they're adding the ability to translate blocks to lisp and back natively), and after that, I moved onto html, css, and javascript. I then learned python, and have been programming in both python and javascript for different projects since. Currently, I am planning to learn C#, because there is a program that I really want to make for both desktop and mobile (specifically android, I don't care too much about ios (it's going to be a fully open source project, with no form of payment)) (or at least the backend),
@jaywarzynski4111
@jaywarzynski4111 7 дней назад
i am a fledgling computer science student: i began taking CIS (computer information systems) classes back in fall of 2023 and have since moved into actual computer science classes, along side, knocking out pre-calculus and beginning calculus next fall 2024. i still have a very long road ahead of me, and i started, by taking an "intro to computer logic" course that had us learn and code in python. i absolutely fell in love with python and fell in love with coding in general! since then i have taken 3 other classes that have involved coding and they always end up using python (but one used HTML & CSS too) the strange juxtaposition i have observed in a modern community college is this: the class always starts strong with 15-30 students, but as soon as the coding comes into the course, people drop and leave like crazy! it's astonishing how many people fear programming, and in today's world i have even seen students, come into the class and begin fear mongering, using a.i. as an existential doomsday weapon, of sorts, to scare others out of the class? i don't get it? why badger others, over your own esoteric fear of the unknown? i have also had professors in college: blatantly state their own fears and concerns over a.i. and act as if their job is in jeopardy and tell me outright "i hope you are here for the learning, because by the time you graduate there will be NO jobs for you!!!" i find all of this behavior rather perplexing? i mean to say, shouldn't we, as computer scientists be embracing the future and embracing change more then anyone else? is it truly so bad if i never make a dollar with my code, but i instead enhance my own understanding and appreciation for what goes into the code? i suppose the point im getting too is this: math sorcerer i completely agree with you!!! i love being in college in 2024, studying computer science, while everyone else is running around screaming their heads off 😆even with this "real, possible threat" at my doorstep, i am not discouraged about it, or by it, in the slightest, because if nothing else: i am there to learn! i appreciate programming and understanding the flow of logic, surrounding it so immensely! i do hope to be able to get into the industry one day, and i do hope to make a true societal impact with my learning! that would be great! even if it's something as small and as simple as, building a public commercial website for a local business or helping a client design a flashy mobile app that he uses to service his clients; being able to properly produce code and have it out in the wild, fully functioning and providing for people seems like a true goal for me! anyways i gotta get back to my studies. i have barely scratched the surface of python and i still gotta learn some production code like java as well as dive into some low level like C if i am to ever have a true mastery of this wild discipline of study.
@stonechen4820
@stonechen4820 Месяц назад
FORTRAN is still being updated! It's heavily used in scientific compute, particularly climate and environmental stuff. Also for fun you can check out some of the C "successor" languages who are try to be C but better (unlike say Rust which is going for a different thing completely). ZIg, Odin, Jai
@2meters2
@2meters2 Месяц назад
So cool you have Kernighan and Ritchie there. 40 years ago I learned C from that book and C++ shortly after and still using this today. In my opinion C and C++ are THE most fundamental programming languages around. Every other language (including Python) is based on the principles of functional programming (C) and object oriented programming (C++), so after you learned C/C++, everything else is easy to understand. Everything else is also (often much) slower than C/C++, since most languages they took pointers away, which are in my opinion the most power computer science construct ever invented.
@albertmagician8613
@albertmagician8613 10 дней назад
Pointers are the addresses of machine code, say assembler. High languages are trying to abstract them away and fail. C doesn't do that and neither does Forth.
@Torajio
@Torajio Месяц назад
Come across a lot of RU-vid comments about how they wish the person in the video had been their teacher when they were younger. However, this overlooks the viewer's own mindset at the time-distracted, unfocused, uninterested, not really wanting to be there etc, all of which significantly impacts learning. Actively seeking knowledge because you want to learn something makes a big difference.
@tineocedric
@tineocedric Месяц назад
Very good points. Thanks! After a career in IT - i decided to get back to the basics. Too much emphasis is put on what is needed on the job or for projects and it results in entire generations of developers that know a certain slice, but don't have the fundamentals. For me it clarifies and puts in the right place so many pieces of the puzzle to finally educate myself in C, assembly, the foundation of what current software is build upon, instead of just knowing how to use an api and having no idea what magic (or hell) lies underneath.
@bitmaxim
@bitmaxim Месяц назад
Since you asked, Bjarne Stroustrup is pronounced "bee-yarn-eh strow-strup" . How do I know? I've talked to him several times (used to work where he worked).
@whickervision742
@whickervision742 Месяц назад
Pronounce BS any way you want. In C++ you can override any built-in keywords or operators to mean anything else😢 Whereas + in math is fundamental and universal, + in C++ could be made to mean literally any operation, or something that takes infinite time, or nothing at all.
@edwarddurkin6635
@edwarddurkin6635 Месяц назад
I never liked idea of overloading operators.
@stighemmer
@stighemmer Месяц назад
If you talk to the right mathematicians they will use + to mean all sorts of wierd things.
@atijohn8135
@atijohn8135 18 дней назад
​@@whickervision742 bruh, you use the same + for scalar, vector and matrix addition, any C++ linear algebra library will have those operations defined with the operator+(), meanwhile in C you'd have those operations as functions going by names like mat3x2f32_add() not saying that the C way of doing it is bad, but saying that it's exactly like you write it in maths is absurd
@dahrayyem2648
@dahrayyem2648 25 дней назад
My first programming language was Basic. But once i learned C every other language was easier.
@ronfarmery
@ronfarmery 12 дней назад
I agree with you, any language that you learn, is just for the learning. In fact, -anything- you learn is always just for the fact that learning is for -you-, never for someone else. Having past the three quarter century mark, I can confirm that I have been learning all my life. In fact, I used the C language for the first time at the end of the 70’s. It is still my favorite language even after learning 30+ other ones. Each one has its own purpose, that is sure. I did not limit myself to computer languages. I am trilingual since I was a small boy and I have very good knowledge of two other spoken languages. Additionally, I am learning even another one. That’s in addition to the fact that last year, I became a ham radio operator, successfully passing the HAREC exam, the top license, the most complex but also the most complete one. So, never stop learning! It keeps the brain busy. By the way, Kernighan and Ritchie did not invent the C++ language as you seem to say in this video, just C.
@mlliarm
@mlliarm Месяц назад
Programming is a great skill for any mathematician. Not only for calculating stuff, or typesetting text (LaTeX) but also for proving theorems (Coq, Isabelle, Lean, Agda, etc). Ps: I found Steve Summit's website on C around 2003. It's still active, with solid notes on the K&R book. Thanks Steve !
@profamitgupta
@profamitgupta Месяц назад
I am a faculty now for about 13 years and do most of my research by developing my own solvers. I have been coding for about 27 years (started out in high school). I have learnt C++, Fortran and C. There is no greater joy that i derive than formulating a problem in the form of a code and experiencing it work.
@OrdenJust
@OrdenJust Месяц назад
Oooh....I remember getting frustrated trying to self-teach out of K&R and getting stuck on one of the first exercises. Finally got it. And learned to pay closer attention when reading! (My bug was failing to distinguish = from ==).
@IllumTheMessage
@IllumTheMessage Месяц назад
A lot of us did that
@Yup712
@Yup712 23 дня назад
Just wanted to say thank you again for the amazing channel! I majored in Social Sciences in Undergrad & did well, but miss Math! So I’ve been going back and taking Math classes & studying to learn the higher levels of Mathematics, not for a specific need so much, but a desire to understand better.
@douglasstrother6584
@douglasstrother6584 Месяц назад
REAL MEN PROGRAM IN "C"!!
@ccriztoff
@ccriztoff Месяц назад
And sorcerers program in HolyC
@darkgalaxy5548
@darkgalaxy5548 Месяц назад
Pascal is for quiche eaters
@douglasstrother6584
@douglasstrother6584 Месяц назад
@@ccriztoff XD ... "There are some who call me ... Tim."
@tronwalseth1198
@tronwalseth1198 Месяц назад
No matter what language is on the table! :)
@philkulibin2602
@philkulibin2602 Месяц назад
Real time and system level programming could become really ugly in C++ but not in C. True
@CyrillKR
@CyrillKR Месяц назад
I got the second edition of the C programming language book just because of curiosity. I don't need C for a job or for any college assignment (I learn on my own leisure). I used JS and Python at work and I was very curious about computer science in general so I approached C entirely for educational purposes and it's been fascinating to work with it.
@SergeyB1995
@SergeyB1995 Месяц назад
There is a programming book, written quite recently (second edition arrived around 2020). There are 3 volumes to it. The author (a Moscow State University professor and a programmer himself) set out the goal to give students the opportunity to learn programming the way it should be learned (in author's opinion). It starts by teaching some Linux basics, then goes on to teach basics of procedural programming in Pascal. Then it dives into Assembly to give an understanding of low-level programming. Second volume focuses on teaching basics of C as a low-level programming language, at the same time explaining how operating systems work. The third volume focuses on programming paradigms. Some object-oriented programming on example of C++ is taught, there is some functional programming as well. The e-book is available for free, some printed copies were sold as well, but none seem to be available right now. Quite a gem for self-study. Available in russian only, unfortunately. (It is quite difficult to find a person proficient enough and willing to translate a whole book I guess).
@ianalen1687
@ianalen1687 Месяц назад
On March 1, 2021, author-programmer Andrei Viktorovich Stolyarov made the second edition of the book “Programming: An Introduction to the Profession” available for free access. The three-volume book can be downloaded for free in pdf format
@AndreySobolev
@AndreySobolev Месяц назад
Can you name it, please?
@petredraghici8705
@petredraghici8705 Месяц назад
@@ianalen1687 Is there an English version?
@petredraghici8705
@petredraghici8705 Месяц назад
To bad is in Russian only and the pdf file is locked so you cant use google translate to read it.
@chuckfarley7642
@chuckfarley7642 Месяц назад
I basically agree with what you’re saying here. I would never advise someone to learn or not learn a language based on employability. The only other thing I would add is learning how to program and learning a language are not the same thing.
@Sketchartbymarc1
@Sketchartbymarc1 7 дней назад
Remember that Kernighan and Riche book well! I agree it was helpful along with other texts when I was learned C back in the 80s. One of my professors was adamant that we read it.
@juggernautknight2749
@juggernautknight2749 Месяц назад
Too bad, I'm into that stuff Mr. Sorcerer
@oscaralexander6594
@oscaralexander6594 Месяц назад
I really like programming. I learned basic in a casio fx750p back in 1985 and then in the 90's visual basic and amos on the Commodore amiga
@torarinvik4920
@torarinvik4920 Месяц назад
I know many including C++, Haskell, Python and more, but my favorite is F#, a functional programming language that runs on .NET making it possible to use C# libraries. A close second is Swift, it's similar to Rust but with automatic memory management, better OOP and more concise.
@davidionesi9207
@davidionesi9207 6 дней назад
Thank you. I resonated with your apptoach to learn for the sake of learning. I love your videos.
@davidboettcher1900
@davidboettcher1900 Месяц назад
Old languages are like old cars. The newer ones are better, but also more complicated. People like old cars for nostalgia, but also because they are easier to understand. Understanding an old car gives an insight into a newer one that, at first sight, is impenetrable. And who doesn't like a bit of nostalgia. The book by Kernighan and Ritchie is beautifully written and warrants a place on the bookshelf of anyone interested in technology, even if they never write any code. This was a great episode, thanks.
@Danieljordan2
@Danieljordan2 21 день назад
100% agreed. I graduated from CS 25 years ago, and C and Java were the main used languages. I’m now learning Python and is quite difficult for me. Is like my brain isn’t wired for higher languages.
@thomasstambaugh5181
@thomasstambaugh5181 Месяц назад
FWIW, the "Wizard Book" is "Structure and Interpretation of Computer Programs". It uses Lisp throughout because Lisp had arguably the simplest syntax of any computer language of its day, and the Wizard Book is a deep dive into a VERY deep subject.
@pschneider1968
@pschneider1968 13 дней назад
It uses Scheme, not Lisp.
@thomasstambaugh5181
@thomasstambaugh5181 12 дней назад
@@pschneider1968 Scheme is a Lisp variant. SICP does indeed use Scheme throughout -- and it therefore uses Lisp throughout. Importantly -- this choice was made in no small part because both Scheme and Lisp have minimal syntactic complexity.
@pschneider1968
@pschneider1968 12 дней назад
@@thomasstambaugh5181 Yeah, that's right. I guess Common Lisp was standardized wwwaaayy after this book was published. I remember working through the book in, ehr... 1995 or 96? using the R^3 version of MIT scheme... Long time ago.
@thomasstambaugh5181
@thomasstambaugh5181 12 дней назад
@@pschneider1968 Heh -- I learned Lisp in 1973. Lisp was at the center of the first great AI boom of the 1980s. I worked with two competing vendors in Cambridge -- Symbolics and Lisp Machines Inc (LMI) -- during their heyday. Lisp was universal in the Computer Science community long before Common Lisp was standardized (and long before Scheme was created).
@reidpinchback8850
@reidpinchback8850 11 дней назад
​@@thomasstambaugh5181but it is important to note that the choice of Scheme wasn't just some random event in selecting that versus other LISP variants of the time. When this was happening, Scheme benefited from some of the early attempts to describe the meaning of programs via robust semantic formalisms such as denotational semantics. LISP generally I don't believe was in that state at that time. The goal at MIT and elsewhere, at that time, was to sidestep problems like other languages had experienced where different ports or variants got tangled up in differing human intepretations of prose-based language descriptions. It was a long journey from Algol until Scheme wherr finally made such attempts finally came together. Yeah, I have been at this that long to remember, lol.
@Squish888
@Squish888 Месяц назад
Assembly is kicking around. Had to learn some RISC-V for a systems course some years ago.
@funicon3689
@funicon3689 Месяц назад
assembly is critical for debugging regardless of where you work on the stack
@clownhands
@clownhands Месяц назад
I worked on a very popular enterprise storage system written entirely in C, except for a couple of critical loops in assembly. It was a joy to build and even support. Miss the old days.
@kenkenken7789
@kenkenken7789 Месяц назад
Hello there from vietnam, ho chi minh city, it’s 7:55AM in the morning here and i am watching :”> I just want to reteach myself on math as 31 for the sake of learning and i can starting to see the beauty of math in every daily things argggg and found your channel
@duongquanghoai217
@duongquanghoai217 Месяц назад
hey, good to see a fellow Vietnamese here, I'm also 31 and want to relearn math as well. What a coincidence
@ccriztoff
@ccriztoff Месяц назад
You two should meet up
@mfaracing
@mfaracing Месяц назад
Do it! You can't go wrong.
@novakandfaith123
@novakandfaith123 Месяц назад
I was average at Math at school, didn't give much thought back then, Math drifted into the past behind me. Nowadays I love Maths bro, good choice!
@Ai_Boss_
@Ai_Boss_ Месяц назад
Same here mate. My kid self was a idiot for rejecting math, and I'm now trying to correct this.
@warrenmadden2586
@warrenmadden2586 Месяц назад
I'm feeling old - I took the class the Wizard Book is named after, with Sussman and Abelson as the instructors, back in the spring of 1982 at MIT. Except, way back then, the book was lecture notes printed out on 8.5x11 paper. I enjoyed it so much I became a student TA for them the next several semesters. Gotta love a programming book that mixes computer puns into its lessons! :-)
@michaelsommers2356
@michaelsommers2356 Месяц назад
The lectures from one instance of the course are on RU-vid.
@xravenx24fe
@xravenx24fe Месяц назад
​@michaelsommers2356 Yeah those lectures are great in particular the ones in the middle that explain recursion and higher order functions
@MadocComadrin
@MadocComadrin Месяц назад
Despite going through SICP a couple of times for learning, TAing, and teaching, I don't think I've every actually seen the cover art until your comment made me look it up. XD
@STEAMerBear
@STEAMerBear Месяц назад
You and I are the only two left--I don' t know anyone else who still has a copy of Kernighan & Ritchie! It was my first C textbook (at Foothiil College, Los Altos, CA) in or around 1987-88. We were programing on mini-computers running UNIX and shell scriptin was a huge part of the class as well. I bought a copy of Borland C for that class (to match my Borland Pascal). I later I went on to teach C & Pascal at a private high school in Fayetteville, NC in 1991-93 and often referenced to K&R.
@keithstandiford3761
@keithstandiford3761 Месяц назад
Oh My! More languages than I can remember! Fortran (first!), Algol, Pascal, Snobol (a string processing language with regular expression matching!), C (on UNIX over 50 years ago), Python, Perl, C++ and C# (still a novice for those), and more assembly languages than I can remember. I have a lot of respect for the inventors of Rust, that may be next. I agree with many others: learn C first. After that you'll be amazed how many others you can already read! And never stop learning, for two reasons. First you never know where you will end up. In my career I finished doing things I NEVER expected. Second, the process keeps your brain young and engaged. I am currently playing with bare hardware micro computers like the Pi Pico (look on Github) and designing analog printed circuit boards, another thing I never expected to do.
@davidc4322
@davidc4322 Месяц назад
As a CS and math double major, I love Python more than any language. The turnaround time from thought into code seems substantially less than most other languages due to its minimal syntax. And with the recent advancements in machine learning, I love being able to easily connect advanced math concepts and CS with the robust ML tools available for Python. 🐍
@isaak3680
@isaak3680 29 дней назад
Python’s robust ecosystem of libraries is what makes it my favorite. I’ve found that no matter what project I want to do, there’s likely a library out there that makes it 10 times easier
@nERVEcenter117
@nERVEcenter117 Месяц назад
I think the critical languages to know are C, Python, and any Lisp. C to understand how modern systems utilize memory. Python to understand how to manipulate data and abstractions. And Lisp to learn how to structure programs, with uniform syntax and expression-based programming. The mix of ideas in these three puts you right in the middle of a nice triangle: Learning to solve a problem, learning to craft a solution, and learning how that solution runs on the system.
@DanialToor-jb2hw
@DanialToor-jb2hw Месяц назад
Most jobs in SWE today are using C#, Java, Javascript/Typescript and some C++. So none of the languages described above. They also require you to use abstraction patterns that are not commonly seen using Lisp, Python or C. Your backends are going to built using established design patterns like Repository Pattern, Dependency Injection, and Model-View-Controller (MVC) or Model-View-ViewModel (MVVM).. which none of those languages have. OOP is still quite common in the jobs that aren't laying off like FAANG.
@DanialToor-jb2hw
@DanialToor-jb2hw Месяц назад
C is the only real fundamental language on that list, since C will literally have you realize when you are writing bad C#, Java code and how you can use memory better. But lisp, as a whole is great for mathematics enthusiasts, hobbyists, and script kiddies. Python will be great for those that want to quickly prototype something, or use some useful libraries for data analysis, but outside of that, is not a language used to build scalable systems.
@jackswitzer5569
@jackswitzer5569 Месяц назад
Just learnt Assembly as a second year in math and computer engineering so don’t worry it’s still around! It was very useful, I don’t think I understood pointers or any memory management that was in C until there was that fundamental level of understanding that came from learning assembly
@Mykey404
@Mykey404 10 дней назад
Reading the comments, it's great to know I'm not the only old guy here.
@KAZVorpal
@KAZVorpal 27 дней назад
Weird, I read that exact C programming language book maybe 40 years ago. Now I'm wondering where my copy ever went
@joannloos17
@joannloos17 Месяц назад
K&R 1st edition didn’t allow you to pass pointers as parameters. This was the major change between different versions. But, if you know one programming language you can basically learn any of them.
@NullHand
@NullHand Месяц назад
I think most programmers arrive at this wisdom somewhere on or about the third "language" they learn. I like to say programming "languages" are more like dialects of the same language. The real differences are just in the 'slang' and 'etiquette' of re-using OPC (Other People's Code).
@michaelsommers2356
@michaelsommers2356 Месяц назад
_"1st edition didn’t allow you to pass pointers as parameters."_ What!? You certainly could pass pointers around. Every program started with int main(argc, argv) int argc; char *argv[]; ... What you didn't have was references, but they are just syntactic sugar.
@joannloos17
@joannloos17 Месяц назад
@@michaelsommers2356 my bad. It was 20+ years ago…..
@EduardoEscarez
@EduardoEscarez Месяц назад
As a newish programmer (JavaScript/TypeScript - Python - SQL) I agree with the video and its spirit. Learning different programming languages (and just continuous learning) is a superpower because it gives you the ability to understand both why languages are commonly targeted to specific areas, and to see the shared structures and patters across programming. I'm interested in learning systems languages like C, mostly because it gives you a view of view of how software works under the hood and fill some gaps in my knowledge, even if probably I wouldn't program a lot with that language. Also, that video title was enough to want to see it and become a new subscriber 😅
@codewizard58
@codewizard58 Месяц назад
Using the grammar at the back of the K & R book I wrote and sold C compilers for the CDC 6500 NOS 1.4 OS in 1982. The compiler was written in PASCAL. Also did an 8086 code generator that was cross compiled on the CDC machine and ran C programs on a SBC86-12 Multibus card.
@ImranMoezKhan
@ImranMoezKhan Месяц назад
A few years ago I was working in the semiconductors industry. You can't get very far without knowing LISP (SKILL-LISP) or another old "unused" language TCL. Just about no such thing as a "dead" language
@rusi6219
@rusi6219 Месяц назад
Yeah, critical financial infrastructure pretty much runs on COBOL
@PaulSpades
@PaulSpades 19 дней назад
Tickle isn't that old. It's a funky 90s dynamic language. The commonly used (in Python and other languages) TK ui framework comes from tickle. I played around in it for a few years, kind of dig it, but never found professional use for it. Python and Lua sort of replaced it in the language-to-get-things-done-quickly niche.
@ulysses_grant
@ulysses_grant 11 дней назад
Good to see such a video from you. I'm a senior C ANSI programmer and I just love this language-it's by far my favorite programming language of all time. The problem is that I just cannot find a job in software development anymore, first because I'm a little old now, and second because I have no professional experience with modern programming languages like Python, Rust, C#, etc. - even though I know how to program in these languages. But it's ok, I will keep trying to find a job to work with development again, even if it's a junior position. I just love programming. Anyway, another great book I can recomend to anyone who is studying C is Frantisek Franek's "Memory as a Programming Concept in C and C++". Quite intermediate/advanced level, but it's a classic. Enjoy your trip! Computer programming is just a fabulous world.
@jackevans2386
@jackevans2386 12 дней назад
I've just turned 70. My introduction to programming started with Basic on a VIC-20 computer, back in the early 80s. I then learnt machine code programing and then ASM. I loved it all. A couple of decades later, the Atmel AVR microcontrollers appeared. It was quite amazing how the skills I'd learnt from my VIC-20 ASM days were relevant again. I was programming AT90S2313 Atmel micros in no time at all. I've never looked back at the hours spent learning with any animosity at all. It is always worth it.
@ab-cq1oi
@ab-cq1oi Месяц назад
yes, they still teach assembly, and no, nobody likes java
@eyzake
@eyzake Месяц назад
as a future java dev i agree but well i have been coding in java for 6 months now😅
@sunnohh
@sunnohh 29 дней назад
Nah, there are programmers in banks and brokerages that love java, next best thing to cobol
@toby9999
@toby9999 12 дней назад
I hate java. I've been trying to learn it for 25 years. My brain says no. Too many years coding in C and C++.
@Andrumen01
@Andrumen01 Месяц назад
My suggestions on programming languages to learn: - C++ (low level compiled) - Python (high level interpreted) - Javascript (web) - Mathematica/MatLab (commercial) If not those, at least the scheme: - Compiled - Interpreted - Web - Commercial. The logic is the same, the capabilities are different.
@michaelsommers2356
@michaelsommers2356 Месяц назад
If you think C++ is low-level, give C a shot, and learn what low-level really is.
@Andrumen01
@Andrumen01 Месяц назад
@@michaelsommers2356 There are opinions on this, and I fall into the category that C++ is still low level, comparing it to more general programming languages. But if you really want to go low level, learn assembly....not much more for it. Also, C I have been using for over 20 years now, so nothing extremely new there.
@Andrumen01
@Andrumen01 Месяц назад
@@michaelsommers2356 There are two trains of thought about this, one says that CPP is a high level language, some say that it is still low; I am in the latter group. I mean, learn Assembly if you want to learn a low level language. For what I do, non-embedded systems, I find that C++ is more useful than C. The bonus of learning C++ is that you will learn C simultaneously (to a greater extent, anyway). C was the first language that I learned 20+ years ago and not so long after I started using C++ and it is what I have been using for the longest time; along with Python and JavaScript. For my PhD I used Mathematica extensively, just for time sakes and ease. Don't take my word as the final word, but it's just my preference as a (almost) professional programmer.
@maowtm
@maowtm Месяц назад
​@@michaelsommers2356 If you think C is low-level, give assembly a shot, and learn what low-level really is. /s
@vitalyl1327
@vitalyl1327 Месяц назад
There is no such a thing as a "compiled" or an "interpreted" language. There are languages that are better implemented as compiled, there are languages that are not worth even trying compiling them and interpretation is enough, but you absolutely can interpret C++ (ever seen CINT?) or compile Python (seen IronPython?). Also, why web? I've been programming since early 80s, and never touched anything web, ever. Don't think I missed anything worthwhile.
@paulvmunix
@paulvmunix Месяц назад
The beloved K&R. There have been songs/poems written about this book. Also, prior to the first iterations of ANSI-C. there was K&R C with it's own idiosyncracies :) I love your channel!
@argonwheatbelly637
@argonwheatbelly637 Месяц назад
main() int argc; char *argv[]; { ... } vs. main(int ac, char **av) { ... }
@christopher1989ish
@christopher1989ish Месяц назад
I'm approaching python and coding at hobby level. I just took stock of the things I had and thot what can be done or taught free of charge. Running ubuntu on a laptop so I've been learning that too. It's amazing what you'll push to get working on an os that doesn't easily run games natively lol
@CM_Burns
@CM_Burns Месяц назад
Make Fortran Great Again.
@ajarivas72
@ajarivas72 Месяц назад
Fortran has always been great
@CM_Burns
@CM_Burns Месяц назад
@@ajarivas72 yes, especially in high performance computing.
@ajarivas72
@ajarivas72 Месяц назад
@@CM_Burns For 8 years Fortran was the only language I programmed in. I compiled on Windows, UNIX and Linux. For some time I was the user of 80% of the resources of the university mainframe.
@calebuic4310
@calebuic4310 Месяц назад
You’re referring to Structure and Interpretation of Computer Programs
@dougpark1025
@dougpark1025 Месяц назад
I've been programming for more than 40 years. I started with Basic, then Fortran, C, Pascal, C++, Java, Ruby, various scripting languages, dabbled in JavaScript, PHP, and learned Python pretty well. A programming language is just a technology that facilitates expressing some algorithm in a way that both you and the computer you are using understand. Computers work in very simplistic ways, Look at the assembly instructions for the hardware you happen to programming for. These are very simple taken one at a time. But are often difficult to understand taken in quantity. Even though binary numbers are fairly easy to understand it's a lot easier to understand more familiar decimal numbers. But at times it is better to use something like hexadecimal numbers. Learning algorithms, data structures, and other concepts like design patterns, etc. are much more important than learning a specific language. Grasping algorithmic complexity is another area that I've seen really smart people not really comprehend.
@edwarddurkin6635
@edwarddurkin6635 Месяц назад
Learned FORTRAN in college. Got to write some programs in it when I worked for the phone company. There I learned Basic, C, C++, VB, dBase, and some scripting languages that I can’t even remember. FORTRAN was a memory by the mid 90s. Pascal was hot but I never used it. C++ was in demand so I did some work with that and then moved on to Java.
@Rust_Rust_Rust
@Rust_Rust_Rust Месяц назад
"You probably shouldn't watch this" - Reverse psychology ❤
@chuckfarley7642
@chuckfarley7642 Месяц назад
And as far as “dead” languages if your weather forecast was right, thank FORTAN. If your paycheck cleared, thank COBOL.
@gorak9000
@gorak9000 Месяц назад
I wouldn't call them dead, but how many new projects starting today would use fortran or cobol? I've never coded in cobol, but I have done some work in fortran. If you're a good programmer, the language doesn't much matter - you can get used to anything. The concepts are all the same, it's just the syntax that's really different. It's just how long it takes you to get used to the syntax that's the issue.
@michaelrose1985
@michaelrose1985 20 дней назад
I'm currently 53 years old, and I couldn't agree with you more. I learned Spanish and lost it. I set up a New Year's resolution to re-learn it. I did it because I wanted to. They also say that learning things will help with preventing dementia which runs in my family. In that, I decided to learn more about programming ECT. I hear a lot of hate about C++, Java, ECT. I don't give a crap about that. I had a professor state that if you want a job in a certain programming language, you spend maybe an hour or two learning it. Then you apply for it. It is more about attitude than anything. Appreciate the rant. Thanks
@tomsawyer3947
@tomsawyer3947 29 дней назад
I'm an old Dinosaur who started with C back in the early 90s. Then C++. I've recently been forced to learn C#. And now PHP. It amazes me how C-like PHP is. I'll NEVER regret being a C programmer! Everybody should start there! (imho)
@lukei9772
@lukei9772 Месяц назад
to anyone picking a language to learn: you should use the correct tool for the job. what do you want to do? pick your language based on that. i love learning and sometimes i get too wrapped up in the learning process but at the end of the day i think code is a means to an end, a tool, and i think people should use the right tools for the job. for me, that job has been web development, so i learned go (fast code, fast development time) and javascript/typescript (required for client, fast development time). programming is a very large discipline, might be worthwhile to figure out what you actually want to do so you can focus your learning.
@toby9999
@toby9999 12 дней назад
I did the other way. I picked the jobs most suited to the tools I preferred... 99% C++. Saved me a lot of hair pulling and head bashing learning a bunch of crappy "flavour of the month" scripting languages.
@triple_gem_shining
@triple_gem_shining Месяц назад
I don't follow the rules
@wlcrutch
@wlcrutch Месяц назад
Yes, assembler is still taught. Microcontroller courses at my university use assembler to teach students how to understand the instructions on a basic level.
@deepblueharvest
@deepblueharvest Месяц назад
Fun fact: toward the end of newer editions of the Chapman book on Fortran, there's a section on interoperability with C/C++ in which the author essentially says "Yeah, C is way better at non-math stuff than Fortran, so just write those parts of your program in C."
@FlatEarthMath
@FlatEarthMath Месяц назад
I started with TRS-80 BASIC, then learned Fortran, and then my One True Love: Borland's Turbo Pascal. The manuals' technical writing was without peer.
@JoeThePilot
@JoeThePilot Месяц назад
I had a very similar path! Did you ever use Delphi? It was Borland's answer to Visual Basic and was superior in every way. It was compiled, not interpreted like VB.
@FlatEarthMath
@FlatEarthMath Месяц назад
@@JoeThePilot No, I never used Delphi. I got out of programming right when Delphi came in. I hear it was great!
@jalvrus
@jalvrus Месяц назад
Wow, I had a very similar arc. Basic in high school, Fortran as an undergrad, Turbo Pascal as a grad student. Transitioned from TP to C when I went pro (very few jobs using TP in the early 90s).
@evancourtney7746
@evancourtney7746 Месяц назад
My company has plenty of Delphi code in production.
@LarryButler
@LarryButler Месяц назад
Learn to code... Learn to GPT....
@dr4cula472
@dr4cula472 Месяц назад
Maybe in 50 years
@ccriztoff
@ccriztoff Месяц назад
Wait does this mean people were forced to learn before AI?!
@AlexAnder-tr7or
@AlexAnder-tr7or Месяц назад
@@dr4cula472 max. 5 years
@BillDavies-ej6ye
@BillDavies-ej6ye Месяц назад
@@ccriztoff There were people back then?
@noJobProgrammer
@noJobProgrammer Месяц назад
AI will make people stupid, unfortunately( , AI assistants must be used by professionals who already know the material very well
@KAZVorpal
@KAZVorpal 27 дней назад
One of the many reasons to learn c, aside from the fact that I just got a call from a recruiter, the other day, who was looking for a C+ plus programmer, is that it's the foundation for every major language out there today, that isn't based on Fortran. Basic is based on fortran, of course. I learned Fortran almost 50 years ago, from a weird little board game that my father was given to teach the language to him.
@ludamillion
@ludamillion 25 дней назад
I love, love, love the wizard book, Structure and Interpretation of Computer Programs, and I would suggest it to anyone who is learning programming for the fun of it. There is a lot to it but it all spelled out clearly and everything builds on what came before. Lisp is not a language I use on a daily basis but the theoretical groundwork that I got from SICP has helped me almost everyday of my career.
@shantanushekharsjunerft9783
@shantanushekharsjunerft9783 Месяц назад
C is a beautiful language. It is the only high level language that enables you to reason at hardware level.
@technobubba4
@technobubba4 Месяц назад
I second that sentiment !!
@ccriztoff
@ccriztoff Месяц назад
If C is high level what is JavaScript and Python?
@anonymes2884
@anonymes2884 Месяц назад
@@ccriztoff Some really do view them as "3.5 generation" programming languages because they abstract away a lot of the stuff you have to do yourself in a strictly 3rd generation language like C (but not as much as a true 4GL like e.g. SQL).
@artemiasalina1860
@artemiasalina1860 Месяц назад
@@ccriztoff Script interpreters. :-)
@franciscodanieldiazgonzale2096
@franciscodanieldiazgonzale2096 Месяц назад
C can be seen or used at two different levels: as a general structured high level language, using libraries and avoiding pointers, for example. Or as a low level syntax sugar of assembler. It can be both.
@MFM88832
@MFM88832 Месяц назад
Who likes Java?!?!
@tigerstyping
@tigerstyping 23 дня назад
me I do!!
@PaulSpades
@PaulSpades 19 дней назад
Control freaks that like to beat around the bush endlessly without achieving much?
@toby9999
@toby9999 12 дней назад
I hate it with a vengeance.
@matthewdonald1589
@matthewdonald1589 19 дней назад
Thank you for encouraging learning for the sake of learning! Sometimes I feel silly pursuing coding the projects I care about
@rosanella8
@rosanella8 28 дней назад
Thank you for the video :) I first learned C++ eons years ago and never used it (I worked for a short while as 1st-2nd line IT support), when I realised that programming perhaps wasn't for me. It often felt that I was spending more time looking for the missing semicolon 🙄than learning how to code. It was frustrating! I'm now teaching myself to code in Python mostly thinking about still being able to earn a living when I'll be retired (here in UK we might go on working.... forever 😃).
@toby9999
@toby9999 12 дней назад
Whereas I learned C++ eons ago, loved it and have been using it for eons.
@EyesFoward
@EyesFoward 13 дней назад
I still still use Assembly. Haven't for a while but love it and will return to it soon. Even Cobol is still in demand. If you know it you can command high wage.
@AwosAtis
@AwosAtis Месяц назад
That sure brings back memories. I learned BASIC on a Commodore VIC-20. I learned 6502 Assembly on a C-64 when the screen dump I wrote in basic took hours to print. Then life intervened for the next 40 years. I often look at the various languages that come out over time and I think I might be ready to learn some more to re-experience the delight I used to get when I finally figured out what line was locking up my computer and I could fix it!
@ehsnils
@ehsnils Месяц назад
C is important because most other programming languages today are written in C. Unfortunately script languages like Python suffers a lot from the same issues that Basic had in the 80's - easy to write code, but also easy to write bad programs and very hard to maintain in the long run in larger systems.
@l3martin
@l3martin Месяц назад
You are 100% right - learning should be fun, it should be because you want to do it. And you should set aside enough to learn it properly - not just a short amount of time so that you can rush through it.
@laryeparkins
@laryeparkins 15 дней назад
Couldn't resist the "You shouldn't watch this..." lead. I've been programming since 1965., first learned straight up machine language on Univac 1212, 1218, UYK-7. Went on to learn BASIC, Pascal, Prolog, C, ksh, bash, awk, Forth, COBOL, Common LISP, Scheme, CAML, Perl, PHP, SQL, Ruby, Javascript, and, most recently, Python, which is now, at age 80, my go-to language, in addition to Bash and awk. Yes, I have the K&R book. In the 1990s, I taught the Programming Languages course, using the Sethi book, which romps through t ypes of languages, dwelling a little on Smalltalk in the march toward OOP. Not a fan of C++, there are better OOP languages. Looked at Eiffel (and the open source Sather), glossed over Ada, which is flawed.
Далее
I've Read Over 100 Books on Python. Here are the Top 3
9:26
Stop Trying To Understand
10:43
Просмотров 328 тыс.
It Only Takes Two Weeks
9:40
Просмотров 1,7 млн
Why Most People Fail to Master Programming
18:18
Просмотров 1 тыс.
Math You Have Never Seen
11:26
Просмотров 479 тыс.
(Life) Advice From The Creator of C++
3:18
Просмотров 795 тыс.
COMPUTER SCIENCE explained in 17 Minutes
16:49
Просмотров 315 тыс.
This Is Why Managers Don't Trust Programmers...
28:04
Просмотров 163 тыс.