Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Want to be
a Programmer?
TGA2013
*Change to Learn -- Learn to Change*

aapo.koski@iki.fi

14.12.2013
A programmer?
Seriously?

aapo.koski@iki.fi

TGA 14.12.2013
Programmer … err … programs

aapo.koski@iki.fi

TGA 14.12.2013
Anything else?
Planning,
estimation

Design,
implementation
Testing,
building,
releasing

Communication

aapo.koski@iki.fi...
Motivation?
Business, technology or problem
motivated?

aapo.koski@iki.fi

TGA 14.12.2013
Reasons to become a Programmer
Jobs

Good
salary

Hard
skills

Flexibility

Challenge

Artlikeness

It’s cool
aapo.koski@i...
Reasons NOT to become a Programmer
Do not like
programming

Not willing to
update your
skills

Management

Overtime

aapo....
Business
Motivated

Me
now
Me in the
90’s

Technology
Motivated

aapo.koski@iki.fi

Problem
Motivated

TGA 14.12.2013
But there’s this thing called

Quality
… ”SW quality” is not evident

aapo.koski@iki.fi

TGA 14.12.2013
Reliability
Integrability

Maintainability

Usability

Functionality

External
Quality

Security

Performance
Charisma

aa...
Testability

Portability

Readability

Internal
Quality

Supportability

aapo.koski@iki.fi

Maintainability

TGA 14.12.201...
Delivery

Process
Quality
Repeatability

aapo.koski@iki.fi

Budget

TGA 14.12.2013
How anyone can handle this?
aapo.koski@iki.fi

TGA 14.12.2013
Does quality
matter?
Depends on who you ask... and who
ends up paying for the lack of it.

aapo.koski@iki.fi

TGA 14.12.20...
Are we any good?
From an objective POV (?)

aapo.koski@iki.fi

TGA 14.12.2013
We have been analyzed…
CHAOS Report 2012

www.standishgroup.com
aapo.koski@iki.fi

TGA 14.12.2013
The findings…
If we have good people
• who know what they are trying to achieve
• with true involvement
• with good commun...
Learning
There’s no substitute for learning on
the battlefield.

aapo.koski@iki.fi

TGA 14.12.2013
Competent

2

1
Diligent /
hardworking

Lazy

3

4
Incompetent

aapo.koski@iki.fi

*Adapted from an original idea of M. Ri...
Competence
• “Minimum 5 years of experience on DeWALT
D27107XPS Type 3 Combination Saw…”

aapo.koski@iki.fi

TGA 14.12.201...
Tools
Keep your toolbox effective

aapo.koski@iki.fi

TGA 14.12.2013
agility
Values
•Communication
•Simplicity
•Feedback
•Respect
•Courage
•…

aapo.koski@iki.fi

Principles
•Rapid delivery
•F...
What’s in your toolshed?

aapo.koski@iki.fi

TGA 14.12.2013
So, once more, all together
now…
There is NO silver bullet.

aapo.koski@iki.fi

TGA 14.12.2013
What to beware, part 1

”Happy
Creative
Programmer”

”Proud Lead
Programmer”

”Product/
System
Guru”

”Grumpy
Asshole
Prog...
What to beware, part 2
• Do not let the Architecture Astronauts* scare you…

*http://www.joelonsoftware.com/articles/fog00...
Enterprise Architecture
"a well-defined practice for conducting
enterprise analysis, design, planning, and
implementation,...
Shopping list…
Soft skills

Communication

Writing

Learning (cont.)

Technical skills
aapo.koski@iki.fi

TGA 14.12.2013
Takeway
Do only things that make sense.
Hack.

aapo.koski@iki.fi

TGA 14.12.2013
Hackers?
“A hacker is someone who thinks outside the box. It's
someone who discards conventional wisdom, and
does somethin...
The importance of never
being done
And make sure programming is fun enough.

aapo.koski@iki.fi

TGA 14.12.2013
“I've come to believe deeply in the
idea that that becoming a great
programmer has very little to do
with programming.”
- ...
Upcoming SlideShare
Loading in …5
×

TGA2013 Presentation: Want to be a Programmer?

1,470 views

Published on

My presentation in the Tampere Goes Agile 2013 event at Tampere Hall on 14th December 2013.

Published in: Business, Technology
  • Be the first to comment

  • Be the first to like this

