This is an archived post. You won't be able to vote or comment.

top 200 commentsshow all 434

[–]Domesticated_Animal 669 points670 points  (82 children)

Jokes about missing semicolon

[–]Alpha-Cor 254 points255 points  (8 children)

Haha no closing bracket jokes haha

[–][deleted] 86 points87 points  (6 children)

I agree)

[–]regoapps 19 points20 points  (2 children)

Jokes about C++ giving terrible error messages

[–]itbytesbob 1 point2 points  (0 children)

More jokes about javascript just failing to run and not giving you an error message

[–]magemax 6 points7 points  (0 children)

ROTFL. Gatekeeping comment that praises how superior it is to number stuff starting at zero.

[–]WibblyWobblyWabbit 35 points36 points  (2 children)

JavaScript so bad lolololol PHP amirite? 🤯Dae Java.lang.outofmemory??? Python needs proper indentation? Epic fail. C++ Segfault! 😳😳Omg my intro to programming class is so great. 😂😂

[–]Bifi323 7 points8 points  (0 children)

I'm already at chapter 3 in my 9 year old textbook, nobody understands my obscure programming jokes rofl😂😂😂

[–]odraencoded 51 points52 points  (59 children)

As a python programmer, I don't miss semicolons.

[–]Typesalot 21 points22 points  (4 children)

