Video yükleniyor...
Video Yüklenemedi
Google researcher LaurieWired warns the shift from C++ to Python in universities is creating programmers who don't understand how computers actually work: "When I was in college getting my CS degree, my year was one of the last years that was using C++ as the core language for teaching... show more
1,891,082 görüntüleme • 1 ay önce •via X (Twitter)
35 Yorum

@lauriewired Real

@lauriewired Okay? But how will with impact the silly pictures of cat economy??? Wtf??

@lauriewired Why not study assembly instead? Or better yet, get those punch cards with holes in them. That sounds like a perfect thing for a college to let their students study.

@lauriewired C++ is a accretive mess of bad ideas built on top of older, bad ideas. I worked in it every day for 17 years. It's not a good language for understanding the hardware anymore. If you want that, understand why C is the way it is.

@lauriewired Meh, who cares. CS students should have a course in compiler design and assembly anyways. Any CS degree without those two is garbage anyhow.

@lauriewired A DSA block in C (not even C++) should be like the starting point of formal CS education. Get to building a simple threadpool, hash table, and data serialization by hand. Pays huge down the road

@lauriewired C++ as an introduction to coding has always been kinda overkill. they’re trying to teach these kids what’s happening under the hood when they barely have a grasp of what’s happening over the hood 💀

@lauriewired My college taught us Java in CS 101, then we did C and assembly, then a ton of handwriting pseudocode during data structures/algos/OSes, then we got to use Python in a combinatorics class and Javascript in a computer graphics class

@lauriewired AGREEEEEE they did this when I took my first programming class in highschool and I am BITTER

@lauriewired I had a similar feeling, but about Java replacing C. At least with Java you’re still vaguely connected to an (abstract) machine

@lauriewired C++ is awful garbage, and many of the best programmers I know started on languages even further from the machine than Python.

Waste of time. Better ask students to write a small ASM program, then, using interruptions. And a Linux kernel module using C. Then forget about it for the rest of college. Because most are not going to use it anyway. Neither need to worry about it. As a matter of fact, it's way more important, for a full stack developer, understand how the TCP/IP stack works under the hood than understanding how the CPU handles registers.

@lauriewired couldn't this be like a 1hr crash course on yt tho? there really isn't a lot to "how computers work" tbh

@lauriewired This is exactly why Rust have a bright future. C++ is unusually complex. Decades of features, compatibility promises, and zero-overhead goals produced a language that is hard to implement and hard to use well.

@lauriewired this funny. most c cpp coders dont even know whats lambda calculus or formal languages, the bedrock of computer science.

@lauriewired i thank god every day the core curriculum at my college was Lisp and all systems courses were in C / C++

@lauriewired the real teacher was never the language, it was the 2am segfault that made you actually learn what a pointer is. python just delays that reckoning until prod.

@lauriewired We still have C 😈

@lauriewired wait, her surname's actually Wired? lol talk about nominative determinism

@lauriewired You don't have to know how a car works to drive it. You only need to know somebody that can fix it when it breaks. Most developers don't need to be low level. Most problems we need to solve are high level.

I am a big fan of C# and #dotnet, but I owe a lot of my programming fundamentals to the years I spent in C/C++ with the training wheels off, manual memory management, pointers, no garbage collector safety net. That's where the real understanding of what's happening under the hood clicks

@lauriewired That's why my preferred educational approach is using both a very high level language as well as assembly language (perhaps writing the same program in both). This lets you contemplate how code generation works while still letting you stay motivated and engaged.

@lauriewired If you learn drive a manual car you can drive an automatic. if you only learn to drive an automatic you can’t drive a manual.

@lauriewired Dijkstra was right; computers have ruined computer science...

@lauriewired On the other hand my university used and still uses C as the first language. On one hand it teaches lower level concepts, on the other it limits the scope of the assignments as complicated things would require too much time.

@lauriewired She's conflating person taste with everyone's taste. Idk how Tesla fsd work. Or even my car works. But boy do I love driving. You wanna know how computers work down to the clock cycle by all means go ahead. But don't assume anyone is required or even generally useful.

@lauriewired My class also was the last to have the core curriculum in C++ for all CS classes Instead of changing reqs to pass more people we should be throwing them to the fires Absolute joke of an approach

@lauriewired I like my pointers double and my memory unmanaged.

@lauriewired What happens when women talk. Some idiotic babble. They shouldn't use c++, only assembly, or cobol... or better yet they should have to build computers from manually constructed transistors. That way they "know"

In the past I've had the same feeling. And she may be entirely right. But here's an honest question from someone who's not in the field: What percentage of today's graduates will ever even have to suspect that there are such things as pointers, garbage collection, heaps, memory leaks, etc. Obviously, it's important that *somebody* know that stuff. But if these days, say, only 1% of graduates will ever have to know it, is making it a mandatory part of the curriculum really worth it?

@lauriewired C++ is a beautiful language. To me it was always exciting.

@lauriewired It’s the eternal debate - whether to learn from the top of the stack or the bottom. I don’t think there’s a good answer. I learned C and C++ for my CS degree and after 20+ years I don’t see myself better or worse than pythonists/rubyists.

@lauriewired The C++ that was taught to us went nowhere near the "hardware" stuff like memory, garbage collection etc. It was purely in the context of learning basic programming, then OOP, then building desktop apps, which could have more effectively been done in Python or JS

@lauriewired C should be taught i guess rather than C++ if we want to build reasoning. The reason is that we can build complex data structures from scratch which prepares a lot of SWE.

@lauriewired This is a testament to how people who understand the fundamentals and how computers really work are becoming increasingly rare. Which also means that those who do understand them are becoming more valuable.
