SlideShare a Scribd company logo
1 of 47
Download to read offline
2016-10-12 エンジニアMEETUP
大仲 能史 a.k.a. @onk
短期間で新技術を学ぶ技術
自己紹介
大仲 能史 a.k.a. @onk
1982年12月18日生 33歳
ドリコム 10年目 (中途入社 2社目)
大学中退 → 派遣 → エージェント経由転職
趣味:問題解決とコードレビュー
肩書:スペシャリスト (アプリケーションエンジニア)
フロントエンドからインフラまで
今日の話
短期間で新技術を学ぶ技術
難易度:「まずはここから」級
Technologyではなく
Techniqueの話をします
アジェンダ
自己紹介
Technique 1
Technique 2
Technique 3
Technique 4
Technique 5
まとめ
自己紹介
自己紹介(再)
大仲 能史 a.k.a. @onk
1982年12月18日生 33歳
ドリコム 10年目 (中途入社 2社目)
大学中退 → 派遣 → エージェント経由転職
趣味:問題解決とコードレビュー
肩書:スペシャリスト (アプリケーションエンジニア)
フロントエンドからインフラまで
やってきた技術
高校・大学
いわゆる「ホームページ」から入った
HTML,CSS
レンタルサーバでCGI改造
Perl,PHP,JavaScript
住んでいた板
Web制作,Windows,ソフトウェア
フリーソフトを漁ったり,スタイルシートを書いたり
やってきた技術
前職インフラ時代
サーバは数百台単位でキッティング・ラッキング
その他よろず相談ごとみたいな感じ
年間契約を結んで,何かあれば出動
触ったこともないmacOS Serverのセットアップ
作業が振ってきたときは肝を冷やした
自宅環境: 自作PC,MSCS,LFS
取得資格: MCP,LPIC,CCNA,CCNP
やってきた技術
前職プログラマ時代
数か月ごとに別のプロジェクト,別のフレームワーク
外の仕事がないときは新技術の習得と内製フレーム
ワークの拡充,新商材の企画
ASP(VBScript),Java(Struts,Seasar2),PHP(オレ
オレ,mojavi),C#.Net
Oracle,PostgreSQL,MySQL,SQL Server
やってきた技術
ドリコム
セールスエンジニアリング
JavaEE,Ruby(Rails),Android Java,Obj-C
Pull Requestベース開発
クラウド
数十万DAU
チームリーダー
スクラム,大規模スクラム
短期間で新技術を学ぶ技術
自己紹介
Technique 1
Technique 2
Technique 3
Technique 4
Technique 5
まとめ
Technique 1
本を3冊読む
本を3冊読む
なぜ3冊?
右も左も分からない中で,まず基準を作るため
複数の本に書かれていたらおそらく正しい
どんな本を読むべき?
網羅性の高いもの
1週間でわかる~的な
ドットインストール等の動画でも可
本を3冊読む
言語に準備されてるときはまずそれを
vimtutor,Railsチュートリアル,A Tour of Go
要所を学べるように意識して準備している
読むべき本が分からない場合,Amazonの
カートに適当に数冊放り込むとサジェストされる
短期間で新技術を学ぶ技術
自己紹介
本を3冊読む
Technique 2
Technique 3
Technique 4
Technique 5
まとめ
Technique 2
写経
写経
文法を体に覚えこませる
制御構造,クラス宣言,文字/文字列の操作,
Enumerableの操作,IOの操作,ライブラリの使い
方,テストの書き方
理想の世界じゃない現実を知る
どんな技術でもどこかに泥臭い作業が発生する
写経
静的解析ツールを有効にした状態で書くのが
オススメ
RuboCop,FindBugs,IDE (IntelliJ IDEA),
Coverity
静的解析SaaSでもいい
CodeClimate,Scrutinizer
変な書き方をしていたら訂正してくれる補助輪
として使う
写経
「とりあえずコレを作る」定番を持つと便利
画像管理
ファイル操作,再帰,システムコマンドを使うことになる
スクレイピング・マッシュアップ
HTTP,HTML/JSON,エラー処理,非同期処理,
テストでstub必須
写経
言語処理100本ノック
http://www.cl.ecei.tohoku.ac.jp/nlp100/
言語処理や統計,機械学習のやり方が分かる
第1章,第3章をまず書こう
Project Euler
https://projecteuler.net/
数学の問題を頭の体操として
短期間で新技術を学ぶ技術
自己紹介
本を3冊読む
写経
Technique 3
Technique 4
Technique 5
まとめ
Technique 3
Feedを購読
Feedを購読
はてブ,Qiita,Stack Overflow等をタグで購読
RSSは過去の技術じゃない
眺めているうちに感覚が身に付く
IDEの使い方
定番ライブラリが何かとその使い方
初心者がハマりがちな罠
最新アップデートでハマる罠
etc…
Feedを購読
ノイズは慣れろ(超重要)
最悪今日はこの一言だけ覚えて帰ってください
自分の中にインデックスを作るのが目的
何ができるのか
難しいのは何か
どんなエラーが起きる場合があるのか
短期間で新技術を学ぶ技術
自己紹介
本を3冊読む
写経
Feedを購読
Technique 4
Technique 5
まとめ
Technique 4
コミュニティに
参加する
コミュニティに参加する
「同じ問題意識を持った人」の集まり
自分なりの答えの後押しをしてくれる
フレームワークのバージョンアップ作業をどこまで
雑に行って良いものなのか
最近~のエラーに悩んで,こんな解決法になった
んだけど合ってる?
技術的負債を返済したいが上司決裁が下りない
データ分析基盤をこんな構成で作ってみたんだけ
ど何か見落としている点は無いだろうか?
コミュニティに参加する
まずはコミュニティの一員になる
相手が信用できるのかを見極める
自分が信用される程度の情報を出す
勉強会に参加する,質問する,発表する
feed読んでたら半分以上知ってる話になるので
聞くより話すのが重要
コミュニティに参加する
最初の会話の糸口に良さそうな便利ワード
最近始めたんだけど~~で困ってて
絶対にこれやっとけって設定的なのありますか?
~するための鉄板構成が分かんなくて
解決したがりの人たちが教えてくれる
質問の内容が成長していたら継続的に教えて
くれる
成長が止まっていたら見切られる
短期間で新技術を学ぶ技術
自己紹介
本を3冊読む
写経
Feedを購読
コミュニティに参加する
Technique 5
まとめ
Technique 5
Twitterを
有効活用
Twitterを有効活用
ノイズは馴れろ(2回目)
Followする対象
勉強会の講師,Qiitaに正しい情報を書く人
フォローするとリフォローされるので,あとは適
当にfavしたりリプしたりしてると仲良くなれる
たまに叫びが聞こえるのが良いですね。バー
ジョンアップすると壊れる系の奴とか。
Twitterを有効活用
作ってきたリスト
rubyist,phper,pythonista,frontend,dba,
android/ios,socialgame,data-analyst
consumer-game
ゲーム業界(狭義)っぽい人を follow してスマホゲーム
がどう見えてるかを比べてる
meguro
恵比寿・目黒・五反田付近の人。会話しておくとリアル
で会いやすいのでシナジーが生まれる
短期間で新技術を学ぶ技術
自己紹介
本を3冊読む
写経
Feedを購読
コミュニティに参加する
Twitterを有効活用
まとめ
まとめ
守破離
まとまったインプットを入れて自分の中で基準を
持つ
静的解析ツールによる矯正ギブスを上手に使
う
守破離
手を動かしまくる
「本の通りじゃ上手くいかない」が発生するのでどう
にかする
どうにかする方法はググれば 9 割落ちてる
Feed,勉強会,Twitter等,最新の動向を知
れる状況を作る
試して「自分の基準」に取り込む
守破離
気づくとみんなの知見を取り込んだの「自分の
基準」は外で発表できる域に達している
「こっちの方が良さそう」と自分で決めることに
恐れがなくなる
5つの技術
本を3冊読む
写経
Feedを購読
コミュニティに参加する
Twitterを有効活用
おまけ
「離」までたどり着くのに1技術3年はかかる
5,000時間でいっぱし,10,000時間で一流
プログラマ35歳定年説を信じると,あと4本ぐら
いしか残弾が無い
おまけ
僕は以下の要素に振った
Infra,Ruby on Rails,Web Frontend,
Android/iOS
webアプリ or 非ゲーム系アプリを一人で作っ
て運用できるスキルセット
自身のスキルポートフォリオを考えておくと良い

