FizzBuzz - A history and how it became popular | Coding Tests | Computer Science

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
hey welcome back and in this video i'm going to do something slightly different and we're going to talk about fizzbuzz and we're going to talk a little bit about the history of it how it became popular as a sort of programming coding exercise who came up with the idea how it got popularized et cetera et cetera and the reason i'm gonna look at this is i was actually creating another video which was all about using fizz bars to look at the bytecode of javascript and you know and how you can understand kind of wild loops and for loops and that video is going to come soon but as i started doing the video i started to find a history of this really fascinating i just thought i wanted to get this out [Music] so if you don't know what fizz buzz is well it's basically a kids game where kids just sort of sit around a circle and they shout out numbers and sequence so it'll be like one two three four five six seven and usually in the programming exercise world the range is sort of one to one hundred now in the world of fizz buzz right rather than just shouting out all the numbers if a number is sort of divisible by three so three six nine etcetera then the kid would shout out fizz rather than the number and if uh the number is divisible by five you would shout out buzz and then of course if a number is divisible about both by three and five then it would be fizz buzz now we say it's a children's game but it's also a drinking game as well but let's kind of move on from that so you can kind of imagine how all this uh stands together so it ends up being one two fifths four buzz fizz seven eight fizz bars eleven fizz thirteen fourteen fizzbuzz and that's basically how it works i think i got that right i'll check it back in the edit but i'm pretty sure i got that right so to understand how fizz buzz became popularized in the programming world we need to go back to 2007 and we need to go back to london where a chap called imran gorey who was trying to hire a bunch of computer science graduates got frustrated by the whole process so he ended up looking for an exercise where he was able to sort of and the simplest exercise he could possibly come up with which could test for basic programming skills and that's how he decided that fizzbuzz would be a great programming exercise if we look at the original article which is still available today um i'll just bring this up on my screen uh if you kind of look at it it gives a little bit of the history as i said there um but the thing is probably a little bit scary from his side of things and i'll just highlight that is he reckoned that most computer science graduates couldn't do the fizzbuzz exercise and therefore he would just sort of filter them out now when i say most the numbers that sort of came out later was something like 199 out of 200 which is a lot but is that the case today is that was that the case in 2007 that was certainly imran's experience um i would suggest that's probably not the case today especially because it's such a super popular exercise but maybe what that was the case back then now i'm not a big fan of coding tests i understand why they exist i think it's more fun for kind of like coding card as coding golf really understanding your styles and being able to improve your code and that's why i was doing another video on on fizzbuzz but um but i'm not a big fan of coding tests in that sense but but i know a lot of people are and and that's sort of fine now if we look at the history of that um imran obviously created this this blog posting and then of course like most things that go viral somebody else sort of picked that up so how did that get popularized well actually we have to look at another blog which is called uh coding horror and i'm sure a lot of people who watching this video knows about coding horror the blog and if you don't know about it coding horror is a blog created by jeff atwood and jeff hatwood is another name you will recognize because he is the co-founder along with joel spolsky of stack overflow and the entire stack exchange and a set of websites so jeff had this super popular blog and actually we can bring up the original article that that jeff had uh created and and it was this whole thing on why programmers can't program and and jeff sort of writes he he sort of picked up the article from another chap called reginald braithwaite which again the original article is is is available and you can sort of read about reginald's thoughts and and then jeff obviously picked up on that and brought that into his own blog and he was sort of shocked by the fact that 199 out of 200 people uh couldn't uh write code at all so um and then he refers to imran's uh piece and talks about the the fact that senior programmers were struggling to do this exercise took them 10 to 15 minutes and junior programmers can do it at all and you know and he was talking about why imran thought that if you can solve tiny problems then this is a good test and tiny problems translates into larger problems which is all fine the bit that i'm probably wanting to get into next is jeff didn't just look at it from those cases he actually looked at other things and he looked at dan cagle i think that's how you pronounce it his article uh on how he had a similar experience with entry-level programmers now if you haven't read dan's article i think this is brilliant by the way you you know again it's available online and it's this article on how computer scientists can get hired and that article that dan cagle wrote is probably so insightful even today and i recommend anyone checks it out so the things he talks about back in 2007 are still super relevant today so um so if you look at here he's talking about a surprisingly large fraction of applicants you know even with masters phds fail during these interviews with coding tests and you know great um and then he talks about what you can do he talks about what what interviewers are looking for but he also talks about what you can do to get kind of better and and probably the thing i love the most is this thing that dan says which is you need to get public reputation and fast forward onto 2021 public reputation is still absolutely huge right are you googlable um are you youtubeable have you got blogs etc are you on twitter right you know this is it right we have this sort of open society where anyone can be googled and we can be checked out and you need to have that sort of reputation and and the second thing he talks about is how you gain that reputation and and actually he quotes malcolm gladwell in his book outliers which is an amazing book and i love the bits and he talks about the ten thousand hours rule and saying you know actually if you practice things for 10 000 hours you will become a master and then dan sort of says well actually probably to get a job though you don't need 10 000 hours which you know i probably agree he thinks the number is closer to 500 hours for getting a job which is which is kind of uh makes sense and and i kind of get that and then he gets this whole bit about how can you get experience without a job and and this is brilliant and it's so relevant to today which is actually a good way of doing this is getting involved in open source projects so you know start contributing to open source projects start building unit or regression tests you know and and and obviously he's talking about the wine project which uh you know which dan is hugely involved in but as you can kind of see um it doesn't matter which open source project you're interested in that advice even now in 2021 is super relevant today and it is something that you should sort of uh take forward and going so let's get back to jeff's article for a second and i love this right so as you can see in jeff's article jeff gets really disturbed he says i'm disturbed i'm pulled that so many so-called programmers would apply for a job without being able to write the simplest of programs and that's a slap in the face to anyone who writes software for a living so jeff is really you know can't understand this now this is this is where the story gets absolutely brilliant right because what happens and this is really the start of this coding cata world etc is if you go down into the comment sections there's got a huge amount of comments and volume then what you start to see is people started solving fizzbuzz in the comments section and we can we can kind of go down there and you can see people are putting uh how to solve fizzbuzz in various languages and start to optimize things and then actually if you look at the start of this then uh a sort of a discourse topic and reddit topics come off the back of it where all of these people start trying to solve uh fizzbuzz and i think that is just absolutely fantastic and and again the story does not stop here right so after after that jeff kind of posts this this new article which uh which is the uh uh fizz buzz programmers the stairway to heaven and again that article is online so i'll just bring that up for you just now uh you can read about it today and then jeff is kind of frustrated about this on the amount of people who are suddenly start coding up fizzbuzz in the comment sections and as i said it comes up on big reddit etc bernie and he sort of recognizes the fact that most programmers seen this as a challenge and and actually i love the quote here he said it's his comments on fizzbuzz were interpreted you know in the same way as guitarists would interpret you know if you walked into a guitar center and started yelling most guitars can't place their way to heaven and of course at that point all the guitars would get their guitars out and start playing stairway to heaven you know and in in in in our case and you can see this sort of picture of a guitarist playing there i love this article um and then and then this is my favorite part which is jeff then says i'm invoking the wayne's world rule if you haven't seen wayne's world go check it out which is no stairway to heaven so jeff is saying hey stop stop stop stop with coding up fizz buzzes everywhere um his sort of point where the point of the original article is why we have to ask people to write uh fizzbuzz it wasn't for us to all go ahead and start writing fizzbuzz in his in his blog and and actually so again it's really interesting is is jeff says fizz buzz isn't meant for us it's for the people we can't reach the programmers who don't read anything you know the people that you're forced to give fizzbuzz test to and and i understand where where jeff is coming from because it's such a simple programming exercise but actually as we start to see in things like coding golfs and coding cutters actually being able to just come back to basics and write a fizzbuzz piece of code actually helps you understand styles under helps you understand how things like for loops and while loops and works and the different variations and how conditionals work and in the video that i was originally intending to create you'll see how i use fizzbars to compare javascript that you write for different styles to what actually the bytecode underneath generates which again i think is super useful so all of this thing if we just sort of bring this back to where we were is that's kind of the history of fizzbuzz i think is super interesting and without that today without those articles um i don't think it would have been popularized the way the way it is right and now it's sort of a big part of our kind of computer science history uh whether it's in tests whether it's in uh coding cutters whether it's and again there's probably a whole other video we could do on that um whether it's on things like code wars and et cetera is so in a huge part of the world but uh you know uh imran jeff and and especially dan i i love the damn kegel article more than anything um i think it's even in 2021 it's super relevant today anyway i hope you enjoyed this video hope it gives you a bit of taste of history and uh and and maybe check out the actual video that i was intending to create at some point which is on uh javascript bytecode and and fizzbuzz anyway thanks and we'll speak soon
Info
Channel: Chris Hay
Views: 34
Rating: 5 out of 5
Keywords: chris hay, chrishayuk, computer science, fizz buzz, fizzbuzz javascript
Id: ArLKqUea49k
Channel Id: undefined
Length: 12min 47sec (767 seconds)
Published: Mon Oct 04 2021
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.