Skip to content

Comment on The Coding Interviewparent

Comments

This is an interesting idea: why not use FizzBuzz to show off your understanding of different paradigms?

Someone who barely scrapes out an imperative-style FizzBuzz might not be ideal. On the other hand, someone who can write FizzBuzz in functional and OOP would be better.

Even better would be someone who writes FizzBuzz with a poor order of growth, then explains why the order of growth sucks. That would demonstrate an understanding of algorithmic complexity.

I wonder if anyone looks for this when hiring.

someone who can write FizzBuzz in functional and OOP would be better.

How would you write an OOP implementation of FizzBuzz? I genuinely don't see how this would be done, short of something really contrived like fizz.Print(), buzz.print().

It would definitely be contrived. Let's see how contrived! ;)

    class FizzBuzzer():
        def __init__(self, num):
            self.mod3 = num % 3 == 0
            self.mod5 = num % 5 == 0

        def check(self):
            s = ""
            if self.mod3:
                s += "Fizz"
            if self.mod5:
                s += "Buzz"
            print s

    def main():
        buzzer = FizzBuzzer(n)
        buzzer.check()
Yeah, that's really contrived. Still, you display a familiarity with encapsulation, objects & their attributes/methods, etc.

Sorry to nitpick, but it fails to give "FizzBuzz" for 15 and other multiples of 3 and 5.

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.