C is 50 Years Old. Should You Learn Rust?

C is 50 Years Old. Should You Learn Rust?

Low Level Learning

1 год назад

268,963 Просмотров

Ссылки и html тэги не поддерживаются


Комментарии:

Benjamin V
Benjamin V - 20.09.2023 16:34

... cries in pascal. No, you're right, C has a vast majority.

But Pascal/Delphi did have the in-house majority for a long while. Today that sector is owned by Python.

Ответить
Eugenio Bertolini
Eugenio Bertolini - 18.09.2023 08:28

The debate should be "C or Go" or "C++ or Rust". Rust has a lot of built-in functionalities that set it apart from C

Ответить
Neil Clay
Neil Clay - 17.09.2023 12:29

Writes C for 20 years, and marks the first Rust code he writes unsafe.

Moi?

Ответить
ㅈ ㅊ
ㅈ ㅊ - 17.09.2023 07:39

rust and c gives confidence javascript gives over confidence

Ответить
Mátyás Márk Kovács
Mátyás Márk Kovács - 16.09.2023 19:07

Well C not just comes with speed, but with simplicity as well.
We can't say this about Rust.
So one definitely should learn C first, learn how it works, learn how to solve security problems and than learn Rust if interested. And/Or continue with C++.

Ответить
Alone Against the World
Alone Against the World - 15.09.2023 17:24

Yeah, it's 2023. There is still no user-friendly compiler for C (at least for Win). So you can't just "learn C" without wasting days and days looking for how to actually setup all shit together to compile a fcking HelloWorld.c file into HelloWorld.exe.
I don't know about Rust. Does it works from the box?

Ответить
Dimidri Sanchez
Dimidri Sanchez - 15.09.2023 09:51

C for life

Ответить
AWIRE9966_09onpc
AWIRE9966_09onpc - 14.09.2023 22:31

C#. Done.

Ответить
Costin Dinoiu
Costin Dinoiu - 13.09.2023 11:11

I still can't understand the difference between C and C++ seems like C++ just makes things more abstract and adds modern features. So considering the C is one lvl above assembly C++ is maybe the 2nd hence is less usefully to understanding the inner workings of how computer do things.

Ответить
Andri Dwijantoko Adi
Andri Dwijantoko Adi - 12.09.2023 17:00

How about V

Ответить
TreeEM
TreeEM - 11.09.2023 14:29

learn zig

Ответить
Julien Buissart Dubois
Julien Buissart Dubois - 10.09.2023 23:45

If you want to learn rust, it will be hard to find a job if you only know it. So learning C and C++ would only benefit your CV. You'll find more job opportunities, and in all cases, you will be able to read and to work on legacy code base, might it be to rewrite it in rust or not.

Ответить
FastRomanianGypsies
FastRomanianGypsies - 10.09.2023 14:44

There is no better programming teacher than SIGSEGV.

Ответить
Pablo N
Pablo N - 10.09.2023 03:24

What about Mojo lang?

Ответить
hermit
hermit - 08.09.2023 11:21

>other than web
Casey Muratori has an interesting argument here: there simply is no competition, therefore no standards.

Ответить
hermit
hermit - 08.09.2023 11:17

Finally gave in to the hype. Wrote my first Rust program. Crashed at runtime (integer overflow). Compiler inferred the wrong type from a function call 100 lines later. No warnings. Safe and effective 😁

Ответить
hermit
hermit - 08.09.2023 11:14

>fridge
>C
kids these days

Ответить
Jody Bruchon Tech
Jody Bruchon Tech - 08.09.2023 01:57

Rust is a fad. C is a foundation.

Ответить
its RUBEN
its RUBEN - 07.09.2023 20:22

but java runs on 3 billion devices

Ответить
Illia Zhdanov
Illia Zhdanov - 02.09.2023 21:40

rust

Ответить
Travis M.
Travis M. - 02.09.2023 18:27

I read somebody’s comment on another video and this is exactly what he said.. learn c and then Rust and skip C++

Ответить
David Alex
David Alex - 01.09.2023 08:21

With that logic, shouldn't you learn Assembly first?

