20121124 学生セミナー「基礎からわかる! IT業界とプログラミング」

Preview:

Citation preview

基礎からわかる!「IT業界とプログラミング」

2012.11.24フリーランスシステムエンジニア

上村崇

学生限定セミナー

おしながき・自己紹介・ ITはこんなところで使われている    ディスカッション・ IT業界で働いている人の実態・ 就活のノウハウ IT業界で必要となるスキル・ IT業界のこれからの動向    ディスカッション・ IT系 著名人・ プログラミング講座・ twitterボットを作ろう

自己紹介

・1974年生まれの38歳

・西宮生まれ

・高校まで西宮で過ごす。

・東京、札幌、シドニーに在住経験あり。

上村崇(うえむらたかし)

@uemera uemura

・1年浪人して、北海道大学工学部卒(1998卒) 大学院には行ってない。・大学在学中ではなく、大学卒業後に就職活動した。・就職先が決まってから、 ワーキングホリデーでオーストラリア(半年)・1年遅れで就職 (受験浪人+就職浪人で、合計2年遅れ)

就職するまで

24歳のとき

・1つめの会社(ソフトハウス) (1999~2004)「ソフトウェア情報開発株式会社」 300人くらいの中堅ソフトハウス 新人60人 5年くらい勤務。最初の1年は東京でOJT・2つ目の会社( 2004~2006 ) 30人くらいの小さい会社 組み込み系の業界を経験 1年半くらいいた。

就職してから(社会人時代)

・フリーランス時代(2006~)サラリーマンの生活と変わらない。報酬の形態が変わっただけ

でも最近は自分の仕事を持てるようになった。

就職してから(社会人時代)

・1999 銀行の社内決済システム(VB)・2000 学習塾(公文式)の成績管理システム(COBOL)・2001 SONY半導体生産管理システム・2002 ニッセイ保険業務システム・2004 カーオーディオ(富士通TEN ECLIPSE)・2006 携帯電話(SANYO INFOBAR2)・2008 カーナビ(富士通TEN ECLIPSE)・2008 複合機(村田機械)・2009 損保会社経営統合プロジェクト・2010 カーオーディオ (富士通TEN ECLIPSE)・2011 小売店流通システム(IBM)

業務経歴

XOOPS勉強会準備

JavaScript

WordPress

サーバインフラ

PHPフレームワークFuelPHP、CodeIgniter

最近のオレ

さくらVPS(CentOS)、LAMP、メールサーバ、git、samba、netatalk

jQuery

主に技術サポート

WordBench, サーバ関係

WordPressのセミナーしています。

2012.10.18 岡山「jQuery・WordPress実践2012」

2012.7.21 高知『 選ばれるCMSとその理由 』WordPress × a-blog cms

神戸に在籍WordPressのコミュニティ

WordPressの勉強会に出席しています。

・14:00-17:00でやります。・途中ディスカッションの時間を作ります。・文系の学生にも分かるように説明します。・時間が余ったら、最後に座談会します。・ミニ懇親会あります。

本日のセミナーについて

・積極的にアウトプット  感じたこと、気づいたこと、質問、疑問を ガンガン言語化しましょう・間違いを恐れない 他の学生と意見交換する際にも 間違いを恐れず自分の考えを伝えましょう・みんなで考え、みんなで学ぶ 人の意見に傾聴し、すぐに否定することなく どう自分に活かせそうかを考えてみましょう

皆さんへのお願い

見よ!この腕の角度!!

・一人1分程度

・名前、大学、参加目的

・楽しかった話、嬉しかった話(1つ)

各テーブルで自己紹介

おしながき・自己紹介・ ITはこんなところで使われている    ディスカッション・ IT業界で働いている人の実態・ 就活のノウハウ IT業界で必要となるスキル・ IT業界のこれからの動向    ディスカッション・ IT系 著名人・ プログラミング講座・ twitterボットを作ろう

ITに興味ありますか?

ITは、とても多くの分野で使われています。

インターネット パソコン

銀行システム 携帯電話

