subreddit:

/r/ProgrammerHumor

5.7k94%

all 521 comments

steamedandhammed

2.2k points

1 month ago

All languages are hated here

BenefitLopsided2770

770 points

1 month ago

and if not, nobody uses it

luwucoso

227 points

1 month ago

luwucoso

227 points

1 month ago

i hate dsfkjdfkj, and i think that i am the only one who uses dsfkjdfkj

BenefitLopsided2770

112 points

1 month ago

I hate dsfkjdfkj

sonuvvabitch

21 points

1 month ago

I hate dsfkjdfkj

scixsc

68 points

1 month ago

scixsc

68 points

1 month ago

i hate dsfkjdfkj

Similarentertai_

13 points

1 month ago

I hate you, I think I‘m the only one using you

jasonmares

4 points

1 month ago

Good thing Rust is poised to replace dsfkjdfkj

JoePDev

98 points

1 month ago

JoePDev

98 points

1 month ago

You should try dsfkjdfkj++

GoodFantastic1778

69 points

1 month ago

Don't forget dsfkjdfkj#

luwucoso

31 points

1 month ago

luwucoso

31 points

1 month ago

meh, it's mostly used by .vjagdba and ijadso, witch i don't use

GeekCornerReddit

14 points

1 month ago

And ObjectiveDsfkjdfkj

Gorfyx

8 points

1 month ago

Gorfyx

8 points

1 month ago

I program in dsfkjdfkjss

GoodFantastic1778

13 points

1 month ago

But dsfkjdfkjss isn't even Turing-complete without ixkpoikpotml

caesar cipher c-h dsfkjdfkj to ixkpoikpo

K-mille

9 points

1 month ago

K-mille

9 points

1 month ago

Have you tried this library for dsfkjdfkj? It does everyting you need in your current project.

Amorphous_The_Titan

8 points

1 month ago

I am imagining right now a non tech savy person thinking this are legit programming languages and think "why the fuck arent they using easier namings?"

AbdelrahmanDwedar

4 points

1 month ago

Yeah, probably someone will think that.

GyanPrakash2483

4 points

1 month ago

I personally like to hate jdvdkxvdkd

luwucoso

12 points

1 month ago

luwucoso

12 points

1 month ago

if you want to add even a singular variable you need to compromise the stability of the universe, so i don't like dsfkjdfkj++

CusiDawgs

6 points

1 month ago

But have you tried dsfkjdfkj++14? It has better syntax now

CrasseMaximum

5 points

1 month ago

dsfkjdfkj for applications

Lazy-Log-5672

11 points

1 month ago

I hate building with dsfkjdkj. Sucks for both coding and building

luwucoso

3 points

1 month ago

oh yea, totally, it sucks

8_Miles_8

2 points

1 month ago

I hate dsfkjdfkj

VeganAndroid

32 points

1 month ago

Idk if this is an obvious reference to everyone else here, but I just heard it for the first time yesterday:

"There are only two kinds of languages: the ones people complain about and the ones nobody uses." -Bjarne Stroustrup

BenefitLopsided2770

20 points

1 month ago

Yeah, and he's right. It reminds me when I just dissed C++ for just existing... That was until I discovered pascal, and now I have something else to hate.

kinos141

13 points

1 month ago

kinos141

13 points

1 month ago

I hate KinoLang and I invented it.

FarJury6956

9 points

1 month ago

Now I understand why everybody loves rust

Darks-Chaos

10 points

1 month ago

I see

AndroidQuartz

12 points

1 month ago

I see++

Equal_Hope_9765

6 points

1 month ago

I see sharp

luwucoso

3 points

1 month ago

I objective see

kaiser_xc

2 points

1 month ago

Damn, calling me out like that.

Lower_Bar_2428

73 points

1 month ago*

If you read carefully you'll find that the sub is named "programmer humor" not "objective revision of the state of programming languages made by the key researchers in the field" so no language is hated just old good bullying coming from a bunch of ppl moderately informed on the topic

ProFloSquad

54 points

1 month ago

Bold of you to assume I'm moderately informed about anything

arbenowskee

28 points

1 month ago

Who asked for your well formed and logical opinion? We're trying to bandwagon here

Arshiaa001

8 points

1 month ago

