FizzBuzz – Come te la cavi?

Vi dico un segreto: pare che i programmatori non sappiano programmare.

Questo è pressappoco quello che emerge da uno degli ultimi articoli apparsi su coding horrors.

Un articolo molto dibattuto che ho visto riapparire su molti dei feed che seguo quotidinamanete; per esempio su quello di DElyMith.

Successivamente alla pubblicazione di questa scottante verità, il suddetto blog è stato intasato da così tanti commenti che si è visto costretto a chiudere la sezione apposita, collezionando 190 repliche via technorati in meno di 36 ore. La cosa è stata talmente dirompente da scatenare le ire di molti che hanno voluto dimostrare il loro valore mediante frammenti di codice veramente interessanti.

Riassumendo, si sostiene che moltissimi programmatori, sedicenti esperti, se messi di fronte a problemi molto semplici, non siano in grado di trovare gli algoritmi idonei e di conseguenza non siano in grado di produrre il codice necessario allo svolgimento della soluzione.

Vediamo l’esempio principale:

Scrivere un programma che stampi i numeri da 1 a 100. Al posto dei multipli di tre stampare “Fizz” invece del numero e al posto dei multipli di cinque stampare “Buzz”. Per i numeri multipli sia di tre che di cinque stampare “FizzBuzz”.

Molti programatori sarebbero capaci di scrivere questo programma in un paio di minuti. Qui viene il bello: La maggioranza dei laureati in informatica non è capace. Inoltre molto programmatori esperti impiegano più di dieci-quindici minuti per scrivere una soluzione.

Nel mio piccolo, mi sono messo alla prova, raccogliendo la sfida e provando a realizzare il codice incriminato.
Ho chiuso tutte le finestre sul mio destop, ho aperto solo un terminale bash e con VI ho cercato di scrivere il codice incriminato in java.

Ho cronometrato la mia prova dal momento in cui ho aperto VI al momento in cui il mio programma ha stampato correttamente la soluzione al problema.

Ho impiegato esattamente 5 muniti e 9 secondi per scrivere il codice adatto.

Io ho scelto java, ma qualsiasi liguaggio è adatto al test.
Voi quanto tempo ci mettereste a risolvere il problema?


Posted

in

, ,

by

Comments

  1. Gioxx Avatar

    Dovrei rispolverare i fondamenti di Pascal o Delphi o, meglio ancora, farlo in PHP come ha proposto Davidonzo sul suo blog 😉

  2. fra Avatar
    fra

    ciao hiakriuccio, un saluto ” a ..vista” (comicità da Bagaglino)!
    sai che ho visto la serie con danny crane su sky, boston legal?? divertente! e lui mi sta molto piu simpatico di quando faceva star trek, che maschera!
    cià
    el Fra

  3. Luca Sartoni Avatar

    Danny Crane Rulez!!!

Leave a Reply

Your email address will not be published. Required fields are marked *