More Related Content

What's hot

組織にテストを書く文化を根付かせる戦略と戦術
組織にテストを書く文化を根付かせる戦略と戦術組織にテストを書く文化を根付かせる戦略と戦術
組織にテストを書く文化を根付かせる戦略と戦術Takuto Wada
 
テストとリファクタリングに関する深い方法論 #wewlc_jp
テストとリファクタリングに関する深い方法論 #wewlc_jpテストとリファクタリングに関する深い方法論 #wewlc_jp
テストとリファクタリングに関する深い方法論 #wewlc_jpkyon mm
 
Redisの特徴と活用方法について
Redisの特徴と活用方法についてRedisの特徴と活用方法について
Redisの特徴と活用方法についてYuji Otani
 
45分間で「ユーザー中心のものづくり」ができるまで詰め込む
45分間で「ユーザー中心のものづくり」ができるまで詰め込む45分間で「ユーザー中心のものづくり」ができるまで詰め込む
45分間で「ユーザー中心のものづくり」ができるまで詰め込むYoshiki Hayama
 
関数型・オブジェクト指向 宗教戦争に疲れたなたに送るGo言語入門
関数型・オブジェクト指向宗教戦争に疲れたなたに送るGo言語入門関数型・オブジェクト指向宗教戦争に疲れたなたに送るGo言語入門
関数型・オブジェクト指向 宗教戦争に疲れたなたに送るGo言語入門Tadahiro Ishisaka
 