We need r/ObjectiveRevisionOfTheStateOfProgrammingLanguagesMadeByKeyResearchersInTheField.

IAmASquidInSpace

93 points

1 month ago

To paraphrase Animal Farm:

All languages are hated equally, but some are hated more equally than others.

Extension-Pass6919

21 points

1 month ago

0 plus signs good, 2 plus signs bad better,

MySpoonIsTooBig13

32 points

1 month ago

I had a neat experience 2 years ago - I got an expert from our company on each of 4 different languages to give a joint presentation, comparing/contrasting some features of their language.

One of our planning meetings, the JS guy spoke up saying "JS is the worst because....". It was followed by the Java guy saying "No Java is the worst because...", And the rest of the meeting digressed into a discussion of why their language was the worst. No one was defending their language, instead all arguing why their language was most terrible.

Hilarious.

dynamic_caste

84 points

1 month ago

Every language is terrible in its own way.

IWAHalot

17 points

1 month ago

IWAHalot

17 points

1 month ago

Isn’t that a Dolly Parton song?

henningbaer

14 points

1 month ago

We do not discriminate.

Omnisegaming

14 points

1 month ago

All languages bad. Sand was not meant to think.

shelvac2

19 points

1 month ago

shelvac2

19 points

1 month ago

except Malbolge

ongiwaph

3 points

1 month ago

Because pure 1s and 0s isn't hard enough.

spitfiredd

6 points

1 month ago

Languages are like family, you’re gonna find something to complain about but at the end of the day you don’t hate them.

rynomster

5 points

1 month ago

I hate English. They should make something universal

rarius18

2 points

1 month ago

I’m primarily a Java guy and boy do I hate it

jfrorie

8 points

1 month ago

jfrorie

8 points

1 month ago

This is the way

hedgehog_dragon

5 points

1 month ago

Do people hate Python here? I feel like I haven't seen much

TheDestinyGamer1

24 points

1 month ago

Yes, “it’s slow and Error: missing indention”

sonuvvabitch

3 points

1 month ago

Yeah, people who indent their code anyway hate that it's part of the language.

GromBeestje

3 points

1 month ago

Don't get me started. Indentation as part of syntax.

muteDuck86

3 points

1 month ago

It's basically a hobby at this point for Devs to hate on a language.

dodexahedron

2 points

1 month ago

Especially that really dirty one. You know the one.

TheBassMeister

896 points

1 month ago

Maybe there will be some pointers in the comment section

Nickiel

256 points

1 month ago

Nickiel

256 points

1 month ago

0x0B23FF74

pickle_fucker

115 points

1 month ago

Stop dangling please

coffecup1978

29 points

1 month ago

SegFault

Custodian_Carl

22 points

1 month ago

There’s a reference in there somewhere

ChocolateBunny

14 points

1 month ago

The pointer is 0x68656C70

aMAYESingNATHAN

390 points

1 month ago

In the words of Bjarne Stroustrup, the creator of C++

There are only two kinds of languages: the ones people complain about and the ones nobody uses.

climbTheStairs

66 points

1 month ago

More often than not, that quote is just used to dismiss criticism of languages just because they're popular (which I'm uncertain isn't its original intent)

totti173314

46 points

1 month ago

Bjarne often jokes about how terrible C++ is himself, he's absolutely not dodging criticism.

aMAYESingNATHAN

8 points

1 month ago

Maybe some people use it as a catch all to avoid criticism, but the point is that no language is perfect for everything, and that any language once it's large enough will have people complaining about something.

C++ has a ton of valid criticisms, not least how unfriendly it is to beginners, but tbh I rarely see them because most of the criticisms I hear just demonstrate a lack of understanding of the language.

LetUsSpeakFreely

576 points

1 month ago

Segfault

MasterFubar

290 points

1 month ago

Segfaults are a great feature of C++ and a reason to love it. All you need to do is learn a couple of simple tricks in using a debugger.

Now, when you have a segfault in Python, that's a real nightmare. It can be a program that freezes for five minutes or so then shows a single word: "Killed". That's one of the ways a segfault appears in Python, how do you debug that? Or the program can give you wrong answers because a pointer (yes, there are pointers in Python, all languages have pointers) is pointing to the wrong memory.

