「エンジニアとして食っていく方法」に参加しました

techplay.jp

本日はこちらに参加しました。
「エンジニアとして食っていく方法」!!
とても刺激になるイベントでした

内容はこんな感じです。

  • 活躍するエンジニアの条件 (及川卓也さん)
  • 美容師からエンジニアへの転身 (許直人さん)
  • TECH PLAY Academyのご紹介 (片岡秀夫さん)
  • パネルディスカッション

f:id:chibi929:20181101004922j:plain

活躍するエンジニアの条件 (及川卓也さん)

【小学校プログラミング教育必修化に向けて】

プログラミングの授業があるわけではないらしい。
scratch とか普通にやるんだと思ってたー。

各授業の中でプログラミング的思考を学ぶとのこと。

【code.org】  

米国ではこんなことをやっている組織がある。
code.org は小中学生向けプログラミングを支援している。

プログラミングを学ぶことにより格差社会に負けなくなる。
貧困の連鎖を止めることができる。
それは、明らかにリターンがあり収入があるためである。

米国だとソフトウェアエンジニアが各種業種の中でトップクラス。
バリューを生み出すことができ、価値のある仕事をしているため。

【事業について】

人間がやっていたことをコンピューターにやらせることで「省力化・コスト削減・効率化を行なっていた事業」から、「技術がないと生み出せない事業」へ。

Amazon も技術を駆使して強くなった。

【DevOps】

これは、もう結構前からだが、
開発と運用を別々にやるのは効率が悪い。
だから DevOps

開発者は運用も行うことでユーザーから直接フィードバックを得て開発に生かすことができる。
作り上げたら終わりではない。リリースしてからが本番だ。

【エンジニアとしての成長】

知識を身に付け、技能に発展させる。
「知っている」から「使える」へ。
「使える」から「使いこなせる」へ。

学習→知識→経験 のループを行う。
経験して、より深く学習し、より深い知識を身に付ける。
それをまた経験として活かす。

大事なのは、経験そのものではなく知識とそこから昇華された技能!

美容師からエンジニアへの転身 (許直人さん)

プログラミングで貧困を脱出したトップスタイリストの方。 稼ぐためにプログラマに転身。

  • 1社目
    • 独学で色々出来たけど、美容師という肩書きで落とされる
    • 実際に動くものを見せ、コードを見せるようになった
  • 2社目
    • 1社目での実績があるので転職しやすくなったとのこと
    • 先輩プログラマから学ぶ
    • オープンソースを読みまくった
      • 人のコードを読むのが好きになった
  • 3社目
    • 1人ではプロダクトとして成立しないことがわかった
    • 空いてる時間はとにかく勉強しまくった
  • その他多々
    • 上流工程への興味
    • とにかく勉強
    • エンジニアを土台としてビジネスを
  • ポイント
    • スキルと収入は相関する
      • 稼ぐ仕事: 70%
      • 学ぶ仕事: 20%
    • 仕事の一部を技術への投資にする -自分の市場価値を定期的にチェック
      • エージェントに話を聞く
      • 自らを競争に晒す
        • 勉強会に出るなどでも外部の人たちと比べることができる
    • 自分の置かれた環境を憂うよりも自分が変わった方が早い
      • 環境が良くないなら行動を起こせ
        • 提案、転職など
      • 学びたい技術、欲しい技術は取りに行く
    • 好きこそものの上手なれ
      • 目先の年収はわからないけどスキルと一緒についてくる

TECH PLAY Academyのご紹介 (片岡秀夫さん)

  • エンジニアは圧倒的人材不足
  • 2030年にはもっと人材不足
  • TECH PLAY Academy
    • プログラミングブートキャンプを提供
    • 完全オンラインでリモートで参加
    • 仕事をしながら学ぶ
    • 毎週20時間×16週
    • シニアエンジニアメンターがサポート
    • エンジニア転職支援の豊富な実績から年収100万アップを目指す
    • コミュニティ・仲間づくりとして活用可能
      • あの人は頑張っているという刺激が大事
    • アウトプットを出していく
  • 学習スケジュール
    • 1ヶ月目:基礎学習・課題挑戦
    • 2ヶ月目:1週間に1本ずつミニアプリ作成
    • 3,4ヶ月目:アプリ作成

