Project	
  Based	
  Learning	
  using	
  by	
  
PaaS	
  
Heroku	
  Meetup	
  01/13/2015	
  
Hiro	
  Yoshioka	
  *,	
  Miho	
  Nagase	
  **	
  
@hyoshiok,	
  @miholovesq	
  
*	
  Rakuten,	
  Inc.	
  
**	
  Advanced	
  InsMtute	
  of	
  Industrial	
  Technology	
  
Agenda	
  
•  What	
  is	
  project	
  based	
  learning	
  
course	
  at	
  AIIT.	
  
– Goals	
  
•  Topics	
  
•  Demo	
  or	
  Die	
  
•  Lessons	
  Learned	
  
•  Our	
  Next	
  Challenges	
  
Goals	
  of	
  Project	
  Based	
  Learning	
  Course	
  
•  アジャイル開発手法である Scrum	
  を使って、
Web	
  アプリケーション分野の新しい製品やサー
ビスの企画立案から始まり、プロトタイプ開発に
よるアーキテクチャベースラインの確立、インク
リメンタルな機能強化開発、運用・保守までを実
践する。	
•  Develop	
  a	
  basic	
  competence	
  of	
  modern	
  
techniques	
  which	
  are	
  indispensable	
  to	
  run	
  by	
  
SCRUM	
  agile	
  soXware	
  development.	
  
Web	
  ApplicaMon	
  Development	
  by	
  
Scrum	
  Course	
  
•  AIIT	
  –	
  Advanced	
  InsMtute	
  of	
  
Industrial	
  Technology;	
  産業技術大
学院大学	
  
•  Pre	
  Course	
  –	
  June	
  to	
  July	
  
•  Intensive	
  Course	
  –	
  August	
  to	
  
September	
  
•  Distributed	
  PBL	
  (Project	
  Based	
  
Learning),	
  10	
  weeks	
  –	
  October	
  to	
  
December	
  
Pre	
  Course	
  
•  To	
  learn	
  basic	
  knowledge	
  of	
  Agile	
  
soXware	
  development	
  methods.	
  
Intensive	
  Course	
  
•  To	
  learn	
  knowledge	
  of	
  business	
  
applicaMon	
  development	
  method,	
  
build	
  a	
  team,	
  and	
  make	
  a	
  plan	
  of	
  the	
  
Project.	
  Mini	
  PBL	
  
Distributed	
  Project	
  Based	
  Learning	
  
(Distributed	
  PBL)	
  
•  To	
  learn	
  modern	
  soXware	
  
development	
  method,	
  such	
  as	
  agile	
  
development,	
  SCRUM	
  method,	
  and	
  so	
  
on	
  by	
  PBL	
  (project	
  based	
  learning).	
  
– We	
  	
  use	
  some	
  commercial	
  API	
  such	
  as	
  
Rakuten	
  API,	
  distributed	
  source	
  code	
  
management	
  system,	
  git,	
  github,	
  and	
  
Pla^orm	
  as	
  a	
  Service	
  (PaaS),	
  heroku,	
  
Ruby	
  on	
  Rails,	
  and	
  so	
  on.	
  
Class	
  room	
  at	
  Okinawa	
  
Class	
  room	
  at	
  AIIT
Topics	
  
•  ConMnuous	
  Delivery	
  (CD),	
  Test	
  
AutomaMon,	
  ConMnuous	
  IntegraMon	
  
(CI),	
  Version	
  Control	
  System,	
  Test	
  
Driven	
  Development	
  (TDD),	
  Pla^orm	
  
as	
  a	
  service	
  (PaaS),	
  API,	
  Agile,	
  Scrum	
  
•  git,	
  github,	
  heroku,	
  Travis	
  CI,	
  	
  
VirtualBox,	
  vagrant,	
  linux,	
  Ruby	
  on	
  
Rails,	
  chef,	
  Rakuten	
  API	
  
Demo	
  or	
  Die;	
  
Project	
  Based	
  Learning	
  
•  Each	
  sprint	
  is	
  one	
  week	
  (total	
  10	
  
weeks)	
  
•  Make	
  a	
  product	
  backlog.	
  
•  Build	
  a	
  prototype.	
  MVP	
  -­‐	
  minimum	
  
viable	
  product	
  
•  Give	
  a	
  demo	
  on	
  every	
  Saturday.	
  
•  Get	
  feedback	
  from	
  the	
  other	
  teams	
  
and	
  coaches.	
  
Build/Measure/Learn	
  
hbp://www.slideshare.net/jezhumble/conMnuous-­‐delivery-­‐5359386	
  
Lessons	
  Learned	
  
•  Project	
  Based	
  Learning	
  is	
  well	
  done.	
  
– knowledge,	
  skill,	
  competence	
  
– team	
  learning	
  
– tacit/implicit	
  knowledge	
  
•  Demo	
  or	
  Die,	
  scrum	
  
– Mme	
  box,	
  prioriMzaMon,	
  MVP	
  
•  Modern	
  Tools	
  accelerate	
  
development	
  process	
  
– PaaS,	
  CI,	
  scrum,	
  sprint,	
  	
  	
  