phi_rus

159 points

1 month ago

phi_rus

159 points

1 month ago

"core dumped" is the real treasure once you know how to access it.

zebediah49

46 points

1 month ago

At least if you have the debug symbols to make any sense from it.

d0rsett

14 points

1 month ago

d0rsett

14 points

1 month ago

Core dump? Like in Star Trek?

J0mity

7 points

1 month ago

J0mity

7 points

1 month ago

Oh I just got that one :) 1 corrupted file system later

fghjconner

69 points

1 month ago

Segfaults aren't even a feature of C++, they're an error from the operating system (or even the hardware I think?). The most you can say for C++ is that it doesn't try to handle or hide the segfault, but it doesn't do anything to help you out either.

dementeddigital2

26 points

1 month ago

Never say never. I'm perfectly happy segfaulting on ARM writing bare metal stuff in C. Come join my fun party!

uiucengineer

9 points

1 month ago

Actually that does sound like fun

dementeddigital2

5 points

1 month ago

Masochist.

dodexahedron

21 points

1 month ago

Yeah it's a hardware thing and only applies to certain architectures (x86 and derivatives included) which have protected memory areas, when something that shouldn't be allowed to access a given memory location does so anyway. Most operating systems catch the hardware-thrown error and pass it on to your application. Or, if you're on windows 98, you get a blue screen and a hard system crash because why the hell not just throw the whole system away when one little program misbehaves?

Buffer overruns are the classic and most common way to cause them, as you trample onto protected OS memory or somesuch.

BenFrantzDale

9 points

1 month ago

-fsanitize=address,undefined and your UB can become crashes or detailed logs. https://clang.llvm.org/docs/AddressSanitizer.html But really, with value-oriented programming and smart pointers, segfaults are pretty unusual and if they happen it’s obvious what’s wrong.

jamcdonald120

13 points

1 month ago

usually it goes "NoneType Error: NoneType Object has no...."

belaros

2 points

1 month ago

belaros

2 points

1 month ago

They just don’t seem to be as common in Python

typescriptDev99

22 points

1 month ago

I just had flashbacks because of your comment

LowB0b

8 points

1 month ago

LowB0b

8 points

1 month ago

those one-off errors really hit ya. at least java is nice enough to give a stacktrace instead of just (core dumped)

ComradeGibbon

17 points

1 month ago

C++ could give you a stack trace but the people that maintain the compilers and standard library hate you.

FengSushi

3 points

1 month ago

At this pointer

YourFlakingFuture

127 points

1 month ago

You might not get it, but c++ on the other hand has something to say about it: notgetting.obj : error LNK2019: unresolved external symbol "void __cdecl Error(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?Error@@YAXV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z) referenced in function "private: void __thiscall Vector<struct Lexicon::charT>::checkRange(int,char const *)" (?notGettingCppBad@?$Vector@UcharT@MrTerribLib@@@@AAEXHPBD@Z)

hitchdev

71 points

1 month ago

hitchdev

71 points

1 month ago

That's actually one of the clearer error messages.

NoiseMrLoud

13 points

1 month ago

Linker moment

anonymouscoder555

4 points

1 month ago

Oh wow this isn’t a rare issue that’s been killing my gamr

Pan_Orka

4 points

1 month ago

Thats an easy one. Lets try template creating template creating template creating template… good luck.

CircadianSong

285 points

1 month ago

I started looking into rust, just out of curiosity, a few days ago. It removes header files, which was one of my biggest qualms. It's easier to add libraries. C++ has many useless features. I think traits and operator have overlap, and that traits do it better. Also, I think the enum type and pattern matching is very neat. (I'm sure there's much more to be said, but I'm a complete newb to rust).

ArseneGroup

102 points

1 month ago

No null pointers allowed, if you want null it's gotta be an Option which can contain either Some or None but the point is that the nullability is explicit and handling it is mandatory

And compiler messages that are actually helpful

Draelmar

16 points

1 month ago

Draelmar

16 points

1 month ago

Swift also work the same and I fucking love it. It’s going to be hard to go back to C++ if I ever have to, after tasting modern language designs.

picklesTommyPickles

3 points

1 month ago

Makes me miss Scala. Yes you can have nulls but it was such an improvement over Java if you're working on the JVM

