I don’t think C gets enough credit. Sure, C doesn’t love you. C isn’t about love–C is about thrills. C hangs around in the bad part of town. C knows all the gang signs. C has a motorcycle, and wears the leathers everywhere, and never wears a helmet, because that would mess up C’s punked-out hair. C likes to give cops the finger and grin and speed away. Mention that you’d like something, and C will pretend to ignore you; the next day, C will bring you one, no questions asked, and toss it to you with a you-know-you-want-me smirk that makes your heart race. Where did C get it? “It fell off a truck,” C says, putting away the boltcutters. You start to feel like C doesn’t know the meaning of “private” or “protected”: what C wants, C takes. This excites you. C knows how to get you anything but safety. C will give you anything but commitment
In the end, you’ll leave C, not because you want something better, but because you can’t handle the intensity. C says “I’m gonna live fast, die young, and leave a good-looking corpse,” but you know that C can never die, not so long as C is still the fastest thing on the road.
Name:
Anonymous2019-04-21 15:24
As long as we program over Von Neumann architectures CPUs, C will be king. C is basically a description language for a Von Neumann pipeline process, and almost all languages we use run atop the same architecture.
Name:
Anonymous2019-04-21 15:24
Every programmer should know C, because it's a simple and beautiful language that teaches a lot about how programs and computers actually work.
Few programmers should actually work in C, because there really is no need to.
Name:
Anonymous2019-04-21 15:25
Types are actually VERY simple in C. bool is a boolean. int is a natural number. double is a real one. char is a character and a string is an array of characters. If you put a * after them they are pointers. They don't need to care about their size or how they are implemented either.
When you look at a program beginners would write C is quite simple and beautiful. Easy to understand what's happening.
Name:
Anonymous2019-04-21 15:27
I think learning C first, let's you appreciate Rust a lot more and also helps a lot in understanding it. C is a prettg raw and dangerous language, but it is also close enough to the machine, while not being a system specific assembler. So it can teach you about memory layouts and about the dangers of manual memory management and data races.
While Rust probably could teach you that, I think it is more likely, that you get annoyed, why you should have to deal with a stupid borrow checker. But when you already know, what is dangerous, your probably glad to have it. Also I think that C is just closer to how CPUs operate, so it is good to get a basic feel of low level programming.