s05 t1 midorikawa
TRANSCRIPT
![Page 1: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/1.jpg)
ゼロから始めた私のPython勉強録
![Page 2: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/2.jpg)
2
※ 注意
この発表は感想です
![Page 3: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/3.jpg)
3
もくじ
自己紹介
これまでの勉強の流れ
勉強してきた中で気がついたこと
INPUT
OUTPUT
まとめ
![Page 4: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/4.jpg)
4
自己紹介
名前 : 緑川 京太(みどりかわ けいた)
生年月日 : 1990年12月25日 (24歳)
経歴 :● 東京農業大学 応用生物科学部
(乳酸菌の遺伝子いじくってました)
● 大学卒業後すぐに友人と起業→失敗(^^;)
● 今年の7月末に株式会社リーディングエッジ社に入社現在、Pythonエンジニアを育てるという方針の元、Pythonを勉強中
Python歴 : 3ヶ月弱
https://www.facebook.com/keita.midorikawa.35
![Page 5: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/5.jpg)
5
初期スキル
Officeソフトが扱えて、HTMLをほんのちょっと知ってる
OSはWindowsしか使ったことがない
プログラミングの経験はゼロ(そもそもPythonを知らなかった)
![Page 6: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/6.jpg)
6
現状のスキル
基本的な構文は理解している
CGIで簡単なWebアプリを作ることができる
Linuxの基本的なコマンドは理解している
Yamahaのネットワーク機器を多少触れる
![Page 7: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/7.jpg)
7
もくじ
これまでの勉強の流れ
勉強してきた中で気がついたこと
INPUT
OUTPUT
自己紹介
まとめ
![Page 8: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/8.jpg)
8
環境
OS : Ubuntu 15.04
Python:Python3.4
IDE : Pycharm-Community-4.5.3
![Page 9: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/9.jpg)
9
これまでの学習の流れ
スタート 1ヶ月 2ヶ月 3ヶ月
基本的な構文
業務の関係でPythonから離れる
ネットワーク機器
Linux+
ラズパイ電子工作
webアプリ
問題集
![Page 10: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/10.jpg)
10
Pythonを使ってみた感想
シンプルで理解しやすい便利なライブラリが揃ってるできることの幅が広い
2系と3系の乗り換え時期→情報が錯綜してる良質な情報はいつも英語
![Page 11: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/11.jpg)
11
もくじ
これまでの勉強の流れ
勉強をしてきた中で気がついたこと
INPUT
OUTPUT
自己紹介
まとめ
![Page 12: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/12.jpg)
12
勉強してきた中で気がついたこと
周辺知識を覚えるほうが時間がかかった
Pythonの環境を作るLinuxコマンド
ネットワーク機器のテストツールネットワーク、設定コマンド
Webアプリサーバー、DB、SQL、HTML、JS、フレームワーク
ラズパイ電子工作Linux、電気回路
![Page 13: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/13.jpg)
13
勉強してきた中で気がついたこと
わからないときは検討より検証
Ipythonでコードを試してみる
ユニットテストを書いてみる
初心者レベルだと考えてもわからない事のほうが多い
![Page 14: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/14.jpg)
14
勉強してきた中で気がついたこと
「知っている」と「使える」は全く別物
頭では理解していても、手が動かない
コードは読めるが、自分では書けない
![Page 15: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/15.jpg)
15
勉強してきた中で気がついたこと
INPUTとOUTPUTのバランスが大切
INPUT : 本、勉強会、ネットの情報、人に聞くINPUTが足りないと…・ 新しい知識が入ってこなくなる・ 本や、ネット上の情報が理解できない
OUTPUT : 問題を解く、電子工作、ツールの制作OUTPUTが足りないと…・ 知っているが使えない状態に陥る・ だんだんモチベーションが下がってくる
![Page 16: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/16.jpg)
16
もくじ
自己紹介
これまでの勉強の流れ
勉強してきた中で気がついたこと
INPUT
OUTPUT
まとめ
自己紹介
![Page 17: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/17.jpg)
17
Python勉強録 〜INPUT編〜
人・勉強会 : 新しい情報や仲間を得る新しい情報、概念的な知識、ノウハウなどを知るには◎
調べてもわからないとき、質問できる人がいると効率がよい
授業形式でない限り、体系的に学ぶのは難しい
本 : 体系的な知識を習得する細かい部分まで自分のペースで学習できる
体系的な知識をつけたいときには◎
時間がかかる
ネット : ピンポイントで調べるピンポイントでわからないことろを調べるのに向いている
古い・間違っている情報も多い
![Page 18: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/18.jpg)
18
INPUT : 勉強会に出席する
●仲間や先生ができた● 時間的コストが安い●モチベーションが上がる
※細かいことは自分で勉強!
良かった
![Page 19: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/19.jpg)
22
INPUT : 何からはじめよう?
Pythonスタートブック
● 初心者でも1週間あれば読みきれる。
● データ型、メソッド、クラスなどの説明が丁寧。
● Python3でも動くコードが書いてある。
● 経験者にとっては、少々物足りないかも● まだ自分でコードを書けるようにはならない
良かった
ものたりない
![Page 20: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/20.jpg)
23
INPUT : もう少し詳しく構文を勉強したい!
みんなのPython 第3版
● 基本構文、標準ライブラリ、GUIなどを幅広くカバー
● 簡易的なリファレンスとしても使える● 図説やサンプルコードが豊富でわかりやすい
● Python3に完全対応
● クラスメソッドや、デコレータとかの説明も欲しかった
良かった
ものたりない
![Page 21: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/21.jpg)
24
Pycharm、virtualenvとか
インストールして環境を作りたい!
pipっていうのでパッケージが落とせるらしい!
![Page 22: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/22.jpg)
25
コマンドが理解不能
サイトによってコマンドが違ってたりする...
![Page 23: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/23.jpg)
26
INPUT : Linuxコマンド
新しいLinuxの教科書
● Linux、シェルとはなにか、という本当の基礎から始まる
● 環境変数、シェル変数、設定ファイルなど、初心者が理解しにくい概念の説明が丁寧
● ひたすらコマンドラインの説明しか載っていない
● サーバー関連の解説はない
良かった
ものたりない
![Page 24: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/24.jpg)
27
Webアプリ作ってみたい!
フレームワークのチュートリアルやってみよう!
![Page 25: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/25.jpg)
28
SQL? ORM? MVC?テンプレート?スキーマ?
わからない単語が多すぎて死亡...
![Page 26: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/26.jpg)
29
INPUT : Webアプリの基礎
みんなのPython Webアプリ編
● Webアプリとは何かという根本的な部分から説明
● DB、ORMなどの必要性がよくわかる
● フレームワークの有用性がよくわかる
● cgiでいろいろ作りながら学習することができる
http://coreblog.org/ats/stuff/minpy_web/● 2系のコードで書いてあるため、読み替えが必要
● 抽象クラスとか、クラスメソッドとかをサラッと使ってくる
良かった
ものたりない
![Page 27: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/27.jpg)
30
もくじ
これまでの勉強の流れ
勉強してきた中で気がついたこと
INPUT
OUTPUT
自己紹介
まとめ
![Page 28: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/28.jpg)
Python勉強録 〜OUTPUT編〜
問題集 : Pythonに慣れる
基本的なデータ型の使い方に慣れる
クラスやテストの使いどころが分かってくる
電子工作 : 楽しみながら学習するモノが実際にできるのは楽しい!
ツールやアプリ:実際に役に立つものを作る自分が作ったものが役に立つ感動
![Page 29: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/29.jpg)
32
本は読んだけど、自分で書ける気しないよ!
作りたいものを作れって言われても...
![Page 30: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/30.jpg)
33
OUTPUT : 自分で考えて書けるようになりたい!
Kataとは空手の型の意味。らしい。。。※画像はイメージです
● 30問ほどの問題集
● 基本的な問題から、少しひねったものまで
● 構文やメソッドの使い方を実践的に覚えられる● クラスやユニットテスト、コメントの必要性がよくわかる● 自分のコードをリファインすると新たな発見がある
※アルゴリズム、クラス・関数の設計は自分で考える!
CodeKataとは
CodeKata
良かった
https://github.com/bols-blue/CodeKata
![Page 31: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/31.jpg)
34
OUTPUT : 自分で考えて書けるようになりたい!
● FizzBuzz1から順番に数を表示する。その数が3で割り切れるなら"Fizz"、5で割り切れるなら"Buzz"、両方で割り切れるなら"FizzBuzz"と表示する。
● 英語しりとりプログラムあらかじめ用意した「辞書ファイル」に基づいて、ユーザーとしりとりをする対話型プログラムを作成せよ。
● ハノイの塔与えられたn枚の円盤を用いたハノイの塔を再帰的アルゴリズムを用いて解くプログラムを作成せよ。
● シェルピンスキーのギャスケットフラクタル図形の一種、シェルピンスキーのギャスケットを作図せよ。
● 有理化するプログラム√a/√bを有理化せよ。 ただし、1<=a<=100、2<=b<=100、aとbはそれぞれ整数とする。
![Page 32: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/32.jpg)
35
モチベーションを保ちたい!
![Page 33: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/33.jpg)
36
OUTPUT : 見た目にもインパクトがほしい!
Raspberry Pi × 電子工作
Raspberry Piとは● 学習用に作られた名刺サイズのLinuxマシン
● 電子工作、サーバー、デスクトップいろいろ使える
● 動く・光る = 楽しい! = モチベーションUP
● Linuxコマンドや設定の練習台にも使える
● いろいろ作りたくなる
良かった
![Page 34: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/34.jpg)
37
OUTPUT : 実際に業務で役に立つものを作る
自分の業務を自動化する
● 業務が格段に正確かつ高速になった感動● モチベーションが上がる● ドキュメントを残しておくことの大切さを知る(笑)
1. テストを実行し、結果をexcelに出力する
2. 機器にコンフィグを流し込んで、設定を照合する
作ったもの
良かった
![Page 35: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/35.jpg)
38
OUTPUT : Webアプリを作ってみる
作ったコードをWebアプリにしてみる
● Webアプリで使用するライブラリなどに慣れることができる
● ブラウザで自分の作ったものが動くことが嬉しい
![Page 36: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/36.jpg)
39
もくじ
これまでの勉強の流れ
勉強してきた中で気がついたこと
INPUT
OUTPUT
まとめ
自己紹介
![Page 37: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/37.jpg)
40
こんなのあれば良いいなぁ... |ω・`)チラ
●Pythonの開発環境を作るための勉強会
●「Pycharmを使いたおす」みたいな勉強会
●webアプリケーションフレームワークを基礎から解説してくれる本
●Raspberry Piの電子工作教室
●エンジニアのための速読英単語みたいなの
あと最近webアプリの勉強が進まなくて困ってます。。。
![Page 38: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/38.jpg)
41
これからやりたいこと
●Webアプリケーションフレームワーク(Pyramid,Django)
●サーバー構築
●英語(documentationをスラスラ読めるぐらいにはなりたい)
●もっと本格的な電子工作
![Page 39: S05 t1 midorikawa](https://reader031.vdocuments.mx/reader031/viewer/2022030312/58ed772b1a28ab6a568b47bb/html5/thumbnails/39.jpg)
42
最後に
学ぶこと自体を楽しむ