Ce diaporama a bien été signalé.
Le téléchargement de votre SlideShare est en cours. ×

趣味プロダクトで楽しいコードライフワークを送る

Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Prochain SlideShare
LT#6 Taskete
LT#6 Taskete
Chargement dans…3
×

Consultez-les par la suite

1 sur 78 Publicité

Plus De Contenu Connexe

Les utilisateurs ont également aimé (17)

Publicité

Similaire à 趣味プロダクトで楽しいコードライフワークを送る (20)

Publicité

趣味プロダクトで楽しいコードライフワークを送る

  1. 1. 趣味プロダクト開発で 楽しいコードライフワーク を送る 2014-2-8 札幌市中央区Ruby会議 小玉 直樹 @volpe_hd28v
  2. 2. 自己紹介 2003年∼2012年 • 組み込み系プログラマ 2012年∼現在 • twitter: @volpe_hd28v GitHub: volpe28v 夜な夜な トラスティア株式会社所属 • Windows系システム開発 • 趣味プロダクト開発
  3. 3. かんばんりすと かんばん風タスク管理ツール
  4. 4. コタれん 押尾コータローの楽曲向け練習帳
  5. 5. DevHub プログラマ向けチャット&共有メモ
  6. 6. よろしく お願いします
  7. 7. 今日お話したいこと
  8. 8. お仕事以外でプログラム を書いていますか?
  9. 9. プログラミング = 楽しい • 仕事だけにしておくのはもったいない • 好きなソフトウェアを作りたい • コードをもっと上手く書けるようになりたい
  10. 10. 趣味プロダクト作り • 自分が欲しいものを • 身の回りの課題を少し解決しつつ • 動くものを作りながら学ぶ場
  11. 11. 簡単にできる?
  12. 12. ハードル ✔ 何を作ったらいいかわからない ✔ 作れる気がしない ✔ モチベーションが続かない
  13. 13. 私が実際に行ってきた 趣味プロダクト開発の 事例と、それを楽しむた めのヒントをご紹介
  14. 14. 事例
  15. 15. 仕事中、 気軽に使えるタスク管理ツー ルが欲しくなった なんてことのない思いつき
  16. 16. イメージは タスクかんばんボード http://www.test.infoq.com/jp/articles/agile-kanban-boards
  17. 17. TRICHORDも良いけど もっと • ぱっと見える • サクッと使える • 気持ちよく
  18. 18. 悩み • なにで作ろう・・・ • ドラッグ&ドロップとか難しそう・・・ java/Swing MFC Tcl/Tk GTK+/gtkmm
  19. 19. jQuery sortable ヌルっと動く!
  20. 20. Ajax 非同期通信 ページ遷移なし!
  21. 21. Webで行けそうな気がする 思い込みが大事 http://farm6.staticflickr.com/5096/5541884221_1df507a5da_b.jpg
  22. 22. 考えた構成 jQuery sortable + Ajax ruby + cgi ActiveRecord + MySQL 勢いがあれば平気 ×やったことない ○やったことある ×やったことない ×やったことない
  23. 23. ひたすらコーディング 昼休み 定時後 帰宅後 昼飯なんていらない
  24. 24. ✔ jQuery sortable + Ajax ✔ ruby + cgi ✔ ActiveRecord + MySQL ひとまず自分が使える レベルまでできた! モチベーション↑
  25. 25. 一人社内で使っていたら、 「使ってみたい」との声が 改良して社内で公開 意外な展開
  26. 26. もしかして、 開発でも使えるかも? 当時のチームに 無理やり導入してみた! 調子に乗った
  27. 27. 簡単に広められる Webアプリって凄い ブラウザは偉大 http://farm3.staticflickr.com/2530/3965829122_e557d9e4e8_b.jpg
  28. 28. 流行りのクラウドで 動かしたくなった ミーハーなので
  29. 29. GAEにチャレンジ jQuery sortable jQuery sortable + Ajax + Ajax ruby + cgi ActiveRecord + MySQL Java + GoogleAppEngine (Slim3) + BigTable おっと、Java!? ✔ ○やったことある ×やったことない
  30. 30. なんとか移植完了 JSP苦労した
  31. 31. やっぱりRubyで書きたい!
  32. 32. ver 3.0 流行りのRailsで 動かしたくなった 憧れのRails
  33. 33. Railsにチャレンジ jQuery sortable + Ajax ruby + cgi ActiveRecord + jQuery sortable + Ajax Java + GAE + BigTable jQuery sortable + Ajax ✔ Ruby on Rails + SQLite MySQL 第3形態 ×
  34. 34. お世話になった本 Hinagikuで学んだ
  35. 35. 世の中では ! が熱いらしい http://farm4.staticflickr.com/3592/3694736727_e779c4a1e0_o.jpg
  36. 36. はじめての オープンソース開発入門 issue便利
  37. 37. はじめての Webサービス公開
  38. 38. 「かんばんりすと」 リリース 約1年の歳月 モバイルサイトも作りました
  39. 39. デモ
  40. 40. 一つの趣味プロダクトを 作る過程で様々な技術に 触れることができた jQuery Ajax jQuery mobile TwitterBootStrap rails Hightcharts dRuby SQLite jpmobile MySQL GAE javascript Java Slim3 cgi heroku Ruby git GitHub
  41. 41. 気が付くと できる事が増えていた! after dRuby before javascript Hightcharts rails MySQL Ruby Java jQuery jpmobile GAE Slim3 Ajax jQuery mobile TwitterBootStrap ruby java git heroku cgi GitHub SQLite
  42. 42. 車輪の再発明 かもしれない Trelloとか
  43. 43. その過程で得た 生の経験 は紛れ も無く自分のもの
  44. 44. プログラマとしての 引き出しを増やす http://farm5.staticflickr.com/4032/4706749862_14d0a29c96_b.jpg
  45. 45. 完成 したら終わり? http://farm2.staticflickr.com/1053/591809922_e5eebd751b_o.jpg
  46. 46. 完成 はしない • もっと使いやすくならないか • もっとコードを綺麗に書けないか • もっと速くならないか むしろここから
  47. 47. 趣味プロダクトを 継続する
  48. 48. 複数のプロダクトを継続開発 かんばんりすと jQuery Ajax cgi rails GAE Java jpmobile コタれん rails FaceBook API YouTube API MioATND rails TwitterBootStrap とくみちゃん ATND API rails Backbone.js DevHub node.js Socket.io mongodb Jenkins API かんばんりすと for GitHub issues rails GitHub API
  49. 49. 継続するための モチベーションの維持 緑を増やしたい!
  50. 50. モチベーションを 下げる要因と 上手く付き合う ライフワークのようになればいいな
  51. 51. 今日はとても疲れて るんだ…
  52. 52. 1ポモドーロ 25min. • 1コミットだけ • 軽めのissueを選ぶ • 今日を生きた小さな証をコードに残す http://farm4.staticflickr.com/3218/2700323949_591c921968_b.jpg
  53. 53. 仕様・UIに迷ってる
  54. 54. 割り切る • ぶっちゃけ自分が使えればいい • 使いながら後で考えればいい
  55. 55. 孤独だ
  56. 56. http://nothub.org
  57. 57. 追加したい機能がない
  58. 58. コードに向き合うチャンス! • テストを書いてみる • リファクタリングしてみる • 別のフレームワークを試してみる クリーンコード レガシーコード改善ガイド http://farm3.staticflickr.com/2745/4180434461_20ded0561b_b.jpg
  59. 59. 技術的にハマった
  60. 60. Geek達に会いに行く • コミュニティのイベントに参加 • Ruby勉強会、JavaScript勉強会、etc
  61. 61. 飽きてきた
  62. 62. 同時に複数作る かんばんりすと jQuery • Ajax cgi rails GAE java jpmobile コタれん 一つにこだわらない API rails FaceBook API YouTube TwitterBootStrap MioATND • 節操無くいろいろ作る rails ATND API Jenkins API DevHub • node.js Socket.io 新たな発見がある mongodb Diff LIB かんばんりすと for GitHub issues 飽きる暇なし! rails GitHub API
  63. 63. 刺激が足りない
  64. 64. チームに投入する • リアルタイムフィードバック • チームのやり方にツールを合わせる • チームに貢献する 家族でもいい
  65. 65. 趣味プロダクト チームに 貢献 趣味も仕事も楽しもう! お仕事
  66. 66. 想定していない 出来事
  67. 67. 憧れの平鍋さん!
  68. 68. しばらく気づきませんでした
  69. 69. 勉強会の題材に使ってもらえた テスト対象
  70. 70. 立派な機能仕様書も バグフィックスの pull req も頂きました
  71. 71. 2012 Ruby Kaja Tシャツいただきました
  72. 72. コーチとして参加
  73. 73. 札幌のコード好きな Geek達と出会えた 米風亭でコーディング
  74. 74. まとめ
  75. 75. ✔ 作りたい気持ちを大切に ✔ 実現できそうな技術と出会う ✔ モチベーションと上手く付き合う ✔ 作りながら引き出しを増やす ✔ チームに貢献する
  76. 76. 難しいことは一つもない Geekじゃなくても出来る!
  77. 77. ご清聴 ありがとうございました

×