クソ素人向け
エンジニア勉強会
20180409_岩崎
クソ素人向けエンジニア勉強会とは
素人の素人(岩崎)による素人のための
エンジニア知識を身につける場です
この勉強会を完了した後にあなたは、
次の成果が得られるでしょう
エンジニアの話を
何となくだが
理解できるようになる
※わかった気になるだけなので
調子に乗らないように
スティーブ・ジョブズのように
プログラミングを
クソ上手くプレゼンできるように
なれる気がしてくる
あー、あの言語ね、知ってる知ってる
あれだよね、
Web向けで3つのポイントにまとめて
話s
あれです、とりあえずプログラミングに対して、
「クソ難しそう」という観念を
変えることができれば成功だと思ってください。
目次
①この資料の読み方のイメージ共有
②言語とは、フレームワークとは
③データベースとは
④プロジェクト管理とは、バージョン管理とは
⑤実践ワーク1(わけわからない英語達の分類)
⑥実践ワーク2(それぞれの言語が得意とするもの)
①この資料の読み方のイメージ共有
この資料の前半ではほぼ専門用語を使いません。
・みなさんの身近にあるイメージできるもので簡単にぽんぽん示していきます。
・全てを1つのイメージで説明できる訳ではありませんが、なるべく繋がりがあ
るように作っています。
なぜ?わけわからない用語を並べられても僕は意味がわからないからです。
実践ワークで初めて用語に落とし込んでいきます。
②言語とは、フレームワークとは
木の椅子を作ることをイメージしてください
言語とは
ドライバーや、
ノコギリのように
椅子を組み立てる
道具のこと
フレームワークとは
工具箱のように
道具を管理して、
すぐ組み立てられる
ようにできるもの
何で色々な言語や
フレームワークが
あるの?
作りたい椅子によって
向いている工具や、
それを管理する工具箱が
違うから
木?鉄?プラスチック?
ベンチ?ソファ?
あとはこれをIT向けに変換するだけ
・椅子:最終的に作りたいもの
→Webアプリ、スマホアプリ、クラウド管理システム
・ドライバー、ノコギリ
→Java、Rubyなどの言語
・工具箱
→Ruby on Rails(Rubyで使われる工具セットがしまってあるのでその工具を使って言語を簡単にかける)
③データベースとは
一戸建ての家のことをイメージしてください
データベースとは
家に住む人間を
自由に出し入れできる
神を作り出せるもの
あとはこれをIT向けに変換するだけ
・住む人間
→人事情報管理システムで管理したい個人情報、営業の生徒さんのヒアリング情報
・家
→情報を好きなように出し入れ(入力、出力、削除)できる箱
④プロジェクト管理とは、バージョン管理とは
200年くらいずっとある
一戸建ての家のことをイメージしてください
プロジェクト管理とは
家のリフォームをする
ときに、
それに必要な過程を
管理すること
バージョン管理とは
過去に家のリフォーム
をした
経歴を管理すること
もっと言うと100年前
の状態に戻すことがで
きる
ここまでいかがでしょうか。
スティーブ・ジョブズになれる気
がしてきたでしょうか。
さあ、
少しイメージがついたところで
みなさんの嫌いな英単語の
オンパレードの時間です。
私をなめるなよ
⑤実践ワーク1(わけわからない英語達の分類)
問:以下の英単語を分類しなさい
◯分類先
言語、フレームワーク、データベース、プロジェクト管理、バージョン管理
◯分類するもの
Java 、Waves、Android SDK、MySQL、Python、Symfony 、Node.js、PHP、Ruby、Git、Perl、Ruby on Rails、
Swift、Trello、Scala、Pyramid、HTML5+CSS3、Oracle、HTML、CSS、Sass、Node.js、SQL 、jQuery、
COBOL、Struts、Seasar2、backlog、JSF 、Spring 、Microsoft SQL Server、Hibernate 、iBATIS 、CakePHP、
Camping 、Django 、Tornado、Flask、Pylons、Unity、prototype.js、C 、Redmine、Jira、Asana、Objective-C、
PostgreSQL、MongoDB、Hbase、R言語、DB2、JavaScript、Mercurial
このワークの時の
三つのポイント
①全部分かろうとしないでください。
全て覚えようとすると嫌になります。
あくまで目につくもの、
聞いたことだけでもあるものから
分類してください。
②それぞれの分類先について
2つずつ以上は
必ず分類するようにしてください。
③全体で合計8つ以上正解することが
できたら必ず自分を褒めてください。
回答(これが全てはありません)
◯言語
Java 、C言語 、PHP、Ruby、Python、Perl、Objective-C、Swift、R言語、Scala、JavaScript、HTML、CSS、
HTML+CSS、Sass、SQL 、COBOL
◯フレームワーク
Struts、Seasar2、JSF 、Spring 、Hibernate 、iBATIS 、Symfony 、CakePHP、Ruby on Rails、Camping 、
Waves、Django 、Tornado、Flask、Pyramid、Pylons、Unity、Android SDK、jQuery、prototype.js、Node.js
◯データベース
MySQL、PostgreSQL、mSQL 、MongoDB、Hbase、Oracle、DB2、Microsoft SQL Server
◯プロジェクト管理
Redmine、backlog、Jira、Trello、Asana
◯バージョン管理
Git、Mercurial
⑥実践ワーク2(それぞれの言語が得意とするもの)
問:以下の言語が得意とするものを分類しなさい
◯分類先
Java 、C 、PHP、Ruby、Python、Swift、R言語、JavaScript、HTML+CSS
◯分類するもの
Webサイト、ゲーム、ロボット、androidアプリ、iphoneアプリ、デスクトップ
アプリ、AI、IoT、OS開発、企業向けの業務システム
回答(あくまで「向いているもの」です)
Java :ゲーム、androidアプリ、デスクトップアプリ、企業向けの業務システム
C :ロボット、OS開発、IoT
PHP:Webサイト(サーバー側)
Ruby:Webサイト(サーバー側)
Python:デスクトップアプリ、AI
Swift:androidアプリ/iphoneアプリ
R言語:AI
JavaScript:Webサイト(フロント側)
HTML+CSS:Webサイト(フロント側)
以上で
クソ素人向けエンジニア勉強会は終了です
最初の目標であった、
プログラミングに対する距離感は
近くなったでしょうか?
業務の中で皆様が
右のような表情になる
瞬間があると嬉しいです
番外編(フロント、サーバーサイド、インフラ)
わかりやすい違いの説明の画像があったので貼っておきます。
https://qiita.com/shuntaro_tamura/items/e1a20e33c57c71679688

ど素人向け エンジニア勉強会