paiza開発日誌

IT/Webエンジニア向け総合求人・学習サービス「paiza」(https://paiza.jp ギノ株式会社)の開発者が開発の事、プログラミングネタ、ITエンジニアの転職などについて書いています。

Webデザイナー/ディレクター向け!プログラミング初心者歓迎の無料PHP勉強会開催


paizaでは、7月27日(木)に【初心者歓迎・完全無料】の Webデザイナー/ディレクター向け!知識ゼロから学ぶPHP勉強会を開催いたします。

Webデザイナー・Webディレクターでプログラミングを学びたい方、PHPを使えるようになりたい方はぜひご参加ください!

peatix.com

【初心者歓迎・完全無料】の Webデザイナー/ディレクター向け!知識ゼロから学ぶPHP勉強会とは

最近はWebデザイナーやWebディレクターでも、WordPressの使用やサイト表示部分の切り替えなどで、PHPを使う場面が増えてきました。そのため、Webデザイン業務におけるPHPの需要は非常に高まっています。

今回開催するのは、そうした「PHPの使い方を覚えたいけど、どうすればよいのだろう?」とお考えの【Webデザイナー・Webディレクター】の方を対象にした、ノンプログラマーでもPHPの基礎を優しく学べる超初心者向けの無料プログラミング勉強会です。

日本のITエンジニアの約30%に当たる12万人が利用するオンラインプログラミング学習サービスのpaizaラーニング(基本無料/一部月額880円)を、無料で気軽に体験していただける会となっています。

PHPとは

PHPは素早くWebサービスを構築するのに向いたプログラミング言語で、初期のFacebookやYahoo、WordPressGREEWikipediaなど、多くのWebサービスの開発に使われています。 転職、あるいは新卒のWebエンジニア/デザイナー/ディレクターの求人で、PHPの開発スキルを求める企業も多くあります。

■この勉強会で学べる内容

f:id:paiza:20170721133343p:plain
PHP入門編】
1.プログラミング初歩
2.条件分岐、比較演算子
3.ループ処理

個別指導形式で、動画の学習教材を元にステップごとに実際にプログラミングを行い、分からなければ講師に質問し、その後演習課題を解き、理解を深めながら進めていくスタイルの講座です。一斉指導型ではないので、自分のスピードに合わせた学習が可能です!

■勉強会の目的

PHPの基礎的な書き方の習得を目指し、簡単なWeb掲示板アプリケーションの作成を体験していただきます。プログラミングに興味があるけど何から始めて良いか分からないWebデザイナー・Webディレクターの方に最適な内容となっております。

■対象者

現在WebデザインやWebディレクションの業務に携わっている方
※今回、Webデザイナー・Webディレクター以外の方は対象外となりますのでご注意ください!

■募集人数

8名様

■費用

無料

■開講日程

7月27日(木) 19:30-21:00

■場所

ギノ株式会社 会議室
東京都港区南青山2-11-16 METLIFE南青山ビル7F

■持ち物

ノートパソコン(wifi接続が可能で5年以内製造のもの)
イヤフォン

※ご自分のノートパソコンで動画を見ながらプログラミングしていただきますので必ずお持ちください

◆参加お申し込み

お申込み・詳細情報はこちら
peatix.com





paizaラーニング」では、未経験者でもブラウザさえあれば、今すぐプログラミングの基礎が動画で学べるレッスンを多数公開しております。

現在、普段有料公開しているPHP、DB/SQL、Webアプリ開発入門(PHP+MySQL編)のレッスンを、期間限定で連続無料公開中ですのでぜひごらんください。

↓詳しくはこちら
paiza.jp

そして、paizaでは、Webサービス開発企業などで求められるコーディング力や、テストケースを想定する力などが問われるプログラミングスキルチェック問題も提供しています。
paiza.jp
スキルチェックに挑戦した人は、その結果によってS・A・B・C・D・Eの6段階のランクを取得できます。必要なスキルランクを取得すれば、書類選考なしで企業の求人に応募することも可能です。「自分のプログラミングスキルを客観的に知りたい」「スキルを使って転職したい」という方は、ぜひチャレンジしてみてください。

ITプログラマ・エンジニア向け転職・就活・学習サービスのpaiza

JavaScriptで人工知能を活用した画像解析ができる「Kairos」で顔認識をやってみた!

f:id:paiza:20170719121045j:plain
どうも、まさとらん(@0310lan)です!

今回は、人工知能を活用した高度な画像解析を、簡単なJavaScriptコードで実現できるWebサービスをご紹介します!

画像に写っている「顔」を認識させて、その人物の「感情」を読み取ったり、顔の座標データを取得するようなことが簡単にできるのでオススメです。

Kairos

f:id:paiza:20170719121143j:plain

■「Kairos」の使い方!

それでは、実際に「Kairos」を使いながら、どのような画像解析ができるのかを見ていきましょう!

まず最初に、以下のリンクからユーザー登録を済ませておきます。

ユーザー登録ページ|Kairos
f:id:paiza:20170719121214j:plain
メルアドやパスワードなどを登録するだけで、誰でも利用可能です。(登録したメルアドにリンクが送られてくるので、それをクリックしてログインします)


ログインしたら、自分専用の「ダッシュボード」が表示されます。
f:id:paiza:20170719121231j:plain
画面下に、「App ID」と「Key」が発行されているので、これをコピーしておきましょう。

これで導入準備は完了です!

あとは、JavaScriptでプログラミングを行いながら「画像解析」を始めましょう!

■人物の「感情」を解析しよう!

Kairos」は、人工知能によって画像を解析するためのAPIが提供されており、これを利用することでJavaScriptから簡単に実行することができます。

今回は、画像に写った人物の「感情」や「顔」を認識させてみたいと思います!


そこで、まずは人物が写っている画像を1枚用意します。(今回はフリー画像を利用しています)
f:id:paiza:20170719121332j:plain
この画像を使って、まずは画像の「感情」を解析してみましょう。


最初に、画像を「Kairos」のサーバーへ送信する必要があるのですが、そのベースとなるURLが次のようになります。

https://api.kairos.com/v2/media?source=【画像のURL】


これを「XMLHttpRequest()」で送信する簡単なプログラムを組み立てればOKです!

var request = new XMLHttpRequest();


request.open('POST', 'https://api.kairos.com/v2/media?source=【画像のURL】');
request.setRequestHeader('app_id', '【自分のAppID】');
request.setRequestHeader('app_key', '【自分のKey】');


request.onreadystatechange = function () {


    //ここに処理を書く


};


request.send();

「AppID」と「Key」は、冒頭でコピーしておいたモノに差し替えておいてください。


あとは、画像を送信後に「Kairos」のサーバーからレスポンスが返ってくるので、「onreadystatechange()」内に内容を確認する処理を追記します。

request.onreadystatechange = function () {
    if (this.readyState === 4) {


        // レスポンスの内容をコンソールに出力する
        console.log( JSON.parse(this.responseText) );


  }
};

「responseText」に返ってきたレスポンスが文字列で格納されているので、読みやすいように「JSON.parse()」で解析してコンソールに出力するようにしています。

※ここまでの全ソースコードこちらから確認できます。


JavaScriptを実行するとコンソール画面に「id」が出力されるので、これをコピーしておきましょう!
f:id:paiza:20170719121504j:plain


この画像IDを使って、今度は次のようなURLを使うことで画像の「感情」を読み取ることができるようになります!

request.open('GET', 'https://api.kairos.com/v2/analytics/【画像のID】);

ソースコードこちらから確認できます。


コンソールを見ると、「average_emotion」の中に喜怒哀楽を数値化した情報が格納されており、この画像の場合は「喜び」の数値が大きいことが分かります。
f:id:paiza:20170719121540j:plain
他にも、「メガネの有無」「性別」「ネガティブ / ポジティブ」…など、さまざまな情報を取得することが可能になります。

これを活用すれば、ユニークな画像分類などが出来るようになり非常に便利です。

■人物の「顔」を認識しよう!

今度は、先ほどの画像を利用して「顔認識」に挑戦してみましょう!

ベースとなるURLは次のようになります。

https://api.kairos.com/detect?image=【画像のURL】


そして、先ほどと同じように「XMLHttpRequest()」を使ってプログラムを組み立てましょう!

var request = new XMLHttpRequest();


request.open('POST',  'https://api.kairos.com/detect?image=【画像のURL】');
request.setRequestHeader('app_id', '【自分のAppID】');
request.setRequestHeader('app_key', '【自分のKey】');
    
request.onreadystatechange = function () {
    if (this.readyState === 4) {


          console.log( JSON.parse(this.responseText) );
        
    }
};




var body = {
    'image': 【画像のURL】,
    'selector': 'ROLL'
};
  
request.send( JSON.stringify(body) );

基本的には「感情」を読み取った時のコードと同じなのですが、「request.send()」の引数として画像のURLと「selector」を指定するようにしてください。


そして、コンソール画面を確認すると、画像の顔を認識したデータが取得できているのが分かります!
f:id:paiza:20170719121637j:plain
このデータには、顔の位置座標や目の位置、アゴのラインまでいろんなデータが詰まっています。


そして、これらの座標データとcanvasをうまく活用すれば、こんな感じで「顔認識」させることができます!
f:id:paiza:20170719121649j:plain
このサンプルのソースコードコチラから確認できます。


さらに、座標データだけでなく、その人物の属性データも取得可能です!
f:id:paiza:20170719121703j:plain
得られるデータとしては、「年齢」「白人 / 黒人」「アジア系 / ヒスパニック系」「性別」…など、さまざまな情報が格納されているので便利です。

また、「verify」機能を活用すれば、1枚の画像データから「顔認証」システムを構築することもできるようになるので、活用範囲はとても広いと言えるでしょう。

JavaScript講座も公開中!動画でプログラミングが学べるレッスン


paizaでは、プログラミング未経験者・初心者向け学習サービス「paizaラーニングを公開しています。

今回記事の中で使用しているJavaScriptが学べる入門講座をはじめとして、PythonJavaC言語PHPRubySQL、HTML/CSSなど、プログラミング初心者でも動画で学べる入門レッスンが多数ございます。プログラミング初心者の方はぜひごらんください!

↓詳しくはこちら
paiza.jp

■まとめ

今回は、「Kairos」の画像解析による基本的な部分を駆け足でご紹介しました。

特に、「顔」の認識は優れており、自分の「顔」を登録しておけば他の写真から自分だけを収集するような機能も簡単に作れてしまいます。

JavaScriptから手軽に試せるので、ぜひみなさんも画像解析を楽しんでみてください!


<参考>




paizaラーニング」では、未経験者でもブラウザさえあれば、今すぐプログラミングの基礎が動画で学べるレッスンを多数公開しております。

現在、普段有料公開しているPHP、DB/SQL、Webアプリ開発入門(PHP+MySQL編)のレッスンを、期間限定で連続無料公開中ですのでぜひごらんください。

↓詳しくはこちら
paiza.jp

そして、paizaでは、Webサービス開発企業などで求められるコーディング力や、テストケースを想定する力などが問われるプログラミングスキルチェック問題も提供しています。
paiza.jp
スキルチェックに挑戦した人は、その結果によってS・A・B・C・D・Eの6段階のランクを取得できます。必要なスキルランクを取得すれば、書類選考なしで企業の求人に応募することも可能です。「自分のプログラミングスキルを客観的に知りたい」「スキルを使って転職したい」という方は、ぜひチャレンジしてみてください。

ITプログラマ・エンジニア向け転職・就活・学習サービスのpaiza

社内に閉じこもるな!社外にエンジニアの友人を作ることのメリットとは【すべてうまくいく 第5回】

f:id:paiza:20170718140309j:plain

エンジニアの皆さん、今、健康ですか?

一般的に、肉体的にも精神的にもタフな仕事のイメージがあるエンジニア。特にメンタル面の管理で苦労されている人を多く見かけます。スキルアップだけでなく、健康維持もエンジニアを続けるために不可欠なポイントです。

この連載は「すべてうまくいく:エンジニアを続けていくための心得」と題して、元エンジニアで現在はライターの加山恵美さんが、自らの経験や数多くのエンジニアへの取材経験をもとに、健康で充実した日々を送るためのヒントをお伝えしていきます。仕事に疲れたときやキャリアに迷ったときに、ちょっと一息入れるつもりで読んでみてください。(バックナンバーはこちらから)

第5回となる今回は、人脈の広げ方について。デスクワークのため、ついつい社内のコミュニティで満足してしまいがちですが、社外の人との接触でさまざまなものが得られることも。外で得られるメリットについて解説します。

こんにちは、ライターの加山恵美です。

エンジニアの皆さん、社外にエンジニアの友達はいますか?

エンジニアを続けていくなら、勉強会やコミュニティ活動を通じて人脈を広げることをおすすめします。

親世代や上の世代だと終身雇用が当然だったかもしれませんが、エンジニアは比較的転職が多い職種です。会社にはどこも独特の社風があり、1つの世界や国を形成します。組織に帰属しつつも、社外の友達を持つということは異世界への接点をもつようなものです。外の世界を知っていると、異動や転職など環境変化で受けるストレスを和らげるなど柔軟性を高めることにもつながります

社風は開発方法にも現れることがあります。同じ言語でプログラミングしても、同じソフトウェア製品を使うにしても、会社が違うとポリシーが異なる場合があります。「これが常識」と思っていたことが社外では違うかもしれないのです。

社外で同じ仕事をしている友達がいれば、「うちはこうしているよ」という話ができるかもしれません。異文化交流みたいですよね。自分の会社とは違う考え方、より賢い方法を発見できるかもしれません。(もちろん、機密情報の交換はいけませんよ)

また、エンジニアだとずっと技術動向をキャッチアップしていかなくてはなりません。ある程度習得したらずっと安泰というわけにはいかないのが大変なところです。常に変化することを楽しめると、エンジニアという仕事を楽しめます。その点からも、社外との交流はおすすめです。

IT業界ではいろんな勉強会が開催されています。勉強会では新しい技術を知る、あるいは理解を深めることができます。懇親会で友達が増えたら、勉強会がより楽しめることでしょう。主催側スタッフや発表者に挑戦するのもいいですよ。いろんなことを学べて、得られるものが多いでしょう。

私自身にとっても、エンジニア時代に知り合った社外の友人は今でも貴重な存在です。実は私がエンジニアとして就職した時、新卒採用が3期目で新しい技術を知る先輩がほとんどいませんでした。新人同士で教え合うこともしていました。

それでも足りず、私は社外のメーリングリストやコミュニティに参加しました。そこでコンピュータやネットワークなど基本的な技術をいろいろと教えてもらえました。技術の先生は社外のほうが多かったです。

人生の先輩も多くいました。いろんな考え方、働き方、キャリアの築き方を見せてもらいました。フリーランスになってからは仕事を紹介してもらうこともありました。

その時の人脈は今でも私を支えてくれています。エンジニアの仕事を進めていくうえで、頼りになる人というのは社内だけではなく社外にもいます。時には外に目を向け、手を伸ばしてみてください。新しい道が開けることもあります。(つづく)


著者プロフィール

加山恵美
フリーランスライター。茨城大学理学部卒。金融機関の子会社でシステムエンジニアを経験した後にIT系のライターとして独立。エンジニア視点で記事を提供していきたい。
Twitter@emiekayama
site:http://emiekayama.net

「すべてうまくいく」バックナンバーはこちらから



paizaは、技術を追い続けることが仕事につながり、スキルのある人がきちんと評価される場を作ることで、日本のITエンジニアの地位向上を目指したいと考えています。

paiza転職」は、自分のプログラミング力が他社で通用するか(こっそり)腕試しができる、IT/Webエンジニアのための転職サービスです。プログラミングスキルチェック(コーディングのテスト)を受けて、スコアが一定基準を超えれば、書類選考なしで複数の会社へ応募ができます。
paiza.jp
まずはスキルチェックだけ、という使い方もできます。すぐには転職を考えていない方でも、自分のプログラミングスキルを客観的に知ることができますので、興味がある方はぜひ一度ご覧ください。
paiza.jp

ITプログラマ・エンジニア向け転職・就活・学習サービスのpaiza


プログラミング入門講座|paizaラーニング

PHP入門編Ruby入門編Python入門編Java入門編JavaScript入門編C言語入門編C#入門編アルゴリズム入門編