Upgrade to Pro — share decks privately, control downloads, hide ads and more …

How we built "Oyasumi Shower" in 24 Hours. おやすみシャワーができるまで

Yoji Shidara
September 16, 2012

How we built "Oyasumi Shower" in 24 Hours. おやすみシャワーができるまで

16 September, 2012
Sapporo RubyKaigi 2012 #sprk2012
http://sapporo.rubykaigi.org/2012/en/schedule/details/14.html

Yoji Shidara

September 16, 2012
Tweet

More Decks by Yoji Shidara

Other Decks in Technology

Transcript

  1. How We Built
    “Oyasumi Shower”
    in 24 Hours
    ͓΍͢Έγϟϫʔ͕Ͱ͖Δ·Ͱ
    Yoji Shidara
    Team OyasumiSupport#end_of_day
    Enishi Tech Inc.

    View Slide

  2. Let me introduce
    ·ͣ͸͡Ίʹ

    View Slide

  3. the most important
    Japanese word
    ԿΑΓ΋େࣄͳ೔ຊޠΛ
    ͝঺հ͠·͢

    View Slide

  4. in my talk :)
    ͜ͷൃදͷதͰ
    Ұ൪େࣄͳ೔ຊޠ͔΋

    View Slide

  5. “Oyasumi”
    ʮ͓΍͢Έʯ

    View Slide

  6. Do you know
    “Oyasumi”?
    ޚଘ஌Ͱ͔͢ʁ

    View Slide

  7. Repeat after me :)
    ΋͏Ұ౓!

    View Slide

  8. “Oyasumi”
    ʮ͓΍͢Έʯ

    View Slide

  9. “Oyasumi” means
    ʮ͓΍͢Έʯͱ͍͏ͷ͸

    View Slide

  10. “Good night”
    “Good night” ͷ͜ͱͰ͢

    View Slide

  11. So,
    ͔ͩΒ

    View Slide

  12. Tonight,
    after you get drunk,
    ࠓ໷͔ͬ͢Γਲͬ෷ͬͯ
    ؼΔͱ͖ʹ͸ɺ

    View Slide

  13. Say “Oyasumi”
    ʮ͓΍͢ΈʯΛ
    ࢖ͬͯΈ͍ͯͩ͘͞

    View Slide

  14. View Slide

  15. Let me back to
    the title...
    λΠτϧʹ໭Γ·͢

    View Slide

  16. How We Built
    “Oyasumi Shower”
    in 24 Hours
    ͓΍͢Έγϟϫʔ͕Ͱ͖Δ·Ͱ
    Yoji Shidara
    Team OyasumiSupport#end_of_day
    Enishi Tech Inc.

    View Slide

  17. Let me switch to
    Japanese...
    ͦΖͦΖ೔ຊޠͰ...

    View Slide

  18. We built
    “Oyasumi Shower”
    ࢲͨͪ͸
    ʮ͓΍͢Έγϟϫʔʯͱ͍͏
    ϓϩμΫτΛ

    View Slide

  19. for the 24-hour
    Hackathon Competition.
    24࣌ؒͰ։ൃ͠
    ίϯςετʹԠื͠·ͨ͠

    View Slide

  20. We won
    the “special prize”
    ͦͯ͠
    ಛผ৆Λड৆͠·ͨ͠

    View Slide

  21. CC-BY 2.0 http://www.flickr.com/photos/sora_h/7326377068/

    View Slide

  22. During the process,
    ͦͷͳ͔Ͱ

    View Slide

  23. we’ve found some “tips”
    to enjoy the contest.
    ίϯςετΛָ͠ΉίπΛ
    ͍͔ͭ͘ݟ͚ͭ·ͨ͠

    View Slide

  24. Today, I want to share
    our tips with you.
    ͦΕΛΈͳ͞Μͱ
    ڞ༗͍ͨ͠ͱࢥ͍·͢

    View Slide

  25. You might say,
    ΋͔͢͠Δͱ

    View Slide

  26. Just a contest.
    ͨͩͷίϯςετ͡Όͳ͍͔

    View Slide

  27. Just 24 hours.
    ͨͬͨ24࣌ؒ͡Όͳ͍͔

    View Slide

  28. Right.
    ͦ͏ࢥ͏͔΋͠Ε·ͤΜ

    View Slide

  29. Just a contest.
    ͔ͨ͠ʹίϯςετͩ͠

    View Slide

  30. Just 24 hours.
    ͨͬͨ24࣌ؒͷ͜ͱͰ͢

    View Slide

  31. But...
    ͚ͩͲ...

    View Slide

  32. Our life
    is just a series of
    24 hours.
    ࢲͨͪͷ೔ʑͱ͍͏ͷ͸
    ͦͷ24࣌ؒͷ࿈ଓ͔ͩΒ

    View Slide

  33. Thinking about how to
    enjoy the whole 24-hour
    24࣌ؒͷָ͠ΈํΛ
    ߟ͑Δ͜ͱ͸

    View Slide

  34. leads us to think about
    how to enjoy our life.
    Ͳ͏΍ͬͯ೔ʑΛָ͠Ή͔ʹ
    ͭͳ͕͍ͬͯΔͱࢥ͏ͷͰ͢

    View Slide

  35. So, I want to share our
    tips with you.
    ͔ͩΒ
    ͦͷίπΛΈͳ͞Μͱ
    ڞ༗͍ͨ͠ͱࢥ͍·͢

    View Slide

  36. How we code is
    Ͳ͏͍͏;͏ʹͯ͠ίʔυΛ
    ॻ͍͍ͯ͘ͷ͔ͱ͍͏ͷ͸

    View Slide

  37. how we live,
    ͲͷΑ͏ʹੜ͖͍͔ͯ͘
    ͱ͍͏͜ͱʹҧ͍ͳ͍

    View Slide

  38. for us, programmers.
    ࢲͨͪ͸ϓϩάϥϚ͔ͩΒ

    View Slide

  39. Through the contest, I
    want to think about that.
    ίϯςετΛ௨ͯ͡
    ͦͷ͜ͱʹ͍ͭͯߟ͑·͢

    View Slide

  40. View Slide

  41. About
    “Oyasumi Shower”.
    ͓΍͢Έγϟϫʔʹ͍ͭͯ
    ͓࿩͠·͠ΐ͏

    View Slide

  42. We built it for
    COOKPAD 24-hour
    Hackathon Competition.
    ΫοΫύου
    ։ൃίϯςετ24ͷͨΊʹ
    ࢲୡ͕ͭͬͨ͘ϓϩμΫτͰ͢

    View Slide

  43. The contest is to develop
    applications
    based on the theme.
    ίϯςετͰ͸
    ՝୊Λղܾ͢Δ։ൃΛ
    24࣌ؒͰߦ͍·͢

    View Slide

  44. The challenge
    of this year was
    ࠓ೥ͷ՝୊͸

    View Slide

  45. “Create a service that will
    make the day end on a
    fun note.”
    “Ұ೔ͷऴΘΓΛ
    ָ͘͢͠Δ΋ͷ”

    View Slide

  46. Our product was
    an iPhone app to share
    “Oyasumi”
    ࢲୡ͕࡞ͬͨͷ͸
    ʮ͓΍͢ΈʯΛڞ༗͢Δ
    iPhone ΞϓϦέʔγϣϯͰ͢

    View Slide

  47. The traditional
    “Oyasumi” was only for
    the closest people.
    ैདྷͷʮ͓΍͢Έʯ͸
    ͘͝਌͍ؒ͠ฑͷ
    ͨΊͷ΋ͷͰͨ͠

    View Slide

  48. With “Oyasumi Shower”,
    you can exchange
    “Oyasumi”
    across time and space.
    ͓΍͢ΈγϟϫʔΛ࢖͏ͱ
    ʮ͓΍͢ΈʯମݧΛ
    ۭ࣌Λ௒͑ͯ޿͘ڞ༗Ͱ͖·͢

    View Slide

  49. Demo movie
    (I’ll try to translate...)
    σϞಈըΛ͝ཡ͍ͩ͘͞

    View Slide

  50. View Slide

  51. When you start
    “Oyasumi Shower”,
    ʮ͓΍͢ΈγϟϫʔʯΛ
    ىಈ͢Δͱɺ

    View Slide

  52. A chorus of “Oyasumi”
    comes from your iPhone.
    ΈΜͳͷʮ͓΍͢Έʯ͕
    iPhone͔Βฉ͖͑ͯ͜·͢

    View Slide

  53. Then, you record and
    your “Oyasumi”
    for the others.
    ͜ͷ͋ͱʹདྷΔਓͷͨΊʹ
    ͋ͳͨͷʮ͓΍͢ΈʯΛ
    ࿥Ի͠·͢

    View Slide

  54. Someone uses the app
    after you will hear
    your Oyasumi.
    ͦͷ͋ͱʹདྷͨਓ͕
    ͋ͳͨͷʮ͓΍͢ΈʯΛ
    ฉ͘͜ͱ͕Ͱ͖·͢

    View Slide

  55. View Slide

  56. 9 am
    Start!
    3 pm
    9 pm
    3 am

    View Slide

  57. How will you spend the
    24 hours?
    ͋ͳͨͳΒͲ͏࢖͍·͔͢ʁ

    View Slide

  58. 9 am
    Start!
    3 pm
    9 pm
    3 am

    View Slide

  59. Our 24 hours were like
    this:
    ࢲୡͷ24࣌ؒ͸
    ͜Μͳײ͡Ͱͨ͠

    View Slide

  60. Concept making
    Tech survey
    Distribution
    & Deployment
    Chores
    Submit!
    Preparation
    for application
    Naming discussion
    Adding
    one-more
    feature
    Movie making
    9 am
    Prototyping
    Making it shippable
    Packaging
    Start!
    3 pm
    9 pm
    3 am

    View Slide

  61. How do you feel?
    Ͳ͏ײ͡·ͨ͠?

    View Slide

  62. Concept making
    Tech survey
    Distribution
    & Deployment
    Chores
    Submit!
    Preparation
    for application
    Naming discussion
    Adding
    one-more
    feature
    Movie making
    9 am
    Prototyping
    Making it shippable
    Packaging
    Start!
    3 pm
    9 pm
    3 am

    View Slide

  63. In order to tell you
    how we decided what to
    make for the contest,
    ԿΛͭ͘Δͷ͔Λ
    Ͳ͏΍ܾͬͯΊ͔ͨΛ
    ঺հ͢ΔͨΊʹ

    View Slide

  64. I need to talk about
    our team.
    ·ͣࢲୡʹ͍͓ͭͯ࿩͠·͢

    View Slide

  65. Team
    OyasumiSupport#end_of_day

    View Slide

  66. I live in Sapporo.
    The other members
    live in Tokyo.
    ࢲ͸ࡳຈʹ
    ଞͷϝϯόʔ͸౦ژʹ
    ॅΜͰ͍·͢

    View Slide

  67. Team
    OyasumiSupport#end_of_day
    Sapporo,
    Hokkaido
    Omori,
    Tokyo
    Kamata,
    Tokyo

    View Slide

  68. We’ve used
    PlayStation 3’s video chat
    and Skype.
    ओʹϓϨΠεςʔγϣϯ3ͷ
    ϏσΦνϟοτͱ
    Skype Λ࢖͍·ͨ͠

    View Slide

  69. A member had to
    commute soon after the
    contest started.
    ͋Δϝϯόʔ͕
    ίϯςετ։࢝௚ޙʹిंʹ
    ৐Δඞཁ͕͋Γ·ͨ͠

    View Slide

  70. Unfortunately.
    Fortunately.
    ࢒೦ͳ͕Β
    ͍͑ɺ޾ӡͳ͜ͱʹ

    View Slide

  71. He was on the train with
    earphones. We talked
    online and he heard.
    ൴͸ిं಺ͰΠϠϗϯΛ͚ͭͯ
    ࢲୡͷձ࿩Λฉ͍͍ͯ·ͨ͠

    View Slide

  72. We heard
    his surroundings.
    We felt like really being
    there.
    ࢲୡʹ͸ࡶ౿͕ฉ͖͑ͯͯ͜
    ྟ৔ײͨͬ΀ΓͰͨ͠

    View Slide

  73. As he couldn’t say
    anything, we’ve tried to
    make him laugh.
    ిं಺Ͱ͸੠Λग़ͤͳ͍ͷΛ
    ͍͍͜ͱʹ ๻Β͸൴Λ
    সΘͤΑ͏ͱͨ͠Γ͠·ͨ͠

    View Slide

  74. We enjoyed that time so
    much and felt “sounds”
    are so fun.
    ͦ͏͜͏͍ͯ͠Δ͏ͪ
    Իͬͯ໘ന͍ͳͱײ͡·ͨ͠

    View Slide

  75. Without it, we couldn’t
    have reached to the key
    concept of Oyasumi
    Shower.
    ͦΕ͕ͳ͔ͬͨΒ͓΍͢Έγϟ
    ϫʔͷΩʔίϯηϓτʹ͸
    ౸ୡͰ͖ͳ͔ͬͨ͜ͱͰ͠ΐ͏

    View Slide

  76. In this way, we decided to
    use “sounds”.
    ͦΜͳ෩ʹͯ͠
    ԻΛ࢖͏͜ͱʹͳΓ·ͨ͠

    View Slide

  77. The best word to
    exchange at the end of
    the day is
    Ұ೔ʹ࠷ޙʹԻΛަ׵͢Δ
    ͱ͍͑͹

    View Slide

  78. Oyasumi
    ʮ͓΍͢ΈʯͰ͢ΑͶ

    View Slide

  79. What I am talking about?
    Կͷ࿩Ͱ͚ͨͬ͠

    View Slide

  80. Tip:
    Prank is the source of
    ideas.
    ѱϊϦ͸ΞΠσΟΞͷݯ

    View Slide

  81. We are “voting” ideas
    while laughing.
    ๻Β͸স͍ͬͯΔؒʹ
    ໘ന͍ΞΠσΟΞΛ
    બผ͍ͯ͠ΔͷͰ͢

    View Slide

  82. Interesting ideas keep us
    funny long time.
    (As we want to have fun!)
    ໘ന͍ΞΠσΟΞʹ͍ͭͯ
    ࿩͢ͱ͖
    ϫΠϫΠ͸ࢭ·Βͳ͍

    View Slide

  83. Concept making
    Tech survey
    Distribution
    & Deployment
    Chores
    Submit!
    Preparation
    for application
    Naming discussion
    Adding
    one-more
    feature
    Movie making
    9 am
    Prototyping
    Making it shippable
    Packaging
    Start!
    3 pm
    9 pm
    3 am

    View Slide

  84. Then how to record and
    playback the sound?
    Ͳ͏΍ͬͯԻΛ
    ࿥Իͨ͠Γ࠶ੜͨ͠Γ
    ͢ΔͱΑ͍Ͱ͠ΐ͏

    View Slide

  85. We decided to make an
    iPhone app
    iPhone ΞϓϦΛͭ͘Ζ͏
    ͱ͍͏͜ͱʹͳΓ·ͨ͠

    View Slide

  86. Where to exchange
    “Oyasumi”?
    ʮ͓΍͢Έʯͬͯݴ͏ͷ͸
    Ͳ͜Ͱ͠ΐ͏ʁ

    View Slide

  87. Bedrooms in common.
    ৸͕͓͓͍ࣨͷͰ͸

    View Slide

  88. Few people use laptops
    in their bedroom
    (except us)
    ৸ࣨͰPCΛ࢖͏ਓ͸
    ͦ͏ଟ͘ͳ͍͸ͣ

    View Slide

  89. But no one had
    experience
    to treat audio on iPhone
    νʔϜͷ୭΋
    iPhoneͰԻ੠Λѻͬͨ
    ܦݧ͸͋Γ·ͤΜͰͨ͠

    View Slide

  90. We challenged!
    ͚ΕͲ
    ௅ઓͯ͠Έ·ͨ͠

    View Slide

  91. As we had Rails
    experience,
    Rails ͷܦݧ͸͋ͬͨͷͰ

    View Slide

  92. we could build a web
    service to exchange
    “Oyasumi”
    text messages.
    ςΩετϝοηʔδͰ
    ͓΍͢ΈΛަ׵͢Δ
    αΠτͳΒ͙͢࡞Εͦ͏Ͱͨ͠

    View Slide

  93. But that idea didn’t
    attract us.
    Ͱ΋͋Μ·Γָͦ͠͏ʹ͸
    ࢥ͑ͳ͔ͬͨ

    View Slide

  94. So we tried to build
    iPhone app
    ͔ͩΒ iPhone ΞϓϦΛ
    ͭͬͯ͘ΈΔ͜ͱʹ͠·ͨ͠

    View Slide

  95. As building native apps
    in 24 hours seemed to be
    too difficult for us,
    ωΠςΟϒΞϓϦέʔγϣϯ͸
    24࣌ؒͰ͸खʹ༨ΔͷͰ

    View Slide

  96. Cordova (PhonGap)
    was chosen
    Cordova (PhoneGap) Λ
    ࢖͍·ͨ͠

    View Slide

  97. We did timeboxed survey
    for feasibility evaluation.
    ࣮ݱՄೳੑΛௐ΂ΔͨΊʹ
    ࣌ؒΛ۠੾ͬͯௐࠪ͠·ͨ͠

    View Slide

  98. And we thought
    we could go!
    ͦͷ··ਐΊͦ͏ͩͱ͍͏
    ײ৮Λಘ·ͨ͠

    View Slide

  99. Doing things that seem
    easy is not exciting.
    ؆୯ͦ͏ʹࢥ͑Δ͜ͱ͸
    ϫΫϫΫ͠ͳ͍

    View Slide

  100. Tip:
    Do the right-level
    challenge
    ͪΐ͏Ͳ͍͍௅ઓΛ͢Δ

    View Slide

  101. Concept making
    Tech survey
    Distribution
    & Deployment
    Chores
    Submit!
    Preparation
    for application
    Naming discussion
    Adding
    one-more
    feature
    Movie making
    9 am
    Prototyping
    Making it shippable
    Packaging
    Start!
    3 pm
    9 pm
    3 am

    View Slide

  102. We used Sinatra
    for the backend.
    Sinatra ΛόοΫΤϯυʹ
    ࢖͍·ͨ͠

    View Slide

  103. Just receive the audio,
    mixup them and return
    back to the client.
    Ի੠Λड৴͠ɺ߹੒ͯ͠
    ΫϥΠΞϯτʹฦ͠·͢

    View Slide

  104. This didn’t take so long.
    Thanks to ruby :)
    ͜ͷ෦෼͸ൺֱత୹͍࣌ؒͰ
    Ͱ͖·ͨ͠

    View Slide

  105. I was familiar with it.
    ׳Ε͍ͯͨͱ͍͏ͷ΋େࣄͰ͢

    View Slide

  106. We had no time to learn
    the deployment for the
    rack apps.
    Rack ΞϓϦέʔγϣϯͷ
    σϓϩΠํ๏Λௐ΂͍ͯͨΒ
    ؒʹ߹Θͳ͔ͬͨ͜ͱͰ͠ΐ͏

    View Slide

  107. We did challenge in some
    part, and did not in the
    other part.
    ௅ઓͨ͠ͱ͜Ζ΋͋Δ͠
    ͠ͳ͔ͬͨͱ͜Ζ΋͋Γ·͢

    View Slide

  108. In order to have a good
    challenge, we need to
    complete the other part.
    Α͍௅ઓ͢ΔͨΊʹ͸
    ͦ͏Ͱͳ͍෦෼Λ͖ͪΜͱ
    ࡁ·ͤΔඞཁ͕͋Γ·͢

    View Slide

  109. To do so,
    ͔ͩΒେࣄͳͷ͸

    View Slide

  110. Tip:
    Have tools
    lie comfortably with your
    hand in your toolbox.
    खʹೃછΜͩಓ۩Λ
    ಓ۩ശʹೖΕ͓ͯ͘

    View Slide

  111. Concept making
    Tech survey
    Distribution
    & Deployment
    Chores
    Submit!
    Preparation
    for application
    Naming discussion
    Adding
    one-more
    feature
    Movie making
    9 am
    Prototyping
    Making it shippable
    Packaging
    Start!
    3 pm
    9 pm
    3 am

    View Slide

  112. In the first 6 hours, we
    made a prototype
    ։͔࢝Β6࣌ؒܦաͯ͠
    ϓϩτλΠϓ͕ग़དྷ͖ͯ·ͨ͠

    View Slide

  113. that could record
    “Oyasumi”, send it to the
    server, receive and
    playback.
    ࿥Իɺαʔόʹૹ৴ɺ
    αʔό͔Βड৴ͨ͠Ի੠Λ࠶ੜ
    ͢Δͱ͜Ζ·Ͱ͖·ͨ͠

    View Slide

  114. View Slide

  115. We could experience the
    app by hitting buttons in
    the right order.
    ॱংྑ͘ϘλϯΛԡ͢͜ͱͰ
    ΞϓϦΛମݧͰ͖Δͱ͜Ζ·Ͱ
    ͖·ͨ͠

    View Slide

  116. We felt we can go
    as it was fun enough
    for us.
    ͦΕ͸ָ͍͠ମݧͩͬͨͷͰ
    ͜Ε͸͍͚Δͱ͍͏ؾ࣋ͪʹ
    ͳ͖ͬͯ·ͨ͠

    View Slide

  117. With the prototype, we
    proceeded discussion
    about the Oyasumi UX.
    ϓϩτλΠϓΛ࢖͍ͳ͕Β
    ͋Δ΂͖Ϣʔβମݧͷݕ౼Λ
    ͢͢Ί͍͖ͯ·ͨ͠

    View Slide

  118. Tip:
    A working prototype is
    worth a thousand words
    ಈ͘΋ͷΛ৮ͬͯΈΔͷ͕େࣄ

    View Slide

  119. Next, we tried to finish
    chores for release.
    ࣍ʹϦϦʔεͷ४උΛ
    ࡁ·ͤΔ͜ͱʹ͠·ͨ͠

    View Slide

  120. Concept making
    Tech survey
    Distribution
    & Deployment
    Chores
    Submit!
    Preparation
    for application
    Naming discussion
    Adding
    one-more
    feature
    Movie making
    9 am
    Prototyping
    Making it shippable
    Packaging
    Start!
    3 pm
    9 pm
    3 am

    View Slide

  121. Don’t you feel too early?
    ૣ͗͢ͳ͍ʁͬͯࢥ͍·ͨ͠ʁ

    View Slide

  122. iPhone apps seemed to
    be difficult to deploy.
    iPhoneΞϓϦΛ
    ϦϦʔε͢Δͷ͸େมͦ͏ͩ
    ͱ͍͏ෆ͕҆͋Γ·ͨ͠

    View Slide

  123. If we couldn’t submit the
    app, we were far from the
    start line of the contest.
    ΞϓϦΛެ։Ͱ͖ͳ͍Α͏Ͱ͸
    ελʔτϥΠϯʹ͢Βཱͯͳ͍

    View Slide

  124. We reduced that risk.
    ͔ͩΒ
    ϦεΫΛݮΒ͢͜ͱʹ͠·ͨ͠

    View Slide

  125. Also, capistrano was
    configured for the
    backend. As usual :)
    όοΫΤϯυ͸ capistrano Ͱ
    σϓϩΠ͢ΔΑ͏ʹ͠·ͨ͠
    ׳Εͨ΋ͷͰ͢:)

    View Slide

  126. Tip:
    Can’t be done before
    shipping
    ϦϦʔεͰ͖ͳ͍ͱ
    ελʔτϥΠϯʹ΋ཱͯͳ͍

    View Slide

  127. Concept making
    Tech survey
    Distribution
    & Deployment
    Chores
    Submit!
    Preparation
    for application
    Naming discussion
    Adding
    one-more
    feature
    Movie making
    9 am
    Prototyping
    Making it shippable
    Packaging
    Start!
    3 pm
    9 pm
    3 am

    View Slide

  128. What we had at that time
    was just a mock.
    ͜ͷ࣌఺Ͱखݩʹ͋ͬͨͷ͸
    ͨͩͷϞοΫͰͨ͠

    View Slide

  129. Playing with the
    prototype, we designed
    the user experience.
    ϓϩτλΠϓͰ༡ͼͳ͕Β
    ͋Δ΂͖ϢʔβମݧΛ
    ߟ͍͖͑ͯ·ͨ͠

    View Slide

  130. Concept making
    Tech survey
    Distribution
    & Deployment
    Chores
    Submit!
    Preparation
    for application
    Naming discussion
    Adding
    one-more
    feature
    Movie making
    9 am
    Prototyping
    Making it shippable
    Packaging
    Start!
    3 pm
    9 pm
    3 am

    View Slide

  131. At this time,
    We had a kaigi
    to name the product.
    ͜ͷλΠϛϯάͰ
    ϓϩμΫτ໊ܾఆձٞ΋
    ࣮ࢪ͠·ͨ͠

    View Slide

  132. Of course, the meeting
    was so prankish :)
    ѱϊϦձٞͰ͢

    View Slide

  133. For example,
    “OyaaS :
    Oyasumi as a Service”
    ͓΍ʔ͢ͱ͔

    View Slide

  134. We found the name
    “Oyasumi Shower”
    ʮ͓΍͢Έγϟϫʔʯ
    ͱ͍͏໊લΛݟ͚ͭ·ͨ͠

    View Slide

  135. And we got the phrase
    “sleep after taking
    Oyasumi Shower”
    ʮ͓΍͢ΈͷγϟϫʔΛ
    ཋͼͯ৸Δʯ
    ͱ͍͏ϑϨʔζ΋ݟ͚ͭ·ͨ͠

    View Slide

  136. After that, the product
    goal was concreted.
    ͦΕ͔Βํ޲ੑ͕
    ͖ͪΜͱݻ·Γ·ͨ͠

    View Slide

  137. As you know,
    naming is important!
    ໊લॏཁͰ͢Ͷ

    View Slide

  138. Tip:
    The right name leads the
    product to the right way
    Α໊͍લ͕ݟ͔ͭΔͱ
    ໊લ͕ϓϩμΫτΛಋ͍ͯ͘ΕΔ

    View Slide

  139. Then we coded.
    ͲΜͲΜ࡞͍͖ͬͯ·͢

    View Slide

  140. Concept making
    Tech survey
    Distribution
    & Deployment
    Chores
    Submit!
    Preparation
    for application
    Naming discussion
    Adding
    one-more
    feature
    Movie making
    9 am
    Prototyping
    Making it shippable
    Packaging
    Start!
    3 pm
    9 pm
    3 am

    View Slide

  141. Transitions of screens
    were implemented.
    Artworks were
    integrated.
    ը໘ભҠͷ࡞Γ͜Έͱ
    ΞʔτϫʔΫ΋
    ૊Έࠐ·Ε·ͨ͠

    View Slide

  142. Concept making
    Tech survey
    Distribution
    & Deployment
    Chores
    Submit!
    Preparation
    for application
    Naming discussion
    Adding
    one-more
    feature
    Movie making
    9 am
    Prototyping
    Making it shippable
    Packaging
    Start!
    3 pm
    9 pm
    3 am

    View Slide

  143. We prepared to fill the
    application form.
    ฒߦͯ͠Ԡืͷ४උΛ͠·͢

    View Slide

  144. It’s super important
    because we couldn’t
    finish without it.
    Ԡื͠ͳ͍͜ͱʹ͸
    ࿩ʹͳΒͳ͍ͷͰ͜Ε͸
    ͱͯ΋ॏཁͰ͢

    View Slide

  145. After the form is
    completed, we finally
    became able to release it
    anytime we want.
    ԠืϑΥʔϜͷ४උ͕Ͱ͖ͯ
    ͍ͭͰ΋ϦϦʔεͰ͖Δ
    ঢ়ଶʹ౸ୡ͠·ͨ͠

    View Slide

  146. Done!
    Ͱ͖ͨ!

    View Slide

  147. Concept making
    Tech survey
    Distribution
    & Deployment
    Chores
    Submit!
    Preparation
    for application
    Naming discussion
    Adding
    one-more
    feature
    Movie making
    9 am
    Prototyping
    Making it shippable
    Packaging
    Start!
    3 pm
    9 pm
    3 am
    Done!

    View Slide

  148. We chose one feature
    to add
    as we have injury time :)
    ͕࣌ؒ·ͩ͋ͬͨͷͰ
    ࣍ʹ௥Ճ͢ΔϑΟʔνϟΛ
    Ұͭબͼ·ͨ͠

    View Slide

  149. Concept making
    Tech survey
    Distribution
    & Deployment
    Chores
    Submit!
    Preparation
    for application
    Naming discussion
    Adding
    one-more
    feature
    Movie making
    9 am
    Prototyping
    Making it shippable
    Packaging
    Start!
    3 pm
    9 pm
    3 am

    View Slide

  150. The feature was
    implemented keeping
    the product shippable.
    ϓϩμΫτΛग़ՙՄೳʹ
    อͪͭͭ
    ͦͷ࣮૷΋׬ྃ͠·ͨ͠

    View Slide

  151. Concept making
    Tech survey
    Distribution
    & Deployment
    Chores
    Submit!
    Preparation
    for application
    Naming discussion
    Adding
    one-more
    feature
    Movie making
    9 am
    Prototyping
    Making it shippable
    Packaging
    Start!
    3 pm
    9 pm
    3 am

    View Slide

  152. We made the movie
    just you saw
    as we still have the time.
    ·͕ͩ࣌ؒ͋ͬͨͷͰ
    ঺հͷϏσΦ΋࡞੒͠·ͨ͠

    View Slide

  153. It was so funny to make a
    movie saying “Oyasumi”
    in the morning.
    ΋͏ேͩͬͨͷͰ
    ͓΍͢ΈͷϜʔϏʔΛͭ͘Δͷ͸
    ͔ͳΓস͑·ͨ͠

    View Slide

  154. Tip:
    Make it shippable,
    then keep it shippable.
    ͍ͭͰ΋ϦϦʔεՄೳͳঢ়ଶ
    ʹ΋͍͖ͬͯ
    ͦͷঢ়ଶΛอͭ

    View Slide

  155. Concept making
    Tech survey
    Distribution
    & Deployment
    Chores
    Submit!
    Preparation
    for application
    Naming discussion
    Adding
    one-more
    feature
    Movie making
    9 am
    Prototyping
    Making it shippable
    Packaging
    Start!
    3 pm
    9 pm
    3 am

    View Slide

  156. Think
    Prototype
    Make it Shippable!
    Keep it Shippable!
    Done!
    Our “Process”
    Shippable!
    Time is up!
    Good concept!

    View Slide

  157. View Slide

  158. To be honest,
    we jumped the gun.
    ࣮͸ࢲͨͪ͸
    ϑϥΠϯά͍ͯ͠·ͨ͠

    View Slide

  159. Concept making
    Tech survey
    Distribution
    & Deployment
    Chores
    Submit!
    Preparation
    for application
    Naming discussion
    Adding
    one-more
    feature
    Movie making
    9 am
    Prototyping
    Making it shippable
    Packaging
    Start!
    3 pm
    9 pm
    3 am

    View Slide

  160. Server setup
    9 am
    Start!
    3 pm
    9 pm
    3 am
    Strategy meeting
    The day before!

    View Slide

  161. We held a strategy
    meeting the day before.
    VPS is configured before
    the contest.
    ࡞ઓձٞ΋͍ͯ͠·ͨ͠͠
    ίϯςετલʹ
    VPSΛηοτΞοϓ͠·ͨ͠

    View Slide

  162. Not only that!
    ͦΕ͚ͩͰ͸ͳ͍͚Ͳ!

    View Slide

  163. View Slide

  164. We are old friends.
    ݹ͔͘Βͷ༑ਓͰ

    View Slide

  165. Three of us won the
    special prize at the
    contest of the last year.
    νʔϜͷ͏ͪ3ਓ͸
    ڈ೥΋ίϯςετʹࢀՃ͍ͯͯ͠
    ಛผ৆Λड৆͍ͯ͠·͢

    View Slide

  166. View Slide

  167. We have shared so long
    time and we know well
    each other.
    ͓ޓ͍ͷ͜ͱΛ
    Α͘஌͍ͬͯ·͢

    View Slide

  168. We know
    what he is good at,
    or not.
    Կ͕ಘҙͰԿ͕ۤख͔΋
    Α͘Θ͔͍ͬͯ·͢

    View Slide

  169. We know what we like,
    or not.
    Կ͕޷͖ͰԿ͕޷͖Ͱͳ͍͔΋
    ͓ޓ͍ʹΘ͔͍ͬͯ·͢

    View Slide

  170. This should be one
    reason why we could
    make good decisions.
    ͔ͩΒνʔϜ͕Α͍൑அΛ
    ͠΍͔ͬͨ͢ͷͰ͸

    View Slide

  171. Of course, our decisions
    are not always good :)
    ͍ͭ΋Α͍ܾఆ͕Ͱ͖Δͱ͸
    ݶΒͳ͍͚ΕͲ

    View Slide

  172. At least, we don’t need
    much time
    to reach an agreement.
    গͳ͘ͱ΋
    ͳ͔ͳ͔߹ҙͰ͖ͳ͍
    ͱ͍͏͜ͱ͸গͳ͍

    View Slide

  173. We don’t need to start
    probing the intentions
    of others.
    ෲͷ͙͞Γ͍͔͋Β
    ෺ࣄΛ࢝ΊΔඞཁ͸ͳ͍

    View Slide

  174. Because we know each
    other well.
    ͓ޓ͍ͷ͜ͱΛ
    Α͘஌͍ͬͯΔ͔Β

    View Slide

  175. Tasks were taken by the
    best person without
    much discussion.
    ؾ͕ͭ͘ͱҰ൪ద੾ͳਓ͕
    ࣗવͱͦͷ࡞ۀΛ΍͍ͬͯΔ

    View Slide

  176. It seems quite natural.
    ͱͯ΋ࣗવͳײ͕͡͠·͢

    View Slide

  177. Tip:
    Just know each other.
    Tasks will fit into
    the best place.
    ͓ޓ͍ΛΑ͘஌Δͱ
    λεΫ͕ͪΐ͏Ͳྑ͍ॴʹ
    Ҡಈ͢ΔΑ͏ʹͳΔ

    View Slide

  178. One more thing.
    ΋͏ͻͱͭ

    View Slide

  179. We use same tools such
    as Ruby, Rails, IRC, PS3,
    Dropbox, FaceBook, ...
    ࢲͨͪ͸ಉ͡ಓ۩Λ
    ଟ͘࢖͍ͬͯ·͢

    View Slide

  180. This dramatically reduces
    the setup cost.
    ηοτΞοϓίετΛ
    ௿͘཈͑Δ͜ͱ͕Ͱ͖·͢

    View Slide

  181. Especially about
    communication tool,
    ͱ͘ʹίϛϡχέʔγϣϯʹ
    ͍ͭͯ͸

    View Slide

  182. We always try new tools.
    We like to try.
    ৽͍͠πʔϧ͕͋Δͱ
    ͻͱ௨Γࢼ͢Α͏ʹ͍ͯ͠·͢
    (ͦΕָ͕͠Έ)

    View Slide

  183. But some behaviors do
    not appear while using
    with only 2 persons.
    2ਓͩͱମݧͰ͖ͳ͍͜ͱ͕
    ͚ͬ͜͏͋ΔͷͰ͢

    View Slide

  184. Tip:
    Try communication tools
    with at least 3 person.
    ίϛϡχέʔγϣϯπʔϧ͸
    3ਓҎ্Ͱࢼ͢ͱΑ͍

    View Slide

  185. Conclusion
    ·ͱΊ

    View Slide

  186. The most important:
    େࣄͳ͜ͱΛ΋͏Ұ౓

    View Slide

  187. “Oyasumi” means
    “Good night”
    ͓΍͢Έ͸ “Good Night” ͷ͜ͱ

    View Slide

  188. How to decide
    what to do?
    ͳʹΛ͢Δ͔Λ
    Ͳ͏΍ܾͬͯΊΔ͔

    View Slide

  189. Prank is the source
    of ideas.
    ѱϊϦ͸ΞΠσΟΞͷݯ

    View Slide

  190. The right name leads the
    product to the right way
    Α໊͍લ͕ݟ͔ͭΔͱ
    ໊લ͕ϓϩμΫτΛಋ͍ͯ͘ΕΔ

    View Slide

  191. A working prototype is
    worth a thousand words
    ಈ͘΋ͷΛ৮ͬͯΈΔͷ͕େࣄ

    View Slide

  192. Do the right-level
    challenge
    ͪΐ͏Ͳ͍͍௅ઓΛ͢Δ

    View Slide

  193. How things get done?
    Ͳ͏΍ͬͯ׬ྃͤ͞Δ͔

    View Slide

  194. Can’t be done before
    shipping
    ϦϦʔεͰ͖ͳ͍ͱ
    ελʔτϥΠϯʹ΋ཱͯͳ͍

    View Slide

  195. Make it shippable,
    then keep it shippable.
    ͍ͭͰ΋ϦϦʔεՄೳͳঢ়ଶ
    ʹ΋͍͖ͬͯ
    ͦͷঢ়ଶΛอͭ

    View Slide

  196. How we spend days?
    Ͳ͏΍ͬͯ೔ʑΛա͔͢͝

    View Slide

  197. Have tools
    lie comfortably with your
    hand in your toolbox
    खʹೃછΜͩಓ۩Λ
    ಓ۩ശʹ

    View Slide

  198. Just know each other.
    Tasks will fit into
    the best place.
    ͓ޓ͍ΛΑ͘஌Δͱ
    λεΫ͕ͪΐ͏Ͳྑ͍ॴʹ
    Ҡಈ͢ΔΑ͏ʹͳΔ

    View Slide

  199. Try communication tools
    with at least 3 person.
    ίϛϡχέʔγϣϯπʔϧ͸
    3ਓҎ্Ͱࢼ͢ͱΑ͍

    View Slide

  200. View Slide

  201. While working
    with this team,
    ͜ͷ։ൃΛ
    ;Γ͔͑ͬͯΈΔͱ

    View Slide

  202. I feel
    everything was “natural”.
    ͱͯ΋ࣗવͩͱײ͡·͢

    View Slide

  203. What are behind this?
    ͜ͷޙΖʹ͸
    Կ͕͋ΔΜͩΖ͏?

    View Slide

  204. View Slide

  205. Taken after we submitted
    our product.
    ͜ͷࣸਅ͸
    ࡞඼Λ౤ߘͨ͋͠ͱʹ
    օͰࡱͬͨ΋ͷͰ͢

    View Slide

  206. The end of the contest
    for us.
    ίϯςετͷऴΘΓ

    View Slide

  207. After the festival,
    our days resumed.
    ͓ࡇΓͷ͋ͱ͸
    ͍ͭ΋ͷ೔ʑ͕଴͍ͬͯ·͢

    View Slide

  208. View Slide

  209. The boundary.
    ͜Ε͕ڥ໨

    View Slide

  210. How happy we’d be if the
    our days are like this!?
    ͜Μͳ೔ʑΛૹΕͨΒ
    ޾ͤ!?

    View Slide

  211. Maybe I love the feelings
    because
    it was not everyday.
    ೔ৗ͡Όͳ͍͔Β
    ͍͍ͳ͋ͱࢥ͏͚ͩͳͷ͔΋

    View Slide

  212. Am I just seeking things
    I cannot reach?
    ແ͍΋ͷͶͩΓΛ
    ͍ͯ͠Δ͚ͩͳͷ͔΋

    View Slide

  213. Our life seems not
    so simple as we can do
    only what we want to do.
    ΍Γ͍ͨ͜ͱ͚ͩ
    ΍͍ͬͯΒΕΔ΄Ͳ
    ୯७Ͱ͸ͳͦ͞͏

    View Slide

  214. But I want to bridge
    the boundary.
    Ͱ΋ͦͷڥ໨ΛຒΊ͍ͨ

    View Slide

  215. Anyhow, our life is the
    series of 24 hours.
    ͍ͣΕʹͤΑ
    ೔ʑ͸24࣌ؒͷ࿈ͳΓͰͨ͠

    View Slide

  216. Thinking about how to
    enjoy whole the 24 hours
    ͦͷ24࣌ؒͷָ͠ΈํΛ
    ߟ͑Δ͜ͱ͸

    View Slide

  217. leads us to think about
    how to enjoy our life.
    Ͳ͏΍ͬͯ೔ʑΛָ͠Ή͔ʹ
    ͭͳ͕͍ͬͯΔ

    View Slide

  218. How do you think?
    Ͳ͏ࢥ͍·͔͢?

    View Slide

  219. How we code is
    Ͳ͏͍͏;͏ʹͯ͠ίʔυΛ
    ॻ͍͍ͯ͘ͷ͔ͱ͍͏ͷ͸

    View Slide

  220. how we live,
    ͲͷΑ͏ʹੜ͖͍͔ͯ͘
    ͱ͍͏͜ͱʹҧ͍ͳ͍

    View Slide

  221. for us, programmers.
    ࢲͨͪ͸ϓϩάϥϚ͔ͩΒ

    View Slide

  222. View Slide