岩崎友樹AWSLaravelハッカソンはじめに先日、エンジニア育成の一環として2泊3日の開発合宿に参加してきました!2泊3日の短い期間でチームで1つWebサービスを作ってみようというものです。詳しくはこちらの記事を御覧ください。画像処理、などを担当バイクの中型免許を取りました作ったサービスSNS用アイコンをWeb上でらくらく作成!!アイコンマスターのページにアクセス後、撮影ボタンを押して自分の顔写真を撮影するだけでオリジナルアイコンができあがります!アイコンは、季節や顔の表情によってエフェクトが変化します。ハッピーな時、どんよりな時、その時の気持ちをステキに表現しちゃいましょう!使い方ページにアクセスして「アイコンを作る」ボタンを押します。顔がカメラの中心に来るように調整し撮影ボタンを押すと......あっという間にアイコン完成!仕組みまずは顔写真を撮影します。撮影する写真のサイズはTwitter推奨の400×400ピクセルです。RekognitionのAPIに送り、感情のデータ(ANGRY,HAPPY,SUPRISEDなど8種類)を取得します。そのデータを元に怒りの感情なら怒りマーク、驚いているなら「!」マークなどのエフェクトを付けていきます。?画像やビデオから人、モノ、テキスト、シーンなどを識別できるサービスです。APIもあるので簡単にアプリなどに組み込むこともできます。アイコンマスターでは撮影した写真を分析にかけ、どのような表情をしているかを取得しています。次に、現在の日付からアイコンに付けるフレーム(四季+ハロウィン、クリスマスの6種類)を決めます。12月1日であれば冬のフレーム、10月31日であればハロウィンのフレームといった感じです。最後に、撮影した顔写真、感情のエフェクト、季節のフレームを1枚の画像にし、画面に出力します。がんばったところ・工夫したところとにかく簡単にアイコンを作れるようにしたところです!「その時の気持ちをステキに表現」と言ったとおりに、何回アイコンを作っても面倒くさくならないように画面上の操作は極力減らしシンプルになるようにしました!そのため画面数もTOP、撮影、出力の3画面に抑えています。私たちのチーム開発ではお互いの技術スキルに差があったり、当初のスケジュール通りに進まないなど、苦戦することが多かったのですが、お互いの状況を把握し合い、役割の変更や遅れている人へのフォローなど、よいプロダクトを作り出せるよう、短い期間ながらも最後まで諦めずに楽しく開発ができたと思います!学んだこと事前の仕様がふわふわしていたな、というのは終わってみて感じました。それぞれの担当部分でどのような入力がいるのか、どのような出力を返すのか、そういったところが決められていなかったため、開発中に食い違いが生じたりもしました。これでは良くないと感じ、一度それぞれの担当を整理して話し合い、仕様を固める作業をしました。その作業のおかげでお互いの作業の把握がしやすくなり、以降の開発をスムーズに行うことができました!もちろん、あらかじめきっちりと決めておくことができていれば、余裕を持った開発や新機能の追加に手を出したりもできたのでは、という点はありますが......そこは反省点を見つけられたということで前向きに捉えていきたいと思います!おわりに反省点も多く出た開発合宿でしたが、それでも少ない時間の中で動くものとしてアイコンマスターを完成させたことにはしっかりと胸を張り、この開発合宿での学びや反省は、今後の業務に活かせるよう取り組んでいきたいです。DBのレコードをRedashで可視化してみたこんにちは!2019年度新入社員の飯塚です。DBに格納されているデータをビジュアライズしたい!」という要望を受け、Redash環境を構築することになりました。今回はAWSのEC2インスタンス上に構築していきましたが、構築までの流れが非常に簡潔で、作業自体はほんの30分といったところでした。今回はその知見をまとめていきたいと思います。DeepRacerはじめにはじめまして。Webサービス開発グループの2019年度新入社員の岩崎です。DeepRacerに関する社内勉強会が開催されており、私もそれに参加をしています。DeepRacerに触れてみてのことを書いていこうと思います。岩崎友樹AWSEngineer環境変数を活用してembulkを便利に使うはじめまして。2017年度新入社員の増田です。現在WEBサービス開発グループでOJT中です。ちなみに読み方は”ますた“ですのでよろしくお願いします。今回私が書くのは、環境変数を使ってembulkをより便利に使っていこうというお話です。Dataによって開発されたオープンソースのバルクデータローダーです。fluentdのバッチ版と称されてますね。embulkは、fluentdと同様にプラグインが充実しており、インプット側とアウトプット側のプラグインを組み合わせれば様々な処理を行うことができます。csvファイルをRDBに入れたり、RDBからElasticsearchにデータを交換したりなどといった処理が簡単に行えます。フィルタープラグインを利用すればインプットしたデータを加工して投入することも可能です。Corporation。