Submit Search
Python研修の作り方 - teaching-is_learning-
2 likes
1,224 views
BrainPad Inc.
Python研修の作り方 - teaching-is_learning-
Engineering
Read more
1 of 39
Download now
Download to read offline
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
More Related Content
PDF
『自走プログラマー』 が我々に必要だった理由
Takayuki Shimizukawa
PDF
PyCon JP 2016 ビギナーセッション
Tetsuya Morimoto
PPTX
Stapy#17LT
drillan
PDF
エキスパートPythonプログラミング改訂3版の読みどころ
Takayuki Shimizukawa
PDF
S05 t1 midorikawa
Takeshi Akutsu
ODP
stapy#23 LT
NaoY-2501
PDF
プログラミング学習とScratch raspi python
Yoshitaka Shiono
PDF
S15 t0 introduction
Takeshi Akutsu
『自走プログラマー』 が我々に必要だった理由
Takayuki Shimizukawa
PyCon JP 2016 ビギナーセッション
Tetsuya Morimoto
Stapy#17LT
drillan
エキスパートPythonプログラミング改訂3版の読みどころ
Takayuki Shimizukawa
S05 t1 midorikawa
Takeshi Akutsu
stapy#23 LT
NaoY-2501
プログラミング学習とScratch raspi python
Yoshitaka Shiono
S15 t0 introduction
Takeshi Akutsu
What's hot
(20)
PDF
Introduction
Takeshi Akutsu
PDF
S01 t1 tsuji_pylearn_ut_01
Takeshi Akutsu
PDF
Python学習奮闘記#07 webapp
Takeshi Akutsu
PDF
サードパーティパッケージの歩き方
Takesxi Sximada
PPTX
KOMANKO and PAOPAL
ssuser2d7627
PDF
S18 t0 introduction
Takeshi Akutsu
PDF
S14 t0 introduction
Takeshi Akutsu
PDF
S16 t1 python学習奮闘記#6
Takeshi Akutsu
PDF
OSSと私
Hattori Hideo
PDF
たった一ファイルの python スクリプトから始めるOSS開発入門 / PyCon JP 2016
Kei IWASAKI
PDF
S07 t2 midorikawa
Takeshi Akutsu
PPTX
独学プログラマーのその後
Takayuki Shimizukawa
PDF
Python for Beginners ( #PyLadiesKyoto Meetup )
Ai Makabi
PDF
Go Friday 傑作選
Takuya Ueda
PDF
S20 t1 stapyのこれまでとこれから
Takeshi Akutsu
PDF
OSS Study#19_LT
NaoY-2501
PDF
S12 t1 python学習奮闘記#5
Takeshi Akutsu
PPTX
Pynyumon03 LT
drillan
PPTX
ODSC East 2017 Report
Takeshi Akutsu
PDF
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜
Preferred Networks
Introduction
Takeshi Akutsu
S01 t1 tsuji_pylearn_ut_01
Takeshi Akutsu
Python学習奮闘記#07 webapp
Takeshi Akutsu
サードパーティパッケージの歩き方
Takesxi Sximada
KOMANKO and PAOPAL
ssuser2d7627
S18 t0 introduction
Takeshi Akutsu
S14 t0 introduction
Takeshi Akutsu
S16 t1 python学習奮闘記#6
Takeshi Akutsu
OSSと私
Hattori Hideo
たった一ファイルの python スクリプトから始めるOSS開発入門 / PyCon JP 2016
Kei IWASAKI
S07 t2 midorikawa
Takeshi Akutsu
独学プログラマーのその後
Takayuki Shimizukawa
Python for Beginners ( #PyLadiesKyoto Meetup )
Ai Makabi
Go Friday 傑作選
Takuya Ueda
S20 t1 stapyのこれまでとこれから
Takeshi Akutsu
OSS Study#19_LT
NaoY-2501
S12 t1 python学習奮闘記#5
Takeshi Akutsu
Pynyumon03 LT
drillan
ODSC East 2017 Report
Takeshi Akutsu
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜
Preferred Networks
Ad
Similar to Python研修の作り方 - teaching-is_learning-
(20)
PDF
【WEB公開版】ロボ連2021プログラミング教育展望
Yukio Kubo
PDF
(Pythonで作って学ぶ) Youtube の動画リストを作るアプリの開発 第1回
Project Samurai
PDF
S03 t1 python_learningdiary#3
Takeshi Akutsu
PDF
DATUM STUDIO PyCon2016 Turorial
Tatsuya Tojima
PDF
S02 t4 wrapup
Takeshi Akutsu
PPTX
BPStudy#48 PyCon JP 2011 開催報告
Takayuki Shimizukawa
PPTX
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識 第3版
Katsuhiro Morishita
PPTX
システム開発体験プログラム
Hajime Ookoshi
PDF
PyConJP Keynote Speech (Japanese version)
nishio
KEY
Pythonコミュニティが私に与えてくれたもの
TomomiK
PDF
S01 t2 akutsu_my_pythonhistory
Takeshi Akutsu
PDF
クイズ・Python勝ち抜きバトル pycon jp_2017
Motohiro Ueki
PDF
Introduction to programming competition [revised][PDF]
yak1ex
PDF
新人教育と(Javaと)Python
7pairs
ODP
Introduction of Python
Tomoya Nakayama
PDF
プログラマーとの出会い - Hello, Programmer! at PyCon Kyushu 2022
Takayuki Shimizukawa
PDF
S02 t2 my_historyofpythonlearning
Takeshi Akutsu
PPTX
2017/12/21 虎の穴 Python勉強会
虎の穴 開発室
PDF
PyCon JP 2012 Opening
Takanori Suzuki
PDF
プログラミング
saireya _
【WEB公開版】ロボ連2021プログラミング教育展望
Yukio Kubo
(Pythonで作って学ぶ) Youtube の動画リストを作るアプリの開発 第1回
Project Samurai
S03 t1 python_learningdiary#3
Takeshi Akutsu
DATUM STUDIO PyCon2016 Turorial
Tatsuya Tojima
S02 t4 wrapup
Takeshi Akutsu
BPStudy#48 PyCon JP 2011 開催報告
Takayuki Shimizukawa
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識 第3版
Katsuhiro Morishita
システム開発体験プログラム
Hajime Ookoshi
PyConJP Keynote Speech (Japanese version)
nishio
Pythonコミュニティが私に与えてくれたもの
TomomiK
S01 t2 akutsu_my_pythonhistory
Takeshi Akutsu
クイズ・Python勝ち抜きバトル pycon jp_2017
Motohiro Ueki
Introduction to programming competition [revised][PDF]
yak1ex
新人教育と(Javaと)Python
7pairs
Introduction of Python
Tomoya Nakayama
プログラマーとの出会い - Hello, Programmer! at PyCon Kyushu 2022
Takayuki Shimizukawa
S02 t2 my_historyofpythonlearning
Takeshi Akutsu
2017/12/21 虎の穴 Python勉強会
虎の穴 開発室
PyCon JP 2012 Opening
Takanori Suzuki
プログラミング
saireya _
Ad
More from BrainPad Inc.
(20)
PDF
Oss LT会_20210203
BrainPad Inc.
PDF
Business utilization of real estate image classification system using deep le...
BrainPad Inc.
PDF
ブレインパッドにおける機械学習プロジェクトの進め方
BrainPad Inc.
PDF
機械学習システムのアーキテクチャアラカルト
BrainPad Inc.
PDF
機械学習システム開発案件の事例紹介
BrainPad Inc.
PDF
れこめん道~とあるエンジニアの苦闘の日々
BrainPad Inc.
PDF
DMPの分析機能を実現する技術
BrainPad Inc.
PDF
機械学習システムを受託開発 する時に気をつけておきたい事
BrainPad Inc.
PDF
システム開発素人が深層学習を用いた画像認識で麻雀点数計算するLINEbotを作ったハナシ
BrainPad Inc.
PDF
2018 builderscon airflowを用いて、 複雑大規模なジョブフロー管理 に立ち向かう
BrainPad Inc.
PDF
2018.08.21-機械学習工学研究会 現場を交えた勉強会発表資料
BrainPad Inc.
PDF
GKEとgRPCで実装する多言語対応・スケーラブルな内部API
BrainPad Inc.
PDF
実証実験報告セミナー資料 20180328(抜粋版)
BrainPad Inc.
PPTX
エンジニア勉強会資料_⑥エンジニアが主導する組織マネジメントや開発体制の継続的改善
BrainPad Inc.
PDF
エンジニア勉強会資料_⑤広告プロダクトとプラットフォームの開発
BrainPad Inc.
PDF
エンジニア勉強会資料_④Rtoaster×Myndエンジンによる興味キーワード分析機能開発事例
BrainPad Inc.
PDF
エンジニア勉強会資料_③Rtoasterの11年
BrainPad Inc.
PDF
エンジニア勉強会資料_②エンジニア・デザイナ・プロダクトオーナーが推薦するプロトタイプドリブン開発
BrainPad Inc.
PDF
エンジニア勉強会資料_①ブレインパッドの中で僕たちは何を開発しているのか?
BrainPad Inc.
PDF
Big Data Analytics Tokyo講演資料
BrainPad Inc.
Oss LT会_20210203
BrainPad Inc.
Business utilization of real estate image classification system using deep le...
BrainPad Inc.
ブレインパッドにおける機械学習プロジェクトの進め方
BrainPad Inc.
機械学習システムのアーキテクチャアラカルト
BrainPad Inc.
機械学習システム開発案件の事例紹介
BrainPad Inc.
れこめん道~とあるエンジニアの苦闘の日々
BrainPad Inc.
DMPの分析機能を実現する技術
BrainPad Inc.
機械学習システムを受託開発 する時に気をつけておきたい事
BrainPad Inc.
システム開発素人が深層学習を用いた画像認識で麻雀点数計算するLINEbotを作ったハナシ
BrainPad Inc.
2018 builderscon airflowを用いて、 複雑大規模なジョブフロー管理 に立ち向かう
BrainPad Inc.
2018.08.21-機械学習工学研究会 現場を交えた勉強会発表資料
BrainPad Inc.
GKEとgRPCで実装する多言語対応・スケーラブルな内部API
BrainPad Inc.
実証実験報告セミナー資料 20180328(抜粋版)
BrainPad Inc.
エンジニア勉強会資料_⑥エンジニアが主導する組織マネジメントや開発体制の継続的改善
BrainPad Inc.
エンジニア勉強会資料_⑤広告プロダクトとプラットフォームの開発
BrainPad Inc.
エンジニア勉強会資料_④Rtoaster×Myndエンジンによる興味キーワード分析機能開発事例
BrainPad Inc.
エンジニア勉強会資料_③Rtoasterの11年
BrainPad Inc.
エンジニア勉強会資料_②エンジニア・デザイナ・プロダクトオーナーが推薦するプロトタイプドリブン開発
BrainPad Inc.
エンジニア勉強会資料_①ブレインパッドの中で僕たちは何を開発しているのか?
BrainPad Inc.
Big Data Analytics Tokyo講演資料
BrainPad Inc.
Python研修の作り方 - teaching-is_learning-
1.
西尾 友佑(@nissy0409240) 2018年9月18日 PyCon2018 Python研修の作り方 -Teaching
Is Learning-
2.
© BrainPad Inc.
2 ● 名前: 西尾 友佑(Yusuke Nishio) ○ Twitter: @nissy0409240 ● 所属: ブレインパッドMP本部開発部(2016.7.1~) ○ エンジニア歴: 5年目 ● 2018年の主な活動 ○ プライベートDMP(Rtoaster)開発 ○ インターネット広告関連ツール開発 ○ チュートリアル「動かして学ぶ、はじめてのPython」TA ○ ロシアW杯現地観戦 ■ クリロナのハットトリックを生観戦 自己紹介
3.
© BrainPad Inc.
3 ● 資料公開あり ○ Speaker Deckにて公開しています ● 撮影もOK ○ シャッター音は控えめにお願いします ● 実況中継大歓迎です ○ #pyconjp ○ #pyconjp_6 よろしくお願いします
4.
© BrainPad Inc.
4 ● 私が所属する株式会社ブレインパッドでは 新卒研修の一環として Python研修を実施しています ● 講師の立場として ○ どのように準備したのか ○ どんな学びがあったか ● を中心にお話させて頂きます 話すこと
5.
© BrainPad Inc.
5 ● 前提 ● 研修全体構成 ● カリキュラムの選定方法 ● 資料レビュー時のコメント紹介 ● 受講者の声 ● どんな学びがあったか アジェンダ
6.
前提
7.
© BrainPad Inc.
7 ● 入社後、三ヶ月間は新卒の新入社員全員が研修を受けます ○ 今年の職種は三職種でした ■ データサイエンティスト ■ エンジニア ■ ビジネス ● 研究でPythonを使っていた方もいれば プログラミング未経験の方もいます ● カリキュラムは基本的に職種関係無く全職種同じです ○ 全職種に理解ある人材と成長することが目的です 前提
8.
研修全体構成
9.
© BrainPad Inc.
9 研修全体構成
10.
© BrainPad Inc.
10 研修全体構成 今日話すのは こちらの内容に なります
11.
© BrainPad Inc.
11 ● Python研修とチーム開発研修があります ○ チーム開発研修ではアジャイル開発などの開発手法や Gitの使い方などを扱います ● Pythonの知識の拡充とPythonを書くことに特化しています ○ Gitを用いたバージョン管理やプルリクベースでの 開発は本研修では扱わないことにしました ○ なぜこうしたかは後述します エンジニアリング研修
12.
© BrainPad Inc.
12 ● 様々な場面で使われているから ○ 科学技術分野 ■ 自然言語処理, 統計, 数学など ○ Webアプリケーション ■ FacebookやGoogleで採用されている ■ YouTube, Evernoteなど ● ブレインパッド社内でも使われている ○ Rtoaster, Conomi, AdNote ○ 分析案件, システム化案件 and more... なぜPythonか
13.
© BrainPad Inc.
13 Python研修全体スケジュール ● 1日目 ○ システム開発について ○ Python講義(文法) ○ Python演習 ● 2日目 ○ Python演習 ○ ライブラリについて ● 3日目 ○ 総合演習
14.
© BrainPad Inc.
14 ● 以下の内容を扱うことにしました ○ 基礎的な文法事項 ○ 標準ライブラリ・外部ライブラリの使い方 ○ 上記内容を元にした演習 ● 以下の内容は省きました ○ DBへの接続 ○ チーム開発 ○ ユニットテストの書き方 Python研修
15.
カリキュラムの選定方法
16.
© BrainPad Inc.
16 ● エンジニア職以外の人の話も聞いてみる ○ ここまでは出来るようになっていると嬉しい ○ 他の研修では扱わないから扱ってて欲しい などの要望を盛り込む ● ゼロベースで考えてみる ○ やって見た方が良さげなことを盛り込む 進め方
17.
© BrainPad Inc.
17 ● データサイエンス系の講義で扱わないけど必要な内容を盛り込む ○ Pythonの文法 ○ ライブラリの使い方 ■ 標準ライブラリ・サードパーティライブラリの違い ○ 環境構築は紹介のみ ■ 今回は運営側で用意しました ○ DBへのインポートなどは扱わない ■ 初学者もいるので扱うと対象となる 範囲が広いという懸念がありました エンジニア職以外の人の話も聞いてみる
18.
© BrainPad Inc.
18 ● 初学者のうちから「綺麗なコード」って意識しないとダメなの?? ○ とにかく動かす方法に注力した方がいいですよね ● Gitやターミナルの使い方で詰まるの勿体無いですよね ○ Pythonの書き方に注力した方がいいですよね ● でも使えないと実際のところキツいですよね ○ Python研修から切り出してプルリクエストの 出し方も別の時間にしたらどうか?? ゼロベースで考えてみる
19.
© BrainPad Inc.
19 ● 文法の紹介等よくある話は外せない ○ ただの講義に終始するのは受講する側は辛くないか ○ ググって独学で進めて頂くか ○ ググるのってある程度分かってからじゃないと 答えに辿り着けないですよね ● 発展的な内容を盛り込めないか ○ 難しい内容を多少は盛り込むか ○ 分析的な内容は興味もってくれそう ○ 初学者を躓かせたくはない ゼロベースで考えてみる
20.
© BrainPad Inc.
20 ● Pythonのコードを書くことに注力する ○ とにかく手を動かす ● Python以外の要素で悩まないようにする ○ 事前に地雷は撤去する ● 一歩先の内容を扱えるようにする ○ 経験者でも退屈しないコンテンツを考える 選定する方向性をまとめる
21.
© BrainPad Inc.
21 ● Pythonのコードを書くことに注力する ○ エンジニアらしいと言われる環境なしに出来ないか ○ 差分管理無しでも保存出来る環境はないか ○ コードを書くことに対するハードルを下げられないか ● Jupyter Notebookを使って上記を解決出来ないか 解決策を考える
22.
© BrainPad Inc.
22 Jupyter Notebookとは ● Jupyter Notebookとはノートブックと呼ばれる形式で プログラムを作成・実行・結果の記録・分析作業を 進めるためのツール ● Pythonのみならず沢山の言語に対応 ○ 本講義はPythonのみで進めます ● 作成したプログラム・実行結果・その際のメモを 簡単に作成・確認することができる ● 自分自身の過去の作業内容の振り返りのみならず チームメンバーへ作業結果を共有する際に便利 ● (環境構築の説明は省略しました)
23.
© BrainPad Inc.
23 ● Python以外の要素で悩まないようにする ○ 悩むことなく詰まることもなく経験値を積むことは 本当に不可能か ○ 初見でも少し難しい内容を扱うことはできないのか ○ 写経するという方法もあるがただその場で 写経だけさせるのは放任し過ぎじゃないか ○ せっかくJupyter Notebook使うし何か出来ないか ● 事前にNotebook作って実行して貰うことで 詰まること無く少し難しい内容を体験して もらうことは出来ないか 解決策を考える
24.
© BrainPad Inc.
24 実際の資料(Pythonファイルの実行方法) ● ノートブックとPythonファイルを同じ階層に配置 ● ノートブック上で下記コマンドを実行 コマンド: %run -i [ファイル名]
25.
© BrainPad Inc.
25 実際の資料(クラスとインスタンスの例)
26.
© BrainPad Inc.
26 実際の資料(外部ライブラリ) ● インストール 研修用環境ではこちらのコマンドを使って下さい !pip3 install --user [ライブラリ名]
27.
© BrainPad Inc.
27 ● データサイエンティストの方にノートブックを作成して頂いた 実際の資料(Pandas研修)
28.
© BrainPad Inc.
28 ● 一歩先の内容を扱えるようにする ○ 経験者でも退屈しないものはないのか ○ 実際の業務に近いことをやって貰っても いいかもしれない ○ スクリプトを書くようなものなら 取り組めるかもしれない ● 答えがひとつではない課題を出せないか 解決策を考える
29.
© BrainPad Inc.
29 ● Linuxコマンドにはファイルをコピーする cpコマンドが存在する ○ linuxコマンドのようにファイルのコピーを実現する cp_file.pyを作成せよ ■ コピー元ファイル名とコピー先ファイル名の順に 実行時に外部変数として受け取ることとする ■ ここに記載されていない仕様は自由に 定義して良いこととする ■ 余力のある人は機能追加をして あなたの思いつく最強のcp_file.pyを作成せよ 実際の資料(発展問題)
30.
資料レビュー時のコメント紹介
31.
© BrainPad Inc.
31 ● 資料を全部見ましたが、演習を先にして 「こう言う事をやりたい時はどうする?」を考えた上で 自分で探すor人に聞くスキルを身につけてもらった方が 良いかもしれません 実際に頂いたコメント
32.
© BrainPad Inc.
32 ● 資料を全部見ましたが、演習を先にして 「こう言う事をやりたい時はどうする?」を考えた上で 自分で探すor人に聞くスキルを身につけてもらった方が 良いかもしれません ● 確かに演習から自分で調べたり人に質問したりするスキルを身につけ ることが最終的なゴールであると考えています ですがプログラム未経験の状態で質問しようとその時点での知識・経 験の少なさから質問できなかったり、対症療法を考えて場当たり的な 対応をしてしまうことがよく見受けられます(恥ずかしながら僕の経験 談でもあります) そのため、前半で文法事項についてひとさらいした後、演習問題を設 ける形式に致しました 実際に頂いたコメント
33.
受講者の声
34.
© BrainPad Inc.
34 ● cpコマンドをPythonで実装する演習を通して UNIXの偉大さを知った ● 実利用に耐えうるコードの書き方を意識して コーディングを心に留めておいて 書けるようにしたい ● Pythonは難しいですが復習しなければ何も身につかないし、 苦労も忘れてしまうので逃げずにこれからも 自ら勉強することは大切であると感じました 受講者の声
35.
どんな学びがあったか
36.
© BrainPad Inc.
36 ● 資料の作成や人に教えるということを目的とした準備は Pythonという言語自体を今までとは違う切り口で 学ぶきっかけになりました ○ 実装に必要なものを虫食いで学ぶのではなく 体系立てて伝えるということを意識しながら Pythonに関する知識を補完していくことが 出来ました 学んだこと
37.
© BrainPad Inc.
37 ● ただ資料と問題と時間を与えるのではなく 「何が必要か」を考えて行動するきっかけに出来た ○ 説明だけでは受講者にとって つまらないものになっていたかもしれない ○ Python研修の内容にGitの使い方や チーム開発手法も含んでいたら Pythonのコードを書くことに 集中することは出来なかった 学んだこと
38.
© BrainPad Inc.
38 ● ブレインパッドではPythonエンジニアを積極採用中です ○ アプリケーションエンジニア ○ 機械学習エンジニア ○ データサイエンティスト ● ご応募お待ちしています!! ○ http://www.brainpad.co.jp/recruit/ おやくそく
39.
© BrainPad Inc.
39 ご静聴ありがとうございました
Download