On occasion you meet a developer who seems like a solid programmer. They know their theory, they know their language. They can have a reasonable conversation about programming. But once it comes down to actually producing code they just don’t seem to be able to do it well. You would probably think they’re a good developer if you’ld never seen them code. This is why you have to ask people to write code for you if you really want to see how good they are. It doesn’t matter if their CV looks great or they talk a great talk. If they can’t write code well you probably don’t want them on your team. After a fair bit of trial and error I’ve come to discover that people who struggle to code don’t just struggle on big problems, or even smallish problems (i.e. write a implementation of a linked list). They struggle with tiny problems. So I set out to develop questions that can identify this kind of developer and came up with a class of questions I call “FuzzBuzz Questions” named after a game children often play (or are made to play) in schools in the UK. In this game a group of children sit around in a group and say each number in sequence, except if the number is a multiple of three (in which case they say “Fuzz”) or five (when they say “Buzz”). If a number is a multiple of both three and five they have to say “Fuzz-Buzz”. git remote add origin https://github.com/markkinuthia/Fuzz-Buzz-exercise-.git git push -u origin master
Fuzz Buzz Exercise
R Markdown i <- 1 d <- NULL while(i < 100){ { { ifelse(i %% 5 ==0 & i %% 3 == 0,x<-"Fuzz-Buzz", ifelse(i %% 5 == 0, x<-"Buzz", ifelse(i %% 3 == 0,x<-"Fuzz",x <- print(i)))) } d <- rbind(d,data.frame(x)) } i<-i+1 }
d