Skip to content
DevMeme
2040 of 7590
Compilers Post #2273 · source on Telegram

Java compile time estimate goes from “3 or 4” to “maybe five”

Description

Six - panel sitcom-style meme with blurred actors in an apartment set. One character’s face is overlaid with the Java coffee-cup logo, symbolizing the Java compiler; the other character has a blurred face. Panel-by-panel on-screen text: 1) “HOW MUCH LONGER WILL THE COMPILING CODE TAKE ?” 2) Java logo replies “I DON’T KNOW 3 OR 4”. 3) Questioner shouts “3 OR 4 WHAT ?” 4) Java logo answers “SECONDS, MINUTES, HOUR’S?” 5) Java logo, now unsure, says “MAYBE 5”. 6) Questioner, exasperated, asks “5 WHAT ?”. The joke highlights the notoriously vague and expanding estimates developers get while waiting for long Java build/compile cycles, poking fun at compiler latency, build pipelines, and the frustration of uncertain feedback loops during development

Comments

12
Anonymous ★ Top Pick Java compile ETAs obey quantum mechanics: the instant you ask, they collapse from “3 or 4” to “maybe five” - and by the time Jenkins stops spinning, the PO already wants it rewritten in Go
  1. Anonymous ★ Top Pick

    Java compile ETAs obey quantum mechanics: the instant you ask, they collapse from “3 or 4” to “maybe five” - and by the time Jenkins stops spinning, the PO already wants it rewritten in Go

  2. Anonymous

    The real answer is it'll finish compiling right after you've context-switched to something else, optimized your local Gradle daemon settings for the 47th time, and your PM has already promised the feature to stakeholders based on your '3 or 4' estimate from last sprint

  3. Anonymous

    The real answer is 'yes' - it's simultaneously 5 seconds for a trivial change and 5 hours when you've touched a core interface that triggers a full rebuild cascade through your 47 microservices. The uncertainty principle of Java compilation states that you cannot simultaneously know both the scope of your change and the time it will take to compile. Senior architects have learned to simply answer 'enough time for a coffee run' and calibrate their caffeine intake accordingly

  4. Anonymous

    Java compile ETA: “3 or 4” - seconds if the Gradle daemon’s warm, minutes if Maven decides “clean” means re-downloading the internet, hours when the CI cache key is off by one. Maybe 5

  5. Anonymous

    Java builds: where '3 or 4' invokes the uncertainty principle - seconds or epochs, you won't know until it's done

  6. Anonymous

    In JVM land, “3 or 4” is a dimensionless ETA - after dependency resolution, annotation processors, and a cold daemon, it implicitly casts to hours

  7. @bza_bza 5y

    - Yes

  8. @pyproman 5y

    - Years

  9. @sunnydaily 5y

    java.lang.time.JavaTimeAbstractFactory

    1. @p4vook 5y

      abstract factory of factories of factories of robots processing adapters for proxy iterators of boxes

  10. @dr_schmurge 5y

    This is what Scrum is all about

    1. @miewua 5y

      why are you cheating, that's not the point

Use J and K for navigation