RetrospecMve	
•  We	
  (professors,	
  coach)	
  don’t	
  teach	
  
but	
  you	
  (students)	
  learn.	
  
•  Done	
  is	
  beber	
  than	
  perfect.	
  
•  Face	
  to	
  face	
  communicaMon	
  is	
  vital	
  
and	
  essenMal.	
  
•  A	
  few	
  dropouts	
  
•  Pivot	
  
•  Free	
  to	
  fail	
  
Our	
  Next	
  Challenges	
  
•  From	
  ‘How’	
  to	
  ‘What’	
  and	
  ‘Why’	
  
– you	
  can	
  learn	
  how	
  to	
  build	
  web	
  
services	
  by	
  our	
  course	
  but	
  you	
  learn	
  
‘what’	
  and	
  ‘why’	
  to	
  build	
  from	
  
experience.	
  
•  Growth	
  Hackers	
  
– we	
  need	
  growth	
  hackers	
  to	
  coach	
  our	
  
PBL.	
  
My	
  wish	
  to	
  Students	
  
•  Show	
  your	
  competence.	
  
– Apply	
  contests,	
  e.g.	
  Mashup	
  Award	
  
– Build	
  your	
  services	
  
– Salesforce	
  Hack	
  Challenge	
  2014,	
  #4	
  
•  hbp://jphack2014.challengepost.com/
updates	
  タビノタネ	
  
•  “The	
  future	
  is	
  already	
  here	
  —	
  it's	
  
just	
  not	
  very	
  evenly	
  distributed.”	
  	
  
by	
  William	
  Gibson	
  
Appendix	
  
•  Project	
  URL	
  
– wassermann「あいまいランチ」	
  
•  hbps://github.com/esodov/wassermann	
  
–  362	
  commits	
  
–  3	
  conMrbutos	
  
– チーム土曜日「タビノタネ」	
  
•  hbp://www.tabinotane.com/	
  
•  hbps://github.com/tnumata3632/
RakuTabi	
  
–  292	
  commits	
  
–  5	
  contributors	
  
•  Project	
  URL	
  (cont.)	
  
– 主音(トニカ)「Tas-­‐quel」	
  
•  hbp://tasquel-­‐tonika.herokuapp.com/home/login	
  
•  hbps://github.com/enPIT-­‐Tonika/tasquel	
  
–  204	
  commits	
  
–  4	
  contributors	
  
– IRohash「eXMck」	
  
•  hbp://exMck.herokuapp.com/	
  
•  hbps://github.com/328-­‐-­‐/eXMck	
  
–  263	
  commits	
  
–  6	
  contributors	
  
•  Project	
  URL	
  (cont.)	
  
– Project	
  KUA「QUA	
  Map」	
  
•  hbp://quamap.herokuapp.com/	
  
•  hbps://github.com/projectKUA/quamap	
  
–  193	
  commits	
  
–  4	
  contributors	
  
– buzaar「cloreco」	
  
•  hbps://cloreco.herokuapp.com/	
  
•  hbps://github.com/aiit-­‐enpit/cloreco	
  
–  19	
  commits	
  
–  3	
  contributors	
  
Special	
  Thanks	
  to	
  	
  
Agile	
  Coaches	
  
•  Masanori	
  Kado	
  
•  Takashi	
  Takebayashi	
  
•  Masashi	
  Arino	
  
•  Kiro	
  Harada	
  
•  Shintaro	
  Kakutani	
  
•  Naoto	
  Nishimura	
  
•  Ayumu	
  Aizawa	
  (Heroku)	
  	
  
•  Makoto	
  Takaesu	
  
•  Etsuo	
  Yamada	
  
•  Takashi	
  Imagire	
  
•  Tsutomu	
  Yasui	
  
•  Shogo	
  Kawahara	
  (Rakuten)	
  
•  Takuo	
  Doi	
  
•  Eiji	
  Ienaga	
  
•  Ken	
  Matsumoto	
  