パネルディスカッション

ウェブエンジニアの魅力について

  • 知らないといけない分野がたくさん散らばっているのが良い
    • ドメイン、サーバー、クラウド、セキュリティ・・・
      • 知識の幅が広がる
      • イヤでも幅が広くなる
  • 導入コストがかからない
  • スマホアプリ
    • スマホだけで完結しちゃうので世界が閉じてしまう可能性がある
    • 個人的にもスマホアプリからウェブアプリの世界を経験したのは大きいと思っている
      • 何より Front・Back・Cloud・API 色々触ることができた
  • IoT はハードルが高い
    • ハードウェアも用意しないといけないし。。。
    • それに比べてウェブアプリはハードルが低いのにビジネスにもなる
  • ウェブの技術がスマホに展開できる
  • JavaScript の進化がヤバイ
  • 世界的に新しいものを作るときは Go か JavaScript

学習の動機付け

  • 内的要因
    • 自ら進んでやること
  • 外的要因
    • 収入を得るため
    • 自ら宣言して外的要因を作る
  • 成長を止めたら死ぬ
    • 暇な環境が続いたら死ぬ
    • 無駄な時間をなくす
    • 危機感を感じろ
    • とにかくやらなきゃっていう気持ち
    • 行動を起こせ
  • 自分を追い込む
    • 苦労する状況じゃないと勉強しないから飛び込んだ
    • やらざるおえない状況を作る
    • 常に課題だと思っているところをやる
      • 課題なら解決すればストレスもなくなる
    • わからないことをやるから成長する
  • コミットメントをする (宣言することで追い込む)
    • これやります
    • 勉強会にいきます
    • LT やります
    • とにかく先に宣言する
    • 受け身になって聞いているのはダメ
      • 質問をする気になって聞け

三日坊主にならないために

  • やるぞ!と思ったときがピーク
  • とにかく決意したらすぐに行動を起こす・すぐに自分の環境を変える
  • 周りの状況によって諦めない
    • 「○○だから出来ない」とかは甘え
      • 個人的にも「時間がないから出来ない」とかは甘えだと思っている

まとめ

とにかくすぐに行動を起こして書けたかな・・・。
もっと楽しくやるぞー。

LINE ハッカソンメモ

linedev.connpass.com

9/22(土)~9/23(日)
LINE BOOT AWARDS 2018 ハッカソン 東京 vol.02

API のインプットタイムで「1人15枚は付箋にメモする」ということで、
せっかくメモしたので、付箋を捨てる前にブログにもメモ


LINE

  • Closing the distance
    • LINE のミッション
  • Bot
    • Messaging API
  • Pay
    • LINE Pay
  • CEK
    • Clova Extensions Kit
  • LIFF
    • なんか Web も使える LINE
  • スタンプ
  • 位置情報
  • リッチUI
  • IoT
  • Beacon

Twilio

  • Twilio Studio
  • Qiita - @mobilebiz
  • TEL, SMS が出来る
  • Twilio Functions
    • heroku?server?Node-RED?イラネ
    • 1万リクエストまで無料 (以降、$0.0001/1リクエスト)
  • Channels - LINE
    • テキストや画像なら遅れるぜ
    • BOT SDK?イラネ

メタデータ

  • 男女判定/営業時間抽出API (旧 5W1H API): 5W1Hメタデータ自動抽出APIの機能向上版
    • 人名による男女判定も行える。(平成元年~平成15年)
    • また、時刻表現について、営業時間、ラストオーダー等も認識可能
  • 感情解析API: 日本語のテキストの感情を以下の3軸を7段階評価
    • 「好ましい‐嫌い」
    • 「嬉しい‐悲しい」
    • 「怒り‐悲しみ」
  • 願望検索API: ソーシャル投稿の中から人々のしたいことを検索
  • 意味カテゴリAPI: テキスト中の内容後の意味カテゴリを出力
  • 連想語関連語API: 入力単語と類似の単語または連想される単語を上位10語出力
  • この猫なに猫API: 猫写真を読み取り、猫種を教えてくれる
  • 猫発見器: 顔認識の猫版