Ответить
Arnaud PARAN
Arnaud PARAN - 31.08.2023 20:14

cool video but "learning c first allows you to understand how processors work by writing programs that use variable that use pointers that use structures that read data off of a file off of a network" seems pretty wrong. Processors don't have variables, registers are not variables and neither are memory in ram or cache, yeah processors use pointers but no structures don't exist in the processor's language and working, it is a preprocessing step usually, no processors can't read file, files don't really exist in hardware they are an abstraction handled to you by the operating system, same for reading files out of networks.

Also that one layer above assembly is a HUGE layer and imho not a single layer but multiple

Ответить
Eisenhower303
Eisenhower303 - 31.08.2023 02:36

No reason to not learn C, it’s a very small language

Ответить
Data Pastor
Data Pastor - 27.08.2023 01:38

And the answer is… Zig.

Ответить
Voxi0
Voxi0 - 21.08.2023 22:23

Rust looks cool and all but there are 3 major issues which keeps me from learning it anytime soon (might change in the future):

1) Syntax - Rust syntax is otherworldly compared to most if not all programming languages created after the C programming language. Steep learning curve (at least for me), C syntax is so much more cleaner and honestly it's not that hard. (I'm a beginner/noob Programmer btw). And anyways, even if I learned and got used to Rust syntax, what about all the other languages? I mean, I'm not gonna use only Rust for the rest of my life, and the huge syntax difference between Rust and other languages I might wanna use is pretty damn annoying. I don't really know what to think of this syntax change like why? Why did they have to come up with a completely different type of syntax all on their own? Do they just absolutely hate C? (just a joke don't take it srsly plz) The syntax barrier makes it annoying to move to using Rust and incomprehensible to beginners (I'm not that much of a noob programmer tho).

2) Slow Compile Times - Even the most basic programs take forever to compile and just, why? I can't imagine how slow the compile time will be for more complex projects, and I'm not talking about the first compilation either. The first time is extremely slow while the next times are faster (unless you add another library or smth then it will be like the first time) but still, pretty damn slow.

3) Libraries and Stuff - C/C++ has been around for a very very long time, you can do pretty much anything you want with these languages and they have a crap ton of libraries and stuff available and if you know CMake, it's not too hard to add third-party libraries and all (imo). Rust is definitely easier tho (just tell cargo the name of the package and it's version in cargo.toml file). Rust has an okay number of libraries but it's not even close to C/C++. I know wrappers exist but I really would rather use language native stuff than a wrapper. And of course, Rust syntax is otherworldly so, everything is otherworldly as well.

Other than that, Rust is pretty cool. Easier memory management and stuff sounds cool. I haven't really had any memory issues yet but that's probably because I never tried dynamic memory allocation or did much of anything with pointers. Not using Rust any time soon unless of course, the issues I stated are resolved or smth. The most important issue is the syntax, why did they have to change so much anyways? Oh well, this answer is too damn long for YT Comments so imma end my rant here.

Ответить
Mueenul Islam
Mueenul Islam - 21.08.2023 16:30

Brother can you please add bangla captions also.....?
It will be very helpful for the Bangladeshi beginner programmer... I mean small aged.....
Thank you...... for your great content. It is really helpful.

Ответить
Blackhole
Blackhole - 21.08.2023 16:19

CRust

Ответить
John Smith
John Smith - 21.08.2023 03:24

The trend is that as long as you learn C (as a student), Rust will bury it all at the root... In other words, if they released a Lamborghini Alston a couple years ago, and the car is very cool and interesting, you shouldn't buy a 1999 Lamborghini Diablo hoping it will be improved and always be supported... Not at all - times change, and new technologies come... The question is - will the community support the new technologies or will they stay with the old ones...?!

Ответить
Omkar Kanase
Omkar Kanase - 20.08.2023 11:37

I code in assembly 🗿

Ответить
sharperguy
sharperguy - 18.08.2023 01:31

i think it should be possible to create learning material to teach someone the fundamentals of computer programming, including the low level details, using rust. But to my knowledge, nobody has done it yet.