ITとは:情報処理を行うソフトウェア・ハードウェアの総称

これはITですか?

これはITですか?

これはITですか?

ITとは:(デジタルデータで)情報処理を行うソフトウェア・ハードウェアの総称

ディスカッション

・IT技術が使われているモノ、サービスは?・それはハードウェア? ソフトウェア?

時間:15分(14:55くらいまで)各班単位であとで発表してもらいます。

IT業界は、大きく分けて4つ

・組み込み機器

・業務系サービス

・インターネット

・ゲーム

組み込み機器ハードウェアだけじゃなくて、ソフトウェアも入っている。

業務系サービス全国展開しているサービスは必ずIT化されている。

・銀行、保険・学習塾、予備校・コンビニ、スーパー、百貨店・新聞、雑誌・アパレル(ユニクロ)・レンタルビデオ(TSUTAYA)・住民基本台帳ネットワーク・税金(E-Tax) もうすぐ?

・健康保険

インターネットいうまでも無くすべてIT化されている・メール・ネットショップ・音楽配信、映像配信・鉄道時刻表・ブログ・ニュース、天気予報・SNS(mixi, twitter, facebook)・地図

もうすぐ?・選挙・裁判

ゲーム中高生以上がやるゲームは、ほとんどIT化されている

・オンラインゲーム・携帯ゲーム・専用ゲーム機器(PlayStation、NintendoDS)

電気 ガス 水道

アパレル 自動車

道路

マスコミ 飲食 商社 IT

インフラ電話

業界

昔はこうだった

電気 ガス 水道

アパレル 自動車

道路

マスコミ 飲食 商社

IT

インフラ電話

業界

今後はこうなる

電気 ガス 水道

アパレル 自動車

道路

マスコミ 飲食 商社

IT

インフラ電話

業界

今後はこうなる

ITはインフラになる。今後どんどん重要性が増していく。

おしながき・自己紹介・ ITはこんなところで使われている    ディスカッション・ IT業界で働いている人の実態・ 就活のノウハウ IT業界で必要となるスキル・ IT業界のこれからの動向    ディスカッション・ IT系 著名人・ プログラミング講座・ twitterボットを作ろう

学生にとっては、社会人がどういう働き方をしているのかいまいちよく分からない。

どんな働き方をしていると思いますか?まったくの想像でもいいので考えてみてください。

ITゼネコンの子会社とか独立系中堅ソフトハウス富士ソフト、トランスコスモス、さくらKCS、...従業員数100~1000

大手ITゼネコン

IT業界構造(業務系サービスの例)エンドユーザ

(発注者)

下請け会社

零細ソフトハウス、派遣社員

NTT-DATA, 富士通, 野村総研, NEC, IBM従業員数1000~

小さな会社や個人(フリーランス)従業員数1~100

非IT産業の会社要件定義者

プロジェクトマネージャ プロジェクトリーダ

システムエンジニア プログラマプロジェクトリーダ

システムエンジニア プログラマ

コンサルタント スペシャリスト

プロジェクトマネージャ

エンドユーザ(要件定義者)

IT業界のヒエラルキー

プロジェクトリーダ プロジェクトリーダ

コンサルタント

スペシャリスト

プログラマ プログラマ プログラマ プログラマ プログラマ プログラマ プログラマ プログラマ

システムエンジニア システムエンジニア システムエンジニア システムエンジニア

企業の特徴(規模別)大手企業・インフラを持っている企業は安定していて強い。給料も高い。 (電力、ガス、水道、通信)・旬の技術を持っている企業は勢いがある。 (スマホ、電気自動車、自然エネルギー発電)・分業の結果、専門分野に特化した仕事になりがちなので、 会社を出ると自分の技術が通用しないこともある。

ベンチャー、中小企業・給与待遇、勤務条件は大手企業に比べて良くないかも知れないが、 幅広い業務を経験できる。・自分の存在価値を発揮できる。・自分の裁量で出来ることが多い。