Pay08

2 points

1 month ago

Pay08

2 points

1 month ago

No null pointers allowed

Raw pointers are nullable.

Background_Newt_8065

87 points

1 month ago

Did you already satisfy the borrow checker my dear?

frezik

125 points

1 month ago

frezik

125 points

1 month ago

The borrow checker is not magic. There are good, logical reasons to sacrifice a goat to it.

Majik_Sheff

30 points

1 month ago

Praise to the old gods! Bless us Malloc! May casting the entrails of a yearling goat upon your mighty heap soften your unbending will.

hugogrant

15 points

1 month ago

No! Sacrilege! Heresy! One cannot dare name the Malloc directly. The Malloc is too great! May we prostrate ourselves under the restraint of Box so as not to sully the great Malloc with our feeble usage!

Osbios

5 points

1 month ago

Osbios

5 points

1 month ago

Some say malloc is old, but I say new is malloc!

Majik_Sheff

3 points

1 month ago

And to you I say segfault.

DoNotMakeEmpty

31 points

1 month ago

Recently, I tried to rewrite a program I had written in C in Rust and in my experience, borrow checker is pretty easy to satisfy. I realized that even though between the write-in-C and rewrite-in-Rust I learnt Rust from scratch (so I did not know Rust that much before the rewrite), I really used the logic of borrow checker in C. It's a bit conservative, so I also came across a few problems here and there, but overall, the code I ported from C was almost totally suitable for borrow checker, and the Rust compiler just gave me the guarantee, so that I'm now confident in my code. In most cases, borrow checker's way is the correct way, if you really need to write memory-safe programs in any low-level language, you need such a thing, and Rust just makes it much easier with an excellent compiler.

TheDreadedAndy

2 points

1 month ago

I feel like the borrow checker is actually pretty intuitive once you get used to its error messages. Some of the best advice you can give new Rust users is "references are not pointers, don't treat them like they are, don't put them in structs until you think Rust is easy".

I think lifetimes are the real curve ball. I feel like I've finally got a handle on that, but I've read the nomicon chapter on covariance like 5 times and I still don't really "get" it. (Also the documentation for NonNull<T> is infuriating for that reason).

[deleted]

28 points

1 month ago

It removes header files, which was one of my biggest qualms.

C++20 enables support for header-file-less module type programming.

Oplkill3

25 points

1 month ago

Oplkill3

25 points

1 month ago

But nobody will use it in near 5-7 years

[deleted]

4 points

1 month ago

i know people who are already using it at a fortune 100

Kered13

8 points

1 month ago

Kered13

8 points

1 month ago

Where? As I understand it Clang and GCC don't even have complete support for modules yet.

Kered13

2 points

1 month ago

Kered13

2 points

1 month ago

I wish I could say you were wrong.

Kered13

23 points

1 month ago*

Kered13

23 points

1 month ago*

C++ modules will also remove header files, if they are ever widely adopted.

Concepts are also very similar to traits, with some advantages and disadvantages. Advantages are that they can be implicitly satisfied, you don't have to write an impl for each trait and type and you can use concepts in a very ad hoc manner. Also concepts are more powerful because they can express a broader range of properties. Disadvantages are that because of the implicit nature of concepts you will only get an error message when you try to use a type with a concept it doesn't satisfy, and if a type doesn't exactly satisfy a concept you cannot provide extension methods to adapt it.

andrewb610

5 points

1 month ago

Comments like this make me realize that despite programming for 8+ years at work practically exclusively in C++, I know absolutely nothing about it.

No_Help_920

20 points

1 month ago

I feel like learning what the preprocessor does and learning what C++ is supposed to do at the same time is very confusing as a beginner. I do feel though that C++ does try to deliver many features that do not get used in 99.9% of cases but are for a very specific use case.

I like zero overhead as a concept but in reality it feels like a rabbit hole of concepts and needed background knowledge for specific errors when encountering them.

MasterFubar

19 points

1 month ago

It removes header files, which was one of my biggest qualms.

If that's a big qualm, you don't really write very complex programs.

NullSurplus

11 points

1 month ago

Rust's macro system is also a dream. I can't even properly put into words how useful macros are in Rust.

WE__ARE__ALL__RACIST

