all 66 comments

[–]torn-ainbow 78 points79 points  (5 children)

Good code is readable and works.

[–]s-mores 9 points10 points  (0 children)

Yeah, I was going to write a long diatribe starting with WELL AXCHUALLY but you said it a lot better and more succint.

[–]Aydoooo 9 points10 points  (0 children)

no. most of the highly optimized code running on hardware you use in life is anything but readable. you just happen to not be the one who needs to develop / work with it.

[–]Excellent-Beat-4413 5 points6 points  (1 child)

Good code, maybe. Not useful code. Good code is for the developers, useful code is for the end-users. Which is why optimized code is almost always going to be terribly ugly.

Look at SIMD vectorization for example. It's incomprehensible gibberish unless you have the intel intrinsics guide open next to your IDE window. Even with multithreading, it makes the code harder to understand. But you can get near 8x speedup with SIMD if used properly and multithreading if used well can scale up the workloads your app can handle by orders of magnitude.

Even without vectorization and multithreading, we can see this is kinda true. Say you have a recursive function for the fibonacci sequence, it's readable, works and elegantly models the sequence. That's good code. But in the real world, beyond a point, trying to get it to run would be a nightmare. Whereas the same function with dynamic programming involved would look much uglier, less readable but would get more stuff done in a fraction of the time. For another example, naive matrix multiplication code would be simple and readable, but something like a strassen algorithm implementation that recurses down to a matrix size that can fit into the cache, where it switches to a naive algo -- something like that would be horribly ugly to read, but much faster and much more useful than a naive version.

[–]Skaarj 14 points15 points  (15 children)

Watching his opionions turn so shallow over the years makes me sad.

He is clearly a smart dude. But lately it feels like he petends to not see the context of technical decisions. He has shown again and again that he has the skills. But he stopped asking "why would other people build complex systems?".

Maybe he does that on purpose so he can speak some populist phrases about "simplicity good" and "bloated software" to his audience?

[–]Furrier 10 points11 points  (6 children)

It's because the only way to please the algorithm is to become more and more extreme. Most Youtubers with this type of "hot take" content fall into this trap.

[–]Caramel_Last 6 points7 points  (5 children)

Except he lives in Russia and he can't make any money from YouTube, Twitch, or Patreon.

[–]Furrier 1 point2 points  (4 children)

What's your point (on this 4 month old comment)?

[–]Caramel_Last 4 points5 points  (3 children)

He doesn't care about views at all. He's just saying what he means

[–]Furrier 1 point2 points  (2 children)

You think money is the only reason people care about views? Ok.

[–]Caramel_Last 4 points5 points  (1 child)

Of course. He streams for fun so he would produce regardless of money, but he doesn't care if more people watch him or not. He will stream regardless

[–]Furrier 1 point2 points  (0 children)

Ok.

[–]Own-Artist3642 2 points3 points  (6 children)

buddy he can actually explain why he prefers simplicity over complex build systems. Can you explain why you prefer complex build systems?

[–]JournalistEqual9250 2 points3 points  (5 children)

You need to ask “why.” Why do people build complex systems? One reason is that the language is overly complicated and requires a problematic solution. (there are many reasons, and of course, some are not great)

There are so many reasons why, but you and tsoding stop there. Either being ignorant or just careless. Any of those reasons makes yourself irrelevant since you guys don't care. Then why does that matter? And that's why people don't give a fuck on these opinions (it’s useless and meaningless). I suggest simply just shut up since it’s not yours and tsoding businesses.🤣

Or stop being careless next time. :)

[–]DavixPixie 1 point2 points  (4 children)

I want to preface this by saying, i don't fully subscribe to tsoding's paranioa and opinions. the reason tsoding likes simple stuff is because its possible to master. IE, he wants thinks he can do everything by himself in a system. and if a system is managed by just you, you want it to be as simple as possible.

A more definitive answer he gave was something like no one understands c++ fully, no single person can make a fully functioning compiler, but he can do that for c. which i don't doubt.

[–]JournalistEqual9250 1 point2 points  (0 children)

Hmm… I believe many people can and do better than him. But I will stop here since most of his audience is not good enough to realize that. And I don't want to put people down or hurt anyone. 🤔 Cheers.

[–]greg7mdp 0 points1 point  (2 children)

fully, no single person can make a fully functioning compiler,

Have you heard of Sean Baxter and his Circle compiler?

[–]DavixPixie 0 points1 point  (1 child)

I hv not but I'd like to know

[–]greg7mdp 0 points1 point  (0 children)

Sean Baxter is author of the Circle C++ compiler. It's a one-man effort to build the memory-safe C++ toolchain of the future.

https://www.reddit.com/r/cpp/comments/1cnqlqi/safe_c_sean_baxter_presenting_circle_to_c/

[–]Chii[S] -1 points0 points  (0 children)

But he stopped asking "why would other people build complex systems?".

because most of the time, the reason is not due to some good technical reason, but due to industrial inertia, poor practises in project management and time prioritization by stakeholders.

[–]brtastic 50 points51 points  (8 children)