TGA2013 Presentation: Want to be a Programmer?

  1. 1. Want to be a Programmer? TGA2013 *Change to Learn -- Learn to Change* aapo.koski@iki.fi 14.12.2013
  2. 2. A programmer? Seriously? aapo.koski@iki.fi TGA 14.12.2013
  3. 3. Programmer … err … programs aapo.koski@iki.fi TGA 14.12.2013
  4. 4. Anything else? Planning, estimation Design, implementation Testing, building, releasing Communication aapo.koski@iki.fi TGA 14.12.2013
  5. 5. Motivation? Business, technology or problem motivated? aapo.koski@iki.fi TGA 14.12.2013
  6. 6. Reasons to become a Programmer Jobs Good salary Hard skills Flexibility Challenge Artlikeness It’s cool aapo.koski@iki.fi TGA 14.12.2013
  7. 7. Reasons NOT to become a Programmer Do not like programming Not willing to update your skills Management Overtime aapo.koski@iki.fi TGA 14.12.2013
  8. 8. Business Motivated Me now Me in the 90’s Technology Motivated aapo.koski@iki.fi Problem Motivated TGA 14.12.2013
  9. 9. But there’s this thing called Quality … ”SW quality” is not evident aapo.koski@iki.fi TGA 14.12.2013
  10. 10. Reliability Integrability Maintainability Usability Functionality External Quality Security Performance Charisma aapo.koski@iki.fi TGA 14.12.2013
  11. 11. Testability Portability Readability Internal Quality Supportability aapo.koski@iki.fi Maintainability TGA 14.12.2013
  12. 12. Delivery Process Quality Repeatability aapo.koski@iki.fi Budget TGA 14.12.2013
  13. 13. How anyone can handle this? aapo.koski@iki.fi TGA 14.12.2013
  14. 14. Does quality matter? Depends on who you ask... and who ends up paying for the lack of it. aapo.koski@iki.fi TGA 14.12.2013
  15. 15. Are we any good? From an objective POV (?) aapo.koski@iki.fi TGA 14.12.2013
  16. 16. We have been analyzed… CHAOS Report 2012 www.standishgroup.com aapo.koski@iki.fi TGA 14.12.2013
  17. 17. The findings… If we have good people • who know what they are trying to achieve • with true involvement • with good communication with who they’re achieving it for • who are well-supported they will succeed, if success is possible. aapo.koski@iki.fi TGA 14.12.2013
  18. 18. Learning There’s no substitute for learning on the battlefield. aapo.koski@iki.fi TGA 14.12.2013
  19. 19. Competent 2 1 Diligent / hardworking Lazy 3 4 Incompetent aapo.koski@iki.fi *Adapted from an original idea of M. Ristimäki, 2011 TGA 14.12.2013
  20. 20. Competence • “Minimum 5 years of experience on DeWALT D27107XPS Type 3 Combination Saw…” aapo.koski@iki.fi TGA 14.12.2013
  21. 21. Tools Keep your toolbox effective aapo.koski@iki.fi TGA 14.12.2013
  22. 22. agility Values •Communication •Simplicity •Feedback •Respect •Courage •… aapo.koski@iki.fi Principles •Rapid delivery •Frequent delivery •Embrace change •Self-organization •Regular adaption •SOLID •… Practices •Scrum/Kanban •CI •Unit tests •Pair programming •Sprints/iterations •Daily standups •… TGA 14.12.2013
  23. 23. What’s in your toolshed? aapo.koski@iki.fi TGA 14.12.2013
  24. 24. So, once more, all together now… There is NO silver bullet. aapo.koski@iki.fi TGA 14.12.2013
  25. 25. What to beware, part 1 ”Happy Creative Programmer” ”Proud Lead Programmer” ”Product/ System Guru” ”Grumpy Asshole Programmer” http://hackerboss.com/the-birth-of-the-grumpy-asshole-programmer/ aapo.koski@iki.fi TGA 14.12.2013
  26. 26. What to beware, part 2 • Do not let the Architecture Astronauts* scare you… *http://www.joelonsoftware.com/articles/fog0000000018.html aapo.koski@iki.fi TGA 14.12.2013
  27. 27. Enterprise Architecture "a well-defined practice for conducting enterprise analysis, design, planning, and implementation, using a holistic approach at all times, for the successful development and execution of strategy. Enterprise Architecture applies architecture principles and practices to guide organizations through the business, information, process, and technology changes necessary to execute their strategies. These practices utilize the various aspects of an enterprise to identify, motivate, and achieve these changes." aapo.koski@iki.fi TGA 14.12.2013
  28. 28. Shopping list… Soft skills Communication Writing Learning (cont.) Technical skills aapo.koski@iki.fi TGA 14.12.2013
  29. 29. Takeway Do only things that make sense. Hack. aapo.koski@iki.fi TGA 14.12.2013
  30. 30. Hackers? “A hacker is someone who thinks outside the box. It's someone who discards conventional wisdom, and does something else instead. It's someone who looks at the edge and wonders what's beyond. It's someone who sees a set of rules and wonders what happens if you don't follow them. A hacker is someone who experiments with the limitations of systems for intellectual curiosity.” - Bruce Schneier, Secrets and Lies, 2000 https://www.schneier.com/blog/archives/2006/09/what_is_a_hacke.html aapo.koski@iki.fi TGA 14.12.2013
  31. 31. The importance of never being done And make sure programming is fun enough. aapo.koski@iki.fi TGA 14.12.2013
  32. 32. “I've come to believe deeply in the idea that that becoming a great programmer has very little to do with programming.” - Jeff Atwood (2011) http://www.codinghorror.com/blog/2011/02/how-to-write-without-writing.html aapo.koski@iki.fi TGA 14.12.2013

×