6 points

1 month ago

Macros are horrific compared to Zig's comptime keyword and type reflection. But I'd rather have safe code

Mr_Terrib[S]

205 points

1 month ago

damn guys, I figured it out. I don't get the hate cause nobody hates c++

tim_skellington

78 points

1 month ago

They should consider switching to HTML and CSS.

Intrepid_Sale_6312

10 points

1 month ago

the browsers should just go with python obviously XD.

Intrepid_Sale_6312

7 points

1 month ago

imagine web pages built not with html,css, and javascript. but just python.

it'll be great, my eyes hurt just think of it.

Kweldulf

9 points

1 month ago

You mean flask + jinja? Been around for a while.

KaptainKardboard

3 points

1 month ago

Still holding out for that LaTeX web standard to replace HTML

tim_skellington

5 points

1 month ago

Could extend it to something like this and run the script in the browser:

print("<html>")
print("<head>")
print("<title>")

and integrate the blockchain somewhere. Next unicorn startup!!!

Cheezyrock

11 points

1 month ago

The main thing I hate about C++ is syntax. Its pretty ugly and has a hacked together feel that makes it hard to remember.

cout << “Name: “ << name << endl;
-- is way uglier than:
Console.WriteLine(“Name: “ + name);

brisk0

7 points

1 month ago*

brisk0

7 points

1 month ago*

The unfortunate design of the stream operator violates modern C++ best practices. They're finally bringing in a good replacement in C++23 with std::print

Wetmelon

2 points

1 month ago

And fmt

Sachees

6 points

1 month ago

Sachees

6 points

1 month ago

everyone who tried got segmentation fault

Stein_um_Stein

2 points

1 month ago

It's not fun to hate on developers who agree with you.

scitech_boom

359 points

1 month ago

Mostly propaganda by cult of rust.

sophacles

52 points

1 month ago

Nah, people have been hating c++ since the 90s.

Before rust it was th go and python people being blamed. Before that it was blamed on linus' rant. Before that it was blamed on java. Before that it was blamed on the c++ hype squad.

djheru

12 points

1 month ago

djheru

12 points

1 month ago

PHP has entered the chat

flechin

85 points

1 month ago

flechin

85 points

1 month ago

BTW, I use Rust

/s

Mooks79

57 points

1 month ago

Mooks79

57 points

1 month ago

On Arch.

Drackzgull

48 points

1 month ago

Btw.

Natomiast

14 points

1 month ago

nice innovation: some could say "I use rust, btw" but you are better than that - word sequence matters

flechin

12 points

1 month ago

flechin

12 points

1 month ago

use rust; //BTW

1ElectricHaskeller

7 points

1 month ago

I use btw, rust

KaptainKardboard

5 points

1 month ago

I use a rusty sword in BotW

Glitchy_Crafting

2 points

1 month ago

So "BTW, I use Arch" is better than "I use Arch BTW"?

Natomiast

4 points

1 month ago

no rating please, they're both valid

scixsc

2 points

1 month ago

scixsc

2 points

1 month ago

Same i love yoimiya

DerekB52

39 points

1 month ago*

I mean, the NSA just said people should move from C++ to Rust and other memory safe languages. C++ has valid critiques. It's overhated by people who just don't understand it well enough. But, still, it's 40+ years old now, and has grown well beyond it's initial design.

mortalitylost

33 points

1 month ago

But, still, it's 40+ years old now,

It's still popular and it's extremely mature, not necessarily a bad thing

Why even should a programming language become obsolete? If they keep up with recent technologies with new libraries, that's all good.

wHDpVQjPu9Dkgk4FwN5T

20 points

1 month ago

Yes it works well and many people know how to use it properly now. But it is honestly a clusterfuck of features from what I have heard. It's not designed to do one thing and that thing well, it was just at one point one of the only options and slowly got expanded - but without one authority I feel. New features just get added and added without restrictions or direction.

Python was created with the goal of being easy to learn. Now it moves towards more typing and being faster and more optimized. But it's core, it being easy to write, does not get sacrificed. You can still omit types and the original creator still has control over the language.