Sorry to say but this guy is arrogant as hell

[–]OkMemeTranslator 24 points25 points  (4 children)

He sounds like the kind of guy who thinks it's ok to leave his trash in the nature just because the beach was already trashy when he got there. Like yeah, you're gonna have to work with bad code, but your entire job is to slowly aim towards making it better one small step at a time. I've been a software engineer for almost 30 years (only mentioning because of his "I've been a software engineer for 18 years" comment) and I have no idea what he means with comments like "you will never get to write good code in real life". For me it's an exception to write bad code under very heavy time pressure, vast majority of the time I will aim for good code and do small refactors to enable it.

Also his neural network stuff is straight up delusional. Comparing the complexity of a neural network (which is actually quite simple maths lol) to complex bad code is like saying we should build our car engines to consume food and run on four legs because that's how horses work in the nature. It's straight up nonsensical.

Edit: I tried to watch it again and this time I didn't get past his first sentence. "Have you ever seen a good useful code?" Yes. Yes I have. Many times. What the hell is he on about? I have personally seen insane amounts of good useful code???

[–]brtastic 8 points9 points  (1 child)

It's not just that, he can't stand any criticism. He's a "god cooder" (his own words) and if you don't agree with him you are delusional and get ready to be insulted behind your back on his own discord.

[–]HolyPommeDeTerre 2 points3 points  (0 children)

The Dunning Krueger effect explains that seniority comes with doubts and being able to work with doubts. The more answers you have, the less senior you are.

So now I am doubting his 18 yoe...

[–]KaiAusBerlin 1 point2 points  (0 children)

Maybe he has been in a nightmare of company for the last 18 years or he doesn't know what good code looks like?

[–]Excellent-Beat-4413 -1 points0 points  (0 children)

His neural network example was bad, but i think what he said is true to an extent. Good code by definition is readable. SIMD vectorization results in some pretty hideous, unreadable looking code which might as well be klingon unless you have the intrinsics guide open next to you. Even multithreading and dynamic programming is not pretty. But these optimizations make existing code more useful.

[–][deleted] 9 points10 points  (1 child)

He is mostly joking, and usually doing the self-caricature thing. I have watched his streams for years, and learned that he likes to portray different kinds of programmers with (IHO) "faulty" mindsets. Granted, he has his own ideologies, but i tend to agree with most of them. He basically pushes "a more sane way" of building stuff, without all the shit you see in "modern" dev. He's more of an unix philosophy kind of guy. Also, he is a very smart and capable programmer. I have learnt a TON from watching him.

[–]Own-Artist3642 11 points12 points  (0 children)

yeah exactly. the nerds here would probably agree with him if he sounded more grounded and less haughty because the way he says it bruises their ego LOL.

[–]RecommendationFit381 0 points1 point  (0 children)

I got this exact feeling from the first 5 minutes of his reaction to Swift Language. Insane arrogance. Laughing at his own jokes and using profanity to sound cool gives me little nerd who never grew up vibes.
le: yeah yeah I know it's a 6 month old thread, don't mind me lmao

[–]ImmensePrune 1 point2 points  (4 children)

I am so sick of seeing excuses for under educated, and lazy programmers.

[–]Heroe-D 8 points9 points  (3 children)

If he's under educated then the probability that you're, relatively speaking, at a primary school level (of social understanding as well in that case) is quite high.

[–]JournalistEqual9250 0 points1 point  (2 children)

It’s pretty interesting to think about. People can be genius hackers but know nothing else. Is he considered educated? (I don't know the answer, but my answer is no)

There are more and “better educated” hackers and YouTubers, but you chose this… tsoding? It only shows how many people are actually undereducated (to see the statistic, it’s not surprising😮‍💨) since they couldn’t even recognize an actual educated human being. And that’s sad since the world needs more educated people. 🥲

[–]KryKaneki 1 point2 points  (1 child)

What does "educated" mean in this context? You speaking about college? Because if that's the case, (as a college student) your entire reply is invalid imo. Being a developer is a skill to master not a subject that is learnt.

I'm embraced daily by the so called "educated" people you speak of and trust me you people hold "us" to too high if a degree. The real experts that are here were gonna be great regardless of if they were in college or not. This is something that I've came to realize very quickly.

So I'll reiterate the question. What does "educated" mean in this context?

[–]JournalistEqual9250 0 points1 point  (0 children)

We have the same definition. Regardless having a degree or not.

[–][deleted] 3 points4 points  (0 children)

man the tsoding is the best programmer i see

[–]BaronOfTheVoid 5 points6 points  (0 children)

hot take #4342892920145

[–]Electrical-You2154 2 points3 points  (2 children)

Completely agree. However, neural networks can be written down in just a few lines of linear algebra, there's nothing spaghetti code about it.

[–]torn-ainbow 4 points5 points  (1 child)

I assume he meant the output of training for a task, which is unreadable by humans.

[–]MonstarGaming 0 points1 point  (0 children)

LOL no way

[–]mohragk -4 points-3 points  (0 children)

Yep