アプリケーションを作るときに考える25のこと
アプリケーションを作るときに考える25のことアプリケーションを作るときに考える25のこと
アプリケーションを作るときに考える25のことTakafumi ONAKA
 
TDD のこころ
TDD のこころTDD のこころ
TDD のこころTakuto Wada
 
君はyarn.lockをコミットしているか?
君はyarn.lockをコミットしているか?君はyarn.lockをコミットしているか?
君はyarn.lockをコミットしているか?Teppei Sato
 
心理的安全性を 0から80ぐらいに上げた話
心理的安全性を 0から80ぐらいに上げた話心理的安全性を 0から80ぐらいに上げた話
心理的安全性を 0から80ぐらいに上げた話Yusuke Hisatsu
 
ふつうのRailsアプリケーション開発
ふつうのRailsアプリケーション開発ふつうのRailsアプリケーション開発
ふつうのRailsアプリケーション開発Takafumi ONAKA
 
PHPからgoへの移行で分かったこと
PHPからgoへの移行で分かったことPHPからgoへの移行で分かったこと
PHPからgoへの移行で分かったことgree_tech
 
シリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのかシリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのかAtsushi Nakada
 
それはYAGNIか? それとも思考停止か?
それはYAGNIか? それとも思考停止か?それはYAGNIか? それとも思考停止か?
それはYAGNIか? それとも思考停止か?Yoshitaka Kawashima
 
40歳過ぎてもエンジニアでいるためにやっていること
40歳過ぎてもエンジニアでいるためにやっていること40歳過ぎてもエンジニアでいるためにやっていること
40歳過ぎてもエンジニアでいるためにやっていることonozaty
 