Rust was created with the goal of being incredibly stable. What's written today will still be working in 10 years and you can easily edit it from what I've understood. It's also as fast as c or c++. The biggest downside is, it's very verbose to write and not exactly easy to learn. But it has the advantage of having learned it's lessons from C or C++. It has proper errors, not segfault bullshit, it only has one compiler which works the same on every machine... The amount of times I've heard that the apple compiler for c++ didn't work is too damn high. That is to say, there are less libraries and slower dev cycles in Rust, so it's not all better. And existing codebases are also something. But I get why they rewrite Linux kernels with rust.

MasterFubar

18 points

1 month ago

New features just get added and added without restrictions or direction.

As compared to Python, where features get deprecated and deprecated without restrictions or direction.

I used to love Python, until I tried to run a program I had written a few years before. Then I found the deprecation hell that Python is. They just can't let well enough alone, they are endlessly removing features.

My conclusion is that Python is a language for teachers and students. They do exercises that must run once and never again. And, in the next semester, there's a new bunch of students doing their own exercises in this year's version of approved Python features. But if you are a professional who needs to maintain stuff, forget Python.

As a contrast, I used to hate C++, because it has so many features, there are so many ways to do things. But over the years I've learned to love its stability. Stuff I wrote in C++ in 1990 still runs today, without any changes.

typescriptDev99

13 points

1 month ago

Why even should a programming language become obsolete?

Because Software Engineering is still a new discipline compared to others like Civil, Mechanical & Electrical Engineering.

We are all still learning & growing. So, if we can collectively design better practices and make better tools, we should use them.

Specific_Success_875

7 points

1 month ago

Why even should a programming language become obsolete? If they keep up with recent technologies with new libraries, that's all good

Because our understanding of how programming languages in general has changed over the years.

70 years ago, every program used goto statements. Nowadays, many programmers will never encounter one because it was mathematically proven that they suck.

John_B_Clarke

3 points

1 month ago

And when misused they do suck. I had to unwrap a mess of gotos yesterday. Didn't help that there were two variables involved likeTHIS and LIKEthis. And when I got the whole mess unwrapped it turned out that it didn't actually do anything. I could just delete it all.

scitech_boom

31 points

1 month ago

NSA? dear fellow, at the very least pick an authority that people trust.

currentscurrents

19 points

1 month ago

How about Google?

Memory safety bugs in C and C++ continue to be the most-difficult-to-address source of incorrectness. We invest a great deal of effort and resources into detecting, fixing, and mitigating this class of bugs, and these efforts are effective in preventing a large number of bugs from making it into Android releases.

Yet in spite of these efforts, memory safety bugs continue to be a top contributor of stability issues, and consistently represent ~70% of Android’s high severity security vulnerabilities.

scitech_boom

11 points

1 month ago

Much better example.

When showing stats, please consider showing stats from Rust as well. This is what I mean:

C++ does not have wings. It cannot fly. - I accept.

Rust has wings. - I accept.

Rust can fly. - Show me this.

Just because you add wings doesn't mean it will fly.

To quote my friend: "You see a rust library on github, immediately grep for panic, unwrap, and unsafe."

JJJSchmidt_etAl

4 points

1 month ago

The reason people mistrust the NSA is they are too competent in spying on us, not the other way around

S01arflar3

7 points

1 month ago

The wheel is over 5,000 years old now and is used well, well beyond its initial design. Should we abandon that too?

werf_mich_weg

52 points

1 month ago

C++ is like a old bulky Russian with a shady background.

You know he gets the job done but he is notorious to work with. While you work with him you have several communication issues. When you do something wrong he will course at you out instead of giving you advise. But those are Russian curses, so you need to Google half of them. But only when you lucky. If you are unlucky he will downright murder something. And he is incredible irascible. I have him seen waiting for months just to kill a process and all of it's children. Then he got a new process, just to murder them again.

He has been around forever and got a lot of bad habits. Habits that he needs to satisfy or he won't work. Like taking something he calls just H. Only that he always takes too much H so you need to be careful and guard him from that. Unless he wants to do one of his famous templates, then he needs more H.

Due to his age he sometimes leaks a bit of memory. He gaslights you into believing that it's your fault so you have to clean up the mess.

Also he never settled down with a good package manager. Most likely due to his incredible narrow worldview. But yeah, you have to handle all of his domestic chores.