Project Based Learning using by PaaS

  • 1.
    Project  Based  Learning  using  by   PaaS   Heroku  Meetup  01/13/2015   Hiro  Yoshioka  *,  Miho  Nagase  **   @hyoshiok,  @miholovesq   *  Rakuten,  Inc.   **  Advanced  InsMtute  of  Industrial  Technology  
  • 2.
    Agenda   •  What  is  project  based  learning   course  at  AIIT.   – Goals   •  Topics   •  Demo  or  Die   •  Lessons  Learned   •  Our  Next  Challenges  
  • 3.
    Goals  of  Project  Based  Learning  Course   •  アジャイル開発手法である Scrum  を使って、 Web  アプリケーション分野の新しい製品やサー ビスの企画立案から始まり、プロトタイプ開発に よるアーキテクチャベースラインの確立、インク リメンタルな機能強化開発、運用・保守までを実 践する。 •  Develop  a  basic  competence  of  modern   techniques  which  are  indispensable  to  run  by   SCRUM  agile  soXware  development.  
  • 4.
    Web  ApplicaMon  Development  by   Scrum  Course   •  AIIT  –  Advanced  InsMtute  of   Industrial  Technology;  産業技術大 学院大学   •  Pre  Course  –  June  to  July   •  Intensive  Course  –  August  to   September   •  Distributed  PBL  (Project  Based   Learning),  10  weeks  –  October  to   December  
  • 5.
    Pre  Course   • To  learn  basic  knowledge  of  Agile   soXware  development  methods.  
  • 6.
    Intensive  Course   • To  learn  knowledge  of  business   applicaMon  development  method,   build  a  team,  and  make  a  plan  of  the   Project.  Mini  PBL  
  • 7.
    Distributed  Project  Based  Learning   (Distributed  PBL)   •  To  learn  modern  soXware   development  method,  such  as  agile   development,  SCRUM  method,  and  so   on  by  PBL  (project  based  learning).   – We    use  some  commercial  API  such  as   Rakuten  API,  distributed  source  code   management  system,  git,  github,  and   Pla^orm  as  a  Service  (PaaS),  heroku,   Ruby  on  Rails,  and  so  on.  
  • 8.
    Class  room  at  Okinawa  
  • 9.
  • 10.
    Topics   •  ConMnuous  Delivery  (CD),  Test   AutomaMon,  ConMnuous  IntegraMon   (CI),  Version  Control  System,  Test   Driven  Development  (TDD),  Pla^orm   as  a  service  (PaaS),  API,  Agile,  Scrum   •  git,  github,  heroku,  Travis  CI,     VirtualBox,  vagrant,  linux,  Ruby  on   Rails,  chef,  Rakuten  API  
  • 11.
    Demo  or  Die;   Project  Based  Learning   •  Each  sprint  is  one  week  (total  10   weeks)   •  Make  a  product  backlog.   •  Build  a  prototype.  MVP  -­‐  minimum   viable  product   •  Give  a  demo  on  every  Saturday.   •  Get  feedback  from  the  other  teams   and  coaches.  
  • 12.
  • 13.
    Lessons  Learned   • Project  Based  Learning  is  well  done.   – knowledge,  skill,  competence   – team  learning   – tacit/implicit  knowledge   •  Demo  or  Die,  scrum   – Mme  box,  prioriMzaMon,  MVP   •  Modern  Tools  accelerate   development  process   – PaaS,  CI,  scrum,  sprint,      
  • 14.
    RetrospecMve •  We  (professors,  coach)  don’t  teach   but  you  (students)  learn.   •  Done  is  beber  than  perfect.   •  Face  to  face  communicaMon  is  vital   and  essenMal.   •  A  few  dropouts   •  Pivot   •  Free  to  fail  
  • 15.
    Our  Next  Challenges   •  From  ‘How’  to  ‘What’  and  ‘Why’   – you  can  learn  how  to  build  web   services  by  our  course  but  you  learn   ‘what’  and  ‘why’  to  build  from   experience.   •  Growth  Hackers   – we  need  growth  hackers  to  coach  our   PBL.  
  • 16.
    My  wish  to  Students   •  Show  your  competence.   – Apply  contests,  e.g.  Mashup  Award   – Build  your  services   – Salesforce  Hack  Challenge  2014,  #4   •  hbp://jphack2014.challengepost.com/ updates  タビノタネ   •  “The  future  is  already  here  —  it's   just  not  very  evenly  distributed.”     by  William  Gibson  
  • 17.
    Appendix   •  Project  URL   – wassermann「あいまいランチ」   •  hbps://github.com/esodov/wassermann   –  362  commits   –  3  conMrbutos   – チーム土曜日「タビノタネ」   •  hbp://www.tabinotane.com/   •  hbps://github.com/tnumata3632/ RakuTabi   –  292  commits   –  5  contributors  
  • 18.
    •  Project  URL  (cont.)   – 主音(トニカ)「Tas-­‐quel」   •  hbp://tasquel-­‐tonika.herokuapp.com/home/login   •  hbps://github.com/enPIT-­‐Tonika/tasquel   –  204  commits   –  4  contributors   – IRohash「eXMck」   •  hbp://exMck.herokuapp.com/   •  hbps://github.com/328-­‐-­‐/eXMck   –  263  commits   –  6  contributors  
  • 19.
    •  Project  URL  (cont.)   – Project  KUA「QUA  Map」   •  hbp://quamap.herokuapp.com/   •  hbps://github.com/projectKUA/quamap   –  193  commits   –  4  contributors   – buzaar「cloreco」   •  hbps://cloreco.herokuapp.com/   •  hbps://github.com/aiit-­‐enpit/cloreco   –  19  commits   –  3  contributors  
  • 20.
    Special  Thanks  to     Agile  Coaches   •  Masanori  Kado   •  Takashi  Takebayashi   •  Masashi  Arino   •  Kiro  Harada   •  Shintaro  Kakutani   •  Naoto  Nishimura   •  Ayumu  Aizawa  (Heroku)     •  Makoto  Takaesu   •  Etsuo  Yamada   •  Takashi  Imagire   •  Tsutomu  Yasui   •  Shogo  Kawahara  (Rakuten)   •  Takuo  Doi   •  Eiji  Ienaga   •  Ken  Matsumoto