モジュールの凝集度・結合度・インタフェース
モジュールの凝集度・結合度・インタフェースモジュールの凝集度・結合度・インタフェース
モジュールの凝集度・結合度・インタフェースHajime Yanagawa
 
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけらAtsushi Nakamura
 
オブジェクト指向できていますか?
オブジェクト指向できていますか?オブジェクト指向できていますか?
オブジェクト指向できていますか?Moriharu Ohzu
 
DockerコンテナでGitを使う
DockerコンテナでGitを使うDockerコンテナでGitを使う
DockerコンテナでGitを使うKazuhiro Suga
 
スマホゲームのチート手法とその対策 [DeNA TechCon 2019]
スマホゲームのチート手法とその対策 [DeNA TechCon 2019]スマホゲームのチート手法とその対策 [DeNA TechCon 2019]
スマホゲームのチート手法とその対策 [DeNA TechCon 2019]DeNA
 
BuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルドBuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルドAkihiro Suda
 

What's hot (20)

組織にテストを書く文化を根付かせる戦略と戦術
組織にテストを書く文化を根付かせる戦略と戦術組織にテストを書く文化を根付かせる戦略と戦術
組織にテストを書く文化を根付かせる戦略と戦術
 
テストとリファクタリングに関する深い方法論 #wewlc_jp
テストとリファクタリングに関する深い方法論 #wewlc_jpテストとリファクタリングに関する深い方法論 #wewlc_jp
テストとリファクタリングに関する深い方法論 #wewlc_jp
 
Redisの特徴と活用方法について
Redisの特徴と活用方法についてRedisの特徴と活用方法について
Redisの特徴と活用方法について
 
45分間で「ユーザー中心のものづくり」ができるまで詰め込む
45分間で「ユーザー中心のものづくり」ができるまで詰め込む45分間で「ユーザー中心のものづくり」ができるまで詰め込む
45分間で「ユーザー中心のものづくり」ができるまで詰め込む
 
関数型・オブジェクト指向 宗教戦争に疲れたなたに送るGo言語入門
関数型・オブジェクト指向宗教戦争に疲れたなたに送るGo言語入門関数型・オブジェクト指向宗教戦争に疲れたなたに送るGo言語入門
関数型・オブジェクト指向 宗教戦争に疲れたなたに送るGo言語入門
 
アプリケーションを作るときに考える25のこと
アプリケーションを作るときに考える25のことアプリケーションを作るときに考える25のこと
アプリケーションを作るときに考える25のこと
 
TDD のこころ
TDD のこころTDD のこころ
TDD のこころ
 
君はyarn.lockをコミットしているか?
君はyarn.lockをコミットしているか?君はyarn.lockをコミットしているか?
君はyarn.lockをコミットしているか?
 
心理的安全性を 0から80ぐらいに上げた話
心理的安全性を 0から80ぐらいに上げた話心理的安全性を 0から80ぐらいに上げた話
心理的安全性を 0から80ぐらいに上げた話
 
ふつうのRailsアプリケーション開発
ふつうのRailsアプリケーション開発ふつうのRailsアプリケーション開発
ふつうのRailsアプリケーション開発
 
PHPからgoへの移行で分かったこと
PHPからgoへの移行で分かったことPHPからgoへの移行で分かったこと
PHPからgoへの移行で分かったこと
 
シリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのかシリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのか
 
それはYAGNIか? それとも思考停止か?
それはYAGNIか? それとも思考停止か?それはYAGNIか? それとも思考停止か?
それはYAGNIか? それとも思考停止か?
 
40歳過ぎてもエンジニアでいるためにやっていること
40歳過ぎてもエンジニアでいるためにやっていること40歳過ぎてもエンジニアでいるためにやっていること
40歳過ぎてもエンジニアでいるためにやっていること
 
