this post was submitted on 05 Mar 2025
631 points (94.0% liked)

Programmer Humor

20989 readers
2509 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 2 years ago
MODERATORS
 
top 39 comments
sorted by: hot top controversial new old
[–] aghastghast 4 points 1 hour ago

Test-driven development: You spend all your time building a gizmo to tell you if you're on Mars or not. A week before the deadline you start frantically building a rocket.

[–] MajorHavoc 12 points 5 hours ago* (last edited 4 hours ago) (1 children)

These are all accurate, except the first Waterfall one, who also doesn't go to Mars.

[–] [email protected] 8 points 4 hours ago (1 children)

Right. They design the whole rocket, spend years to build the rocket exactly according to the design doc, then the rocket explodes on the launchpad and they have to start all over.

[–] [email protected] 2 points 1 hour ago

That's why testing comes before launching.

[–] [email protected] 44 points 12 hours ago (3 children)

Seems like the author has never programmed anything

[–] [email protected] 4 points 5 hours ago

I'm glad I'm not alone. I couldn't make sense of this comic.

[–] [email protected] 51 points 12 hours ago (1 children)

I'm getting pretty old so I have experienced multiple waterfall projects. The comic should be

You want to go to mars You spend 3 months designing a rocket You spend 6 months building a rocket You spend a month testing the rocket and notice there is a critical desing flaw.

You start over again with a new design and work on it for 2 months You spend another 6 months building it You spend 2 months testing

Rocket works fine now, but multiple other companies already have been to Mars, so no need to even go anymore.

[–] [email protected] 19 points 12 hours ago

This is the perfect waterfall analogy.

[–] tyler 11 points 10 hours ago

pretty sure they're saying waterfall for building a rocket because that's literally how NASA builds a rocket, including the software. It's terrible for building anything other than a rocket though, because the stakes aren't high for most other projects, at least not in the way that a critical mistake will be incredibly bad.

[–] [email protected] 35 points 14 hours ago

What's not covered is the 25 years of R&D in advance of waterfall project starting, or that it's delivered 200% over time and cost due to those requirements being insufficient and based on assumptions that were never or are no longer true.

[–] [email protected] 8 points 11 hours ago* (last edited 11 hours ago) (1 children)

Scrum is about transparency, not intransparency for a month

[–] [email protected] 10 points 10 hours ago* (last edited 10 hours ago)

Scrum is not about any of the things that Scrum proponents claim it's about.

Specifically, it's not about agility, it's not about velocity, it's not about quality, it's not about including the "customer", and it's only about a kind of transparency that has absolutely no impact on the final product.

But yeah, it's about some kind of transparency.

[–] [email protected] 115 points 18 hours ago (3 children)

A software engineer was not involved in this if waterfall is painted positively.

I think the last time I heard an engineer unironically advocating for a waterfall IRL was about a decade ago and they were the one of the crab-in-a-bucket, I-refuse-to-learn-anything-new types—with that being the very obvious motivation for their push-back.

[–] [email protected] 18 points 12 hours ago

Yeah, waterfall would be "you collect requirements to build a rocket to Mars, 2 years later you have a rocket to Venus and it turns out they didn't think oxygen is essential, they'll have to add that in the next major release."

[–] [email protected] 34 points 14 hours ago

Waterfall: Spend 10 years compiling written functional and technical requirements. Cancel the program due to budget overrun.

[–] [email protected] 68 points 19 hours ago (2 children)

Waterfall only works if the programmer knows what the client needs. Usually it goes like:

  • Client has a need
  • Client describes what they think they need to a salesperson
  • Salesperson describes to the product manager what an amazing deal they just made
  • Product manager panics and tries to quickly specify the product they think sales just sold
  • Developers write the program they think product manager is describing
  • The program doesn’t think. It just does whatever buggy mess the programmer just wrote
  • The client is disappointed, because the program doesn’t solve their needs