独立(起業、フリーランス)・経験が無いと難しい。まずは会社に入って3年以上経験を積むことを薦めます。

典型的な日本の会社のオフィス

Google スイス

Google ジャパン

DeNA

GREE

日本マイクロソフト

サイバーエージェント

mixi

この章のまとめ・IT業界といっても幅広い。・自分が希望するポジションを考えること。・会社の規模によっても仕事の内容が随分違う・会社の福利厚生や設備は魅力だが、自分が従事する 仕事内容のことを第一に考えるようにしよう。

おしながき・自己紹介・ ITはこんなところで使われている    ディスカッション・ IT業界で働いている人の実態・ 就活のノウハウ IT業界で必要となるスキル・ IT業界のこれからの動向    ディスカッション・ IT系 著名人・ プログラミング講座・ twitterボットを作ろう

IT業界ではどういうスキルが必要だと思いますか?

企業人事担当者が、IT系人材に対して求めていること・本当は即戦力が欲しい。 → でも新人にはそこは求められない。・なので、育つ可能性がある人材を、少ない手間で 手に入れたいと思っている。(勝手に育つ人材)・現在の自分のプログラミングスキルの有無はどちらかと 言うと問題ではない。・普段からITに関する知見を養っているかどうか → つまり素養があるかどうか。ITが好きかどうか。・会社の将来像やビジネスモデル、ITの将来について 人事担当者と話せる実力があれば強い。・自分の専門分野のことを説明できるようになろう。 おかんに説明できるレベルで。プレゼン能力は重要。

学校での勉強は就職後には役に立たない?ケースバイケースです。僕の場合はソフトウェア技術者になったので、「電気回路」とか「トポロジー、代数、積分」などの数学はあまり役に立ってないです。逆に、「卒論」「プログラミング実習、実験」は役に立ちました。・考えて結論を導くこと。・文章を書く、構成をまとめる、OUTPUTするということは生涯重要になるスキル

学校での勉強は就職活動には役に立たない?自分の専門に取り組んだ努力をアピールできれば役にたったと言えます。勉強の中身ではなく、「努力して身についた」という実績が評価になります。ですので勉強するだけでなく、「勉強したことを人にアピールする」こともセットで考えてください。

世界や日本のIT業界のトレンドを知っておこう。テクノロジー系のニュースを読もう。

BUSINESS INSIDERのTech記事http://www.businessinsider.com/sai

世界や日本のIT業界のトレンドを知っておこう。テクノロジー系のニュースを読もう。

Mashable – The Social Media Guidehttp://mashable.com/

世界や日本のIT業界のトレンドを知っておこう。テクノロジー系のニュースを読もう。

TechCrunch Japanhttp://jp.techcrunch.com/

英語力はこれから必須のスキルになる。英語力は重要。ITの中心はアメリカ。英語の情報をINPUT出来ると能力に差がつく。

資格のはなし就職活動、転職活動には有利だが、実務で役に立つとは限らない。・情報処理技術者試験 「基本情報技術者試験」は文系でもとっておくべき。 「応用情報技術者試験」はあれば有利。資格手当をもらえる場合も。 「スペシャリスト系試験」は持っている人は少ないのでかなり有利。

・ベンダー系試験 ORACLE MASTER (Bronse、Silver、Gold、Platinum) → データベース系の資格 シスコ技術者認定 CCNA、CCNP → ネットワーク系の資格 マイクロソフト認定資格 MCP

あとは、・面接のノウハウを身につける・あなたが入社したいと思っている 企業の業務内容を研究する

→ 自分で調べるか、詳しい人に聞こう!

この章のまとめ

IT業界を好きであり続けることが一番のスキル!

おしながき・自己紹介・ ITはこんなところで使われている    ディスカッション・ IT業界で働いている人の実態・ 就活のノウハウ IT業界で必要となるスキル・ IT業界のこれからの動向    ディスカッション・ IT系 著名人・ プログラミング講座・ twitterボットを作ろう

1位 日本航空

2位 電通

3位 全日本空輸

4位 JTB

