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.
Hello, I’mDave@/+pragdave              2
Hello, I’ma RubyProgrammer              3
Hello, I’mAgile             4
Hello, I’mDaveHello, I’ma RubyProgrammer Hello, I’m              Labels Agile
Labels
Hello, I’mAgile             7
Hello, I’mUsing index   cards
Hello, I’mUsing index   cards      Hello, I’m    Having stand-     up meetings
Hello, I’m                    Hello, I’mUsing index                    Doing unit   cards                     testing     ...
Hello, I’m                        Hello, I’mUsing index                        Doing unit   cards                         ...
Hello, I’m                        Hello, I’mUsing index                        Doing unit   cards                         ...
Why?Because that is whatthe Agile Experts tellme to do                         9
That is not agile…
Hello, I’m                       Hello, I’mUsing index                       Doing unit   cards                        tes...
Hello, I’ma RubyProgrammer              12
I need to write aweb application                    13
y !I need to write a   b  uweb applicationR                    13
I need automateall my work                  14
y !I need automate   b  uall my workR                  14
I need to do what isbest for my customer                       15
y !I need to do what is   b  ubest for my customerR                       15
I need world peace                     16
y !I need world peace   bR u                     16
Ru       by            !17
Ru       by            !17
Ru       by            !17
Hello, I’ma RubyProgrammer              18
Which means…               19
Which means…•   I know:                             19
Which means…•   I know:    •   all 90 built-in classes and modules, and/or                                                ...
Which means…•   I know:    •   all 90 built-in classes and modules, and/or    •   all 143,797 Rails methods, and/or       ...
Which means…•   I know:    •   all 90 built-in classes and modules, and/or    •   all 143,797 Rails methods, and/or    •  ...
Which means…•   I know:    •   all 90 built-in classes and modules, and/or    •   all 143,797 Rails methods, and/or    •  ...
That is not aRuby Programmer
That is pouringfacts into your brain
Hello, I’m    Hello, I’ma RubyProgrammer    Agile     The Problem?
Hello, I’m   Hello, I’ma RubyProgrammer   AgileLabels are static
Hello, I’m   Hello, I’ma RubyProgrammer   Agile   No Awareness
Hello, I’m                       Hello, I’mUsing index                       Doing unit   cards                        tes...
That is not Agile                    26
That is not AgileThis is Agility…                    26
http://www.geology.smu.edu/~dpa-www/robo/nbot/nbot_gravel_1.mpg
t                                            de(t)u(t) = P · e(t) + I ·           e( )d + D ·                        0    ...
t                                            de(t)u(t) = P · e(t) + I ·           e( )d + D ·                        0    ...
t                                             de(t)u(t) = P · e(t) + I ·            e( )d + D ·                         0 ...
fix   =   current +   history   +   future         error                     trend         what        “don’t        how   ...
A. Where do we want to be?B. Where are we?C. How do we improve our position?                                     32
A.   Where do we want to be?B.   Where are we?C.   How do we improve our position?                                       33
A.   Where do we want to be?          B.   Where are we?          C.   How do we improve our position?This is Agility     ...
A.   Where do we want to be?        B.   Where are we?        C.   How do we improve our position?This is AgilityThere is ...
Hello, I’ma RubyProgrammer              34
Hello, I’ma RubyProgrammer              34
Instead…           35
Instead…•   I like to solve people’s problems                                        35
Instead…•   I like to solve people’s problems•   I know how to use computers to do this                                   ...
Instead…•   I like to solve people’s problems•   I know how to use computers to do this•   One of my (many) tools is the R...
Instead…•   I like to solve people’s problems•   I know how to use computers to do this•   One of my (many) tools is the R...
Ruby-do?           36
Ruby-doObject-orientation is not the onlyway to program                                     37
Ruby-doSequential code is not the only wayto program                                      38
Ruby-do“Good” code is not the only code                                   39
Ruby-do          40
Ruby-doRuby is not the best programminglanguage                                   40
Ruby-doRuby is not the best programminglanguage(there is no “best” programminglanguage)                                   40
Ruby-dofor item in items   items.each do |item|  process(item)       process(item)end                 end                 ...
Ruby-doname = “Dave”      name     = “Dave”location = “TX”    location = “TX”likes = “code”     likes    = “code”         ...
1.   Que0X said     February 21, 2008 at 13:04     got your point !, could you please explain advantage of learning     ru...
Ruby-do•   Do you practice?                       44
Ruby-do•   Confidence comes from practice,    not knowledge•   Constantly look for ways to practice                        ...
Because then…•   Distrust experts•   Distrust “best practices”•   Distrust labels                                46
A Label Freezes You  A Label Defines YouA Label Makes You Simple
Don’t Label YourselfYou are what you do                        48
Don’t Label YourselfYou are what you do                        48
Be a VERBnot a NOUN             49
Do Good!           50
Asakusa ruby
Asakusa ruby
Upcoming SlideShare
Loading in …5
×