IBM

  • デベロッパーズ・ラウンジ
    • 色んなサンプルが載ってるっぽい
  • Watson Assistant (旧 Watson Conversation)
    • 会話をビジュアルプログラミングで繋げられるはず(Storyline みたいな)
  • Watson Studio

駅すぱあと

  • 駅データ
    • 位置情報や距離とかが取れる
  • 経路検索
  • 駅すぱあと Web API

Obniz

  • スマスピ: オンライン
  • ハード: オフライン
  • Obniz: ネットにつながるハードウェア
    • メッチャ簡単!

Infineon

  • センサー系
  • CO2 センサとかもある
  • ポジションセンサ
  • 気圧センサを提供
    • 気圧は高度に変換できる
    • +5cm で -0.6 hPa

スマートスピーカーを遊びたおす会に参加

kotodama.connpass.com

こちらに参加
#スマートスピーカーを遊びたおす会

前回の様子はこちら。
http://chibi929.hatenablog.com/entry/2018/04/17/093935

Storyline の Real (by もっちゃんさん)

もっちゃんさん、デュエリストと勘違いされる。

Storyline とは、ノンコーディングで Alexa スキルを開発できるもの。
Google アカウントがあれば利用可能とのこと。
WebAPI も叩けるとのこと。

以前、お聞きした話では、
Storyline は融通が効かない。などと聞いていたが、
どうやら日本語版の Storyline には制約が多いらしい。
本当の姿(英語版)の Storyline を使うことがオススメとのこと。

Storyline を英語版で作り、Alexa Skills Kit 上にデプロイ。
Alexa Skills Kit 上では日本語対応にして後から日本語化すれば良い。
(デプロイし直しとかしたらまた英語に戻っちゃうのかな?先に設計ちゃんとしないとダメかな?)

英語版だと「はい」「いいえ」の状態管理ができる。
(状態管理ってどうやってやるんだろう?)

Storyline で出来ることは、Dialogflow でもできる!?
(移行というか、設計書変わりになるということかな?)

Amazon Echo で Duel する (by show さん)

真のデュエリスト登場。

Amazon Alexa 経由で Lambda を叩き、
AWS IoT Shadow を使ってラズパイへ。
HDMI モニタに表示と。

AWS IoT は、少しかじったことしか無いが、Greengrass を使うものだと思っていた。
Greengrass Core をラズパイにインストールして MQTT でなんやかんや。

お話を聞いてみると「本来であればその形が正しいと思われる」とのこと。
今回はデバイスシャドウしか使わずになんやかんやしたとのこと。
(AWS IoT ってそういう使い方もできるんだ!)

ちなみに状態管理は sessionAttribute とのこと。
また、誤認識を防ぐための Slot が増えるのが悩み。
「俺のターン!」→「俺のアマゾン」と認識。
何故!

世界初!Google Assitant 搭載 ○○○ (by みそさん)

その正体は「Google Assistant 搭載のバナナパンツ」

「OK, バナナ、バナナむいて」
まさかのウェイクワードを変えてきてる。。。
パーリーモードで、光るバナナパンツ。

  • ハードウェア
    • バナナパンツ: 1382円
    • ラズパイ Zero W: 1296円
    • スピーカー (Speaker pHAT)
    • マイク (USB)
    • その他ケーブル類
  • ソフトウェア
    • Snowboy
      • 好きなウェイクワードを登録して使えるサービス
    • Google Assistant SDK

Snowboy を使う理由としては、
正確にいうと Google Assistant Library ではウェイクワードが使えるが、
Google Assistant Service だとウェイクワードが使えないため利用したのだとか。
(Library でウェイクワード変更はできるのかしら?)

性能評価としては、
スピーカー: バナナパンツとしては十分
動作: 所詮はバナナパンツ
ピカチュウトーク: バナナパンツからは使えない

バナナパンツは、新しいウェアラブル音声アシスタント

(ハードウェアを使いこなすみそさんが羨ましい・・・)
(どうもハードウェアは苦手だ・・・頑張ろう・・・)

初心者向け!ゆるふわGoogle Home + Azure(by ちょまどさん)