5位 サントリー

就職人気企業ランキング 2005年文系

????

1位 日本航空

2位 電通

3位 全日本空輸

4位 JTB

5位 サントリー

就職人気企業ランキング 2005年文系

Panasonc SONY

2008 6位 -

2009 8位 3位

2010 2位 1位

2011 2位 5位

2012 1位 3位

PanasonicとSONYの人気ランキング(理系)

・今人気のある会社が、将来に渡って発展するとは限らない。・特にIT系の会社はライフサイクルが短い。・一生自分の面倒を見てくれる会社は無いと思った方が良い。・「会社が求めるスキル」よりも「社会が求めるスキル」が必要。・会社に入ったらそれがゴールではなく、 そこからが勝負であることを認識する。・就職活動で志望の会社に入れなくてもそれは大きな問題ではない。・自分にスキルがあればチャンスはいくらでもある。

ディスカッション

・今後どういうIT技術が出てくると思いますか?・ビジネスチャンスはどこにありますか?

時間:15分各班単位であとで発表してもらいます。

スマートグリッド

・家庭の電力計がスマートメータに置き換えられ、 リアルタイムで電力使用量が分かるようになる。・外から家庭内機器の制御が可能となる。

自動運転カー2040年までに一般道を走行する自動車の75%が自動運転車になるとの予想

本の紹介: ITロードマップ2012年版

IT化、グローバル化によって生き残れない仕事・データ入力、操作を覚えれば誰でもできる系の仕事 → OCRに置き換えられる。ロボットに置き換えられる。・Input/Outputがはっきりしている仕事 → コンピュータや、アジアの安い人材によって置き換えられる。・小さな仕事、単純な仕事 ・小さな仕事が出来る人はたくさんいる。 ・電力検針の仕事など。・車の運転 ・無人運転カーが出現する・営業、仲介業者 ・ネットで買えるものはネットで買うようになる。

生き残れる仕事(コンピュータに置き換えられない仕事)・人とのコミュニケーションが必要なビジネス → コンサルティング・形が見えないものを実現させる仕事 ・経営を合理化してコストダウンの提案をする仕事・大きな仕事の提案 ・何十人、何百人もの人手が必要なプロジェクトのマネジメント・決断が必要な仕事、責任を負う仕事 ・システムのメリット/デメリットの提案などできる人・教える仕事・老人相手の仕事

この章のまとめ

今を見るのではなくて、先を予想すること。考えること。そうすれば自分の進むべき方向が見えてくる。

おしながき・自己紹介・ ITはこんなところで使われている    ディスカッション・ IT業界で働いている人の実態・ 就活のノウハウ IT業界で必要となるスキル・ IT業界のこれからの動向    ディスカッション・ IT系 著名人・ プログラミング講座・ twitterボットを作ろう

孫正義ソフトバンク社長

Steve JobsApple 元CEO

Mark Zuckerbergfacebook CEO

Bill GatesMicroSoft 会長

Tim CookApple CEO

Eric Schmidt(エリック・シュミット)米Google 会長

Larry Page(ラリー・ペイジ)、Sergey Brin(セルゲイ・ブリン)Google 創業者

Steve Ballmer(スティーブ・バルマー)MicroSoft CEO

marissa mayer(マリッサ・メイヤー)米Yahoo CEO

Jeff Bezos(ジェフ・ベゾス)Amazon CEO

これらの企業の共通点は?

これらの企業の共通点は?

プラットフォームを持っている

これらの企業の共通点は?

プラットフォームを持っているSoftBank: 通信Apple: OS、スマホfacebook: SNSMicrosoft: OSGoogle: 検索、AndroidYahoo: 検索、情報ポータルAmazon: ネットショップ、クラウド

おしながき・自己紹介・ ITはこんなところで使われている    ディスカッション・ IT業界で働いている人の実態・ 就活のノウハウ IT業界で必要となるスキル・ IT業界のこれからの動向    ディスカッション・ IT系 著名人・ プログラミング講座・ twitterボットを作ろう