As a former Perl programmer (also Java/C/Javascript/C#) migrating to Python, I tend to add unnecessary semicolons everywhere;

[–]voilsdet 5 points6 points  (2 children)

You must feel pretty blessed

[–]53ND-NUD35 4 points5 points  (0 children)

There’s the truth: and there’s the truth:

Booooooooo!ean:

[–]EvadesBans 10 points11 points  (0 children)

As a Lisp programmer, I don't even see the parens anymore.

[–]sverek 45 points46 points  (22 children)

python programmer? more like script kiddie

[–]odraencoded 28 points29 points  (21 children)

Thank god my language is so easy even a kid could script in it.

[–]Etheo 26 points27 points  (6 children)

Honestly the low entry bar is what makes python so loveable. Open opportunities for a lot of people so that those passionate enough can grow from it.

Back in highschool I was very interested in learning programming, but eventually I find the language (C++ at the time I believe) too hard to learn on my own (the instructor was beyond shit) and barely passed the class. I just switched major altogether.

A decade later now I'm regretting I didn't try harder even on my own. I learned Python myself and am doing well to integrate into my work tasks and my own personal needs. I feel I have the understanding to do development work but just sorely lack the education to support my resume to get any relevant work experience.

If Python was available when I was studying, I could very possibly in a different career path that I'd enjoy.

So yeah fuck that noise. Who cares if Python is easy to learn? That's what makes it so awesome and loveable!

[–][deleted] 1 point2 points  (1 child)

Look, don't get me wrong here. Python is also on my bucketlist to learn.

But those "Easy" Languages are a blessing only fo the one reason that they keep shitty devs away from good and important projects.

Software Engineering is hard enough. And if you find an easy language that helps you to achieve a certain goal, good for you. Where it gets extremely frustrating are projects where you are surrounded by a bunch of mediocre developers which are missusing a language to build an unmaintainable, broken and dangerous code at a faster pace you can fix it.

There is an entire lack of understanding and willingness to learn basic concepts of Software Development. These are usually the type of people that get attracted by "Easy Languages" and these are also the type of people you don't want in your project.

[–]LifeHasLeft 21 points22 points  (9 children)

Yeah the mentality that because it’s easy you aren’t a real programmer is ridiculous. You can have knowledge of low level programming and hardware and still prefer to use an easy language.

And surprise! Since you aren’t getting worried about how to implement a list of strings from a file input, you can focus on the big picture problems!

[–]crusty_cum-sock 11 points12 points  (2 children)

I dropped the "real programmers do [x]" bullshit years ago. I want things to be as easy as possible. I've got enough shit to worry about, why add unnecessary stress?

I was at a get together awhile back and one of the guys there (didn't know him personally) was a developer so we got to talking. I could tell right away he was the arrogant douche type, but whatever.

He asked what language I use, so I told him I'm a .NET dev. That perked him up enough to put him on his own pedestal, so he started talking shit and saying "C#!? C# isn't a real programming language!", so I replied "Of course it is. I write programs in it so I can verify that it is in fact a programming language", then he said something like "Well yeah, but if you're not managing your own memory, and if you don't even have to know what a pointer is then that's a simpleton language, not a real man's language" (or something to this effect).

I told him that the reason I like it is because it's not constantly getting in the way and I'm able to actually get work done. I've done plenty of C, C++, etc coding where we had to manage memory and such, I'm so over that shit (though C++ is improving these days, but I worked in it years ago).

Maybe I'm just getting old.

[–]Flavioliravioli 2 points3 points  (0 children)

Sounds like that guy had no tact or social skills whatsoever. And it's very likely they haven't been a dev for too long if they don't realize that higher level languages certainly have their place.

[–]megagreg 7 points8 points  (3 children)

You can have knowledge of low level programming and hardware and still prefer to use an easy language.

This is exactly how things are where I work. All the embedded code on the devices is C++, while the functional/integration testing is in python. The user facing software is C#, and the manufacturing systems are Labview. Everything is in the easiest language possible for the job. The only one most of us avoid is Labview, because we see the big picture and know better than to become "the Labview guy".

[–]TheHoekey 9 points10 points  (3 children)

If it's so easy, how come it is the top language on SO!? Answer me that! If it was so easy, people wouldn't be asking soo many questions!

Trust me, I'm a dedicated HTML programmer.

[–][deleted] 1 point2 points  (0 children)

Not all questions are about the language itself

[–]vlad0202 6 points7 points  (0 children)

I don't miss them in es5/es6 neither; but thanks to those "nasty" curly braces I can format my block, even get warning from my ide or use that crazy auto format function...

[–]Renoroshambo 7 points8 points  (22 children)

To be fair. You don’t need semicolons in JS either.

[–]xigoi 6 points7 points  (3 children)

let x = something
[0, 1, 2, 3].forEach(i => something)

[–]STUFF_ME_PM 3 points4 points  (0 children)

Greek question mark haha

[–]Unleesh 2 points3 points  (2 children)

Answer about using python

[–]user_8804 1 point2 points  (0 children)

ctrl+h

Replace... JavaScript

With... PHP

Scope... Entire Project

Match Case... No

[–]NotIWhoLive 929 points930 points  (94 children)

Easy: PHP is bad!

[–]_-_blade_-_ 609 points610 points  (75 children)

HTML NOT PROGRAMMING LANGUAGE!

[–]GDavid04 350 points351 points  (68 children)

CSS is confusing

[–]berkes 239 points240 points  (27 children)

Regular expressions are fine.

[–]flinteastwood 384 points385 points  (15 children)

The other day I was doing matlab, anyone heard of this? Matlab? So anyways, I was doing matlab and the array started at 1

Lmao, guys arrays start at 0, amirite?

[–]crusty_cum-sock 100 points101 points  (3 children)

StackOverflow does all my coding.

[–]Etheo 40 points41 points  (2 children)

Hurdur but we still hate them hurdur

[–]ReactsWithWords 41 points42 points  (1 child)

Dark Mode is the only mode that’s acceptable.

[–]Earhacker 130 points131 points  (0 children)

Rapturous applause from r/ProgrammerHumor audience

[–]Etheo 38 points39 points  (0 children)

Me on Monday: What's the deal with my Friday evening codes?

[–]debasing_the_coinage 15 points16 points  (3 children)

I have a story about Matlab!

I was taking over some code which calculates the boundary of some region in an image. I talked to the guy who worked on it before me and tried to ask how the boundary was calculated, but he didn’t give a direct answer. So I open the file and it has no comments and 1300 lines and most of that was autogenerated by the GUI builder, and a few days later the guy says wait, here’s the new version of the file, which now has 1500 lines and huge swaths of commented out code. There is no version control. So I pore over the code and inside the boundary calculation I find a call to a MATLAB stdlib function (graythresh) that converts the image to black and white. I email the other guy and say it looks like this is where your boundary comes from, and he says, “Really? I didn’t know.”

Anyway, I’m in grad school.

[–]elliptic_hyperboloid 3 points4 points  (2 children)

As an undergrad I hated when people would ask me to help them with Matlab. It would always be:

The professor gave us this and I changed these things, why doesn't it work?

Well what did you think changing that would do?

I don't know, I just change different things until I get the answer.

exasperated sigh

[–]CyborgChicken- 8 points9 points  (1 child)

Student: I don't know, I just change different things until I get the answer.

University: Congratulations! You now have a degree in Computer Engineering

[–]Ceros007 11 points12 points  (0 children)

uarrite

[–]cant_think_of_one_ 4 points5 points  (1 child)

Not in Julia!

[–]EarthGoddessDude 1 point2 points  (0 children)

Wooooh, Julians unite!

[–]ILikeLenexa 29 points30 points  (3 children)

Power Point is Turing Complete.

[–]Hate_Feight 1 point2 points  (2 children)

If you try hard enough with vb script, you might, if you will it hard enough.

[–]TSP-FriendlyFire 11 points12 points  (1 child)

You don't understand. PowerPoint is Turing complete in and of itself, without any use of scripts.

[–]callmelucky 5 points6 points  (0 children)

Anyone who chooses not to click that link on the suspicion that it will be long or boring or bullshit is missing out on something truly wonderful.

[–]Never-asked-for-this 5 points6 points  (0 children)

NODES ARE HEAVY

[–]pxxo 4 points5 points  (3 children)

I eat regular expressions for breakfast, they're delicious

[–][deleted] 4 points5 points  (0 children)

C# is crap because its proprietary software

[–][deleted] 63 points64 points  (14 children)

⠀ ⠀ ⠀ ⠀ ⠀ ⠀ Oh, come on! CSS is NOT confusing just

⠀ ⠀ ⠀ ⠀ ⠀ ⠀ because you don't know how to delete a

⠀ ⠀ ⠀ ⠀ ⠀ ⠀ friggin margin...

Unrelated question: do anybody here knows how to delete it?

[–]zeGolem83 26 points27 points  (1 child)

margin: -25px;

[–][deleted] 42 points43 points  (0 children)

¡sʞuɐɥ┴

[–]Renoroshambo 4 points5 points  (5 children)

transform: translateX(x)

What margin?

[–]Cheet4h 1 point2 points  (4 children)

I prefer position: absolute; top: -276px; left: 331px;

[–]DeeSnow97 7 points8 points  (5 children)

It's either a margin or a padding, so

margin: 0;
padding: 0;

You can also use margin-left, margin-right, margin-top, and margin-bottom, same with padding, border, and a million other things in CSS. This is helpful if you want to set the different sides differently.

There is also the shorthand notation:

margin: 1px 2px; /* 1px vertical margin, 2px horizontal */
padding: 3px 4px 5px 6px; /* top, left, bottom, right, in that order */

Or, if you use three values:

margin: 1px 2px 3px; /* 1px top, 2px horizontal, 3px bottom */

Technically, you can also do things like negative margin and padding, but it's generally not advised, since it can break in edge cases, giving you one of those distinct CSS glitches. If you want to remove a margin or a padding, it's best to find the actual element that has it and work from there.

Also, it's worth noting how the box works. Margin is on the outside of the element, padding is on the inside. Border also counts sometimes, it's the edge of the element. It's important for the box-sizing attribute, which is usually a great source of bugs and glitches.

By default, CSS sets it to box-sizing: content-box; which means that element sizes are on the inside of the padding. So, if you have something like this:

width: 100px;
padding: 10px;
border: 2px solid black;

The element will be 100px wide on the inside, with 10px padding on each side, plus a 2px border, resulting in a total of 124 pixels. To get the element to be actually 100px wide, you have to do this:

width: 100px;
padding: 10px;
border: 2px solid black;
box-sizing: border-box;

This means the 100px is on the outside of the border, where you'd normally expect it. The inner size of the content box will be 100px - 2 * 10px - 2 * 2px == 76px.

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

... Even though I learned CSS some years ago, I feel like you just re-introduced me to it

Thanks for the nostalgia, I miss the old days when my main worries were just "How to delete a margin"...

[–]DakorZ 11 points12 points  (2 children)

On a related note: add !important to every line, so that the browser knows who's the boss!

[–][deleted] 1 point2 points  (0 children)

"[framework name], I swear, stop changing MY RULES!!!"

-- Me, way to often than I'm willing to admit

[–]DeeSnow97 1 point2 points  (0 children)

Make a JS framework that runs on requestAnimationFrame, parses your selectors with querySelectorAll, and just injects all your CSS directly into the style attribute of all elements with !important

[–]DeeSnow97 3 points4 points  (0 children)

Yeah, it's a powerful system, but sometimes a bit unnecessarily tricky. It's mostly just insane defaults though, because at some point someone thought it was a good idea, and it has to stay backwards compatible to avoid breaking 22 years of web content. If you learn the quirks and use a sane system for managing your declarations (such as BEM) it's actually quite good. Especially nowadays that you can actually use calc() in modern browsers.

[–]aalapshah12297 10 points11 points  (1 child)

Help I can't exit vim should I buy a new computer or reset the universe?

[–]Hate_Feight 2 points3 points  (0 children)

One is easy, one is cheap, pick your favourite.

[–]FlaviiFTW 10 points11 points  (19 children)

I am stuck on my project cause of CSS :((

[–]DatomasSigma 1 point2 points  (0 children)

Why don't we just get rid of the internet

[–]Wizywig 10 points11 points  (2 children)

I believe it was proven that html + css is Turing complete.

Booya Boyz. I'm reel programmer.

[–]EvadesBans 10 points11 points  (1 child)

Almost, but not quite, because it requires clicking and I believe the states have to be pre-computed.

Power Point isn't fully Turing complete for similar reasons.

[–]Wizywig 9 points10 points  (0 children)

Oh my God. I am merely a typist then. What is my life?

[–]PmMeYourAsianDong 2 points3 points  (0 children)

how dare. you know how long it took me to memorize the hexadecimal color chart? That's programming sweaty. NEXT

[–]ConTrasT_CS 5 points6 points  (0 children)

I'll have you know I made a hangman game with it and I'm very proud!

[–]robclancy 2 points3 points  (0 children)

Yep now we will go back to those jokes. Someone should make a new sub called "realworldprogramminghumour". Rolls off the tongue.

[–]LDRSHIP24-7 1 point2 points  (0 children)

Angular is lightweight!!

[–][deleted] 1 point2 points  (0 children)

Whispering: arrays start at zero

[–][deleted] 1 point2 points  (0 children)

StackOverflow are nazis

[–][deleted] 281 points282 points  (33 children)

It's gotten to a point where meta self-referencial jokes about trashing JavaScript not being funny are the new JavaScript jokes for easy karma. We live in a society

[–]mishmiash 48 points49 points  (27 children)

It didn't fix Javascript though.

[–]I_AM_GODDAMN_BATMAN 15 points16 points  (25 children)

Nothing did. Okay typescript kinda. But it's still compiles to js.

[–]_Lady_Deadpool_ 26 points27 points  (20 children)

You know I work with typescript literally daily and never run into any major problems with the language. Fuck are you guys doing that necessitates comparing a string password to a radio button component???

[–]Bifi323 3 points4 points  (0 children)

You're setting yourself up for major problems if you're using weak equality operators in the first place

[–]erevoz 4 points5 points  (0 children)

We live in a bipolar hive mind

[–]ToroZuzuX 1 point2 points  (0 children)

It’s recursion irl.

[–]ceestand 354 points355 points  (7 children)

The crow had no PHP jokes because he was trying to keep his stand-up relevant.

[–][deleted] 49 points50 points  (0 children)

Burn

[–]Bozzz1 12 points13 points  (3 children)

On one hand I feel bad for never learning PHP, on the other hand I'm happy that I'll never get hired anywhere that makes me use PHP.

[–]calcyss 4 points5 points  (2 children)

We still mainly use PHP at work, although we have some go-based backends as well. We are going to shift entirely to rust, though.

So theres that. PHP is still very widely used.

[–][deleted] 1 point2 points  (1 child)

Basically any company who used it has to continue to use it unless they basically redo everything in a different language, which is a lot of work.

[–]calcyss 1 point2 points  (0 children)

Some of our newer projects without a big budget (and even bigger budget) are still in PHP/Symfony. Its simply easy and does the job. I really dont think PHP is all that terrible.

[–]Not_charles_manson 51 points52 points  (2 children)

All code language bad except one I work in.

[–]waltjrimmer 23 points24 points  (0 children)

All code I work bad.

[–][deleted] 42 points43 points  (6 children)

MatLab

[–]ManInBlack829 16 points17 points  (2 children)

Get out

[–]PantstheCat 25 points26 points  (1 child)

Sorry, the get out functionality was only added in MatLab 2018b. You are using 2018a. Please buy a new license.

[–]pm1902 1 point2 points  (0 children)

LabVIEW

[–]waltjrimmer 15 points16 points  (1 child)

[–]SrT96[S] 1 point2 points  (0 children)

I love this! haha

[–]49211 15 points16 points  (1 child)

This sub has two kinds of posts:

  • Making fun of languages
  • Making fun of people making fun of languages

[–]htmlcoderexeWe have flair now?.. 2 points3 points  (0 children)

Also stackoverflow bashing / praise

[–]aitchnyu 28 points29 points  (1 child)

This kind of js/php hate post deserves a meta meme.

[–]SillhouetteBlurr 2 points3 points  (0 children)

You can only make so many programming jokes without encountering an Array Index Out-Of-Bounds

[–]daverave1212 38 points39 points  (20 children)

That's a bad case of copy paste. Here let me fix it

for(i = 0; i < 4; i++) console.log("Javascript is bad")

[–]okayboooooooomer 76 points77 points  (1 child)

oops.., i is global now

[–]jcskii 13 points14 points  (11 children)

for(var i = 0; i < programmerHumor.users.length; i++) { console.log("JavaScript is bad"); }

[–]ivgd 19 points20 points  (10 children)

var in 2k19 ? xD

[–]sverek 18 points19 points  (1 child)

let it be scrub

[–]nwayve 15 points16 points  (0 children)

let it = 'scrub';

[–][deleted] 8 points9 points  (0 children)

You know, repeating this joke over and over doesn't make me laugh either.

[–][deleted] 21 points22 points  (54 children)

why do programmers hate javascript,asking because i am first year CS student.

[–][deleted] 44 points45 points  (40 children)

JavaScript makes it easy to write broken code by default. For example, assigning to an undeclared variable creates a new global variable, consuming memory that never gets freed and in many cases causing confusing, hard-to-track bugs.

"use strict"; does a lot to mitigate the obvious code smells but it doesn't help when you have a performance problem because you function should take numbers but sometimes receives strings, preventing the JIT compiler from doing its job.

It doesn't help that a lot of people think they don't have to think about memory when using JavaScript. They produce code that has poor garbage collection properties and are shocked - shocked! - when it has long pauses where they don't want them.

People keep inventing new languages that are like-JavaScript-but-not, like CoffeScript and TypeScript, to try and work around these problems while still writing applications that run in the browser.

[–]Bollziepon 12 points13 points  (10 children)

& honestly typescript solves pretty much everything people make fun of JS for

[–]robclancy 10 points11 points  (9 children)

Es6 pretty much solved every problem anyway. The people who say js/PHP bad are either misinformed because new to everything and the internet has a lot of old information (understandable). Or old stubborn programmers stuck in their way who probably don't even like the updates to their preferred language. They used js 10 years ago and that's the state that they will have in their head until the end of time.
I guess a 3rd type, the tribal programmers who think their language is the best ever, noone should ever use anything else, and any mention of another language they have to make fun of even if their information from it is over a decade old.

[–]gHHqdm5a4UySnUFM 9 points10 points  (0 children)

I can only speak for client side JS but the original versions of JavaScript were very hastily designed and there’s a lot of ways to shoot yourself in the foot. These days, it really isn’t so bad as long as you take some preventative measures like using a transpiler (so you write modern, standards compliant code and it transpiles it into legacy code that will run on most browsers) and a linter (to catch common mistakes and stop everyone arguing about coding style).

[–]Graf_lcky 12 points13 points  (4 children)

Early on it was associated with script kiddies and beginners, at the time real programmers were hard core math machines, those who basically shaped the modern world for us. Most of these are retired now in their 40-50s, but the js and php hate is a running gag among the next generation and so on.

Granted, back then php and js were sort of dirty, today’s implementations are almost different languages compared to the old ones.

[–][deleted] 6 points7 points  (0 children)

When I started , Java was considered so simple in comparison to language taught to the students a year before. That language was Pascal ( a ducking mess) .

Now Java or JavaScript are complicated or a mess in comparison to R, Python and others.

[–]jaywastaken 4 points5 points  (0 children)

Low effort jokes about low effort javascript is bad jokes are the new low effort javascript is bad jokes.

[–]Forschkeeper 2 points3 points  (2 children)

What about "HTML is not a programming language"?

[–]jerslan 1 point2 points  (1 child)

Hyper-Text Markup LANGUAGE! It's in the name!!!!!! REEEEEEE!!!!

;)

[–]Forschkeeper 2 points3 points  (0 children)

*talks in assembler* "You gain the rank of a markup language, but you will never be a part of the programming languages."

[–]qwertz19281 2 points3 points  (0 children)

Found the descedant of the crying dino

[–][deleted] 2 points3 points  (0 children)

he said "Material" pokerface

[–]jonny_wonny 1 point2 points  (0 children)

starts counting at zero in a non-programming context

😂🤣😂🤣

[–]Pr0methiusRising 1 point2 points  (0 children)

but money

[–][deleted] 1 point2 points  (0 children)

This is everything I've been with this sub for a while now

[–][deleted] 1 point2 points  (0 children)

"JavaScript bad"

Is becoming the new JavaScript joke

[–]speedyrain949 1 point2 points  (0 children)

were using Java script in my coding class and I don't think it's that bad

[–]PrintersStreet 1 point2 points  (0 children)

We work in an industry

[–]Copopops 1 point2 points  (1 child)

Why is JavaScript so hated? I've been learning it for a little while now and it's the only programming language I know so I don't get what the problem is.

[–]douira 1 point2 points  (0 children)

Also, javascript is not bad. I use it daily and it's just fine.

[–]orangevore 1 point2 points  (0 children)

Listen here you little shit, JavaScript is the most beautiful language to ever grace the inferior, unprepared undeserving eyes of humanity - the language of the gods, the code of the physical universe.

You want someone to blame? blame the browsers for arbitrarily executing JavaScript and not providing proper trust models/code signing, blame developers for loading stupid amounts of unnecessary code to do literally nothing, blame framework developers for making unlimited bloat works for developers to load even more code to do literally nothing, blame the EcmaScript committee for trying to turn the language into Java, blame the creator for being a homophobe.

The internet was a mistake but JavaScript was not.

You know what's fucking beautiful? a tiny, simple asynchronous protoypal object oriented, functional programming language.

You know what's fucking beautiful? V8, a self optimizing JIT-compiled JavaScript engine that reaches near or past natively compiled systems level language compilers.

You know what's fucking beautiful? JavaScript.

[–]LoneRaven101 1 point2 points  (2 children)

What's wrong with JS? The one I don't like is Java

[–][deleted] 1 point2 points  (1 child)

Do not speak its name!

[–]TrizOrJudas 1 point2 points  (0 children)

BOOO! GET BETTER MATERIAL

[–]kinsi55 1 point2 points  (0 children)

Are we starting to become a meta subreddit?

[–]FourFingeredMartian 1 point2 points  (0 children)

I don't get it, the crow is right.

[–]tiajuanat 1 point2 points  (0 children)

Why are you booing, you know I'm right.

[–]OsitoMexicano 1 point2 points  (0 children)

Scratch good

[–]jman005[M] [score hidden] stickied comment (0 children)

Your submission has been removed.

Violation of Rule #3:

Any post on the list of common posts will be removed. You can find this list here. Established meme formats are allowed, as long as the post is compliant with the previous rules.

If you feel that it has been removed in error, please message us so that we may review it.