まずは、有名どころのスマスピ一覧から。
そして、超β版だけど Windows 10 のコルタナさんを Alexa に変えられる!?

Webhook の先を Azure Functions で作る。
通常 Google Assistant は Cloud Functions for Firebase
Amazon Alexa は Lambda で作る。

ざっと仕組みを説明して、まっちょまどボイスのデモ。
デュエルと同じ状況で「まっちょまどボイス」が認識してくれない。

もう1個、ちょまど天気予報のデモ。
https://openweathermap.org というお天気 API を使って、
東京のお天気を取得しているとのこと。

スポンサーLT

(by IIJ さん)

車にスマスピを搭載したお話。

(by サイバードさん)

スマスピ x ゲームはブルーオーシャン

懇親会 LT

会社の受付システムをスマートスピーカーで運用してみた知見 (by がおまるさん)

  • 導入が簡単
  • 内戦の取り次ぎミスが減る
  • Teams や Slack の連携が簡単
  • 先進的な取り組みっぽく見せられる
  • お客様にはまだハードルが高め
    • 使い方が分からない
    • 恥ずかしい
    • など

Alexaニューススキル実録!こどもじゃんけんぽん事件 (by 西園さん)

フラッシュブリーフィングスキルにはニュースや占いがあるのに「じゃんけんぽん」がない!

フラッシュニュースの仕様としては、

  • MP3 再生
  • RSS 読み上げ
  • JSON コンテンツ

があるらしいです。

じゃんけんスキル作って出してみたら大人向けのスキルじゃない!子供向けじゃん?
と言われリジェクト。大人だってじゃんけんしたいのに!

でも大人なので、リジェクト内容にしっかりと応えて、
こども向けスキルにして出した。

そしたらなんと、公式から大人向けのじゃんけんスキルが登場。

今ストアには、
「子供向けじゃんけん」スキルと「大人向けじゃんけん」スキルがある。
内容は恐らく一緒。
しかもイラストまで似ちゃった(笑)

その他

配信動画

VUI の未来

smarthacks.connpass.com

今回はこちらに参加


オープニング・VUIの市場感 (SmartHacks 山本さん)

  • スマスピ用にアプリを作ってもスマホで使う人が圧倒的に多い現実・・・
  • Google Home よりも Amazon Alexa の方が利用されている。
  • Hey Siri は中々使わなかったけど、一度音声入力に慣れると VUI を色々なところで使うようになる

まとめ

開発して感じたVUIとGUIの未来 (MAMORIO 松本さん)

  • なくすをなくす
    • 最近半額だったような?
    • MAMORIO は 5プラットフォーム(FB Messenger/LINE/Google Home/Alexa/Web Chat)で利用可能
  • 受付システムを Slack からスマスピで喋らす方式へ変更
    • Slack は気付かない場合がある
    • 音なら気付く
  • VUI でしか出来ないものは無い!?
    • GUI より VUI の方が便利な場合はある!
  • VUI が便利な場合の共通点
    • 単目的である(今日の予定など): VUI
      • アラームをかけたい
      • 家電を操作したい
      • 持ち物を確認したい
      • 音楽を聴きたい
      • 今日の予定を知りたい
    • 多目的である(今月の予定など): GUI
      • SNS を確認したい
      • 今月の予定を確認したい
      • メールを確認したい
      • 新聞を読みたい

まとめ

  • 開発して感じた VUI の近い未来 == 単目的のタスクは全て VUI に置き換えられる

スマートスピーカーのアプリ・スキルを作ってみた(仮) 〜エンジニア編&デザイナー編〜 (オプト 久保田さん・平岩さん)

VUI は何故こんなにも魅力的なのか (久保田さん)

  • ジェシー・ジェームズ・ギャレットの UX 五階層モデル
  • 2つのメンタルモデル
    • システムモデル
    • インタラクションモデル
  • キャズム
  • スマスピで何をしているか?
    • デフォルトで出来ること
    • ゲーム・トリビア

Alexa スキルを作ってみた (平岩さん)

  • サンプルから変更したところ(サンプルから変更してくれているのでわかりやすい!)
    • スキル起動時に待機状態になるように変更
    • アドテク用語に反応するスロットを追加
    • Intent を2つにした
      • アドテク用語を説明する Intent
      • アドテク用語をランダムに説明する Intent