Ответить
Psy McDad
Psy McDad - 14.08.2023 18:24

My friend had a very pragmatic approach to this question;
"Take a look at some examplecode. Pick the one that looks appealing. You will have to pick up other languages allong the way, so start with one that you like on first look. Most important is to just start somewhere and then keep going."

(Was C++ for me. Just recently decidet to go 'full C' after another 30-ish-hour-nightmare-debugsession-from-hell because returnvalues from templates that get funeld into frameworks wich in turn return a pointer to a polymorphed class with 35 levels or inherritance sucks quite some major cojones. And while I miss some features of C++ (references, operator- and function overloading) the general ease of use outweights those few drawbacks, IMHO)

Ответить
Maksim Muruev
Maksim Muruev - 12.08.2023 23:45

actually web need it most..PWA crapware is everythere.. bloated backends also.

Ответить
rob cab
rob cab - 12.08.2023 20:05

the 'i go to frat parties you don't'-bit was really good lol

Ответить
B Fonseca
B Fonseca - 12.08.2023 17:57

Which C books do you recommend?

Ответить
yondam hokage
yondam hokage - 05.08.2023 04:52

C is a readable assembly language

Ответить
Mikhail Romanov
Mikhail Romanov - 03.08.2023 21:40

Learn AI

Ответить
Cole Gudding
Cole Gudding - 03.08.2023 16:51

Everyone’s talking about C and Rust, no one’s talking about those biceps.

Ответить
Nevo Krien
Nevo Krien - 01.08.2023 14:03

Another field where learning c may not really help is ml.

Not because we dont care about performance we really really do. But because gpus work differently to cpu.

So I guess there it's learn c and then learn cuda so u can use it in c and understand the gpu

Ответить
Afshin MollaAli
Afshin MollaAli - 30.07.2023 06:19

if a programmer didnt and hadnt ability of coding in extreme ways , then what he do in most optimize way become a out put of a low level outdate very slow case tools and very sooner than u think will replace with softwares coded by creative open handed programmers
i bet 90% of programmers not only did not even know the semaphor and monitor and join ,forg but Free() aloc(), recresive , and "->"

Ответить
LINUX ONLY
LINUX ONLY - 27.07.2023 15:02

Conclusion: C is linux and Rust is windows 😆

Ответить
Alexe Stefan
Alexe Stefan - 25.07.2023 15:32

For the web apps, you have noscript

Ответить
Diablokiller999
Diablokiller999 - 25.07.2023 15:02

When people ask me, how they should learn programming, I ALWAYS say - buy an Arduino learn kit for $20, do some projects with it, remove the Arduino Bootloader, do the same projects again without Arduino header and alter this code to use pointers.
After that, you've got a pretty good understand on how C works, how compiler work, how RAM and storage devices work and how processors work.
Next step would be to grab a Raspberry Pi and program a driver or two for the ICs from your Arduino kit and you know basically everything there is to know for a starting programmer.
You know C (and can switch to C++), you know hardware, you know drivers, you know how to extend the most used operating system in the world.
Taking interpreter languages like Python or going wild with web development could be your next step, easy to learn an master if you've got the basics from C.
All the code you will ever write, runs on computers so its one of the most valuable things to know how they work, either for optimization, portability and to know in general what the heck you are even doing.
Also it's getting hard to find embedded programmers these days, since it seems (to me) that no one wants to go through all the hustle with computer knowledge.

Ответить
Ibne Nahian
Ibne Nahian - 25.07.2023 12:09

With C your imagination is the limit. I don't like the way Rust tends to bind me.

Ответить
Serifini
Serifini - 24.07.2023 14:06

Zig?

Ответить
Zempi <:3)~~
Zempi <:3)~~ - 24.07.2023 12:31

This is so awesome! 😍This is exactly the question I faced just a couple of weeks ago.... and yeah, I chose C ❤

Ответить
J. Barrett
J. Barrett - 21.07.2023 18:57

Honestly, I recommend learning C and Rust at the same time if you can. Writing in C will make you a better Rust programmer, and writing in Rust will make you a better C programmer.

Ответить