背景 仕事をしているとき、業務に関係ない情報を閲覧していることって誰でもありますよね? そんなときに背後にボスが忍び寄っていると気まずい思いをします。もちろん急いで画面を切り替えれば良いのですが、そういう動作は逆に怪しまれることになりますし、集中しているときは気がつかないこともあります。そこで怪しまれずに画面を切り替えるために、ボスが近づいてきたことを自動的に認識して画面を隠すシステムを作ってみました。 具体的にはKerasを用いてボスの顔を機械学習し、カメラを用いて近づいてきたことを認識して画面を切り替えています。 ミッション ミッションはボスが近づいてきたら自動的に画面を切り替えることです。 状況は以下のような感じです。 ボスの席から私の席まではだいたい6,7mくらいです。ボスが席をたってから、4,5秒で私の席に到達します。したがって、この間に画面を隠す必要があるわけです。時間的余裕は
弊社では、案件とは関係のないプロジェクトでも業務時間中にみんなにコードレビューを依頼できる時間が確保されています(参加は任意)。案件のコードレビューを依頼したり、ちょっとした個人の制作物を見てらったりと使い方は色々です。 先日、TypeScriptの練習にQiitaのAPIを叩いていて記事を表示するブログウィジェットを作成しました。このウィジェットのレビューを依頼したところ、クラスの設計について具体的な指摘と、それに対する改善を経験できたのでこの記事に記載します。 今回作ったQiitaWidgetの要件 Qiitaの公式APIV2から記事とユーザー情報を取得し、HTMLテンプレートに表示する 投稿の合計いいね数を算出するために、あるユーザーの投稿を全件取得する (このために複数回リクエストの送信とレスポンスデータの結合を行う) パラメータによってユーザー、いいね数によるソート、表示件数、ラ
はじめに Amazon Echo + Nature Remoで照明やテレビなどの家電を操作できるようにしました。スマートスピーカーやスマートリモコンは発展途上のため、まだ呼び出し方法にクセがありますが、試行錯誤の上でいい感じに操作できるようになりました。そこで、考え方ややり方を情報共有します。 ここではスマートリモコンとしてNature Remoを使っていますが、他のスマートリモコンでも応用できそうです。スマートスピーカーが成熟するとこのような工夫は不要になるでしょうが、逆にハックする楽しみを味わえるのは今ならではです。 最終的に、Node-RED Alexa Home Skill Bridgeという仕組みを使いました。詳しくは後述します。 操作する家電 リモコン操作のシーリングライト (On/Off, 明暗操作可) テレビ (Bravia) PlayStation4 (torne) 用意
プログラマあるあるだけど友人からホームページ作ってよ!と言われることがある。 大体は適当な理由をつけて断るけど、1日程度で作る方法を模索してみた。 テンプレートをダウンロード 1から書いてる暇はないので適当なテンプレートを使います。今回はHTML5 UP!を使います。 HTML5 UP!のLicense 控え目でもCreditsをサイトに乗せれば無料で使用可能です。 以下はサンプル テーマはDirectiveを使用します。 フォームが付いててマークアップはそのままで使えそうですね。 開発環境 テーマがダウンロードできたら開発環境を準備します。 サーバーサイドは書きません。 Cloud9が便利そうだったので登録してワークスペースを作ります。Cloud9のワークスペースは一つなら非公開でも利用可能です。 以下のようにプロジェクトの情報を指定します。 ライブプレビュー準備 生成されたプロジェクト
この投稿は Increments Advent Calendar 2017 の18日の記事です。去年に続き、2017年の Qiita の CSS 構成について述べます。 2016年版はこちら: QiitaのCSS構成2016 プリプロセッサー 2016年は CSS のビルドフローで一貫して PostCSS を使っていましたが、2017年では プリプロセッサーとして Sass (node-sass) を使っています。 プリプロセッサーとして PostCSS を使わなくなった最大の理由は @apply ルールが仕様から落ちた ことです。@apply は Sass でいう引数なしの mixin みたいなもので、Chrome の Canary では実装されていた時期がありましたが、消えてしまいました。 おそらく CSS Nesting Module や CSS Extend Rule も落ちると思
使用したモノ Unity 5.5.0p3 https://unity3d.com/jp/unity/qa/patch-releases?version=5.5 HTC Vive https://www.vive.com/jp/product/ MMD4Mecanim(Traffic Jam様の使用手順まとめ→) http://milk0824.hatenadiary.jp/entry/2016/06/06/224831 キズナアイちゃん(MMDモデル) http://kizunaai.com/download.html FinalIK(VRIK) https://www.assetstore.unity3d.com/jp/?#!/content/14290 ・・うーん、この時点で結構準備が大変ですね; 今回、初めてQiitaの記事を書かせて頂きます、はるねずみと申しますm(_ _)m 企画
画像: N高等学校課外授業(N予備校)での生放送授業のブラウザ上での見た目、コメントが書ける 目次 はじめに 教えることになったきっかけ Web企業にエンジニアとして就職できるようになる、というミッション 既存のWeb教材に感じた問題意識 「各自進められるゲームブック形式の教材」と「徹底的にフォローする生放送授業」 コンセプトをもとに構成されたコースと内容 ゼロからプログラミングができるようになった人が生まれた日 永劫、プログラミングは一部の天才たちのためのものか? プログラミング学習のモチベーションの課題と対応 まじめなオタクたちが社会をよくしようと頑張ること さいごに はじめに 自分はこの8ヶ月間、Web上で非対面のプログラミング教育、具体的にはHTML教材と生放送授業を中心としたプログラミング教育をN高等学校の生徒に行ってきました。 ここに書かれている内容は、これからプログラミング教
スマートフォン向けゲーム開発のエイチーム(東証1部)は12月22日、プログラマー向け技術情報共有サービス「Qiita」などを運営するIncrements(東京都渋谷区)を子会社化すると発表した。 代表取締役の海野弘成氏らからQiita株式の100%を25日付で取得する。取得額は約14億5300万円。 エイチームはスマホゲームや引っ越し比較・予約サイト「引っ越し侍」などを手がける。中長期の成長を視野に、自社で参入が難しい事業のM&Aを積極化する方針。Incrementsの買収で新しい事業展開を加速できると判断し、買収を決めた。 Incrementsは2012年創業。Qiitaを運営するほか、チーム内情報共有ツール「Qiita-Team」を開発している。2016年12月期の売上高は8995万円、最終損益は8022万円の赤字。 関連記事 ドワンゴ、川上量生氏が会長を退任 ドワンゴ創業者の川上量生
注意。実装はまだないです。思考実験的な意味合いが強いです。 持論 Reactやredux/Rxのデータモデリング手法の発達で、ツリー構造の末端に渡すまでのデータモデリングが主戦場になりつつあります。これはロジックを注入する部分と、プレゼンテーショナルなものが明確に分離されてきたことを意味します。 僕は個人的に、 GUI にまつわるものは、本来GUIで設計したい、という気持ちがあります。そう、僕が作りたいと思っているのは、悪名高きホームページビルダーです。 とはいえ、プログラミング抜きでxxxできる!というものではありません。むしろプログラミングとGUIを横断するイメージで、Unity や UnrealEngine のような開発環境を想定しています。 今やりたい理由 ブラウザの仕様が安定してきた 色々と使えるパーツが増えた JS で複雑なツールを作れるようになり、インブラウザな開発ツールが作
はじめに どうも@toRisouPと申します。ドワンゴにてニコニコ生放送(新配信)の開発を行っています。 皆さんはニコニコ生放送、利用されてますでしょうか? 自分はたまに生放送を行っています! 自分が配信する放送のうち8割はゲーム配信なのですが、残り2割は思いついた技術ネタを作ってみて生放送で実演するという内容になっています。 今回は自分の過去のネタの中から1つピックアップして紹介したいと思います。 ゆかりごっこ 「ゆかりごっこ」は過去に自分が行った生放送の中で一番好きなネタです。 成人男性の9割は美少女になりたいという願望があるはずです。 その願いを叶えるために、VRで結月ゆかりさんになれるアプリを作り、それを実際に使って行った生放送が「ゆかりごっこ」です。 具体的にどのような生放送を行ったかは以下のアーカイブをご覧頂けるとよいかと思います。 ゆかりごっこ1 ゆかりごっこ2 ゆかりごっこ
なぜかミクシィ社でエンジニアだった人々がアドベントカレンダーを書くことになってしまったex-mixi Advent Calendar 2017、12月11日担当の @tnj です。 一般的に、会社を退職することになったら退職届というものを会社に提出することになります。その退職理由には「一身上の都合」と書くのが通例だと思いますが、私はちょっと変わった退職の経緯を持っているので、今回はそれについて共有してみたいと思います。思いのほか長くなってしまいましたが、社会人歴10年目のソフトウェアエンジニアのキャリアの変遷の一例としてお楽しみください。 TL;DR Android開発者としての自分の経験を基に新規事業を立ち上げることになり、エンジニアとして参画したつもりが気がつくと事業責任者になり、果ては事業を買い取って経営者になった 好きでやってる話だしまあなんだかんだ乗り越えていけるよねと思ってたら
はじめに 長々と書いていますが、VUIのキモはたった一つと言っても過言じゃありません。 エラーハンドリングです。 エラーの対応ができていないと全てが台無しです。 筆記とは違い、老若何女問わず毎日会話していますから、会話だけは人間誰でもプロなんです。 話の通じない人と話すのは誰もが嫌がります。 普通に指示して、「わかりませんでした」と、これほど失礼なことはありません。 せめて、「分かんなかったけれど、こう言ってもらえればわかる」を示して挽回するのです。 エラーハンドリングをして、次に何を言って欲しいかきちんと言えば大半のタスクが完了できます。 あ。二つだった。 VUIとは Voice User Interface、声で操作するインターフェイスです。 今ご覧になっているGraphic UIや、エンジニアの利用するCommand UI、チャットボットのConversational UIとは異なり
Introduction Webエンジニアであれば、「自分達の手で0から作ったプロダクトで世の中を変えられたらな、それで食べてけたらなー」と夢見ることがあるのではないでしょうか。 私たちは、夫婦2人で、プライベートの時間でアプリ開発と運営をしています。その過程でぶつかった壁がとてもたくさんありました。 全てのプロダクトで当てはまることではなく、あくまでも特定のケースなのでなかなか一般的な手法として展開しずらい事例が多いですが、これらの困った体験が何かのお役に立てればと思い書きました。 実際に起こったこともあれば、起こってはないが、経験から推測するとこのケースはこう対処すればいいのかもしれないと思ったこと、の両者を記載しています。本やブログなどで得た知識をそのまま紹介するというよりは、実体験に基づいた内容になっています。 人が集まるまで 作る時間が無い 困った たくさん機能開発したいが、普段
テストがなかった無法地帯のプロジェクトに自動テストを導入して、開発速度を1.7倍にした話をします。 自動テストがなぜないのか 自動テストのないプロジェクトには、そうなる理由が必ず存在します。よくみる理由は、「時間がないから1」「テストの書き方がわからないから」「無理やりテストを書いたつらい経験があったから2」といったものです。今回のプロジェクトの場合は、以下の2点でした: 自動テストの書き方がわからないから レビューがテスト代わりだったから まず、チーム編成が変わって私ともう一人がチームに加わるまで、実装者の中に自動テストの経験者はいませんでした。このような状況では、自動テストは困難になります。なぜなら、何をどうやってどこまでテストするかを決めるには、多少の慣れが必要だからです。この慣れがないと、何をしたらいいかわからないという状態に陥りがちで、結果として自動テストが後回しにされてしまいま
はじめに 僕はウェブサイト制作会社でサイトの運用・アクセス解析担当をしている者です。 ウェブサイトの制作・リニューアルを受注した際にプロジェクトに参加し、クライアントの現状サイトのアクセス解析とレポート作成、リニューアル提案が主な仕事です。 クライアントと直接相対するディレクターから「GoogleAnalyticsの権限もらったからアクセス解析して」とオーダーを受け、アクセス解析を行うことになります。 そもそも、初めて見るサイトを構造から理解し、リニューアルに資する提案ができるようなインサイトを得るまで分析するのは本当に骨が折れます。 さらに(全くの主観ですが)、多くのクライアントはGoogleAnalyticsを「タグ貼っただけ」状態で放置しています。 そのため、計測したデータが整理されていない・そもそも正しく計測できていないということはよく起こります。 そして、そのような計測エラーがノ
ちまたで阿部寛のサイトが早いと話題になってます。 dev.toと阿部寛のホームページどっちが速いですか? dev.toと阿部寛のホームページについてちゃんと計測させてくれ 阿部寛のサイトはベストを尽くしてるのか? それを調べるために、阿部寛のサイトを高速化させてみたいと思います。 目指すべきスピード 最速はローカルのファイルへのアクセスだと思うのでこれを目指したいと思います。 file:///C:/abe_hiroshi/index.html ChromeのDeveloper Toolでレンダリング完了が「173ms」でした。 まぁここまでは無理だな… 阿部寛のサイトはどんなもん? 速度はwebpagetest.orgで測ってみます。 レンダリング完了時間は「359ms」です。はえーな S3でホスティングしてみる サーバーを立てるほどでもないので、S3でWebホスティングしてそこにhtml
Twitter見てたら、以下のツイートを見た。 数時間後、dev.toと阿部寛のホームページどっちが速いですか?というブログがTLに現れた。 GoogleのPageSpeed Insightsで測って阿部寛のホームページの方が早かったという結論付けてよいのかという疑問が浮かび、webpagetest.orgで計測することにした。 設定 阿部寛のホームページに関しては、Tokyoリージョンにあるものとする。 そして、dev.toはNY発らしいので、サーバーの設定をNYにして測定する。 The platform was created in 2016. The twitter account, @ThePraticalWeb 評価結果 Webpagetest - 阿部寛のホームページ Webpagetest - dev.to
みなさまへのお願いごと 間違いなどの指摘は、編集リクエストでお願いします。 コメントの記載はページが長いこともあり、お控えください。 TOEIC900でも英語が話せない日本人へ ITエンジニアの私がなぜ令和の今、中国語を学ぶのか? 名詞/イディオム gotcha はまりポイント。注意すべきこと。引っ掛け。 Got you のくだけた表現。捕まえた、誰かをトラップに引っ掛ける、という意味から。 注) 一般的には、Got itやYup、I seeのような、同意の返事でよく使われる。 類) caveat, pitfall There are many gotchas in this application. sought-after (スキル、人材、機能、アプリが) 人気の、需要がある、求められてる、引っ張りだこ Python is a sought-after language. c-suit
概要 PWA = モバイルのWEBページでネイティブアプリのようなUXを提供するためのもの ※ 2020/04/05 追記: PWAに関する仕様の策定当初はモバイルでのユースケースが主だったと記憶していますが、PWAはモバイルに限定されたものではなく、実際にデスクトップでの活用例も増えています。参考: PWAs: building bridges to mobile, desktop, and native (Google I/O '18) AMP = モバイルのWEBページを高速化するためのもの どちらもGoogleが主軸となって策定されている、モバイルページを進化させるためのプロジェクトおよび技術。ネイティブアプリの代替技術ではなく、ブラウザAPIの進化によってネイティブアプリのようなUXをウェブページで提供することが主眼。 1. PWAとは Progressive Web Appsの
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く