プログラミングしたことありますか?

世の中に存在するプログラミング言語は?

コンパイル型言語c, c++, c#, Visual Basic, JavaCOBOL, PowerBuilder, Pascal, FORTRANコンパイル型言語は、コードを書いたらコンパイル作業をしないと実行できない。

インタプリタ型言語php, Ruby, Perl, python, JavaScriptインタプリタ型言語は、コンパイルする必要がない。コードを書いたらすぐ使える。

List of programming languages - Wikipedia, the free encyclopediahttp://en.wikipedia.org/wiki/List_of_programming_languages

人気言語C系、Javaが人気

TIOBE Software: Tiobe Indexhttp://www.tiobe.com/index.php/content/paperinfo/tpci/index.html

プログラミングの基礎をphpで説明します。

プログラムの構造は基本的には3種類しかない1. 順次処理2. 分岐3. 繰り返し

START

END

顔を洗う

朝ごはんを食べる

歯を磨く

服を着替える

1. 順次処理

1つづつ処理を行っていく。

START

END

講義をサボる

2. 分岐条件によって処理を変える

Yes

朝起きた時刻が10:00以降?

No

講義に出席する

START

END

友達のノートをコピーする

3. 繰り返し同じ処理を繰り返す

1~10まで繰り返す

プログラミングの実習をしてみますhttp://codepad.org

<?phpecho  "こんにちは";?>

その1 順次処理1

コード:http://codepad.org/p4nysXVS

その2 順次処理2<?phpecho  3+2;?>

コード:http://codepad.org/R3Y2AiNE

その3 分岐<?php$sec  =  date("s");$number  =  $sec  %  2;if(  $number  ==  0  ){    echo  "偶数";}  else  {    echo  "奇数";}?>

コード:http://codepad.org/vMYZus4W

その4 繰り返し<?phpfor(  $i  =  1  ;  $i  <=  10  ;  $i++  ){    echo  "繰り返し"  .  $i    .  "回目\n";}?>

コード:http://codepad.org/tqYe6xiV

おしながき・自己紹介・ ITはこんなところで使われている    ディスカッション・ IT業界で働いている人の実態・ 就活のノウハウ IT業界で必要となるスキル・ IT業界のこれからの動向    ディスカッション・ IT系 著名人・ プログラミング講座・ twitterボットを作ろう

プログラムを実行すると、現在時刻をつぶやくボット

必要なコードはこれくらい。

このボットの作成手順1. ボット用のtwitterアカウントを作る。2. twitterのdevelopperに登録して  OAuth用の認証コードをもらう。3. 認証用プログラムファイルもダウンロードする。4. phpプログラムを書く。5. 実行する。

<参考>PHP+OAuth認証で、Twitterの自動投稿APIを作るhttp://ameblo.jp/semodoki/entry-10678865752.html

1. ボット用のtwitterアカウントを作る user: @uemura_bot1 pass: xxxxxxx

dev.twitter.com

2. twitterのdevelopperに登録して  OAuth用の認証コードをもらう。  認証用プログラムファイルもダウンロードする。

My applications

Name

Description

Website

SettingsのタブでApplication Typeを“Read and Write”にしておく。

Consumer Key

Consumee secret

Access Token

Access Token Secret

Detailsタブ

ConsumerKeyなどの4つのキーをプログラムに埋め込む。

Consumer Key

Consumee secret

Access Token

Access Token Secret

phpのdate関数はオンラインマニュアルを見れば仕様が分かる。

oauth用のプログラムファイルを以下からダウンロードする。https://github.com/abraham/twitteroauth/downloads

2つのファイルOauth.php, twitteroauth.phpをプログラムファイルと同じディレクトリに保存する。

$  php  twitterbot.php

さきほどのプログラムを twitterbot.php として保存し、実行する。

Macの場合: ターミナル.app で実行する。Windowsの場合、XAMPPをインストールする必要がある。

無事つぶやけました!

ありがとうございました

上村崇(うえむらたかし)

@uemera uemura

Recommended