HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
EnterpriseQualityCoding
FizzBuzzEnterpriseEdition
Java2013–2026
EnterpriseQualityCoding / FizzBuzzEnterpriseEdition

FizzBuzzEnterpriseEdition

FizzBuzz Enterprise Edition is a no-nonsense implementation of FizzBuzz made by serious businessmen for serious business purposes.

216Distinct people
237Mentions
3Explicit recommenders
23.9KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

FizzBuzz Enterprise Edition is a no-nonsense implementation of FizzBuzz made by serious businessmen for serious business purposes.

GitHub

Where it is used

No documented product use was verified in the last source check.

What people are saying

Issue #393 - "My printer isn't working" is a highly recommended read in this repository. Every time I thought it couldn't get any worse, someone posts another atrocity. It's a…

ahofmann used a recommendation phrase. 3 indexed comments match. This is a phrase match, not a verdict.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

Mentioned in the same Hacker News threads. That is not proof they are substitutes.

This week on Hacker News

Nov 8–Nov 15 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/15/2026, 1:03:20 AM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year237 dated mentions

Observed mentions: 2013-03-18 16:29:35 UTC to 2026-10-31 00:51:11 UTC.

01020302013-01-01 00:00:00 UTC to 2014-01-01 00:00:00 UTC (exclusive): 14 mentions; 6 submissions, 8 comments20132014-01-01 00:00:00 UTC to 2015-01-01 00:00:00 UTC (exclusive): 15 mentions; 3 submissions, 12 comments2015-01-01 00:00:00 UTC to 2016-01-01 00:00:00 UTC (exclusive): 11 mentions; 0 submissions, 11 comments2016-01-01 00:00:00 UTC to 2017-01-01 00:00:00 UTC (exclusive): 19 mentions; 4 submissions, 15 comments2017-01-01 00:00:00 UTC to 2018-01-01 00:00:00 UTC (exclusive): 15 mentions; 2 submissions, 13 comments2018-01-01 00:00:00 UTC to 2019-01-01 00:00:00 UTC (exclusive): 19 mentions; 0 submissions, 19 comments2019-01-01 00:00:00 UTC to 2020-01-01 00:00:00 UTC (exclusive): 16 mentions; 2 submissions, 14 comments20192020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 11 mentions; 0 submissions, 11 comments2021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 23 mentions; 1 submissions, 22 comments2022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 28 mentions; 3 submissions, 25 comments2023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 19 mentions; 0 submissions, 19 comments2024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 15 mentions; 4 submissions, 11 comments2025-01-01 00:00:00 UTC to 2026-01-01 00:00:00 UTC (exclusive): 19 mentions; 1 submissions, 18 comments2026-01-01 00:00:00 UTC to 2027-01-01 00:00:00 UTC (exclusive): 13 mentions; 0 submissions, 13 comments. Incomplete calendar period.2026*

* An incomplete calendar period is marked with an outlined bar. Its count is not directly comparable with a full period.

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20132013-01-01 00:00:00 UTC2014-01-01 00:00:00 UTC1468
20142014-01-01 00:00:00 UTC2015-01-01 00:00:00 UTC15312
20152015-01-01 00:00:00 UTC2016-01-01 00:00:00 UTC11011
20162016-01-01 00:00:00 UTC2017-01-01 00:00:00 UTC19415
20172017-01-01 00:00:00 UTC2018-01-01 00:00:00 UTC15213
20182018-01-01 00:00:00 UTC2019-01-01 00:00:00 UTC19019
20192019-01-01 00:00:00 UTC2020-01-01 00:00:00 UTC16214
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC11011
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC23122
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC28325
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC19019
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC15411
20252025-01-01 00:00:00 UTC2026-01-01 00:00:00 UTC19118
2026 (partial)2026-01-01 00:00:00 UTC2027-01-01 00:00:00 UTC13013

What Hacker News says