モジュールの凝集度・結合度・インタフェース
モジュールの凝集度・結合度・インタフェースモジュールの凝集度・結合度・インタフェース
モジュールの凝集度・結合度・インタフェース
 
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
 
オブジェクト指向できていますか?
オブジェクト指向できていますか?オブジェクト指向できていますか?
オブジェクト指向できていますか?
 
DockerコンテナでGitを使う
DockerコンテナでGitを使うDockerコンテナでGitを使う
DockerコンテナでGitを使う
 
スマホゲームのチート手法とその対策 [DeNA TechCon 2019]
スマホゲームのチート手法とその対策 [DeNA TechCon 2019]スマホゲームのチート手法とその対策 [DeNA TechCon 2019]
スマホゲームのチート手法とその対策 [DeNA TechCon 2019]
 
BuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルドBuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルド
 

More from Takafumi ONAKA

不正のトライアングルとコードベースの治安維持
不正のトライアングルとコードベースの治安維持不正のトライアングルとコードベースの治安維持
不正のトライアングルとコードベースの治安維持Takafumi ONAKA
 
技術記事を書く&楽しむチームの作り方
技術記事を書く&楽しむチームの作り方技術記事を書く&楽しむチームの作り方
技術記事を書く&楽しむチームの作り方Takafumi ONAKA
 
グルーミングしながら進めるプロダクト開発
グルーミングしながら進めるプロダクト開発グルーミングしながら進めるプロダクト開発
グルーミングしながら進めるプロダクト開発Takafumi ONAKA
 
Hatena::Letの式年遷宮
Hatena::Letの式年遷宮Hatena::Letの式年遷宮
Hatena::Letの式年遷宮Takafumi ONAKA
 
pt-query-digest は Perl!!
pt-query-digest は Perl!!pt-query-digest は Perl!!
pt-query-digest は Perl!!Takafumi ONAKA
 
cpanfileがRubyでパースできることに気づいた俺たちは
cpanfileがRubyでパースできることに気づいた俺たちはcpanfileがRubyでパースできることに気づいた俺たちは
cpanfileがRubyでパースできることに気づいた俺たちはTakafumi ONAKA
 
Perl使いの国のRubyist
Perl使いの国のRubyistPerl使いの国のRubyist
Perl使いの国のRubyistTakafumi ONAKA
 
ApplicationTemplateのススメ
ApplicationTemplateのススメApplicationTemplateのススメ
ApplicationTemplateのススメTakafumi ONAKA
 
クローズドソースから始めるオープンソース
クローズドソースから始めるオープンソースクローズドソースから始めるオープンソース
クローズドソースから始めるオープンソースTakafumi ONAKA
 
ドリコム×ピクシブ 社会人交換留学説明資料
ドリコム×ピクシブ 社会人交換留学説明資料ドリコム×ピクシブ 社会人交換留学説明資料
ドリコム×ピクシブ 社会人交換留学説明資料Takafumi ONAKA
 
マジカルsvnとキュアgit
マジカルsvnとキュアgitマジカルsvnとキュアgit
マジカルsvnとキュアgitTakafumi ONAKA
 
Github Enterprise じゃなくてもいいじゃん
Github Enterprise じゃなくてもいいじゃんGithub Enterprise じゃなくてもいいじゃん
Github Enterprise じゃなくてもいいじゃんTakafumi ONAKA
 
ターミナルで画像確認するヤツ作った
ターミナルで画像確認するヤツ作ったターミナルで画像確認するヤツ作った
ターミナルで画像確認するヤツ作ったTakafumi ONAKA
 
Webアプリケーションは難しい
Webアプリケーションは難しいWebアプリケーションは難しい
Webアプリケーションは難しいTakafumi ONAKA
 
Rails3.2ってどう変わるの?
Rails3.2ってどう変わるの?Rails3.2ってどう変わるの?
Rails3.2ってどう変わるの?Takafumi ONAKA
 