まとめ
  • 作ってみた感想
    • シンプルなスキルを動かすまではめっちゃ簡単
    • 色々やろうとするとデバッグしんどい

音声要素技術が利用されているデバイス・サービスのVUIとその取組 (ニュアンス・コミュニケーション・ジャパン 近井さん)

  • 声紋認証は日々学習していくので風邪をひいても大丈夫
    • でも何故かアルコールによる声変わりはダメらしい

LINEが描くVoice UIがある世界 & Clova×IFTTT連携ライブデモ (LINE 立花さん)

  • 登壇中の説明で Clova が動きまくる!
  • LINE のミッション
    • 世界中の人と人、人と情報・サービスとの距離を縮めること
  • IFTTT デモ
    • This: Todoist
    • That: Clova
  • Bot Awards2(仮) が準備中!

まとめ

  • LINE: SMART PORTAL
  • AI: バーチャルアシスタント
  • 日常に溶け込んで人々をサポート
  • IFTTTを使えば今日からあなたのバーチャルアシスタント
おまけ
  • Mash & Room のミッション
    • 一億総キノコ

Google Home で遊ぼう

kotodama.connpass.com

久々に勉強会に参加。
記事を書くことをサボっているのでちゃんと書こうかなと。


Google Homeでつくるスマートホーム (田中みそさん)

  • スマートホーム構成
    • Firebase を起点にラズパイ等で各種制御
      • Firebase へは IFTTT の Webhook
      • もしくは、Firebase Hosting
  • Google Home で何かやるには主に 2 通り
    • IFTTT を使う
    • Google Assistant アプリを作る
  • Firebase -> ラズパイ
    • Firebase への書き込みをラズパイ上の Node.js で監視
    • 家のポートを開ける必要がないので安全
    • ラズパイまで来ちゃえばなんでも出来るぜ!
  • 朝起きたらテレビがついてた
    • マイアクティビティを確認するとちゃんと発言している
    • 寝言に注意
  • ラズパイ -> 家電

まとめ

  • 独自音声コマンドを作るにはとりあえず IFTTT
  • 自宅サーバ (ラズパイ等) で正業を行うにはインターネットからローカルへのトンネリングが必要
  • ラズパイまで辿り着けば大体いなんでもできる

Google Home 用のお遊びアプリを Microsoft Azure 使って作ってみた (ちょまどさん)

  • ちょまどさん PC がお亡くなりに。。。

太田さん

ちょまどさん

  • まっちょまど の実演は懇親会にて!

まとめ

Actions on Googleでできること (山口能迪さん)

  • Google アシスタント
  • 拡張については一部限定公開もある
  • 一般公開は IFTTT / AoG
  • 拡張の流れとても見やすい
  • AoG の特徴
    • 呼び出すデバイス本体へのインストールは不要
    • 音声認識音声合成Google Assistant が担当
    • RPC 形式で JSON over HTTP での通信
    • Dialogflow などを利用することで会話を GUI で作成可能
    • 開発版は非公開のまま稼働し続けられる
      • 前は1週間くらいしか稼働してなかった気がするが・・・
      • 最近は1ヵ月かどうしているとの噂
      • 今はもっと稼働し続けられるのか?
    • 16 ロケールに対応
  • SSML でもっとレスポンスを拡張することができる

Dialogflow tips (fishさん)

  • Dialogflow のすごいところ
    • コードを書かずに自然言語処理が実装できる
    • 対応言語が豊富
    • あらゆるチャットボットサービスに対応
    • SDK が豊富
    • アナリティクス機能(設定不要)
  • できること
    • 会話分析や静的な処理
      • 発言からユーザーが何をしたいのかを分析
        • 挨拶をしたいのか
        • 航空券を検索したいのか
        • 音楽を聴きたいのか
      • ユーザーの発言にどんなパラメータが入っているかを分析
        • 身長、体重、日時、通貨...
      • BOT に必須パラメータがあれば発言するまで聞き返す
        • BMI を計算する場合、身長と体重が揃うまで聞き返す
      • 答えが決まってる会話
        • 「こんにちは」と言われたら「こんにちは」と返す
  • できないこと
    • 動的な処理
      • BMI の計算
      • 航空券の検索や予約
  • Dialogflow を使うと Slack や LINE の BOT としても使える
  • GCP プロジェクト数の上限に注意
    • AoG プロジェクトの新規作成 = GCP プロジェクトの新規作成
    • AoG プロジェクトの削除 = GCP プロジェクトの削除
    • Dialogflow プロジェクトの新規作成 = GCP プロジェクトの新規作成
    • Dialogflow プロジェクトの削除 != GCP プロジェクトの削除