Asakusa ruby

3,970 views

Published on

Quick talk given to Asakusa.rb meeting during a vacation Zachary and I took in Tokyo, February 2012.

The message is a simple one—don't let yourself be defined by labels. Instead, be defined by what you _do_.

Published in: Technology
  • Be the first to comment

Asakusa ruby

  1. 1. Hello, I’mDave@/+pragdave 2
  2. 2. Hello, I’ma RubyProgrammer 3
  3. 3. Hello, I’mAgile 4
  4. 4. Hello, I’mDaveHello, I’ma RubyProgrammer Hello, I’m Labels Agile
  5. 5. Labels
  6. 6. Hello, I’mAgile 7
  7. 7. Hello, I’mUsing index cards
  8. 8. Hello, I’mUsing index cards Hello, I’m Having stand- up meetings
  9. 9. Hello, I’m Hello, I’mUsing index Doing unit cards testing Hello, I’m Having stand- up meetings
  10. 10. Hello, I’m Hello, I’mUsing index Doing unit cards testing Hello, I’m Having stand- up meetings Hello, I’m Refactoring
  11. 11. Hello, I’m Hello, I’mUsing index Doing unit cards testing Hello, I’m Having stand- Hello, I’m up meetings Using Hello, I’m Cucumber!!! Refactoring
  12. 12. Why?Because that is whatthe Agile Experts tellme to do 9
  13. 13. That is not agile…
  14. 14. Hello, I’m Hello, I’mUsing index Doing unit cards testing Hello, I’m Hello, I’m That is sticking RSpec!!! Having stand- Using up meetings labels on yourself Hello, I’m Refactoring
  15. 15. Hello, I’ma RubyProgrammer 12
  16. 16. I need to write aweb application 13
  17. 17. y !I need to write a b uweb applicationR 13
  18. 18. I need automateall my work 14
  19. 19. y !I need automate b uall my workR 14
  20. 20. I need to do what isbest for my customer 15
  21. 21. y !I need to do what is b ubest for my customerR 15
  22. 22. I need world peace 16
  23. 23. y !I need world peace bR u 16
  24. 24. Ru by !17
  25. 25. Ru by !17
  26. 26. Ru by !17
  27. 27. Hello, I’ma RubyProgrammer 18
  28. 28. Which means… 19
  29. 29. Which means…• I know: 19
  30. 30. Which means…• I know: • all 90 built-in classes and modules, and/or 19
  31. 31. Which means…• I know: • all 90 built-in classes and modules, and/or • all 143,797 Rails methods, and/or 19
  32. 32. Which means…• I know: • all 90 built-in classes and modules, and/or • all 143,797 Rails methods, and/or • I’ve written my own testing framework 19
  33. 33. Which means…• I know: • all 90 built-in classes and modules, and/or • all 143,797 Rails methods, and/or • I’ve written my own testing framework 19
  34. 34. That is not aRuby Programmer
  35. 35. That is pouringfacts into your brain
  36. 36. Hello, I’m Hello, I’ma RubyProgrammer Agile The Problem?
  37. 37. Hello, I’m Hello, I’ma RubyProgrammer AgileLabels are static
  38. 38. Hello, I’m Hello, I’ma RubyProgrammer Agile No Awareness
  39. 39. Hello, I’m Hello, I’mUsing index Doing unit cards testing Hello, I’m Hello, I’m Having stand- Using RSpec!!! up meetings Hello, I’m Refactoring
  40. 40. That is not Agile 26
  41. 41. That is not AgileThis is Agility… 26
  42. 42. http://www.geology.smu.edu/~dpa-www/robo/nbot/nbot_gravel_1.mpg
  43. 43. t de(t)u(t) = P · e(t) + I · e( )d + D · 0 dt 28
  44. 44. t de(t)u(t) = P · e(t) + I · e( )d + D · 0 dt Proportional Integral Derivative 29
  45. 45. t de(t)u(t) = P · e(t) + I · e( )d + D · 0 dtfix = current + history + future error trend
  46. 46. fix = current + history + future error trend what “don’t how to do panic” urgent
  47. 47. A. Where do we want to be?B. Where are we?C. How do we improve our position? 32
  48. 48. A. Where do we want to be?B. Where are we?C. How do we improve our position? 33
  49. 49. A. Where do we want to be? B. Where are we? C. How do we improve our position?This is Agility 33
  50. 50. A. Where do we want to be? B. Where are we? C. How do we improve our position?This is AgilityThere is no more 33
  51. 51. Hello, I’ma RubyProgrammer 34
  52. 52. Hello, I’ma RubyProgrammer 34
  53. 53. Instead… 35
  54. 54. Instead…• I like to solve people’s problems 35
  55. 55. Instead…• I like to solve people’s problems• I know how to use computers to do this 35
  56. 56. Instead…• I like to solve people’s problems• I know how to use computers to do this• One of my (many) tools is the Ruby language 35
  57. 57. Instead…• I like to solve people’s problems• I know how to use computers to do this• One of my (many) tools is the Ruby language• I practice Ruby-do 35
  58. 58. Ruby-do? 36
  59. 59. Ruby-doObject-orientation is not the onlyway to program 37
  60. 60. Ruby-doSequential code is not the only wayto program 38
  61. 61. Ruby-do“Good” code is not the only code 39
  62. 62. Ruby-do 40
  63. 63. Ruby-doRuby is not the best programminglanguage 40
  64. 64. Ruby-doRuby is not the best programminglanguage(there is no “best” programminglanguage) 40
  65. 65. Ruby-dofor item in items items.each do |item| process(item) process(item)end end 41
  66. 66. Ruby-doname = “Dave” name = “Dave”location = “TX” location = “TX”likes = “code” likes = “code” 42
  67. 67. 1. Que0X said February 21, 2008 at 13:04 got your point !, could you please explain advantage of learning ruby over python? python already have a huge library from web to Academia , while Ruby looks focusing on web stuff if i may tell ! what do you think ?2. Akitaonrails said February 21, 2008 at 14:52 @que0x I say you should learn both. period. no reason to learn just 1. http://webmat.wordpress.com/2008/02/20/do-not-learn-ruby/
  68. 68. Ruby-do• Do you practice? 44
  69. 69. Ruby-do• Confidence comes from practice, not knowledge• Constantly look for ways to practice 45
  70. 70. Because then…• Distrust experts• Distrust “best practices”• Distrust labels 46
  71. 71. A Label Freezes You A Label Defines YouA Label Makes You Simple
  72. 72. Don’t Label YourselfYou are what you do 48
  73. 73. Don’t Label YourselfYou are what you do 48
  74. 74. Be a VERBnot a NOUN 49
  75. 75. Do Good! 50

×