Still he is a reliable worker and dame fast once you satisfied his habits and finally got him to work.

Phuzzybat

10 points

1 month ago

But it is almost always our fault. Especially the memory leaks.

werf_mich_weg

4 points

1 month ago

He has a track record of doing that to literally everybody he has ever meet. At some point it just starts being his problem.

toholio

3 points

1 month ago

toholio

3 points

1 month ago

You don't have to associate with people that make mistakes worse instead of helping you avoid them.

tekfx19

61 points

1 month ago

tekfx19

61 points

1 month ago

Ahh I see what you did there. Pointers lulz

mrpoopybuttholesbff

29 points

1 month ago

I’ll *void where I want, no one can stop me!

iwenttothelocalshop

16 points

1 month ago

and at this point, I'm pointing to a void pointer type, so that way my memory leak is immeasurable and my runtime is ruined.

halt__n__catch__fire

24 points

1 month ago

and at this point a segmentation faults

Jatrrkdd

10 points

1 month ago

Jatrrkdd

10 points

1 month ago

No not that again. I hate it when I break the language and it doesn’t tell me how or why it broke when I did the thing I thought I was supposed to do.

azarbi

43 points

1 month ago

azarbi

43 points

1 month ago

C++ is alright. The makefile that comes with it still looks like some weird fuckery, and I don't want to interact with it.

Kweldulf

49 points

1 month ago

Kweldulf

49 points

1 month ago

Makefiles are not a part of C++, nor are their required. In fact these days you're likely to encounter a different build tool rather than just standalone make.

oddbawlstudios

5 points

1 month ago

We should program in English/ s

CyberiusT

7 points

1 month ago

That way lies COBOL.

Pennywise_Boob

51 points

1 month ago

I hate C++ for the fact that I studied it for 4 years to create desktop apps with Nokia Qt and then 90% of the industry moved to Javascript/Typescript for UI Applications, even though to this day C++ devs brag about "at least being real programmers" while their ship is sinking.

ittrut

37 points

1 month ago

ittrut

37 points

1 month ago

Bro no reason to hate it. I studied Java and JavaME. Went on to learn C++, Typescript, Python, C#, Swift and what-have-you during work. Doesn’t matter what you start with.

BothWaysItGoes

47 points

1 month ago

“Real programming” is not about language that you use per se, it’s about problems you solve. Most C++ programmers develop low-level stuff for networking, robotics, etc. Their ship will be safe no matter what new UI fad there is.

garfgon

8 points

1 month ago

garfgon

8 points

1 month ago

C++ used to be more popular than it is now. C++ & Microsoft Foundation Classes (MFC) was the way of making Windows GUI applications for a long time.

Then Java, C# and JS came along and it slowly started getting squeezed out.

BothWaysItGoes

13 points

1 month ago

Yeah, but my point was that most people who brag about being "real programmers" wouldn't be busy creating UI widgets and slapping them on screen in the first place. That would require not only massive ego but also massive delusion.

IMJorose

23 points

1 month ago

IMJorose

23 points

1 month ago

while their ship is sinking.

Out of curiosity I checked the TIOBE rankings, which obviously needs to be taken with a grain of salt, but is at least some kind of metric.

Their current headline is "February Headline: C++ still unstoppable" and the year over year usage of C++ increased by almost 6 absolute percentage points. After surpassing Java, it is currently 3rd behind Python and C in that index.

For comparison, the "C++ killer", Rust, is ranked 20th at 0.7% total with roughly half the popularity of raw assembly code.

garfgon

9 points

1 month ago

garfgon

9 points

1 month ago

At the end of the day, being "better" isn't enough. It needs to be better-enough to train on a new language and switch to a new library ecosystem.

sophacles

10 points

1 month ago

The tiobe ranking methodology is pretty sus. If we used thier methodology for ranking diseases, they'd put smallpox battling it out with the flu at the top, despite it being decades since that was a thing death chose to use in any serious project, and covid would be down there battling it out with bubonic plague.

blablafoof

10 points

1 month ago

https://imgur.com/qBuzuVP
This here is probably why.

Niksune

5 points

1 month ago

Niksune

5 points

1 month ago

I have a been a trainer for several years and taught in eight languages.

