professional
 programmer
       gabriele lana
gabriele.lana@cleancode.it
  twitter: @gabrielelana
http://twitter.com/#!/unclebobmartin/status/20972119992
Manifesto of Agile
   Software Development

Individual and interactions over process and tools
 Working software over comprehensive documentation
 Customer collaboration over contract negotiation
  Responding to change over following a plan
Manifesto of Agile
   Software Development

Individual and interactions over process and tools
 Working software over comprehensive documentation
 Customer collaboration over contract negotiation
  Responding to change over following a plan
if your boss is like
if your boss is like


      you are
      doomed
retrospectives




    are not
group therapies
if your developers
      are like
you are
     doomed
if your developers
      are like
Pair programming




CANNOT replace
years of study
“No juju in sky flowers... you are a fool”
’90



DARK AGE OF SOFTWARE
engineering




industry
industry of software

HEAD
HAND
economic




       strategic
programmer           commodity


              CHEAP and
             REPLACEABLE      mediocrity

                       useless to
                        improve
“Software developers
    are needed for
software development”
“Software developers
    are needed for
software development”


  ... no one else is...
“Programming a computer
    does require intelligence.
  Indeed, it requires so much
intelligence that nobody really
does it very well. Sure, some
    programmers are better
 than others, but we all bump
      and crash around like
    overgrown infants. Why?
 Because programming is by
  far the hardest intellectual
task that human beings have
        tried to do. Ever.”
ethical
   professional
   programmer


highly skilled
  who cares
My Rights & Duties
                     ✓   Take responsibility
                     ✓   Be proud of your work
                     ✓   Continue to improve your
                         skills (practice)
                     ✓   Learn how to communicate
                         effectively
My Rights & Duties
                     ✓   Be a master
                     ✓   Be an apprentice
                     ✓   Be part of a community
                     ✓   Don’t be evil
                     ✓   Take good care of your
                         body
programmer           commodity


              CHEAP and
             REPLACEABLE      mediocrity

                       useless to
                        improve
programmer           commodity


              CHEAP and
             REPLACEABLE      mediocrity
                                    ETHICS
                       useless to
                        improve
programmer           commodity


              CHEAP and
             REPLACEABLE      mediocrity
                                    ETHICS
                       useless to
                        improve
programmer           commodity
                 ETHICS
              CHEAP and
             REPLACEABLE      mediocrity
                                    ETHICS
                       useless to
                        improve
programmer           commodity
                 ETHICS
              CHEAP and
             REPLACEABLE      mediocrity
                                    ETHICS
                       useless to
                        improve
Don’t
be a
hero
Do
what you
believe
in
       http://joind.in/4526

Professional Programmer