[–] [email protected] 3 points 1 hour ago
  • Eventually Company decides "agile will fix things"
  • Developers are told to work agile but the only stakeholder they talk to is the PO, who talks to PM, who talks to Sales, who talks to Customers
  • PM&Sales don't want to deliver an unfinished/unpolished product so they give a review every sprint, by themselves, based on what they think the customer wants (they are Very Clever)
  • A year or two later the project is delivered and the customer is predictably unhappy.
  • Management says "how could this have happened!" and does it all over again.
[–] [email protected] 45 points 18 hours ago* (last edited 18 hours ago)

In terms of Mars

  • Client wants a robot to go to Mars
  • Project is budgeted and sold to send a Mars Rover
  • Work starts and after successful test the robot is shown to customer. Customer states he wants to send a Mechwarriors in a drop ship, not a little Pathfinder.
  • Panic, change requests, money being discussed, rockets are being strapped together with duct tape and the rover is bolted on an old Asimo that is being rebuilt into the smallest Mechwarrior ever the day before launch
  • Mech Asimo lands successfully, stumbles and falls on a rock after three steps
  • Customer disappointed
[–] [email protected] 89 points 21 hours ago (2 children)

They forgot the bit where the Waterfall method blew through the budget and deadline about five times over.

[–] [email protected] 14 points 14 hours ago* (last edited 14 hours ago)

And it turns out the customer actually needed a blender

[–] [email protected] 15 points 20 hours ago* (last edited 20 hours ago)

This is why I always act as if neither exists

[–] [email protected] 143 points 23 hours ago (3 children)

Yeah, but waterfall requires that management knows what they want. It's impossible!

[–] [email protected] 70 points 23 hours ago (1 children)
[–] [email protected] 14 points 20 hours ago

I don't think that they were being ironic....

[–] [email protected] 22 points 22 hours ago

So often it's patience from stakeholders to allow for time to actually design and build the things, or willingness to admit the actual cost, or an impossible grand vision with an unqualified/understaffed team, and of course reprioritizing constantly as if it's easy to resume later without paying ramp up.

Don't get me started on the constant detailed status reports...

[–] [email protected] 10 points 20 hours ago

Yeah, it requires replacing the "you test the rocket" with "you test the rocket and it fails or doesn't meet the updated mission specifications" and the "you go to mars" with "you want to go to mars"

[–] [email protected] 56 points 21 hours ago (1 children)

Oh yes, everyone know that waterfall works and the rest sucks, nice

[–] [email protected] 4 points 20 hours ago

If the shoe fits ...

[–] [email protected] 44 points 21 hours ago (1 children)

The Agile Development here is the same result I’ve experienced for every one of these methods. Mostly because of clients/management.

[–] [email protected] 33 points 20 hours ago

That's why agile was created. Because people don't know what they want in panel 1.

[–] [email protected] 40 points 23 hours ago

More accurately the waterfall mission ends up on Phobos only to have to scramble to figure out how to land on Titan because the customer can't tell the difference between moons

[–] [email protected] 17 points 23 hours ago

Kiiiinda true but only with boomer-era on-disk printed at a factory Waterfall. Also everything after agile is just copium for an over professionalized world in which craftsmanship itself had given way, undermining the very concept of expertise so everything is junior devs and now ai

[–] [email protected] 12 points 22 hours ago (2 children)

Seems biased... What's that logo they're trying to hide in the top-right?

[–] [email protected] 11 points 19 hours ago

Must be OP trying to hide it, Toggl displayed it proudly. The author used to work for Toggl marketing and ask can be seen from this post, did an excellent job. He still has a webcomic, it's just not marketing for Toggl anymore. Here it is

As for bias - it's a time tracking tool, but I don't think they actually shill for waterfall, I think it's just poking fun at the agile methodologies.

[–] [email protected] 13 points 22 hours ago
[–] [email protected] 0 points 15 hours ago

I heard nasa used to do some kind of TDD lol