this post was submitted on 09 Aug 2024
1341 points (98.1% liked)

Programmer Humor

19500 readers
968 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 1 year ago
MODERATORS
 
top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 168 points 3 months ago (1 children)
[–] [email protected] 43 points 3 months ago (2 children)

That point of sale system seemed to handle this perfectly.

[–] [email protected] 15 points 3 months ago

Luckily they had lizards in stock.

[–] [email protected] 11 points 3 months ago

Yeah, that's a huge success. Sure beats my spaghetti

[–] [email protected] 139 points 3 months ago* (last edited 3 months ago) (5 children)

Back when I was the "new guy" code monkey at a fairly sizeable brick-and-mortor-and-e-retailer, I let the intrusive thoughts win and did some impromptu QA on the e-commerce site. (In the test environment. Don't worry.)

It handled things like trying to put "0" or "-1" or "9999999999999" or "argyle" quantity of an item in the cart just fine.

But I know my 2's-compliment signed integers. So I tried putting "0xFFFFFFFF" quantity of an item in my cart. Lo and behold, there was now -1 quantity of that item in my cart and my subtotal was also negative. I could also do things like put a $100.00 thing in the cart and then -1 quantity of something that cost $99.00 in the cart and have a $1.00 subtotal.

(IIRC, there was some issue with McDonalds ordering kiosks at one time where you could compose an order with negative quantities of things to get an arbitrarily large unauthorized discount.)

The rest of my team thought I was a fucking genius from that moment on. I highly recommend if you're ever the "new guy" dev on a team and want to appear indispensible, find a bug that it would never occur to a QA engineer who doesn't have a computer science degree to even test for.

[–] [email protected] 51 points 3 months ago (1 children)

A long time ago I was the guinea pig/first user for a company developed system.

I often had my 1 year old at the time son with me when I worked on the weekend. He had a great time smashing buttons on the keyboard and randomly clicking the mouse on the test version. He found most of the bugs.

[–] [email protected] 31 points 3 months ago (1 children)

You must have been lying close attention to see how they were triggered though.

Bug reports can be tough if you can’t repeat them. I’m glad you got some bonding time with littlie though, especially if you were on the clock.

[–] [email protected] 18 points 3 months ago (1 children)

Screen recording rules.

The amount of times colleagues would dismiss bug reports because "they couldn't reproduce" my steps rapidly declined when they didn't only get the steps based on the video, but also the video.

Take that Daniel, you lazy

Taught our test infrastructure to record and attach those recordings to the reports, too, before the manufacture of the testing tool implemented that. Good times.

[–] [email protected] 6 points 3 months ago

Just install a keylogger as well

[–] [email protected] 29 points 3 months ago

You're hired

[–] [email protected] 18 points 3 months ago

Everyone has a test environment. If you’re lucky you have a production environment too.

[–] [email protected] 11 points 3 months ago (2 children)

The McDonalds thing was simple. 90 cent burger, minus cheese, was -10 cents. Or something along that way. Basically the "hold the cheese" value was fixed but they forgot some items with cheese are piss cheap.

load more comments (2 replies)
[–] [email protected] 11 points 3 months ago (1 children)

I thought testing 2s complement was a common thing. That's like your second year cs class

[–] [email protected] 15 points 3 months ago* (last edited 3 months ago) (2 children)

To be fair, the team at the time was all business majors. (Is "Computer Information Systems" what they call that degree most places or just at my alma mater?) I think I was the only computer science major there.

They'd done a surprisingly admirable job of cobbling together a working e-commerce, loss prevention, customer sercvice portal, orderfulfillment, and CMS suite. And their schooling was in, like, finance, MS Office, and maybe one semester on actual programming.

None of them had ever learned how to count in binary. Let alone been exposed to 2's compliment. And there were no QA engineers.

Oh, there was the sysadmin. He had a temper and was a cowboy. If you asked him to do something, it'd be fuckin' done, man. But you did not want to know how he made sausage. The boss asked him to set up a way for us to do code reviews and he installed Atlassian Fisheye/Crucible on a laptop under his desk. We used that for years. And a lot of the business logic of the customer-facing e-commerce site lived in the rewrite rules in the Apache config that only he had access to and no one else could decipher if they did have access.

Those were good times. Good times.

[–] [email protected] 4 points 3 months ago (1 children)

My school also had a major called “Computer Information Systems”. That was in the 90s. Do they still even offer that? Last I checked I didn’t see my school still offering that.

load more comments (1 replies)
[–] [email protected] 3 points 3 months ago* (last edited 3 months ago)

I know a french degree that I would translate to Computer Information System in English but there is waay more computer science in it that what you described... I'm so glad I didn't live thought the hardship of international studies!

[–] cheddar 131 points 3 months ago* (last edited 3 months ago) (2 children)

A QA engineer walks into a bar and asks where the bathroom is. The bar bursts into flames. The product owner says that the bar can be shipped anyway.

[–] [email protected] 26 points 3 months ago (3 children)

As a PO I'm usually asking QA for some tests that actually show the product meets the requirements

There might be 50 pages proving it rejects bad input, and nothing showing it can successfully handle a perfectly correct case. We seem bad at training testers.

[–] cheddar 12 points 3 months ago* (last edited 3 months ago) (1 children)

That sounds strange. I cannot comment on your particular case without seeing the test artifacts.

Generally speaking, there is nothing wrong with tests that ensure bad input doesn't break the system, as this can easily lead to incorrect system states, damage to the environment, loss of data, money, reputation, and even lives - although most systems are not critical enough to threaten lives.

You wouldn't need QAs if you only needed to validate that the product meets the requirements. In a typical company, many people are involved in that process. This includes the developer who wrote the code, the developer who reviewed it, and the people who conduct acceptance testing, among others. If your developers produce code that doesn't meet the requirements, you're in trouble.

I'm not saying that QA shouldn't validate whether the system meets the requirements, but you don't want them to do just that.

[–] [email protected] 3 points 3 months ago (1 children)

If they didn't properly test validation I would complain about that, what that regularly miss is a test showing correct function for each major use case

[–] [email protected] 2 points 3 months ago

So it sounds like you need to use the words to tell them, do you know testing types and strategies so you can tell them which to employ?

[–] [email protected] 9 points 2 months ago

Doesn't sound too weird to me. In my experience, devs always focus too much on positive / correct inputs, as they want things to work. Which is why you need testers that will catch all the weird crazy ways people can break things. Testers shouldn't even see the code of it can't handle nominal cases.

[–] [email protected] 5 points 3 months ago (1 children)

The problem is that testers are competent, often intelligent individuals. Users, not so much.

load more comments (1 replies)
[–] [email protected] 10 points 2 months ago

“will not fix”

[–] [email protected] 87 points 3 months ago (1 children)

I still fondly remember the QA guy on the first consumer electronics project I worked on. He didn't do scripting or test harnesses or dependency injection, he used the product and filed good bugs telling us what would fuck up our customer's expectations.

A good QA person helps with product design too if you let them.

Andy B,, I'd work with you again in a second.

[–] [email protected] 35 points 3 months ago (3 children)

Andy B,, - good first name for a tester

[–] [email protected] 45 points 3 months ago

He was exactly the kind of guy who doesn't get hired any more because companies "know better".

And stuff gets crappier every year somehow.

[–] [email protected] 3 points 3 months ago
[–] [email protected] 2 points 3 months ago

look at product testing Andy over here

[–] [email protected] 62 points 3 months ago

Orders a

Orders a beer"; DROP TABLE beverages; --

Orders a beer%s%s%s%s

[–] [email protected] 40 points 3 months ago

A QA engineer walks into a bar. Runs into a bar. Somersaults into a bar. Moonwalks into a bar. Crawls into a bar.

[–] [email protected] 34 points 3 months ago (1 children)
[–] [email protected] 23 points 3 months ago (1 children)
[–] [email protected] 7 points 3 months ago (1 children)
[–] [email protected] 3 points 3 months ago* (last edited 2 months ago)

Orders a -1

Edit: Had issues loading the image at first, commented before I saw I was repeating the joke. Forgive me!

[–] [email protected] 27 points 3 months ago

How did you find crowdstrikes test plan?

[–] andioop 18 points 3 months ago

I enjoyed this animation of the meme in the OP.

[–] [email protected] 17 points 3 months ago* (last edited 3 months ago) (1 children)
[–] [email protected] 7 points 3 months ago

Wasn't expecting a fucking rainforest

[–] [email protected] 11 points 3 months ago (1 children)

I walk in and order 257 beers.

[–] [email protected] 3 points 3 months ago

You give the bar 253 beers?

[–] [email protected] 6 points 3 months ago* (last edited 3 months ago) (1 children)

Ninety-nine billion, nine hundred ninety-nine million, nine hundred ninety-nine thousand nine hundred ninety-nine bottles of beer on the wall,

Ninety-nine billion, nine hundred ninety-nine million, nine hundred ninety-nine thousand nine hundred ninety-nine bottles of beer,

You take one down, pass it around,

Ninety-nine billion, nine hundred ninety-nine million, nine hundred ninety-nine thousand nine hundred ninety-eight bottles of beer on the wall.

[–] [email protected] 3 points 2 months ago (3 children)

Unfortunately the bar was built on long int so it overflowed 23 times and landed on about 1.2 billion.

One billion, two-hundred fifteen million, seven-hundred fifty-two thousand, two-hundred-something bottles of beer on the wall, one billion, two-hundred fifteen million, seven-hundred fifty-two thousand, two-hundred-something bottles of beer! Take one down, pass it around...

One less bottle of beer on the wall :)

load more comments (3 replies)
[–] [email protected] 6 points 3 months ago (1 children)

Should have tested for #^%_@()

[–] [email protected] 2 points 3 months ago (1 children)

Do they mean something or they are just random punctuations

load more comments (1 replies)
[–] [email protected] 4 points 2 months ago

Doesn't order shit, waits there while the memory leaks builds to a system crashing crescendo.

[–] [email protected] 3 points 3 months ago (1 children)

Oh! This was a good one! I remember reading this on Bash.org. ahh, thanks for the reminder.

load more comments (1 replies)
load more comments
view more: next ›