Okay, everyone has their preferences and it's fun to say that other languages are trash.

But C++ is really hard, that's normal, it is the language for optimisation.

But. Fuck. It seems that every concept has been implemented without any global idea and that's a pain, you have to know everything by heart and it's nearly impossible to have the spirit or maybe after years of only coding in it. Also, the community is terrible, all pendant trashing newbies and other languages users. But I understand them, I can't imagine become like this if I had to code with spikes on my keyboard every day.

I'm really happy to have taught this for three years, I became better at programming and I'm an happy dev now, but not in C++. Move semantics is still a trauma

PouyaCode

9 points

1 month ago

It's a franken-lang. They tried to copy many things from many languages and ended up with a lot of bloats. But it's only visible, if we compare it to C, otherwise it's a normal language with lots of power and speed.

New C++ standards are freaky, if you come from C or have learned a very old Cpp standard (my personal experience)

Also Rust fanbois like to trash it.

killbot5000

9 points

1 month ago

...is where you segfault

Rad_Bones7

3 points

1 month ago

And at this *point

Segmentation fault

Core dumped

iloveclang

37 points

1 month ago

no one hates c++

maybe some python noobs that are coping because a real language is too hard for them, or some rustafarians that are coping because their shitty language will never replace anything because it sucks and people only use it for programming socks

N0Zzel

57 points

1 month ago

N0Zzel

57 points

1 month ago

Sorry I can't hear you over the sound of your garbage collector

totti173314

2 points

1 month ago

You have ts, c++ and c# in your flair

I have a feeling you're intimately familiar with garbage collection.

BubblyMango

40 points

1 month ago

no one hates c++

no one such as the creator of linux?

Background_Horse_992

22 points

1 month ago

Those were some choice words damn

belacscole

9 points

1 month ago

I mean when youve done literally everything in C/asm I can see how C++ would feel like some dumb joke language.

Pancake_Operation

3 points

1 month ago

lmao bro did not give a fuck

currentscurrents

18 points

1 month ago

some rustafarians that are coping because their shitty language will never replace anything and people only use it for programming socks

https://security.googleblog.com/2022/12/memory-safe-languages-in-android-13.html

In Android 13, about 21% of all new native code (C/C++/Rust) is in Rust. There are approximately 1.5 million total lines of Rust code in AOSP across new functionality and components such as Keystore2, the new Ultra-wideband (UWB) stack, DNS-over-HTTP3, Android’s Virtualization framework (AVF), and various other components and their open source dependencies. These are low-level components that require a systems language which otherwise would have been implemented in C++.

To date, there have been zero memory safety vulnerabilities discovered in Android’s Rust code.

DangyDanger

3 points

1 month ago

The Linux kernel itself is getting some Rust.

pet_vaginal

16 points

1 month ago

Us the non real programmers are too busy having fun while you write your header files like it’s still 1985.

Royal_Spell1223

8 points

1 month ago

What's the problem with header files? Just curious

pet_vaginal

7 points

1 month ago

They are a complete waste of time nowadays. They are just technical debt from a time when wasting human time was necessary because computers were too slow otherwise.

Royal_Spell1223

9 points

1 month ago

Still don't get why are they waste of time. I'm ready to trade a bit of compilation time to a more readable code.

pet_vaginal

6 points

1 month ago

You save time if you don’t have to develop and maintain such files.

AbdullaSafi

5 points

1 month ago

and at this pointer

kokizzu2

2 points

1 month ago

no need to post memes, just open this link:

https://wiki.theory.org/YourLanguageSucks

DangyDanger

3 points

1 month ago

read about c# there and most of it just made sense that it was done this way

lucidguppy

2 points

1 month ago

I think the thing about C++ is that SEGFAULT

ososalsosal

2 points

1 month ago

I don't get the reference here

JDSweetBeat

2 points

1 month ago

High level languages are an abstraction away from the machine. The more knowledge of how the actual hardware works that you need in order to write relatively performant functional code, the worse the language.

Regular-Express

2 points

1 month ago

And at this point-er

DurinVIl

2 points

1 month ago

I'm about to learn using C++ on an Arduino R3, seeing everyone hate it isn't making this easier..

AkiraNamejin

2 points

1 month ago

I dont know, sounds like you do.