まとめ

  • Dialogflow 便利!!

MAとチビキノコ

ハッカソンに参加するようになってこんなものも作れるようになった!〜

この記事について

この記事は MashupAwards Advend Calender 2017 の 9日目の記事です。
qiita.com

はじめに

ちびキノコとは

ちび × マッシュ&ルーム

ちび

「ちび」とは、ネコの名前であり、
私のハンドルネームやアカウントです。

chibi はほとんど取れないので chibi929 が主です。
chibi929 も取れない場合があるんですけどね。。。

マッシュ&ルーム

http://mashandroom.org
想像せよ!頭にキノコが生えるまで
一億総キノコ

つまり

f:id:chibi929:20171208125953p:plain

キノコに耳と手とヒゲを生やしてネコ化です。

MA とちびキノコ

初参戦は 2016 年の MIZUHO.HACK

この時は、
ペッパー触れない!サーバーサイド触れない!クラウド触れない!IoTできない!
何も出来ません。Android アプリがメインです!
そんな感じです。

その後

  • NTTドコモ×TBS TV HACK DAY
  • 特大ペッパソン2016
  • ペッパソン2017東の陣

と参加し、
気付けば、初めて触ったクラウドAWS ではなく Bluemix という。
Watson 君楽しい!

そして、こんなものも作れるようになった!

Youtube

www.youtube.com
www.youtube.com

Qiita

qiita.com

ちなみにドラゴンボールシリーズ

負債と共には生きたくない

speee.connpass.com

これに参加しました!!

すごく勉強になる良いイベントでした。

執筆が遅くなりましたが、引っ越し後まだインターネットが繋がっていないんです。

という言い訳です。


負債とは

  • 読むのが辛い/時間がかかる
  • 修正するのが辛い/危ない

過去の自分を含めて全てを疑え

こんな時は負債を背負っているはず

  • そんな複雑なわけがない
  • 1分以上読んでもわからないわけがない
  • 一連の処理で行ったり来たり繰り替えすわけがない

負債返済の下準備のタイミング

  • 調査やリファクタをしたとき
    • コードを読み解きながら感じたこと疑問に思ったことはそのままコメントにしろ
    • WikiやConfに書くのではなくソースコードに書け
      • 常に目に入るところに書くという意味
  • 変更を入れるとき

負債の種類を見極める

  • 負債の払い戻し: 返済するべき負債
  • 負債の転換: ベストではないけどベターに返済
  • 利息のみ支払う: コードと共に生きる

なぜ負債を返済する必要があるのか、返済することで何が変わるのか

まとめ

負債があるのは何故か??

  • 時間的な制約、実装者の技術力の限界。など色々ある。
  • ポジティブに考えると「自分たちの技術力が高いので負債と感じる」
  • 「負債vs人」ではなく「負債vsチーム」とする

負債は少しずつ日々返済していくもの

  • 貯まってしまった負債は現実世界同様、すぐに返すことはできない。
  • 負債を返済する時間がないなら不吉な匂いのするコードにコメントを入れる。
  • コメントを入れる仲間(連帯保証人)を増やす

文化を作ろう

  • 「低品質のコードを書くのが悪い」のではなく「低品質のコードをマージする文化が悪い」
  • 技術的負債を混入しない環境・文化作りが大事。
  • 自分がメンテできないコードは Approve するな!

実装よりもリファクタが大変

  • 技術的負債を返済するときは、とにかく幅広い知識が必要。
  • 遅くなれば遅くなるほど、依存関係が増えるため依存モジュールへの知識も必要であり、
  • 後でリファクタしようとすると死ぬことになる。