ドリコム的Railsアプリ開発流儀
ドリコム的Railsアプリ開発流儀ドリコム的Railsアプリ開発流儀
ドリコム的Railsアプリ開発流儀Takafumi ONAKA
 
とあるアプリの開発運用(トラブルシュート)
とあるアプリの開発運用(トラブルシュート)とあるアプリの開発運用(トラブルシュート)
とあるアプリの開発運用(トラブルシュート)Takafumi ONAKA
 

More from Takafumi ONAKA (20)

不正のトライアングルとコードベースの治安維持
不正のトライアングルとコードベースの治安維持不正のトライアングルとコードベースの治安維持
不正のトライアングルとコードベースの治安維持
 
技術記事を書く&楽しむチームの作り方
技術記事を書く&楽しむチームの作り方技術記事を書く&楽しむチームの作り方
技術記事を書く&楽しむチームの作り方
 
グルーミングしながら進めるプロダクト開発
グルーミングしながら進めるプロダクト開発グルーミングしながら進めるプロダクト開発
グルーミングしながら進めるプロダクト開発
 
Hatena::Letの式年遷宮
Hatena::Letの式年遷宮Hatena::Letの式年遷宮
Hatena::Letの式年遷宮
 
pt-query-digest は Perl!!
pt-query-digest は Perl!!pt-query-digest は Perl!!
pt-query-digest は Perl!!
 
cpanfileがRubyでパースできることに気づいた俺たちは
cpanfileがRubyでパースできることに気づいた俺たちはcpanfileがRubyでパースできることに気づいた俺たちは
cpanfileがRubyでパースできることに気づいた俺たちは
 
Perl使いの国のRubyist
Perl使いの国のRubyistPerl使いの国のRubyist
Perl使いの国のRubyist
 
ApplicationTemplateのススメ
ApplicationTemplateのススメApplicationTemplateのススメ
ApplicationTemplateのススメ
 
RSpecしぐさ
RSpecしぐさRSpecしぐさ
RSpecしぐさ
 
クローズドソースから始めるオープンソース
クローズドソースから始めるオープンソースクローズドソースから始めるオープンソース
クローズドソースから始めるオープンソース
 
Application Bootstrap
Application BootstrapApplication Bootstrap
Application Bootstrap
 
ドリコム×ピクシブ 社会人交換留学説明資料
ドリコム×ピクシブ 社会人交換留学説明資料ドリコム×ピクシブ 社会人交換留学説明資料
ドリコム×ピクシブ 社会人交換留学説明資料
 
すこやかRails
すこやかRailsすこやかRails
すこやかRails
 
マジカルsvnとキュアgit
マジカルsvnとキュアgitマジカルsvnとキュアgit
マジカルsvnとキュアgit
 
Github Enterprise じゃなくてもいいじゃん
Github Enterprise じゃなくてもいいじゃんGithub Enterprise じゃなくてもいいじゃん
Github Enterprise じゃなくてもいいじゃん
 
ターミナルで画像確認するヤツ作った
ターミナルで画像確認するヤツ作ったターミナルで画像確認するヤツ作った
ターミナルで画像確認するヤツ作った
 
Webアプリケーションは難しい
Webアプリケーションは難しいWebアプリケーションは難しい
Webアプリケーションは難しい
 
Rails3.2ってどう変わるの?
Rails3.2ってどう変わるの?Rails3.2ってどう変わるの?
Rails3.2ってどう変わるの?
 
ドリコム的Railsアプリ開発流儀
ドリコム的Railsアプリ開発流儀ドリコム的Railsアプリ開発流儀
ドリコム的Railsアプリ開発流儀
 
とあるアプリの開発運用(トラブルシュート)
とあるアプリの開発運用(トラブルシュート)とあるアプリの開発運用(トラブルシュート)
とあるアプリの開発運用(トラブルシュート)
 

短期間で新技術を学ぶ技術