19 sources
> In regards to third party dependencies I agree with what Uncle Bob says, which is to keep them as far away from your stuff as possible. Only introduce a hard dependency if you have to. ... For example I can exchange the DI framework for the whole project in a matter of days if need be. Game engines aside, this is a very late 90s/early 00s philosophy that has really not stood the test of time. The code that strictly follows this principle ends up looking like Enterprise FizzBuzz[0]. Trying to do this results usually in a lot of time spent building an abstraction layer around one thing, and that one thing not actually being replaceable because it was only ever built or tested with that one thing, so trying to replace Thing One with Thing Two is even more work as you now have to rip out both Thing One and adjust or remove the abstraction l
Read the rest
ayer around it. Abstractions aren't free, and the more complex the library you're trying to abstract, the more expensive they are. There's nuances to this of course -- it's a lot easier to write a custom wrapper around a logging library than a DI framework, for example. But in general if you're using a third party library, things end up cleaner if you just commit to it rather than write an abstraction layer. [0] https://github.com/EnterpriseQualityCoding/FizzBuzzEnterpris...
In OSS Game Engines are increasing their stars on GitHub due to Unity's missteps
??? I'll answer your question with a question: Have you seen https://github.com/EnterpriseQualityCoding/FizzBuzzEnterpris... ? :) I'm guess that to those of us who remember when Java came out, "FizzBuzz: EE" is what we think of when we think of Java. :P In Java I have to type a bazillion characters to get anything done! And make all these useless directories and files and InterfaceClassFactoryProtocolStreamingSerializer BS. And worry about how that executes. C++? No bloat*, just speed *Yes, there's some _optional_ bloat. But compared to Java? no contest.
In Java 21 makes me like Java again
There’s a difference between complexity that’s inherent to the problem, and complexity that’s added by developers who have drunk architectural cool aid. This is an example where all of the complexity is caused by rigid adherence to the most popular architectural patterns of about 10 years ago. https://github.com/EnterpriseQualityCoding/FizzBuzzEnterpris... It looks completely ridiculous to modern eyes, but during peak OOP it was just how you should do it. If you like simplicity then your fizz buzz implementation would be a few lines.
In No one wants simplicity
It is relatively rare, but software itself (not just the resulting program, such as "a game") can be art. Most examples of this focus on using code to communicate something humorous about the culture surrounding software. I cite FizzBuzz Enterprise Edition [0] as a notable example. There's also code poetry, which encompasses quite a bit more than just humor. [0]: https://github.com/EnterpriseQualityCoding/FizzBuzzEnterpris...
In Nick Cave on ChatGPT and the creative process
I _think_ the idea is thinking of an "interface" as "something that you use as a way to interact with something from outside an abstraction". I'd summarize their argument as reasoning that if the goal of an abstraction is to avoid having to care about the internal details of something, an interface is a way to expose a subset of ways to interact with it, and the more you expand it, the more it exposes the internals of the thing being abstracted. I don't think they necessarily mean this only in terms of programming, but you could apply this argument to a programming language interface; if you use an interface for interacting with something instead of its direct functionality, each additional method you add to the interface exposes more details of the inner value, which makes it less of an abstraction. Assuming my interpretation is correct,
Read the rest
I'm not sure I totally buy this argument because there doesn't seem to be an obvious way to define the "size" of an interface where it holds true. The naive way to define the size would be number of methods, but I'd argue that methods can vary so much in terms of the amount of cognitive overhead they "expose" to the user that it's not very meaningful. Consider the Movfuscator compiler[0], which compiles code into binaries only using MOV x86 instructions because it happens to be Turing complete; as complex as it might be to learn x86 assembly as a whole and start writing programs directly in it, I'm dubious that trying to do so only with MOV would somehow be easier. Put another way, an x86 instruction set that only contains the MOV instruction is not a "stronger" abstraction than the actual one because it _introduces_ complexity that doesn't exist in the original. Does adding an ADD instruction alongside MOV increase the strength of the abstraction, or weaken it? I don't think there's an answer that we'd immediately all agree on for this sort of thing. Ultimately, I think trying to measure interfaces through the number of methods they expose is similar to trying to measure code by the number of lines in it; while there are some extreme cases where we'd likely all agree (e.g. for a fizzbuzz implementation, having 10 lines of code is probably better than thousands of lines of code[1]), we can't really come up with a good objective metric because the "target" number is based on the complexity of what you're trying to define, and we don't have a way of quantifying that complexity. I think the ideas here are still super interesting though, not because they have definitive right or wrong answers, but because thinking about stuff like this overall improves one's ability to write good software for usage by other programmers. [0]: https://github.com/xoreaxeaxeax/movfuscator [1]: https://github.com/EnterpriseQualityCoding/FizzBuzzEnterpris...
In The bigger the interface, the weaker the abstraction
> you have no idea how much happens so your transaction doesn't get lost, corrupted, or errored out. Maybe he doesn't, maybe he does - you don't know nor do I. I'm pretty sure this is how IBM salesmen used to respond when confronted with those newfangled Unix systems which were starting to appear here and there, nibbling first, then taking larger bytes out of their market share. Instead of the litany of diverse systems they'd have thrown LPARs, SYSPlexs and ESMs around but in the end it still came down to the same thing: this stuff is too complicated to be left to amateurs. They were right, in a way... until those amateurs grew their wisdom teeth and took a large part of their market away from them. Yes, "enterprise" stuff is complicated - often overly so [1] - and it has its place. This does not make it the only viable solution to these
Read the rest
problems, something will eventually come up to eat your lunch just like IBM saw its herd of dinosaurs being overtaken by those upstart critters from the undergrowth. Maybe some smart software system which "guarantees" data reliability and availability without the need for "enterprise" storage devices? It wouldn't be the first time after all. [1] https://github.com/EnterpriseQualityCoding/FizzBuzzEnterpris...
In Is sequential IO dead in the era of the NVMe drive?

Showing the 15 most recent of 19 sources. Enable JavaScript to search and browse every indexed mention.

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.