※Appleからのメール画像を使用しております。 こんにちは! デバイスソリューションユニット開発グループの又来です。 入社2年目のiOSエンジニアです!!ARKitの新機能開発とかやりました! 来週の6/4-8にCA, San Joseで開催する、WWDC2018に参加してきます! developer.apple.com WWDCには初参加なのでかなり緊張しています。。。 今回はそんなWWDCを最大限有意義なものにするための準備について書きたいと思います。 WWDC2017を振り返って 去年のWWDC2017で発表されたARKitでは気軽にARの世界観を端末上で体験できるようになりました。 私は日本からKeynoteを見ていましたが、ARKitが発表された翌日にデモを動かして感動した記憶があります。 また、弊社ではホームズくんと一緒に間取り測定をARで行なったり、ARKit1.5では垂直の認識が追加されたことで、CMでお馴染みの崖登りや綱渡りを再現しながら計測を行う機能を開発しました。 参加する上で必ず確認しておきたいこと パスポート 意外と直前になってパスポートの期限が切れていたりして焦ることがあります。アメリカへの入国は3ヶ月以上期限に余裕があることが推奨されています。 航空券とホテル チケットの当選発表からだと会場周辺のホテルがすぐに埋まってしまいます。 お金に余裕のある方はAppleが推奨するホテルに泊まってみるのはいかがでしょうか。 私は航空券も同時に予約できるエクスペディアで確保しました。Airbnbで探してみるのも一つの手だと思います。 チケット WWDCのアプリからWalletアプリに追加できるので参加する方は絶対に入れておきましょう。 WWDC Apple 辞書/辞典/その他 無料 WWDCには行かないけど周辺イベントには参加する方は他のチケットも確認しましょう! ESTA ビザ無しで入国する際には年齢問わず誰にでも申請が必須なものになります。取得はいつでもできますが、余裕を持って早めに申請しましょう。 有効期間は2年または、パスポートの有効期限です。 保険 アメリカは医療費がかなり高いです。また、治安も良いとは言えないので必ず入りましょう。「自分は大丈夫」精神で行くと危ない目に合います。 友人とシリコンバレーに自転車で観光した際に見事に盗難に合いました。気をつけましょう。 Wifi WWDCに参加される方にとってはライフラインみたいなものです。アメリカは公共Wifiが多いですが、登録しないと利用できなかったりいちいち面倒ですのでレンタルの準備しておきましょう。 USBハブ 会場にはコンセントが利用できる箇所はあるみたいです。PCもスマホも充電できるハブを用意しておくことをおすすめします。 私はType-Cが対応しているUSBハブを購入しました。 服装 日中は暑いですが夜や日陰は寒くなりそうですので調節できる服装にしておくと良いでしょう。 機内での過ごし方 直行便で行ったとしてもかなりの時間を機内で過ごすことになります。 特に乾燥対策はしっかりしておきましょう!保湿マスクなどがあると便利です。 ゆったり寝たい方は、機内用にスリッパなど持ち込んでおくと足元も落ち着きリラックスできるでしょう。 楽しみを見つけておく WWDC期間中は数多くのセッションが公開されたりラボで直接Appleの方とコミュニケーションが取れる機会があります。気になる発表やこんなことを聞いてみたいなど、あらかじめ見るものを決めておくと良いでしょう。 個人的には去年発表されたARKitの内容が気になります。 ARKit1.5では画像認識もできるようになっていますので、Core MLとのさらなる連携やアンカーの位置の共有など出てくるか楽しみです。 周辺イベントにも参加してみる WWDC開催期間中には周辺で多くのイベントが開催されます。WWDCには参加しないけど周辺イベントには参加する方もいるみたいです。 Parties for WWDC Popixels Ltd. ナビゲーション 無料 Eventbrite Eventbrite エンターテインメント 無料 AltConf Thomas Kollbach 辞書/辞典/その他 無料 私は今のところ、Firebase party at WWDC2018に参加する予定です! それでは現地で会えることを楽しみにしております。
こんにちは。 デバイスソリューションユニット開発グループの崔です。 弊社でLIFULL HOME’SのAndroidアプリの開発を担当しています。 ついにGoogle I/O 2018の最終日ですね。 今日はいくつかのセッションの内容とせっかくなのでGoogle I/O全体の様子などをご紹介しようと思います。 まずは出発から! (前回の記事は こちら から) 朝から災難だった・・・ ホテルを出てからWiFiの通信が悪く、なかなかUberを捕まえることができませんでした。ここで既に昨日より10分ほど遅れてしまいました。 なんとか駅まではたどり着きましたが、今日はなぜかシャトルバスもすぐに出発せず…。 現在時刻朝の7時40分。この時点で焦ってきました。 ようやく8時に会場に到着すると、あら、人がいない! やはり最終日だからでしょうか。 結構空いています。 昨日までの朝食は争奪戦でしたが、今日は余裕ですね。 結局時間的に昨日と変わりはありませんでした。 セッションについて 今回は以下3つのセッションに参加しました。 各セッションのポイントについて話をしていきます。 Android Jetpack: manage UI navigation with Navigation Controller TensorFlow Lite for mobile developers Add Firebase to your cross-platform React Native or Flutter app Android Jetpack: manage UI navigation with Navigation Controller www.youtube.com Navigation ビジュアルツール / XMLによるナビゲーショングラフの定義 利用可能なナビゲーションアクション 引数 アニメーション Up動作 Deep links 単一のnavigate()を呼び出してランタイムライブラリーが自動的に処理してくれます。 ... もうFragmentTransactionは入りません!! Navigation Editor 矢印で画面遷移が簡単にできるようになる xmlで紐づけ、画面遷移が簡単にできる ActivityやFragment両方使えます。 凄いところは設定も画面上で見えるようになっています。 あとは、xmlとコードを書くだけです。 Deep Linking Deep Linkには以下のように2つの種類が存在します。 ■Explicit Deep Links Notifications App Shortcuts App Widgets Actions Actions Slices Explicit Deep LinksはNavDeepLinkBuilderを使用してIDによるナビゲーショングラフの特定の目的地へのディープリンクします。 ■Implicit Deep Links Web URLs Custom Scheme URIs Implicit Deep Linksはナビゲーショングラフで「deepLink」を使用します。 1つまたは複数のURIを関連付けます。 <deepLink app:url=“http://www.google.com/.*” /> <deepLink app:url=“http://www.iana.org/domains/{myarg}” /> <deepLink app:url=“http://www.example.com/.*/{id}” android:autoVerify=“true” /> <deepLink app:url=“android-app://androidx.example/detail/{id}” /> Navigationは上記の二つを簡単に処理してくれますので、使いやすくなったと思います。 最後に「navigation.1.0.0-alpha01」は今すぐ利用可能とのことです。 TensorFlow Lite for mobile developers Tensorflow Liteとはモバイルデバイスや組み込みデバイス用のライブラリーとツールを学習する軽量フレームワークのことです。 youtu.be 利用可能なプラットフォーム Android、iOS、Linuxで利用可能 ML Kit TensorFlow Liteをサポートする サポートモデル MoblieNet、InceptionV3、ResNet50、SqueezeNet、DenseNet、InceptionV4、SmartReplyなど MobileNetの量子化バージョン TensorFlow Liteの使い方 モデルを入手 変換 操作(ops)を作成(必要なら) アプリを作成(クライアントAPIを使用) コンバージョン戦略 フリーズしたグラフや保存されたModelを使用し、サポートされていない演算子を避ける 不足している機能のカスタム演算子を作成する TensorFlow Liteロードマップ その他の操作 改善されたツール、ドキュメント、より使いやすく On-deviceトレーニング いつTensorFlow Liteを使うのか TensorFlow Liteはデバイス上でMLモデルを実行するための標準ソリューションになる 現在TensorFlow LiteはTensorFlowオペレーションのサブセットをサポートしている 最近TensorFlow Liteにはちょうど興味があるので、Androidの方でいじってみようと思っています。 色々サポートされるようになって今後楽しみですね! Add Firebase to your cross-platform React Native or Flutter app youtu.be 今回のセッションはFlutterにどうやってFirebaseを追加するかと、なぜFlutterにFirebaseを追加したかの理由に関するセッションです。 FlutterにFirebaseを導入した理由 45.6%のクレームが発生 アプリが強制終了 機能エラー ネットワーク問題 リソースが重い 応答しないアプリ これらを改善するために ユーザーの行動を分析する FirebaseのGoogle Analytics機能を利用 待ち時間を測定する FirebaseのPerformance機能を利用 クラッシュをキャッチする FirebaseのCrashlytics機能を利用 この3つのFirebaseの機能を利用し、問題を解決したようです。 実験 Cloud Messaging Firebase Cloud Messasingを追加するとアプリに対して通知が動作します。 iOS及びAndroidでFlutterの設定が完了すると全てのユーザーに通知を送ることができます。 Remote Config Remote Configを使うとユーザー体験をカスタマイズできます。 なお、アプリを新しくダウンロードしなくてもユーザーのアプリの動作やUIの変更が可能になります。 応用 Remote ConfigのA/Bテストが可能 Cloud MessagingのA/Bテストが可能 FlutterにFirebaseを導入した理由と同じように弊社のLIFULL HOME’SのAndroidアプリには既に上記に紹介されたFirebaseの機能を導入して日々改善など行なっています! 会場全体の様子 会場の雰囲気 会場は常に、熱く盛り上がっています! 会場の野外スペースではサングラスや日焼け止めが必須ですが、参加者はバッジを受け取る際に無料で配布されます。 もちろん前回もお話ししましたが、日陰に入ると冬か!ってくらい寒くなりますので上着も常に持っていた方がいいと思います。 But first, water 日向に出ると日差しが強いので、いつでも水分補給ができるようにお水があちこちに置いてあります。 さらに移動式のウォータークーラーをよく見かけます。この暑さの中、人が直接運搬してくれるのはとても有難かったですね。 ランチ ランチはこういう感じ!のランチBoxがもらえます。 正確ではありませんが、11時から14時の間にランチBoxを配っていた気がします。 三日間ずっとこのようなランチが無料で提供されます。 メイン一つとリンゴ、スナックがいつも用意されています。 飲み物は基本コーラやスプライトですね。 Shoreline Amphitheatre Shoreline AmphitheatreというのはGoogle本社近くの野外イベント会場です。 GoogleのCEO、Sundar Pichai氏がKeynoteに登場する場所です。 この写真は今日のランチを食べるスペースを探している時に撮りました。 ちなみに昨日のコンサートもここで行われました。 セッション セッションとは、Google社員による最新技術の発表会です。 セッションの内容はAndroid・AI・Web・Cloudなどの最新技術のTIPSや、使い方などが披露されます。 もちろんセッションの内容は全て Youtube に公開されます。 なお、参加者が多いため興味あるセッションは事前にWebやGoogle I/Oアプリ(Android、iOS)を利用して予約しておきましょう 。 予約者優先で会場内に入らせてくれます。 Googlerとの意思疎通 Google I/Oの参加メリットとしてはOffice HoursやSandBox、Codelabsで直接Googlerと話せることだと思います。 もちろん英語で会話しますが、私は英語が全然できません!! (猛勉強中です(汗)) でもちょっとしたカタコトの英語や身振り手振り、キーボードタイピングなどでも丁寧に理解するまで対応してくれるのです!! SandBox SandBoxはドーム形のテントで、ジャンルやサービスごとに分かれています。 この中でジャンルごとにGooglerと直接コミュニケーションができるOffice Hoursが用意されています。 Codelabs CodelabsはGoogle I/Oで発表される最新技術を学べ、かつ体験もできる場所です。 Codelabs は一般公開もされているのですが、ここでのメリットとしては開発環境と端末が全て最新であることと、分からないことはすぐにGooglerに質問ができます。 外観は以下のような感じです。 もしノートパソコンを忘れてしまったりしても、デスクトップが用意されているので、ご安心ください。 ちなみに私はノートパソコンの充電器を忘れてしまいましたがお陰様で問題なく体験できました! ドロイド君 会場の中を移動していると様々なドロイド君のオブジェが設置されているので、探しに行くのも一つの楽しみかもしれません。 これで全部でしょうか。 一応発見したドロイド君は全部撮ってみました。 Snacks どこを歩いていてもスナックブースが設置されていて、これも全て無料で提供されています。 WAYMOとAndroid Auto 地球を200回以上回ったという無人自動車WAYMOとAndroid Auto搭載車が展示されています。 車は動きませんが、Android Auto搭載車は運転席に乗ってAndroid Autoを試すことができます。 Community Lounge コミュニティーラウンジでは先日アジア地域のMeet Upがあって各国のアジア人と交流ができたり、全体集合写真も撮りました。 ラウンジにはビリヤードとピンポン、テーブル・フットボールが用意されています。 MEDICAL 時差ボケであまり眠れなかったり、暑寒かったせいか今日体調を崩してしまったので、ちょうど寄ってみました。 細かく診断された後、CETAFENという薬を処方してもらいました。 調べてみると鎮痛剤ですね。 弊社のサポート Google I/Oの参加費負担 弊社ではGoogle I/Oに参加するためにホテル、飛行機代、交通費、チケット代など殆どの費用を負担してくれます。 もちろん最新技術の配信や共有、Google I/Oで取得した技術を業務でどう生かすかというのもありますが、業務だけではなく個人のスキルアップのほかにAndroidエンジニアなら誰もが行きたい!誰よりも早く最先端技術に触れてみたいと思うはずです。 (自分だけでしたらすみません(笑)) Google I/0 2018終了 感想 本日でGoogle I/O 2018が終了しました。 Googleが開催する最大規模の技術イベントだけあって、終始刺激を与えてもらえる雰囲気でした。 参加者のために食べ物や音楽、パーティーやコンサートなど様々な娯楽も提供されました。 始めは緊張していましたが、リラックスできるこの雰囲気のお陰で非常に楽しめました。 今回、多くのセッションとSandBox、Office Hour、Codelabsで新しい技術を最先端で触れたり、Googleと世界各地から集まったITディベロッパー達に直接出会えたりとAndroidエンジニアとしてとても有意義な時間を過ごせたのが一番大きな収穫でした。 社外向け報告会の告知 2017年5月23日(水)に 弊社 株式会社LIFULL 半蔵門オフィス にてGoogle I/Oの報告会を行いますので、是非足を運んでみてください! 以下connpassのページよりお申し込みください。 LIFULL.apk #2 - Re: Google I/O 2018 LT枠も大募集中です。 しかも今回は何と!特別ゲストスピーカーとしてGoogleの【Le Viet Gia Khanh氏】をお招きし、Firebaseアップデートについてお話頂きます!! 皆様のご参加を心よりお持ちしております! 終わりに Google I/O 2018に参加するチャンスをくれた弊社には感謝しています。 発表された技術を生かして弊社のサービスにどう導入して行くか今後楽しみです。 ではでは、Google I/Oの参加記は以上となります。 拙い日本語でしたが、最後まで読んでくださった皆様、ありがとうございました!!
こんにちは! LIFULLのジンジニア(人事+エンジニア)木村です。 告知です! RubyKaigi2018 5/31-6/2仙台で開催される、 皆さんご存知「 RubyKaigi 2018 」をスポンサーで応援させていただくことになりました! LIFULLとしてこのイベントにスポンサーするのは初になりますが、恐れ多くもブースも出させていただくことになっています! ホームズくんステッカーなど配布する予定ですので是非足をお運びください。 「 LIFULL HOME'S 」では、バックエンドのAPIをRubyで開発しており、全エンジニアの7割程度はRubyを書くことができます。 他にも、「 見える!不動産価値 」や「 プライスマップ 」というサービスはRuby on Railsで開発しており、 LIFULLプロダクトにとってRubyはサービスを支える欠かせないものになっています。 会場ではLIFULL Tシャツ身にまとったスタッフもスタンバイしてるので、見つけたらご気軽にお声掛けくだされば嬉しいです! ぜひ一緒にRubyKaigi盛り上げましょー! (仙台のうまいもんも楽しみです) ※5/28追記 RubyKaigi2018の振り返りイベントを緊急開催することになりました! RubyKaigi2018に参加できなかったやRubyKaigi2018について語り合いたい方、奮ってご参加ください!LT枠も大募集しています! 詳細とお申込みは以下のconnpassページです。ご参加お待ちしています! lifull.connpass.com 仲間募集中です Ruby、Railsエンジニア鋭意募集中です!エントリーお待ちしています。 hrmos.co recruit.lifull.com
こんにちは。 デバイスソリューションユニット開発グループの衛藤です。 本日はGoogle I/O 2018の2日目です! 疲れが徐々に溜まってきていますが、毎日新鮮な技術情報により浄化されていくようです! でも肩が痛いです! 今回はAndroidやFirebaseの他にGCPやMachine Learning関連など分野を広げて見てみました。 本日メインで参加したセッションをメインに、レポートをお届けします!! Machine learning and medicine 今年のKeynoteはほぼAIが絡んだ話が多く、以前にも増して身近な存在になってきました。 既にAIの存在は当たり前のものになっているようです。 私もMachine Learningには興味があり、いろいろと勉強しています。 Keynoteでも、医療やヘルスケア分野でAIが活躍しているとのことで、今回はどのように薬剤の分野に応用したかという話でした。 内容は超専門的でかなりハイレベルな内容でした。 専門的にな部分は分かりませんが、共通した話題もあると思い参加をしてみました。 新薬開発の流れ 新薬開発の話し(おそらく・・・)と思われます。 薬の開発は効率が悪く、3.5億ドル以上のコストがかかっている 人間のDNAに含まれる情報をベクトル化し、どの薬が効くのかを学習させる 予測により病気が治りそうな新薬となる分子を発見する ちなみに・・・人間のDNAというのか良く分かりませんが、図にするとこんな感じになっているらしいです(複雑・・・!) このような分野はやはりAIが強いのかもしれません。 つまり・・・ かなり高難度な話題でほぼついていけていません笑 ただ、これまで私が機械学習で取り組んで来たのは 人間の作業を効率化させる というものでした。 今回の話はそれよりももっと進んでおり、 人間でも発見出来ないものを見つける というところが面白かったです。 違う分野ですが、画像認識の世界でも現在は人間のエラー率よりもAIのエラー率の方が低いらしく、確実に人間を超えていってる感じが伝わってきて少し恐ろしくも思います。 Microservices in the Cloud with Kubernetes and Istio Dockerは少しだけ触ったことがありますが、最近話題になっているKubernetesに関しては全く未経験なのですが、参加してみました。 youtu.be マイクロサービス マイクロサービスにより独立した機能を持つと、不要な依存が断ち切れます。 しかし、以下のようにサービスが大きくなってくると非常に複雑な構成となり運用が大変になります。 スケーリングさせると更に複雑に Dockerを使ってPackagingすることで管理が楽になり、環境依存も減ります。 さらに、Kubernetesを導入することでさらにスケーリングやデプロイなどを容易に実現しましょう。 Demo 詳しくは動画のデモを見ていただくのがわかりやすいと思いますが、コマンドの反応が非常に早く、サクサクと動いている印象を受けます。 このデモでは、Istio( https://istio.io/docs/tasks/traffic-management/egress.html )というものも使われており、Loadbarancing等のトラフィックを管理出来るようです。 このあたり全然知らず、解釈が合っているのか若干不安ですが・・・ 大変便利そうではありますが、正直一度自分で触ってみないとなんとも言えないので、こちらについては後日じっくり触ってみたいと思います。(お恥ずかしい・・・) What's new in AR Keynoteで発表されていた、Cloud Anchorsについてのセッションです。 youtu.be セッションのなかで ARは大きなパラダイム・シフトである のようなことを言っていました。 今回発表されたCloud Anchorsは確かにARの世界を大きく進歩させる技術だと感じています。 Cloud Anchors Cloud Anchorsとは、Cloudを通じて複数のユーザー間で同じAR体験ができるようにする仕組みです。 これにより、一人がAR空間で物体を設置した場合、違うユーザーのデバイスの中でも同じ物体が 同じ位置・向き で共有されるようになります。 ユースケースとしては、教育現場やARゲームなどで大きく活躍しそうです。 Augmented Images Augmented Imagesは二次元の画像から3次元のAR空間を作成するものです。 詳しくは動画のなかにデモが上がっていますが、商品のパッケージの絵から立体的なアニメーションが出現したりと、見ていて楽しいものでした。 ユースケースとしては、こちらも教育現場や商品プロモーション等に最適なようです。 ARCore これらの技術はARCoreを使うことで実現できます。 ARCore - Google Developer | ARCore | Google Developers クロスプラットフォームのため、Android/iOSで実現出来ます。かなり実用的なのではないでしょうか。 Android Jetpack: what's new in Architecture Components youtu.be Android Jetpackは、Android開発をより高速にするために用意された様々なライブラリのセットです。 これまでのSupport LibraryやArchitecture Components、UIなどのライブラリを androdx.xxx のような形でgradleに記載します。 現在までに 26回のリリースを行う 700を超える機能リクエスト その辺りを一度整理して出てきたのがAndroid Jetpackです。 developer.android.com 以前までは、複雑なLifecycle等を理解して正しく使う必要があったのですが、開発を容易に加速させる目的で様々な便利なライブラリが出ています。 昨年既に発表があったものも含まれますが、代表的なものとして LiveData Databinding InstantAppで使うにはv2を使う必要があり Room ORマッパ Paging ページングを容易に実装 Navigation 面倒なFragmentTransactionはもういらない GUIで直感的に操作 WorkManager Job Scheduler / Firebase JobDispatcher / Alarmなど、バックグラウンド処理を管理してくれる beginWith then の書き方により待ち合わせ処理も容易に 個人的にはNavigationでFragmentTransactionが不要になるのがありがたいですね! また、Deeplink起動の場合にFragmentをBackstackに積む操作も出来るためかなり開発が捗りそうです。 Pick the right tools to grow your app on Google Cloud Platform youtu.be 最近は弊社のプロジェクトでもGCPを使うことが多くなってきました。 GCPには様々なツールが用意されており、どんな場合に何を使えばよいのか迷ってしまいます。 API作るときにやりたくないこと Process Management Security Patches Upgrades Scaling Back Ups Disaster Recovery Provision Database Replication たしかに、日々の運用からは解放されたいですよね。 出ましたGAE!最近非常にお世話になっております。 Full Managedなので比較的楽にサーバー構築できて非常に便利です。 Emailを送る機能がある場合は、sendgrid( https://sendgrid.com/ )が良いらしいです。 このあたりもNodeはライブラリが充実していて良いですよね。 Kubernetes 最近よく聞くKubernetesですが、DockerサービスをOrchestrate、Scalingを行ってくれるサービスのようです。 なんと読めば良いのか分かりませんでしたが、聞いてる限りだと「キューバニーティーズ」みたいに聞こえます。 deployment.ymlというファイルに設定を記述してきます。 詳細は公式ドキュメントをご参照ください。 https://kubernetes.io/docs/concepts/workloads/controllers/deployment/ Demo 詳しくは動画内のDemoを見ていただくのが早いと思いますが、スケーリングやデプロイなど非常に高速にコマンド実行が出来ています。 こちらについても同様に、一度実際に触り倒して感覚を見てみたいと思います。 What's new with the Google Assistant SDK for devices youtu.be Assistant SDK for Devicesの紹介です。 Neural Beamforming 少し前にOfficial Blogで紹介がされていましたが、Neural Beamformingという技術により複数のマイクで正確性をあげることが出来るというものです。 https://india.googleblog.com/2018/04/google-home-and-google-home-mini.html 人間の耳が2つあるように、マイクを2つ設置することでノイズが混じっていたとしても正確に音声を拾うことができるそうです。 Broadcasting 動画の25分前後のところで説明がされています。 例えば、自宅の各部屋にAssistant搭載デバイスを設置している場合、リビングから「夕食よ!」をそれぞれのデバイスにBroadcastすることで、 全部の部屋にメッセージを伝えることが出来るという技術です。 3階建ての家の各部屋にあると便利ですね! Custom Device Actions デモにもありますが、入力音声をトリガーとしてAssistant側にIntentを飛ばすことで、色を変えたり、ロボットの向きを変えたりを実現しています。 入力音声の一部をパラメータとして渡すことで実現出来るようで、実装自体は比較的単純にできそうです。 おそらく入力の想定を設計するのが一番大変なのでは、と感じます。 動画の最後の方に、ロボットにダンスを躍らせるパフォーマンスがありますので、是非見て頂ければと思います。 このロボット開発して遊ぶの楽しそうですね! Android Jetpack: what’s new in Android Support Library 先程あげた、Android JetpackのSupportLibraryに関するセッションです。 youtu.be Versioningの変更 サポートライブラリに関しては、 support-v4 support-v7 support-v13 などのライブラリがありますが、対象のSDKバージョンはAPI Level 14以降でしか使えないため混乱を招くバージョニングになっていました。 今回からAndroidX(Android Extension)に変更となり、 implementation 'androidx.{feature}.@' のようのように変更となります。 わかりやすくなりました。 なお、このタイミングでバージョンは1.0.0にリセットされるようです。 またセマンティック・バージョニングも導入するとのことでした。 Migrating 現在のプロジェクトを全てandroidxに変えるのは大変な作業になりそうです。 AndroidStudio 3.2 Canary14から、一括で変換出来るオプションがあるのでそちらを利用するのが良さそうです。 ただ、Canary14はバグがあるとのことなので安定するまで待ったほうが良いとのこと。 詳しくは動画をご参照ください。 新しいAPI 今回追加になった新しいAPIもあります。 RecyclerView Selection Itemの選択状態を簡単に実装出来るように RecyclerView ListAdapter シンプルなAdapter。簡単なリストならすぐに実装可能 WebKit CustomTabsはBrowserに変更 Browser Actionsでリンク押した際の選択オプション表示が可能 HeifWrite Heifフォーマットのサポート Slice インタラクティブな検索結果表示が可能 MaterialComponents Materialの新しいButton等が追加になりました。 今回の変更はかなり大きなものになると思いますが、わかりやすさや導入がしやすそうで早く試してみたいです! ML Kit: Machine Learning SDK for mobile developers ML KitはFirebase上で利用可能なMachine Learning SDKです。 個人的に一番好きなセッションでした。 youtu.be 簡単にMLアプリケーションを 学習済みのモデルを、サーバー上にホスティングすることなくデバイス上で動作させることが出来るようです。(一部はCloud上でも可能) また、独自のTensorFlow LiteモデルもFirebaseにアップロードさせるだけで簡単に利用できるようになります。 現在のβ版では以下のようなモデルが利用可能です。 Text recognition Face detection Barcode scanning Image labeling Landmark recognition Custom model inference RemoteConfigでA/Bテストも さすがFirebaseに乗っかっているだけあって、RemoteConfigと組み合わせることが出来ます。 ユースケースとしては異なるモデル名をRemoteConfigで指定して動的に予測モデルを変更する、 または、A/B Testingによりモデル別のConversionを測ることも出来ます。 今後出てくるもの 今後のロードマップに以下のものが含まれています。 Smart Reply Gmail等で導入されていますが、リプライの予測提案APIが利用可能に Model Compression Service TensorFlowで構築したモデルをML Kitに読み込ませることでTensorFlow Lite用のモデルに圧縮・変換を行ってくれる 特にCompression Serviceについては、800Mサイズ/Accuracy 91.8%のものが860K/92.8%のTensorFlow Liteモデルになった例があがっていました。 最適化処理により精度は逆に良くなっているようです。これが使えれば面倒な変換作業や最適化作業を気にすることなくMachine Learningの導入ができそうです。 Beyond single page apps: alternative architectures for your PWA youtu.be PWA、非常に興味があります。 このセッションでは、PWAでSingle Page Applicationを作るというものでした。 はじめは設計の話から導入が始まりました。 とあるWebアプリがあり、画面遷移後に同じページに戻ることを考える。 そんな場合、PWAは解決する1つの可能性ではないでしょうか。 Multi-Page Application と PWA MPAは従来から存在するWebアプリです。 DOMの再利用がなく、ページ全体のリフレッシュが必要になってしまう。 それに対しPWAは「FIRE」という考え方があり、以下の頭文字から成り立ちます。 Fast Integrated Reliable Engaging 初期読み込みは少ないネットワーク量で、オフラインでも利用可能、高速に動作するWebアプリケーションです。 Service Workers + Cache Service Workersはアプリケーションのバックグラウンドで動作するスクリプトです。 一度通信したものはローカルにCacheし、Cacheにない場合のみ通信を行うことで高速化を図ります。 余計な通信を発生させないよう、Cache出来るものはやっておくと良いようです。 SPAを作る SPAを実現するために、Express Styleな実装が紹介されていました。 Expressのように、Routingを定義するためroute.mjsというファイルにパスを記載しています。 見ていると、本当にExpressで開発をしているかのような間隔に陥ります。 .mjsでhtmlテンプレート化し、titleタグ等を動的に生成することでテンプレートの役割を実現していました。 動画で使われていたライブラリ オフライン処理 Workbox( https://developers.google.com/web/tools/workbox/ ) APIかCacheか workbox.streams( https://developers.google.com/web/tools/workbox/reference-docs/latest/workbox.streams ) 最後の締めとして、「Don't cache full HTML」と言っています。 Cacheは便利だけど不要なものまでやらないで、ということでしょうか。 とりあえず、PWAで何か作ってみたいですね。 お土産(Android Things Developer Kit) 今年のおみやげの中にAndroid Things Develper Kitがありますが、こちらはタダで貰えるわけではありません! 10問のクイズに答えた人が受け取れます。 会場内を地図のヒントにしたがい情報を集め、お土産ゲットしました! これでしばらく遊んでみたいですね。 例年通り普通のお土産もありました、Google Home Miniです!(昨年は普通のGoogle Homeもらった&技適問題で起動出来ていない・・・) Concert 2日目無事に終わり、締めはライブです! 美味しいビールを飲みながら良い音楽で一休み。Google I/Oは毎年After Hoursも妥協がないですね! Office Hours 明日の予定ですが、本国のGoogle Expertと直接話せる貴重な機会です。 緊張しますが、悩んでいる事を全部伝えてみようと思っています! Sandbox 今年も様々な展示がされていました! いつ行っても賑わっています。 絵を書くロボット TPU v3の実物 Fireabase TestLab サーバーが動く様子 様々な最新技術に触れられるGoogle I/Oもついに明日が最終日です!! 悔いのないように楽しもうと思います! Google I/O Day Threeへと続く...
こんにちは。 デバイスソリューションユニット開発グループの崔です。 弊社でLIFULL HOME’SのAndroidアプリの開発を担当しています。 ついにGoogle I/O 2018が開幕しました。 Google I/Oはなんと言ってもKeynoteが目玉でしょう。 今日はKeynote内容をお届けしますので、是非楽しんでください! 前回と引き続き、今年は同じ開発部署の衛藤と交代で書いて行きます。 前回の記事は こちら をご覧ください。 I/O会場へ シャトルバス 会場まではシャトルバスが出ているので、我々は朝8時にホテルを出て、最寄りのMountain View駅に向かいました。 少し出遅れ感があったので、朝ご飯は会場で食べることにしました。 駅に着くと分かりやすく看板を持っている方がいるので、すぐバスに乗れます。 シャトルバスはよくアメリカ映画に出てくる小さめのスクールバスに似ていますが、少し高級車感もあります。 会場前 I/Oの会場の前に到着すると既に人の行列ができています。 この行列を抜けた後に荷物の検査を済ますといよいよ入場ができます。 会場の様子 中に入ると朝食の受け取り場は人の行列ができているので、我々は急いで朝ご飯を済ませました。  ベーグルやコーヒーなどが無料で提供されていますが、遅れたせいかベーグルは残りわずかでした。(泣) Keynote 開演場は世界各地から7千人以上が集まり、もの凄い熱気を感じます。 あちこちからうぉぉぉ〜の歓声が響き渡ります! ステージではモバイルでの繋がりを通して世界中からDJや様々な人が端末を動かして楽しむゲーム等で盛り上がっています。 私も飛行機を飛ばしてレースをするゲームに参加しましたが、何故か決まったようにブルーチームしか勝利しなかったですね(笑)  盛り上がっている最中にいつものようにカウントダウンが始まり、GoogleのSundar Pichai CEOが登場します! 今年のKeynoteはさらに進化したAIを中心とした内容でした。 それでは、今年のGoogle I/O 2018の重要な発表を以下にまとめました。 時間を節約する Gmailの新機能「Smart Compose」 Gmailの新機能「Smart Compose」Google AIによってメールコンテンツを理解し、素早く効率的に作成できるよう、文章を提案してくれる機能です。 Google Photo Google Photoを使ってAIにより白黒写真をワンクリックでカラー写真に加工してくれる機能が追加される予定です。 また書類写真をGoogle Photoに保存すれば自動でPDFに保存してくれます。 Google Assistant Google Assistantはさらに視覚的に、自然に会話できるようになります。 音声の種類も六つ追加される予定で、毎回「Hey Google」で話しかけなくてもGoogle Assistantが使えるようになります。 Google Duplex 今日の一番の驚きです!まず以下の動画をみてください。 New Google AI Can Have Real Life Conversations With Strangers 美容室に予約をする会話ですが、まるで人間のように自然な会話ができています。 Google MapにAR機能追加 Google MapにARナビゲーション機能が追加されました。 カメラをかざすだけで画面上に情報が表示されるようになります。 AIによって進化したGoogle News Introducing the new Google News ネット上には数多い記事がある中で、AIによってユーザーの好みに合わせた記事を提案してくれるようになりました。 ユーザーの行動を予測するAndroid P 次回モバイルOS「Android P」と共に開発者向けの「Android P Beta」が本日公開されました。 一般向けは今年の秋ぐらいに正式に配信される予定です。 新しい機能について、以下のように少しまとめました。 Adaptive Battery Image : google AIが必要なアプリを分析して、アプリごとに電力を振り分ける機能です。 結果、CPUの使用率が約30%も減少されるとのことです。 Adaptive Brightness 機械学習を利用して、周囲の明るさに合わせて画面の輝度を調整する機能です。 App Actions Image : google ユーザーの行動を予測して次にユーザーが行いそうな操作を画面に表示する機能です。例えばユーザーがデバイスにイヤホンを刺すと、音楽アプリのSpotifyのプレイリストを提案するなど、ユーザーの行動を予測してサービスを提供します。 App Actionsはランチャー、スマートテキスト選択、Play Store、AssistantやGoogle検索アプリなどAndroid全体で活用されます。 Slices Image : google 検索した内容に対して、各アプリの関連した情報をAssistant検索結果に表示してアクセス可能な機能です。 例えば、Google検索で「Lyft」を検索すると配車サービスLyftの料金と時間などをSlicesと呼ばれる機能から情報を表示してくれます。 もっと詳しい情報は下記の公式ブログをご覧ください。 www.blog.google Smart Display Google Home Smart Display Google Homeは7月から発売される予定です。 既存のGoogle Homeと比べるとビデオ通話やYoutubeなどが見れるようになり、より便利になりました。 その他 ML KitやMaterial Theming、ARCoreなど、魅力的なものが沢山紹介されました! けれど、全てを書くには時間が足りず、また後日改めてご紹介できればなと思います。 おまけ 暑い、寒い!! 最高気温23°、最低気温13°で東京とたいして気温は変わらないのに日陰は凄く寒い、そして日向は燃えるような暑い天気でした。 我々は日陰で震えながら寒い!寒い!と連呼。 そんな時、持参していたウルトラライトダウンが大活躍。あったかい~  After Hours 夜7時から会場でパーティーが開かれ、ちょうど日本で知り合った方々と合流ができました! 1日の疲れを癒してくれるビール、食べ物、DJの演奏、ダンスをする方も! 楽しく有益な1日でした。 Google I/O 2018 Day Twoへと続く www.lifull.blog
こんにちは。 デバイスソリューションユニット開発グループでAndroid開発をしている衛藤です。 私は今年で2回目のGoogle I/O参戦!!どんな発表がされるのか楽しみです! 個人的にはAndroid以外にも視野を広げてGCPやMachine Learning系のセッションも聞いてみようと思っています。 今年は同じくI/Oに参戦している崔と交代でブログをお届けしますのでお楽しみに! 成田空港〜San Jose 5/7、東京の朝はどんよりとした曇り空です。午後から雨との予報を受けて早めに成田空港へGO! なんとか雨を避けて到着、出国ゲートをくぐったあたりでザーっと大雨に。(飛行機大丈夫だろうか・・・) 雨に振られる787 機内にて 大雨の中、無事に離陸しました。ここまで来ればあとは寝るだけ・・・の予定なのですが、 前回は全く寝ることが出来ずに徹夜状態で迎えたSan Joseの朝、今年も同じく一睡も出来ませんでした。 飛行機で眠れる方法教えてください。お願いします。と考えながらSan Jose空港に到着!いや〜揺れましたね! イミグレ イミグレも昨年同様に30分〜1時間程度の時間で問題なく入国することが出来ました。 そしてさすがカリフォルニア!外に出た途端日差しが痛い! 夜になると急に冷えるので、前回の反省を活かしウルトラライトダウンを持ってきました。 ホテルチェックインで若干問題が・・・ 今回は二人なので少し広めのホテルを予約しました。 しかし普通のホテルと違い、受付がないアパートタイプのホテルでした。鍵を自分でどこかで入手する必要があるという高難易度なホテルです。 巨大なダンジョンのようなホテルを眠そうな二人がさまよい続け、ホテルに電話したり通りすがりの人に訪ねようやく鍵を入手しました。 ※ 地下駐車場奥の金網にたくさん南京錠が取り付けられており、それを開けると部屋の鍵が手に入る仕組み 今年のホテルはこんな感じで良い雰囲気です!ダンジョンめぐり頑張った甲斐があります。 Google I/O バッジピックアップ チェックイン後、Uberを利用しI/Oの会場にバッジピックアップに向かいました。 例年と同様に、バッジピックアップ順にKeynoteの席エリアが確定されます。 今年はチェックインで時間を取られたものの、ど真ん中エリアに座ることができたのでひとまず良かったです。 バッジピックアップで貰える内容は以下の写真の通りで、例年と同じですね。 Googleチャリで爆走 Google敷地内にはGoogleカラーの自転車がたくさんあり、勝手に乗り放題です。 しかもアメリカサイズ、サドルを一番低くしてもつま先立ち! そして、誰でも勝手に乗れるため、自転車を後で乗ろうと止めていると勝手に持っていかれます。(いかれました) 眠さでテンションがマックスになったのか、二人で自転車でGoogle敷地内を駆け抜けました。 爆走する私 そのままGoogle Merchandise Storeに行き、大量にお土産を購入。1日目のミッションはクリアです。 大量のお土産 Pre Party参加 Google I/Oの前日は様々な所で前夜パーティが開催されます。 我々もとあるパーティに参加させて頂き、美味しいビールとともにエンジニアとの交流を楽しみました! さて、明日からが本番! いよいよ Google I/O 2018 の開幕です! 続くブログ投稿をお楽しみに☆ Google I/O Day Oneへと続く・・・ www.lifull.blog
こんにちは。 デバイスソリューションユニット開発グループ、韓国人の崔です。 弊社で LIFULL HOME'SのAndroidアプリ の開発を担当しています。 いよいよ5月8日〜5月10日Google I/O 2018が開催されます。 Google I/Oは世界最高かつ最大規模の技術発信イベントです。 現地には世界中から7千人以上のディベロッパー達が集まる中、私と同じ開発グループの衛藤と2名で参加します。 今回初参加ですが、すごくワクワクしていて楽しみです!! 昨年に続きまして 今年も体験したことを記録として残そうと思い、リアルタイムで現地の様子や感想を報告したいと思います。 拙い日本語ではありますが、見て下さっている皆様に出来るだけ分かりやすく書いていくので是非ご覧ください〜! Google I/Oとは? events.google.com Google I/OはGoogleが2008年から毎年USのサンフランシスコで開催しているディベロッパーカンファレンスです。 Googleによる最新技術や新製品・サービスの発表が行われています。 Google I/Oの「I」と「O」は二つの意味があります。 「 I nput O utput」と「 I nnovation in the O pen」の意味合いを持っています。 毎年3日間開催され、Googleプラットフォームを利用する世界中のディベロッパー達が集まり、技術を共有します。 朝から晩までGoogleのサービスを具体化したディベロッパーのアイディアを発表するセッションで進みます。 今年の見どころとして一つ紹介 今年は何と言ってもFlutterが盛り上がっています。 昨年1セッションだったのが今年は6セッションまで増えました!! Dart言語を使ってモバイルアプリ(iOS/Android)を共通コードで開発ができるフレームワークです。 とりあえず、どういうものか動画をみてみましょう。 Introducing Flutter Google I/0 2018開催発表 You nailed it. #io18 will be held May 8-10 @ Shoreline Amphitheatre! Apply to purchase a ticket from 2/22, 10AM PST to 2/27, 5PM PST. pic.twitter.com/yfRC949fee — Google Developers (@googledevs) 2018年1月24日 ちなみに今年は2018年2月22日にGoogle I/Oの開催告知があったので、早速抽選に応募しました。 抽選に当選 2018年3月1日の朝、招待状が届きました。 この時点で当選か落選か決まります。 メールを開くまでドキドキです(笑) そして見事に当選!! 準備編 今回は事前準備編と題して、来年Google I/Oに参加する方に向けて、どんな準備をすれば良いか書いて行きます。 昨年弊社の衛藤が書いた記事にも 準備編 がありますので、よろしければご覧ください。 飛行機・ホテル 世界中から何千人もがGoogle I/Oに参加するため、会場の近くは大変混み合います。 当選したら何より先に飛行機とホテルを予約しましょう。 私たちは expedia で航空券とホテルを確保しました。 会場に行けば朝食・昼食は出るので、食事なしのホテルでも構わないと思います。 パスポート USに入国するにはパスポートの期限が3ヶ月ぐらいの余裕を持ったほうがいいので、事前に確認しておきましょう。 初めての申請をする方は こちら を確認してください。 ESTA USに滞在するにはビザの取得が必要ない代わりにESTAが絶対!必要です。 ESTA は忘れがちなので、是非申請してプリントしておきましょう。 日本語も対応されているので、すごく簡単です。 ちなみに申請してから2日かかりました! 現地SIM or モバイルルータ 会場や施設内は基本的にWi-FIがありますが、緊急時に必要になることがあると思うので、 こちら を持って行きます。 おすすめアプリ Google I/O 2018アプリ Googleの公式アプリ 当日のスケジュールやセッションなどが見られる Uber & Lyft ボタンをタップして配車の依頼をするだけで目的地まで運んでくれるすごく便利なアプリ Google翻訳 翻訳言語をダウンロードしておくとオフラインでも翻訳可能 これがあると一安心! その他 ウルトラライトダウン 現金 & クレジットカード 常備薬 海外保険 モバイルバッテリー 日焼け止め サングラス スリッパ(機内用) USB充電器 携帯トイレウォシュレット USも日本と同じ110Vの電圧なので、そのまま家電製品が使えるはずです。 やっておくと良いこと オフラインコミュニティ参加 提供元 : Timers Inc. やっぱり日本人の知り合いもほしくなりますよね! 東京の参加者同士のMeetupも開催されています。 初めての参加者も多いため、是非参加して情報交換や交流しましょう! 今回はTimersさんのMeetupに参加しました。 USやGoogle I/Oが初参加者にとっては貴重で有益な情報を聞いたり、知り合いも増えて現地でご飯のお誘いなどもありました。 その他のコミュニティ GoogleのSNSのGoogle+にもI/O関連のコミュニティが存在します。 Meeupや会場のスケージュール、様々の情報共有が行われています。 Google+の Google I/O GDC Japan Google+の Google I/O 周辺イベントの参加 毎年Google I/Oと共に、I/Oの前日に色んな会社からイベントが開催されていますので、探してみるのも良いでしょう。 Intel's Google I/O Day Zero Party : Intel主催 Netflix I/O Party : Netflix主催 今回は上記の2社ですごく悩んでいます。 とりあえず楽しい悩みなので、2社とも申請しておきました。(笑) 社外向け報告会の告知 2017年5月23日(水)に 弊社 株式会社LIFULL 半蔵門オフィス にてGoogle I/Oの報告会を行いますので、是非足を運んでみてください! 以下connpassのページよりお申し込みください。 LIFULL.apk #2 - Re: Google I/O 2018 LT枠も大募集中です。 しかも今回は何と!Googleの特別ゲストスピーカーとして【Le Viet Gia Khanh氏】をお招きし、Firebaseアップデートについてお話頂きます!! 皆様の参加を心よりお持ちしております! Google I/O DAY ZEROへ続く〜♪ www.lifull.blog
こんにちは。 LIFULL HOME'S事業本部 不動産投資事業部の大塚と申します。普段はLIFULL HOME'S不動産投資というサイトの開発を主な業務として担当しております。 3/19(金)〜21(日)に開催されたScalaMatsuri 2018に参加してきましたので、今回はそのレポートをお届けしたいと思います。 ScalaMatsuriとは 毎年春先に開催されているアジアで最大級を誇るScalaに関するカンファレンスです。例年は土日の2日間で開催されることが多いようですが、今年は金曜日に「Training Day」(Scala言語の魅力を伝えるコンセプトの元、未経験の方でも参加しやすいプログラム)が設けられた計3日間での開催でした。 今回私はTraining Dayと、カンファレンス初日に参加してきましたので、それぞれで特に印象に残ったセッションについてお伝えさせていただきます。 03/19:Training Day Scalaに関する神話と真実 Scalaに関してよく言われる先入観をQ&A形式で説明していく発表で、未経験者にとっても非常にわかりやすい内容になっていました。 内容を簡潔にまとめますと、 Scalaは本番運用する上でも十分実用的であり、すでに世界中の様々な企業で使われています 適切な資料を使って学んでいけばそこまで学習コストもかかりません。関数型プログラミングの知識もそこまで高度なものは求められません Javaに比べて実行速度が遅いということもありません。ただし、関数型スタイルのプログラミングを多用すると若干遅くなる傾向はあります コンパイル速度は確かに遅いです。しかし、大幅に和らげる方法がいくつかあります といったことが述べられていました。 Scalaに関するよくある誤解(一部事実)を丁寧に解説していただき、未経験者にとっては一歩を踏み出すのに背中を押してもらえるような発表でした。 逆引き!Scala x ビッグデータ 「ビッグデータを使って卓球部を強くする」というストーリー仕立てのセッションでした。(発表資料は こちら ) 発表者二人の掛け合いが夫婦漫才のようで、ところどころで会場に笑いが起きていてとても楽しい発表でした。 内容を簡潔にまとめますと、 卓球台上のボールをトラッキングするシステムのデータ分析システムの構築を事例としてビッグデータの概略を説明 ビッグデータの処理は「収集」→「変換」→「統合」→「分析」→「活用」という流れを組む Scalaは参照等価なコードが書きやすいこととJavaの資産を流用できる点から、ビッグデータを解析するシステムに向いている 分散メッセージングシステムとしてのApache Kafkaや、ストリームデータ処理エンジンとしてApache Sparkなどが有名 といったことが述べられていました。 近年ではスポーツの世界でもビッグデータの活用が進んでいるということもあり、その有用性が一つのストーリーとして非常にわかりやすかったです。 また、セッションの最後にはビッグデータ処理のデモも実演していたのですが、ローカルマシンで大量データ処理を行っているため手短に終わらせないとメモリが溢れて落ちる、という謎の緊張感に包まれていたのも面白かったです。(笑) 03/20:カンファレンス形式 Scalaでの部分的な関数型プログラミング システムをすべて純粋関数(副作用のない関数)のみで構築しきるのは大変なので、部分的に関数型プログラミングのスタイルを取り入れるという話でした。(発表資料は こちら ) 部分的に関数がスタイルのプログラミングを適用していく例としてFIzzBuzzを出力するメソッドを例に取りながらわかりやすく説明されていました。 適用していく戦略として、 避けられない作用(作用層)とそうでない部分(純粋層)を切り分ける さらに依存関係は作用層→純粋層の一方向のみとする といった形でリファクタリングを進めていきます。 こうすることで抽出された純粋層のコードがそのシステムの核となるビジネスロジックと認識できるようになるとのことです。 Haskell + Scala ハイブリッド開発大作戦 HaskellをJVM上で動かす言語実装である「Eta」に関するセッションです。発表資料は こちら JVMで動くからこそJava/Scalaと連携することも可能となりますが、そのノウハウとハマリポイントについて発表されていました。 内容が非常に充実していて上手く要約する自信がありませんので、ぜひリンク先の資料をご覧ください。 特にJavaのようなオブジェクト指向言語における「可変状態」や「継承」といった機能を純粋関数型言語であるHaskell上でどのようにエミュレートしているかの説明は非常に高度で多くの学びがありました。 なお、Scala内にEtaを埋め込むこともEtaからJava/Scalaを呼び出すことも物理的には可能だそうですが、後者に比べて前者の場合は非常に多くの手間がかかるらしく、各言語の依存関係はScala -> Eta -> Java のようにするのが良いそうです。 会場の風景 ここからは当日の会場風景をご紹介いたします。 エントランスの様子。「Matsuri」というだけあって、赤提灯の和のテイストがイカしてますね。 会場内ではコーヒーやお菓子のサービスがフリーで提供されていました。 こういうちょっとしたサービスが嬉しいですね。 アンカンファレンスでの発表内容を投票するボードです。 付箋で貼られたタイトルに対して、聞きたいと思ったものにシールを貼っていき、当日の発表者を決めるスタイルでした。 個人的には「フルコンパイルに1000sかかるプロジェクトを分割してマイクロサービス化している途中の話」という内容が気になりました。 まとめ 今年初めて参加しましたが、セッション会場の熱気がすごく、また内容もどれも濃密で一エンジニアとして大変刺激を受けました。 ぜひ来年はScala力をあげて、アンカンファレンスなど発表する側になれるよう頑張りたいと思いました。 以上でレポートを終わります。 宣伝 株式会社LIFULLでは、エンジニア各職種の中途採用募集中です! エントリーお待ちしています。 【エンジニア 募集職種一覧】 | 株式会社LIFULL
半年ぶりの登場 の技術開発部の相原です。 LIFULL大学という社内制度でDockerゼミの講師を務めたのでそのことについて書きます。 LIFULL大学とは LIFULL大学とは弊社が実施している日本一働きたい会社に向けた取り組みの一つです。 LIFULL大学 従業員一人ひとりの能力開発を目的に、「必須プログラム」「選択プログラム」「選抜プログラム」からなるLIFULL大学(社内大学)を開校しています。 「選択プログラム」では、社長が主催する経営塾、プロジェクトマネジメント、レコメンデーション技術、ロジカルシンキング、英会話等、社員は自身が受講したいゼミを選択して受講できます。ほとんどのゼミで社員が講師を務め、職種や部門を越えてお互いに教え合う文化の醸成に繋がっています。 「選抜プログラム」は、次世代リーダー育成プログラムです。トップセールス、クリエイティブアワード、ベストマネジャー、役員推薦等、次世代経営者候補を選抜した海外研修等を実施しています。 引用: 日本一働きたい会社 社内公募によってその分野に対する専門性を持つ有志の社員が講師となり、受講した社員に対して講義を行います。 私は今年はDockerゼミの他にハイパフォーマンスフロントエンドゼミと称してフロントエンドのチューニングやServiceWorker, WebAssembly周りの講師をしました。 技術系では他にもMOOCで機械学習のコースを受講するといった趣旨のゼミがあったりと毎年様々なゼミが開講されています。 ちなみにLIFULL大学のページは同じく社内制度の クリエイターの日にて開発されたり と、社員が協力して作り上げている制度となります。 クリエイターの日 変化の激しいICT分野のマーケティング能力、技術開発能力を高め、イノベーションを創造するため、通常業務の枠を離れて、新たな技術や手法に取り組む機会を設けています。希望するクリエイター(エンジニア、デザイナー、プランナー、マーケター、プロモーター)は、個人またはチームで特設プロジェクトの提案を行い、承認されたプロジェクトについて業務時間の10%を使い、合宿形式で研究・開発を行います。 クリエイターの日サイト: http://www.creators.LIFULL.com/ Dockerゼミ 今回のDockerゼミは1コマ90分で2回開催し、1回目ではDockerの簡単な説明とハンズオン・2回目ではもう少し踏み込んでApplication Containerの仕組みの解説や本番導入での勘所、社内ということもあるので社内のどういった問題が解決されるのか、導入に向けて何が障害になっているのかということについて話しました。 社内向けに作った資料ということもあり全ては公開できませんが、今回は資料の一部を公開してゼミの空気感をお伝えできたらと思います。 中でもIstioをはじめとするサービスメッシュによるmicroservices構想やSpinnakerによるDeployment Pipelineは受講者の反応もよく、本番導入に対してもポジティブなイメージを持ってもらえたと思います。 最後に いかがでしたでしょうか、LIFULLではこのような雰囲気で活発に社内での勉強会が開催されています。 歯抜けな資料で全体感が掴みづらかったと思いますので続きはLIFULL大学でお会いしましょう。 LIFULLではエンジニアを募集しています。 【エンジニア 募集職種一覧】 | 株式会社LIFULL
こんにちは! LIFULL HOME'S事業本部 QAグループの佐藤です。 今回初めて、3月7,8日の2日にわたり開催されたJaSST’18 Tokyoへ参加させて頂きました。 JaSSTソフトウェアテストシンポジウム-JaSST'18 Tokyo 本記事では2日目の講演内容についてご紹介させて頂きます。 How to identify test flakiness in your test result data テスト結果からテストの不安定性(test flakiness) を読み解く 登壇者:John Micco 氏 (Google) オープンソースのデータセットとBigQueryを用いて、実際にSQL文を実行し、 テストデータの分析を行う手法について具体的なレクチャーを頂きました。 前半はテスト結果の分析、後半はGitリポジトリに蓄積されたデータの分析でした。 本チュートリアル用に作成されたリポジトリ github.com オープンソースのデータセット 感想 弊社QAグループにおいても、Seleniumを用いて継続的にE2E自動テストを実行し、 テスト結果をデータベースに格納し、ダッシュボードにおいて可視化と分析を行っております。 Flakyなテストについては、弊社の自動テスト実行環境においても、度々発生しており、 再実行回数を増やすことで対応しているといった状況です。 もちろんテスト結果の量においても、分析においてもまだまだGoogleのレベルに達しておりません。 今回のBigQueryにおける分析、Gitのコミットデータの分析はシンプルですぐに導入でき実用的なので、 メトリクス計測の手段のひとつとして検討していきたいと思います。 私が経験したソフトウェアテストの変遷 登壇者:柴田 芳樹 氏 (ソラミツ) テスト駆動開発と継続的インテグレーションの技術的変遷について、 具体例として柴田さんの経験を交えての講演を頂きました。 気になった点を要約すると、 1990年代までは結果を目視で確認していたが、2000年以降はテストファースト・テスト駆動開発による自動化されたテスト テストファースト 歴史的にフィードバックループは短くしてきた 最短はいま書いたコードを見直すこと テストファーストだとフィードバックループが短くなり、いま書いたコードを見直すことができる デバッグしているという感覚から、ひたすら実装しているという感覚へ 自動化されたテストは、いつでも何度でも実行可能なので、ソフトウェアの資産になる 手で行ったテストはもう一度時間をかけて目視で確認する必要があるので資産ではない 1990年代までの夜間ビルドから、2000年以降は継続的インテグレーションへ 昔はそれぞれ開発していて、ある程度できたら集める、というビックバン・インテグレーションだった 失敗する継続的インテグレーション マネージャーが関心を払っていないため、常にビルドに失敗している 静的解析ツールの警告が高度すぎて警告の意味がわからない 手動の単体テストを行う前にレビュー テストが終わった後にレビューをすると名前の変更などで手戻りが発生する マルチスレッドプログラミングのテストは難しい 間違っていても動いてしまうことがあるため、動かす前に知識・経験を持った人がきちんとしたレビューをする 100回動作しても保証されないので、自動テストが必須 発生した障害をきちんと記録して分析するが、どう分析していいかわからないので、専門家に相談していた Flakyな部分がある 例えば、3ヶ月前の変更部分がたまたま特定のマシンで露見する 継続的インテグレーションや自動テストを実践することが当たり前で、むしろ実践していないことが「弱み」になる QAは開発プロセス全体を通して深く関与しなくてはならない まとめ テスト駆動開発と継続的インテグレーションは必須 開発者とQAは開発の早い段階からソフトウェアの品質を作り込むために協業すべき時代となっている 感想 開発者とQAは開発初期から協業するべきということは本当にその通りだと思います。 テスト駆動開発と継続的インテグレーションの導入という点でも、テスト全体のサポート(弊社ではテスト計画の作成やレビューなど)においても、 初期の段階からQAチームなどのノウハウを持っているチームがサポートできる状態になっていることで、ソフトウェアの品質を作り込むことができるかと思います。 当然、人的リソースの問題などはありますが、協業を円滑に進めるための仕組み作りも必要かと思いました。 総評 ソフトウェアテストのカンファレンスには初めて参加させて頂きましたが、他のカンファレンスと違って明らかに参加者がテストに情熱を持っている雰囲気があり、Miccoへの質問も次々と出ており、参加者の私にもワクワク感が伝わってきました。 Googleのように先を進んでいるチームもあれば、そもそも自動テストの導入段階のチームもあり、ソフトウェアテスト業界全体を幅広く知ることで、自社の立ち位置も知ることができ、非常に有意義でした。 また、講演頂いたお二人に共通して、QAはゲートキーパーというよりも、全体を見守る立ち位置であるように感じられました。 継続的インテグレーション、継続的デリバリーなどによりソフトウェアテストの自動化が進み、より創造的な仕事に集中していけるような未来が見えてきました。 運営・参加者の皆さま、どうもありがとうございました! 最後に LIFULLではエンジニア各職種の中途採用募集中です! エントリーお待ちしております。 募集中のエンジニア職種一覧【カジュアル面談の応募もこちら】 | 株式会社LIFULL recruit.lifull.com
こんにちは!LIFULL HOME'S iOSアプリ開発担当の高橋です。今回のiOSの勉強会はARKitにテーマを絞り、iOS版LIFULL HOME'SアプリのAR機能「ARお部屋計測」の開発当時の話を、弊社のディレクター、デザイナー、エンジニアの各目線からご紹介させていただきました。 ARお部屋計測とは? 最初に「ARお部屋計測」についてご紹介します。 この機能は「見学メモ」タブの「部屋を計測」ボタンからご利用いただけます。 ホームズくんと一緒に、お部屋の角を画面に写しながらタップしていくだけで、簡単に間取りを計測することができます。 ※ 使用するにはiPhone 5s以降の機種で、iOS11がインストールされている必要があります。 まずは使って体験してみてください! 発表 事業会社のARKit UX設計かいつまみ話 島田真寿美(ディレクター) LIFULL HOME‘S App Night #AR 事業会社のUX設計かいつまみ話 from LIFULL Co., Ltd. www.slideshare.net ARKitを導入した経緯と、仕様を考えるに当たって気をつけたポイントについてのご紹介でした。 普段の開発では、お部屋の探しやすさ・使いやすさといった「機能的価値」の向上を目的としていますが、今回の機能はアプリを使ってもらうことを目的として、「楽しい体験」の提供に重点を置きました。 ARはまだ馴染みの無いユーザが多いため、途中で挫折しないよう適切なガイドをする必要があります。今回はホームズくんとコミュニケーションしながら計測する設計にすることでユーザの利用ハードルを下げる工夫を行っています。 ARの時代がきた!そのときデザイナーは何をしたか 小林武蔵・小泉貴奈未(デザイナー) LIFULL HOME‘S App Night #AR ARの時代がきた!そのときデザイナーは何をしたか from LIFULL Co., Ltd. www.slideshare.net デザイナーは3Dモデリングについては(ほぼ)未経験の中、「ホームズくんの3D化」に挑戦しました。 ホームズくんの世界観を壊さないよう工夫しているのがポイントで、 球体のようなシンプルな形状をベースにすることで3Dデフォルメ感を出しています。 また一方で、ARに溶け込むリアリティを出すためにテクスチャ・アニメーションにこだわっています。 LT時はBlenderによるデモを行いました。詳しくは過去の記事をご参照ください。 www.lifull.blog www.lifull.blog www.lifull.blog TangoのモデルをARKitに流用した話 菊地 慧(エンジニア) LIFULL HOME‘S App Night #AR UXを突き詰めた15日間 from LIFULL Co., Ltd. www.slideshare.net TangoとはAndroidのAR技術なのですが、残念ながら現在サポート終了のアナウンスが出ております。 この技術はiOSとは関連はありませんが、Tangoを活用したカーテンシミュレーションアプリ「LIFULL HOME’S Room Style AR」の開発経験は、ARKitで大いに活かされました。 これは私たちのチームで経験した最初のAR開発プロジェクトで、ARは何ができて何ができないかを探りながら進めました。 Blenderで作ったモデルをARKitに取り込む方法もご紹介しておりますので、iOS開発者の方もぜひ資料をご覧ください。 「AR最速対応をした間取り計測の秘話」 又来 薫(エンジニア) LIFULL HOME‘S App Night #AR 最速対応をした間取り計測の秘話 from LIFULL Co., Ltd. www.slideshare.net 「ARお部屋計測」機能を実際に実装したエンジニアの発表です。 機能内容としては、 AR空間の平面上に点と線を引く 点の位置にホームズくんを移動させる 囲んだ線を間取り図のように表示する とシンプルではありますが、間取り図の角度の調整や、ホームズくんを可愛く見せる方法など様々な工夫を行っています。 ARの文脈でユーザに説明するのも、Appleのガイドラインで述べられている重要ポイントです。 これらの知見が詰まった資料になっておりますので、ぜひご覧ください。 まとめ ARはゲーム系やエンターテイメント系のアプリでよく使われておりますが、ツール系でもマッチするユースケースはたくさんあると思います。 チャレンジする障壁は高いですが、だからこそ他アプリと差別化することができます。 今まで経験がなかった方もぜひ挑戦してみてください。 今回の発表が、今後ARにチャレンジする方への参考になれば幸いです。
こんにちは。 LIFULL HOME'S事業本部QAグループの木住野(きしの)です。 本記事は3月7,8日の2日にわたり開催された JaSST’18 Tokyo 1日目の参加レポートです。 前回の記事 ではイベントの規模感や会場の雰囲気が伝わったと思いますので、本記事では1日目の講演内容についてご紹介いたします。 Advances in Continuous Integration Testing at Google 登壇者:John Miccoさん (Google) 資料 : Advances in Continuous Integration Testing at Google – Google AI 簡単に要約すると以下のような内容でした。 Googleでは420万ケースの自動テストがある 修正したソースコードの影響範囲を自動分析し必要なテストを実行している テスト結果をすべてデータベースに保存している 実行するテストの選択や実行のスケジューリングも自動化している 保存されたデータを用いてFlakyなテスト(不安定なテスト)の結果を分析し必要な情報を開発者にフィードバックすることでプロダクトの品質を維持している 例) 前回は成功したケースが今回失敗したら安全ではないと判定され、開発者へフィードバックされる 感想 私の担当領域も自動テスト、CI/CD部分なのでとても楽しみにしていた講演でした。 Flakyなテストについての考察は弊社でもすでに実践済の部分もありましたが、参考になる部分が多くありました。 以下資料には載っていませんがQ&Aなどで聞けた興味深かった点です。 Googleの開発者は自動テストコードの実装スキルが求められる 手動テストはない(ユーザビリティテストや外国の翻訳部分のみ手動でテストしている) 手動テストのコストとバグを流出するリスクのバランスを決めて経営陣を納得させた上で自動テストのみで品質を担保している 新規事業でも基本的に手動テストはない 会場からは手動テストがないことについて質問が集中していました。(みなさん信じられなかったようです。) また、テスト結果の分析に当たり前のように機械学習を用いている点にGoogleの基礎的な技術力の高さを実感しました。 コードを書きながら学ぶテスト駆動開発 (チュートリアル) 登壇者: 和田 卓人さん (タワーズ・クエスト株式会社) 資料(当日の内容に近いもの): https://speakerdeck.com/twada/tdd-live-in-50-minutes こちらは テスト駆動開発 の翻訳やワイルド・サバンナ(ライオンのアスキーアート)で著名な和田 卓人(t_wada)さんが実際に教えてくれるという個人的にはとても贅沢なセッションでした! テスト駆動開発(以下TDD)の概要、進め方、勘所を説明していただいた後に、 デモとしてTDDライブコーディングを見せながら更に実践的な考え方や細かなテストケースの実装方法を教えて下さいました。 その後、参加者でペアプログラミングを行いTDDを実践するという内容でした。 感想 TDDやコンポーネントテストの実装についてより深く腹落ちさせることができました。 また、TDDのRed→Green→ Refactoringで実装を進める心地よさを味わうことができました。 以下印象に残った点です。 テストコードは「1. 準備 , 2.実施, 3. 検証」の順で実行されるので、その順で実装をしようと思うかもしれないが3の検証から実装するのが良い 検証から実装することでテスト対象の機能の役割や動きが明確になるからです。 1 assert 1 test(1テストケースメソッドには1つの検証処理)がオススメ 1テストケースに複数検証処理を入れると以下のデメリットが有るからです。 複数の検証があるとテスト結果からどの検証が失敗したのか判断しづらくなる 失敗した検証の次の検証は実施されない(Failしても次の検証を実施できるフレームワークもあります) TDDは不安と自信とコードとの間合いを測る技術 実装に自信がない機能に対してはテストが多くなったり、自信があると最小限のテストコードで進むことができる ただし、基本は一歩ずつ機能を確認する 最初のうちはミューテーションテストをしながらテストが期待通りに動くか確認しながら進める テストが想定通りに失敗しないとそもそもの前提が崩れてしまうため、確認する必要がある。 ミューテーションテスト(ミューテーション解析)とは・・・ ミューテーション解析 - Wikipedia テストコードを構造化したり、適切に説明を追加することで対象コードの仕様を表す資料になる 他の開発者に引き継ぐ場合や将来自分が改修する場合などに重要になります。 # 構造化され、説明が追加されているテストコード例 @DisplayName ( "FizzBuzzクラス" ) class FizzBuzzTest { private FizzBuzz fizzbuzz; @BeforeEach void 前準備() { fizzbuzz = new FizzBuzz(); } @Nested class convertメソッド{ @Nested class _3の倍数の時Fizzを返す { @Test void _3を渡すと文字列をFizzに変換する() throws Exception { assertEquals( "Fizz" , fizzbuzz.convert( 3 )); } @Test void _99を渡すと文字列をFizzに変換する() throws Exception { assertEquals( "Fizz" , fizzbuzz.convert( 99 )); } } } # 以下省略 構造化した場合のテスト結果: fizzbuzz_good_result # 構造化されておらず説明もないテストコード例 class FizzBuzzBadTest { private FizzBuzz fizzbuzz; @BeforeEach void 前準備() { fizzbuzz = new FizzBuzz(); } @Test void _3を渡すと文字列をFizzに変換する() throws Exception { assertEquals( "Fizz" , fizzbuzz.convert( 3 )); } @Test void _99を渡すと文字列をFizzに変換する() throws Exception { assertEquals( "Fizz" , fizzbuzz.convert( 99 )); } # 以下省略 構造化しない場合のテスト結果: fizzbuzz_bad_result まとめ どのセッションも魅力的で全てのセッションに出たかったです。 各社の最新のソフトウェアテストの知見や技術、そして熱気に触れられてとても良い刺激になりました。 弊社の自動テストやテスト文化、スキルはまだまだ改善の余地があるので、 改善してよりよいサービスをより早く届けられる仕組みを作りたいと思いました。 また、その成果をJaSSTで発表して、業界へ還元していきたいと思いました! 最後に エンジニア各職種の中途採用募集中です! もちろんQAエンジニアも募集しています。 エントリーお待ちしています。 募集中のエンジニア職種一覧【カジュアル面談の応募もこちら】 | 株式会社LIFULL recruit.lifull.com
こんにちは! 株式会社LIFULLでLIFULL HOME'S事業本部の木村です。 3/7-8の二日間に渡って開催されましたJaSST'18 Tokyo(ソフトウェアテストシンポジウム)にゴールドスポンサーとして協賛させていただきました。 その様子を簡単ですがご紹介します! JaSST'18 Tokyo JaSSTソフトウェアテストシンポジウム-JaSST'18 Tokyo NPO法人ASTER (ソフトウェアテスト技術振興協会)さんが主催するソフトウェアテストシンポジウムで、2017-2018年度も全国各地で同シンポジウムを継続的に開催されています。 ソフトウェア、組み込み系、WEBなど様々なカテゴリのQAエンジニアやテスターの方々が一同に集うイベントです。 開催時の様子 初日の朝からたくさんの方々が列を作って入場を待っており、600人以上(!)の参加者があったそうです。 弊社はQA部門が独立していることもあり分業されていることもあり、私自身理解が難しい内容も多かったのですが、これまであまり追ってこなかった領域でもあり興味深く学ぶことができました。 そんな私が印象に強く残ったいくつかのセッションについて簡単ですがレポートします。 「Advances in Continuous Integration Testing at Google」(初日の基調講演) GoogleのJon Miccoさんが登壇され、Googleの品質管理やテストについてお話されました。 「Googleのテストは100%自動化されている」 「100%自動化にするためにテストが全部完了せずにリリースすることもある」 「100%自動化されているのはGoogleが大きくなったが故のある種割り切り判断でもある」 「QAの独立組織は不要。各チームにQAエンジニアを置くのがいいと思う」 など、我々にとっては刺激的なお話をされていました。※サテライト会場からは見聞きしにくかったこともありもし間違いがあればご指摘ください。 会場からの質問ではやはり自動化についてのヒントを求める内容が多く、「100%自動化」できていることへの驚きが多かったのだと思います。 「Web.JaSST ~ウェブ系QAがみんなのお悩みに全力で提案を返す会~」 弊社に近いWeb系のQAについてのパネルディスカッションでした。 後半は会場からの質問に回答する形式で、事前に質問をwebページから募集する形でいいね数が上位のものが採用されたのですが、なんと私が質問した「QAエンジニアの採用」についてが取り上げられ回答いただきました! 転職市場に開発スキルも持つQAエンジニアは少ないということで、パネラーの方々の例ですと、 * 開発系エンジニアからQAエンジニアへのコンバート * QA系イベントにたまに参加する自動化などへの意識が高い開発系エンジニアを口説く など参考にしたい回答をいただきました。 また、他の内容ではQAエンジニアの守備範囲についての難しさなどが注目されていたように思います。 「アジャイル・自動化時代のテストの現場のリアル」 こちらもパネルディスカッション形式で、アジャイル開発でのテストやDevOps、サイボウズ・ヤフー・クックパッド・Google(敬称略)での取組み事例など交えて議論されました。 クックパッドのコミットからリリースまでのタイムがGoogleより速かったり(すごい!)、サイボウズのアジャイル開発導入での成功事例などこちらも為になるお話を多く聞けました。 まとめ 前述の基調講演の内容で影響があったのかなかったのか定かではありませんが、多くのセッションで「自動化」や「アジャイルテスト」がキーワードになっていた印象です。 QAエンジニアやテスターだけでなく開発系エンジニアにも大いに役に立つイベントでした。 弊社のQAエンジニアも参加しておりチュートリアルセッションなどにも参加していたようです。 近く当ブログでレポートが掲載されますのでご期待ください! 宣伝 実は当イベントの実行委員会に弊社のエンジニアマネージャーが二名参画しております!一名はこの東京開催の委員長を務めていました!(お疲れ様でした!) エンジニア各職種の中途採用募集中です!エントリーお待ちしています。 【エンジニア 募集職種一覧】 | 株式会社LIFULL recruit.lifull.com 過去の協賛レポートはこちらです。 www.lifull.blog
こんにちは! 株式会社LIFULLでLIFULL HOME'S事業本部の木村です。 普段は賃貸領域を担当しながら、技術マネージャーとして人事や裏方の仕事も担当しています。 さて、今回の記事は、3/9-10に開催されたPHPerKaigi2018の協賛レポートです! 今回はシルバースポンサーとして協賛させていただきました。 その様子を少し紹介したいと思います。 PHPerKaigi 2018 とは PHP言語のイベントです。なんと今回が初開催にも関わらず2日間の大型イベントとして開催されました。 場所は東京都の練馬です(練馬区民なのでチャリで来た) phperkaigi.jp LIUFLL HOME'SではサーバーサイドでPHPを採用しており親和性も高くスポンサーしました。 Day.1 初日は夕方からの開催で、かってに予想していた雰囲気とは異なりアルコールも手伝ってか、聴講側から愛のあるツッコミが飛び交うなど超カジュアルな雰囲気でお祭りといった感じ。 特にuzullaさんのLTと発表はすごかったです色々と(笑) ※スライドはページ下部「まとめ」に記載しています。 ちなみにdo_akiさん曰くPHPerの仕事をペチペチしていると表現するそうです。 残念ながら弊社はシルバースポンサーなので掲示なし… Day.2 2日目は会場がA,Bに分かれてプレゼンと相談会などが実施されていました。 Laravel相談会やプレゼン登壇者とのQA会場などになっていたようですよ。 数ある発表の中でもベストスピーカー賞を受賞された後藤さんの「SOLIDの原則ってどんな風に使うの?~オープン・クローズドの原則編~」はとても分かりやすくためになるものでした。さながら家庭教師の先生のようでした。 あんな先輩エンジニアがいたら幸せですね。ベテランも新人もぜひご覧になってください。 まとめ まず、運営もスピーカーも参加者もPHPer(当たり前ですね) PHPに思いが強い人がこんなにもいることに刺激と少々の安心を感じた次第です。 次の機会があればぜひ弊社もスピーカー参加したいですね。 最後に、スライドをまとめてくだった方がいらしたので掲載させていただきます(ありがとうございます!) www.manasnote.com 宣伝 (よく勘違いされるのですが)不動産・住宅情報の総合サービスであるLIFULL HOME'Sが主力の弊社ですが不動産会社ではありません。 たくさんのエンジニアが所属する、ものづくりにも力を入れている企業です。 これからも、国内外のイベントやカンファレンスへのスポンサーや登壇を通して、エンジニアコミュニティを盛り上げることに協力していきたいと思います。 エンジニア各職種の中途採用も募集中です!エントリーお待ちしています。 募集中のエンジニア職種一覧【カジュアル面談の応募もこちら】 | 株式会社LIFULL recruit.lifull.com
はじめまして! このブログに登場するのは初になります。 2017年4月にデザイナーとして入社しました加藤です! 今回は、私も運営に参加した、弊社のデザイナーによるイベント「デザイナーの放課後 #2」についてご紹介します。 デザイナーの放課後って? LIFULLではデザイナー同士で「お互いの仕事のナレッジを共有し合う会」を毎月実施しています。 その発展の場として「外部の方に向けて発表することで、交流の場にもなるのではないか?」と声があがったことが、開催に至るきっかけです。 自分たちのナレッジを外部に向けて紹介することで新たな発見が生まれそう。同時にLIFULLのデザイナーのことを知っていただける良い機会にしたい。 という想いから、このイベントが立ち上がりました。 第2回となった今回は「Retty」「マネーフォワード」のデザイナーさんをゲスト登壇者としてお迎えしました! 席数を40席になんと120名ほどの応募!!!ありがとうございます。 会場の関係により今回は抽選にさせていただきました。 イベントの流れ 「デザイナーの放課後」では、まず弊社のデザイナーを含む登壇者3名によるナレッジの共有を順番にしていただいています。 LTの後には登壇者同士でのディスカッションの時間を設け、お互い聞いてみたいこと、会場のみなさまからのハッシュタグを利用した質問などにお答えいただきました。 今回の流れはこんなかんじです。 LIFULLのアプリの育て方 〜やったほうがいいをちゃんとやる〜 by小林 武蔵/LIFULL 想いを伝え、愛を育むデザイン by池内 健一さん/マネーフォワード Retty流 世界の描き方 〜大きなビジョンを緻密にデザイン〜 by山本 麻友美さん/Retty 登壇者3名と会場のみなさまによるディスカッション ビアバッシュ 今回は、デザイナーの放課後#2に参加した私が、デザイナーとして心に残った部分を抜粋しレポートさせていただきます! 「Simple」で「Amazing」でもある至高 弊社の小林の発表では、「 LIFULL Act 」のうち「Simple」と「Amazing」になぞられて自身のデザインに関する考え方を説明していました。 ※LIFULL Actとは、LIFULLの社員が掲げる指標で、「Life-centered」「For All」「Happy」「Simple」「Amazing」の5つがあります。 Simple … 操作に脳を使わせない Amazing … 魅力的な体験を作る このLT後、操作に脳を使わせないというワードが、自分の中でお気に入りになりました。 どうしたら、使う人が操作に悩まず次のフェーズにいけるのかということは、 UI/UXに関わる人の最大の課題であり、一番悩み、時間を費やすところだと思います。 その反面、ユーザーには無意識に操作をしてほしいので、ユーザーが使う時間は0秒が理想、ということになります。なかなか面白いです。 「Simple」ばかり追い求めていると、一見なんの変哲もないユーザーが使って何の想いも残らないものになってしまいます。 脳が一切の反応を示さずに通り過ぎるだけのサイトやアプリに魅力はあるのでしょうか。 そこで「Amazing」です、ここに"魅力的"という要素を加えるわけです。 新しい体験や、ワクワクする体験をすることで「良い思い出や感情を持ち帰ってもらう」 といった温かい余韻がそのサービスに生まれます。 LIFULL HOME'Sを使う上では「家探し」というユーザーの方の共通の目的がありますが、「家探し」というのは、いろいろな情報をたくさん見比べて自ら調べなければならないため、ユーザーにとっては大変なことだと思います。 Simpleな脳を使わせない操作性と、Amazingといえるワクワクするような新しい体験を盛り込むことで、そのサービスが「家探し」をも素敵な体験に変えることが出来るかもしれません。 魅力を体験してもらいやすくする工夫 株式会社マネーフォワードの池内 健一さんは、マネーフォワードは「魅力に触れてもらう工夫を多くしている」とおっしゃっていました。 サービスには制作者が伝えたい「そのサービスの魅力」があり、それをしっかりと使う人が「感じやすい設計」にする。 意外にも、設計の部分で「ユーザーに使いやすく使いやすく…」と考えていると、自らのサービスの魅力や強みを伝えるという点を見落としてしまっているかもしれません。 魅力を伝え→魅力を体験してもらい→魅了し続ける 普段サービスを提供している身として、自分のサービスが他のサービスより魅力的な点はどこなのか、どうやったらその魅力が使っていただいている人に感じてもらうことができるのか、考えることも UI/UXデザイナーとして大事な部分だと感じました。 ユーザーからユーザーへ想いをちゃんと伝える Rettyは、みなさんご存知の通り「信頼できる人のオススメ」から自分にとってBESTなお店が見つかるサービスです。 今回はRettyの山本 麻友美さんに、そのお店のオススメ度合いを示すアイコンをリニューアルした時のお話をしていただきました。 オススメした人のオススメ度合いが、アイコンによって届ける側のユーザーに同じ度合いとして届いているのだろうか調査したところ、人によってアイコンに感じるオススメ度がバラバラだったようです。 オススメする人の想いがちゃんと届くよう、オススメ度合いを誰もがわかる「直感的にわかるモチーフ」「オススメの度合いがわかる度合い感」を意識して作り直し、最終的にスターマークを使用したお話をされていました。 オススメしたい人が思う度合いと、届けた相手が感じる度合いが違う ことが自分にとって新たな気づきになりました。 自分もユーザー調査やヒアリングを大事にして、けして自分の感覚だけを信じすぎずに、誰もが想いをくみとりやすいような表現をすることを大切にしたいです。 「どれだけユーザーのオススメする声を生の状態で届けられるのか」という部分に向き合ったお話にデザイナー魂を感じました。 まとめ 前回の第一回 からこのイベントを社員としてお手伝いしていますが、いつも思うことが「登場したサービス全部使ってみたい!」ということです。サービスはいつも普段あたりまえにあって、制作者さんの想いや声を聞く機会はほんとうに少ないです。 こういったイベントで制作者の想いやこのサービスの魅力を生で聞けると、良い意味でサービスに人間味というものを感じられ、終わった後、いつも帰り道にそのサービスをダウンロードしています。 ナレッジの共有の後のディスカッションでは、別々のサービスでUIUXを志す3名のコラボレーションを目の当たりにすることができました。 最後のビアバッシュも、多くの方にご参加いただき、私自身も多くの方とお話しする機会をいただきました。 とても楽しく、いろいろなつながりをもてた時間となりました。 以上、デザイナーの放課後 #2開催レポートでした!次回も、たくさんのご参加をお待ちしております!! また、 LIFULLでは一緒に働く仲間を募集中です! 新卒も中途も絶賛募集中。 共により良いサービスを世界に生み出しましょう! recruit.lifull.com
こんにちは。 LIFULLのデザイナーのミーコです。 毎日寒い日が続いていますが、そんな寒さを吹き飛ばす勢いで 2018年1月30日(火)~2月12日(月)の間、 ZeroBase表参道にて期間限定のPOP UP SHOP 「ホームズくんCAFE」 がオープンしています! ホームズくんCAFEでは人気店の協力によるチョコレートやコーヒーのホットドリンクのテイクアウト販売と、 「住まいも、マグも、“ピッタリ”を選ぼう」をコンセプトにしたここでしか買えないホームズくんマグカップ(全8種類)の販売を行っております。 2FではVR等の最新テクノロジーで一歩先の住まい探しを体験できる【TECH EXHIBITION】や 週末には専属アドバイザーによる家探しや家づくりの相談会も合わせて開催しています。 なんと毎日ホームズくんもお店に遊びにきているのでぜひお越しください! 今回はこのホームズくんCAFEを開催するにあたり LIFULLのデザイナーが携わったことをブログでお伝えさせていただければと思います。 プロジェクト開始 プロジェクトの起案~承認まではプロジェクトオーナーであるマーケティング担当者が行い、 店舗企画から制作チームも加わり、互いに意見を出しながらプロジェクトを進めます。 プロジェクトオーナーと二人三脚で推進していく主な制作チームは アートディレクター1名、デザイナー1名の体制で、私はデザイナーとしてアサインされ、 商品であるマグカップのデザインだけでなく、ロゴデザイン、看板・店舗デザインから、販促物の制作も一通り行うといったプロジェクトでした。 デザイン制作期間 店舗の施工や看板の印刷は社内では行えないため、デザイナー自身も 店舗設計・施工会社、看板の印刷会社数社との打ち合わせを行ったり、実際に現地に足を運びながら制作を進めていきます。 看板や店舗の入稿データはS=1/10やS=1/30サイズで作ることが多く、 全体デザインのサイズ感や使用する写真素材の解像度もつどつど計算して検証しながら制作する必要がありました。 実寸サイズですぐに確認することができないので、わからないことが多かったり、 データが重くなると不具合が起き始め、締め切りが迫るなかヒーヒー言いながら制作を行っていました。 店舗関連の制作と同時進行で商品のマグカップも取り扱い業者さんと打ち合わせを行います。 業者さんから提案されるものに対して、もっとこういうことができないか、この商品を使いこんなことができないのかを逆に提案しつつ、 やりたいこととできることが合うように8種類のひとつひとつを丁寧に決めていきます。 マグカップのデザインは偏りがでないよう、同じ部署のデザイナーにも協力してもらいバリエーションを出しつつ 全体のバランスも保てるようにしていきました。 マグカップの湾曲に対してデザインがどうなるのか想像して、入稿データを作るのには一苦労でした。 ▼このまま入稿するとホームズくんの形が歪む恐れが..... ▼マグカップの形に沿ってデザインデータを作り起こします。 こうしてマグカップが完成しました! 全ての制作物はクリエイティブ・ディレクターのチェックを挟んで、 入稿を行ない、マグカップの納品と店舗の施工開始日を待ちます。 その間当日まではフライヤーやメニュー表など、販促物をバババッと制作します。 A3サイズ未満の入稿は実寸で確認ができるので安心でした。 ついにオープン! 施工はオープンの日の深夜から始まります。 関係者が立ち会って施工を見守り、店舗の最終調整を行います。 無事に出来上がってオープンできるのか不安と期待でドキドキの瞬間です。 朝8時頃には施工はほぼ終了して、機材をセットするなど微調整を行い、無事オープンできました! 最後に ずっとPC画面の作業なので実物が出来上がったときはとても嬉しかったです。 そして人通りの多い表参道に、自分が携わったものが公開されているのは感慨深いです。 多くの人に見てもらえると思うと、励みになりますね。これからも頑張ります! というわけで、ホームズくんCAFEはリアル店舗ですが、LIFULLのデザイナーも一緒に関わって制作をしています。 WEBサービスを運営しているLIFULLのデザイナーもこういう仕事もするのか〜と興味を持っていただけたら嬉しいです。 あとはホームズくんCAFEに来て、より多くの人にホームズくんを知ってもらえたらいいなと思います。 マグカップにはいろんな表情のホームズくんがいるので、 お越しの際はぜひ手にとってご覧ください。 寒い日が続きますが、暖かいホットドリンクを飲みに「ホームズくんCAFE」にお気軽に遊びに来てください。 お待ちしております! 「ホームズくんカフェ」店舗概要 営業期間/時間 2018年1月30日(火)~2月12日(月) 11:00~20:00 ※2月12日は17:00にて閉店 場所 ZeroBase表参道(東京都港区南青山5-1-25) 東京メトロ「表参道駅」より徒歩1分 lifull.com
平成30年になりました!今年もどうぞよろしくお願いします! 「クリエイターの日※」運営委員会のオノです!今回は、第5回創民祭について共有させていただきます! ※LIFULLの制度。自分で一から企画し、モノづくりや技術検証の活動に業務時間の10%を使うことができる仕組み 創民祭とは? 創民祭 (そうみんさい)とは、業務や「クリエイターの日」、プライベートの成果など、LIFULL社員が作ったプロダクトをお披露目する社内展示会です。 日頃から温めてきたプロダクトのお披露目! 仕事帰りの一杯! 他部署社員との交流! などが楽しめる、ものづくりを頑張るクリエイターによるクリエイターのための半年に一度のお祭りです(第五回は2017年10月開催でしたので、だいぶ公開が遅くなってしまいました…)。 過去の様子はこちらで! 第1回 第2回 第3回 第4回 第4回 から実施され好評だったライトニングトークもパワーアップ!?していましたねー。新卒1年目デザイナーさんの研修報告やBAD UIといったHCD活動に関するトークもありました! ️全部で9個!展示プロダクト 当日に展示されたプロダクトと出展者のコメントです(今回はコメントの一部だけご紹介)! ①VRアクションゲーム (趣味で作ってます!)VRアクションゲームです。剣や魔法でモンスターと戦ったり、広大な世界を当てもなく彷徨ってみたり、木を伐って家を建ててみたりできます。 実際にプレイを体験は、 こちら から。 ②ARお部屋計測 2017年9月18日(月)よりiOS11の新機能「ARkit」に対応した新たな機能「ARお部屋計測」では、iPhoneのカメラをかざすだけで簡単に室内のサイズを計測できます!メイン業務がある中、ディレクター、デザイナー、エンジニア皆で時間を捻出して取り組みました。お部屋を採寸するだけでなく、ホームズくんと2ショットもとれる裏技も…! ③LIFULL HOME'S Room Style AR AR空間にカーテンを掛けられる模様替えアプリです。お部屋をスキャンしたら、アプリ上でカーテンレールから色柄まで指定してカーテン模様替えのシミュレーションができます。アプリ開発の事例がなかったので、台湾までセミナーを受けに行ってきました! ④LIFULL大学HP作成! 従業員一人ひとりの能力開発を目的にした自主ゼミである「LIFULL大学」( 詳しくはこちら )。人事部の工数削減や受講者のゼミ登録の効率化を目的に、人事部に現場のヒヤリングから実施して1つのWebサイトにまとめました。 ⑤自律型サーバ運用システム 経験豊富なインフラエンジニアにより行われてきたサーバの異常検知や手作業での障害対応を、人工知能で解決しました。これにより、大幅なコスト削減を実現!慣れない論文を読み漁り、業務の合間を縫って開発を進めました。 ⑥LIFULL Library このシステムは、LIFULLで共有されている蔵書をスマートに貸し出し可能にします。バーコードリーダーだから返却も一瞬です!複数スタックありで難しかった環境設定は、dockerで工数削減。高速開発ができました! ⑦OneLogin AWS Connector AWSCLIやAWSSDKを使ってAWSにアクセスする際に利用されるクレデンシャルをOneLogin経由でログインして取得、設定してくれるツールです。AWSコンソールだけじゃなくてCLIもOneLogin経由で利用したい!そんな声に、これなら一発です。オープンソースでpythonのツールもあったのですが、仕組みの理解とGoの練習のため新規に作りました。 ⑧離席時に自動で画面スリープしてくれるPCアプリ このアプリは、席を離れることを感知して自動でPC画面をスリープしてくれます!想定より早く形にできたので、データ受け渡しをAPI経由からBLE経由で渡す仕様へ変更し、サーバの処理コストを削減できるようにブラッシュアップ!空き時間でAPIを使ったデモアプリも作成しました! ⑨LIFULL KeepLearning 勉強しようと思ってアプリをインストールしても、使うことすら忘れてしまった経験はありませんか?KeepLearningなら設定した教科についてのクイズが”ポップアップ通知”で1日3回届くので、アプリを開く必要がなくなります!これで3日坊主からサヨナラです! 結果発表!最優秀賞は? 最優秀賞 LIFULL大学HP作成 創民祭で最も映えある賞は、こちら!LIFULL社員が教え学び合う文化が、さらに充実した形となりました。 山田賞 離席時に自動で画面スリープしてくれるPCアプリ 弊社役員の山田が推薦する賞です。全社員全席に導入し、セキュリティも高めていきたいですね! Tech賞 自律型サーバ運用システム いぶし銀でテクニカルな成果へ送られる賞です。コスト削減をエンジニアリングで解決! BEST SPEAKER賞 schoo動画研修 LTで最もみんなの心を掴んだ賞です。映えある第一回目の受賞は、一年目デザイナーのパワー溢れるプレゼンでした! 最後にー! 創民祭の5回目、その一部をちょっとだけお伝えしました!どんどん展示物のクオリティも上がってきていて、半年に一度の楽しみな行事になってきています! LIFULLでは、一緒に働くメンバーを募集中!新卒も中途も絶賛採用中です。 ご応募お待ちしてますので、ぜひみてくださいー! lifull.com
こんにちは。LIFULLの松井です。 今回は、11月に開催された「リーダーズアイセミナー(社員向けの講演会)」についてご紹介します。 LIFULLが目指すWell-being LIFULLは今年のテーマとして、 「Innovation」と「Well-being」 に力を入れています。 「Well-being」 は、WHO憲章の中で謳われている健康の定義で、単に病気でないというだけでなく 「肉体的にも、精神的にも、そして社会的にも、全てが満たされた状態」 を意味します。 LIFULLとしては、 「社員の幸せを高めていくもの」 として、重要視しています。 今回は 「Well-being」を推進するLIFULLの取り組みのキックオフ として、 予防医学の研究をされている石川善樹先生 にご講演いただきました。 自由参加の講演会でしたが、 なんと100人程度の社員が参加しました! キックオフに続き、今後も睡眠や食事などのプログラムが展開される予定です。 第一部「石川善樹先生による基調講演」 第一部は石川先生から 「人生100年時代の働き方と健康」 というテーマについてお話いただきました。 基調講演では、 「人生100年時代に働き方はどう変化するのか?」 「生産性の高いオフィスとは?」 「社員が気軽に取り組めて、健康につながる方法は何か?」 「デスクワークにおいて、疲れにくい理想の姿勢とは?」 などを中心に、石川先生から様々な示唆に富んだお話をいただきました。 第二部「パネルディスカッション」 第二部は、弊社社長の井上、人事本部長の羽田が加わり、 パネルディスカッション形式ですすめられました。 まずは冒頭、 LIFULL社員2人の日々のスケジュールを見ながら、 石川先生からLIFULL社員が実践できることについてアドバイスを頂きました。 「帰宅が遅くなりがちなビジネスパーソンの食事のタイミング」や、「働くママに起こりやすい問題やその対策」 など、社員の多くに共通するのお話に、参加した社員も興味を持ったようでした。 パネルディスカッションの後半では社員から 「つい飲みすぎてしまった時の対処法は?」や「ノートPCで、疲れにくい姿勢を保つためには?」 など多くの質問が上がりました。 終わりに 参加した社員の感想からは 「デスクワークの姿勢については、何となく改善しないといけないと思っていたが、姿勢を改善していかないといけないという意識がより高まった。」 「部屋の換気が、社員の集中力に関わってくるとは意識してなかったので、定期的に実施していきます。」 などの感想を聞くことができ、 日常の行動につなげているようでした。 自分としても、人生100年時代、定年が70代になり長く働き続ける時代において、 「いかに不調にならないか」を考えながら、自分自身の睡眠や食事などの生活習慣を見直していくことの重要性を実感しました。
こんにちは、磯野です。 さて、今回が最終レポートになります。 今回はまとめということで、参加して思ったことなどを簡単に書きたいと思います。 参加してみて オススメのセッション キーノート ブレイクアウトセッション ワークショップ その他のセッション おまけ 企業ブース 帰国時のiPhoneのアクティビティ まとめ 参加してみて 参加する申し込み時点では新サービスのキャッチアップや各セッションでの知識の習得をということしか考えていなかったのですが、途中から、 GameDay編 でも記載したように、現地でしかできないことをし、それを持って帰ることというミッションを加え、色々と挑戦してきました。 実際参加してみると、GameDayもワークショップも現地のエンジニアとの交流や直接現地のSAに質問できたりと、とても有意義な時間になりました。フィードバックとして、社内でもハッカソンやワークショップを開催したいと考えています。 オススメのセッション キーノート 会場に行くのであれば、少し早めに行って前の方に座った方がいいと感じました。 初日のキーノートはギリギリの時間についたので、少し後ろだったのですが、前の方では新サービスの発表時に歓声が上がっていましたが、後ろの方がそこまでの盛り上がりはなく、淡々と話を聞く感じになります。 登録しておけばリアルタイムでの配信もされるので、前の方でないのであれば、配信で視聴してもよさそうです。 ブレイクアウトセッション 話を聞くだけでも意味はあると思いますが、セッション後に登壇者に質問にいったり、近くで他の方の質問と回答を聞くだけでも、プラスアルファの情報を得られるので、有意義なものになるのではないかなと思っています。 参考までにセッションなどのアップされるYouTubeチャンネルのリンクを貼っておきます。 www.youtube.com ワークショップ ワークショップ編 で書きましたので詳細は省きますが、実際に手を動かして課題のものを作ってみるセッションです。 個々人で進めるため、講師やサポートのSAの方々に質問しやすい環境にあるので、ブレイクアウトセッションで質問するよりもハードルが低いです。 その他のセッション 今回参加していませんが他にも、ハンズオンラボやチョークトークなどいろいろなセッションがあります。 チョークトークはディスカッションのようで躊躇してしまったのですが、次は参加できるように頑張りたいなと思っています。 おまけ 企業ブース re:Invent内でも企業ブースがあり、それぞれのブースを回るとTシャツや靴下やステッカー、その他色々なものがもらえます。 時間をみてぐるっと回って見たのですが、Tシャツ20枚以上、靴下4足、それ以外も数え切れないほどもらいました。 セッションの合間に時間があるようでしたら回って見るとイベント中のTシャツの着替えには困らないと思います。 なお、Tシャツ集めがミッションではなく、周辺サービスの情報収拾のためということもあり気にしながら回っていたのですが、いくつか良さそうなサービスの話を伺えたので、導入検討していきたいと思っています。 帰国時のiPhoneのアクティビティ 行きの時点で気にしていたiPhoneのアクティビティですが、帰りもやっぱり気にしていました。 帰りのフライトは現地時間で土曜日の早朝に出発し、日本時間で日曜日の夕方に到着ということで、単純に考えると土曜日・日曜日のどちらかが極端に短くなります。 結果土曜日の数値が残念な結果になり、ムーブ連続達成記録もここで潰えてしましました。 スタンドが全部点灯にも関わらず7になっていて、詳細を見るとスタンドしなかった時間が0ということで時差分の17時間がなかったことになっているようです。 0時から7時の間にムーブを達成しておけば連続達成記録も継続できたような気がします。 まとめ 本当に有意義な1週間でした。 この経験をしっかり消化して、実際の開発にも活かしていけそうな部分を取り込みプロダクトを改善しつつ、周りにもいい形でフィードバックしたいと考えています。 ありがとうございました。 以上4回に分けての初参加の報告でした。 www.lifull.blog www.lifull.blog www.lifull.blog
こんにちは。 LIFULL HOME'Sアプリのデザイナーのこばやしです。 デザイナーの3Dモデル作り、最後は「アニメーション編」です。作成したメッシュオブジェクトに骨格(ボーン)を入れ、動きを作っていく行程をまとめました。 ツールの操作やモデリング前の下準備については 準備編 をご覧ください。 www.lifull.blog メッシュオブジェクト作成・編集については モデリング編 をご覧ください。 www.lifull.blog 骨格(ボーン、アーマチュア) 骨格を設定する 前編で作ったホームズくんのメッシュオブジェクトに骨格(ボーン、アーマチュア等と呼びます)を設定します。この設定を行うことで、骨格の動きに合わせたメッシュオブジェクトのポーズを自由に変更できるようになります。 基本となるボーンを作る 1 .メッシュオブジェクトの基底部分(今回は足の裏)が座標0に合わさっていることを確認します。ボーンが設定しやすい位置に移動させます。 2 .メッシュオブジェクトを選択した状態で「Shift + Aキー」で、オブジェクトの追加メニューが表示されます。アーマチュア(Armature) > 一つのボーン(Single Bone)を選択します。これでボーンが1つ追加されます。 3 .追加したボーンを座標0に移動させ、骨格の基本となる背骨とします。 作業がスムーズになる設定 ボーンはメッシュオブジェクトと重なるところに配置されることが多いため、作業中見えづらくなります。そこで、 アウトライナーでアーマチュアを選択し、アーマチュアプロパティのオプションから「レントゲン」をON にしましょう。こうすることで、常にボーンが確認できます。 ボーンを生やしていく 基本となるボーンができたら、次はボーンを生やしていきます。ホームズくんのように人型の場合は、実際に人の骨格を参考にします。 1 .ボーンを選択し、背骨の半分ぐらいの大きさに調整します。 2 .ボーンを生やしたい方向の先端の丸い部分(太い側をroot、細い側をtipと呼びます)を選択し「 Eキー+マウスドラッグ 」でボーンが生やします。 3 .「 Shift + Eキー + マウスドラッグ 」で左右対称に生やすことができます。中心のボーンから腕を生やす時などに便利です。 4 .X軸にミラーの設定をします。X軸を対称にボーンを作ることができるので、肩から指先など左右対称にボーンを生やす作業がスムーズになります。 ボーンとメッシュオブジェクトのペアリング アウトライナーからメッシュオブジェクトとアーマチュア(設定したボーン)を選択し「 Ctrl + P 」で「 ペアレント対象 」のウィンドウを開き「 自動のウェイト 」を選択することで、ペアリングが完了します。 ポーズを変更する ボーズモードにし、ボーンを動かしてみましょう。ペアリングでウェイトが設定されたメッシュオブジェクトが動くようになります。ポーズモードでの操作でメッシュオブジェクトが動いても、実際のオブジェクトの位置や角度は変形しません。 作業がスムーズになるコマンド 「 Aキー 」でボーンを全選択 「 alt + Gキー 」 で位置を元に戻す 「 alt + Rキー 」 で回転を元に戻す 「 alt + Sキー 」 で拡縮を元に戻す 作業中、元の位置がわからなくなった時は元に戻して確認しましょう。 ボーンをポーズさせるのに見やすい表示に変更します。アウトライナーのアーマチュアプロパティを選び、表示を「 スティック 」を選択します。 アニメーションの設定する アニメーションを設定するには、エディターの「 ドープシート 」を使用し、表示されたタイムラインにポーズごとのキーフレームを打ち込んで、アニメーションを作っていきます。 「歩く」の作り方 まず、下記を時のポーズを考えます。より細かい動きを作りたい場合はポイントとなるポーズを検討します。 ・前方の足がついた時 ・足が入れ替わるところ(中間) 次に、ボーンを動かしポーズを作り、キーフレームを挿入していきます。「 Iキー 」で「 キーフレーム挿入メニュー 」を表示し「 位置、回転、拡大 」を選択。これでポーズが挿入します。これを繰り返し、アニメーションを作っていきます。 キーフレームが2つ以上挿入されているとボーンが自動的に移動します。ただし、挿入された点間を定速で移動するだけなので、動きがヌルヌルで、ぎこちなく見えます。 中間ポーズなし 歩くアニメーションの場合は中間に「 足が入れ替わるポーズ 」を挿入することで、リアルな動きを作ることができます。 中間ポーズあり 作業がスムーズになるコマンド キーフレームに設定したボーンの座標はコピペすることができます。また、 「Ctrl + Shift + V」で左右反転貼り付け をすることができます。これにより「左足前のポーズ」を「右足前のポーズ」として貼り付けできます。左右で座標ずれの心配がないので便利です。 一連の動きが繋がったら、細かい手首の動きなど調整して完成です。 終わりに ツールの準備・3Dモデル作り〜アニメーションまでを3編でまとめました。新しいツールに触れるのは大変ですが、今回取り上げた機能で3Dモデルを作ることができたので「難しそうだけど作ってみたい」「作業途中で困った」という方の参考になれば幸いです。 今回作成した3DモデルのホームズくんはiOSのLIFULL HOME'Sアプリの「見学メモ」の「ARで部屋を計測」に登場しています。iOS11の新機能ARKitを用い、ホームズくんと一緒に部屋の大きさを計測できる便利機能です。歩く以外の動きや表情もいくつか見ることができるので、OS11の方は「見学メモ > 部屋を計測」から体験してみてください。 LIFULL HOME'S(ライフルホームズ) LIFULL Co., Ltd ナビゲーション 無料