Inside Frontend

Speakers

  • Felix Riesebergの画像

    Felix Rieseberg

    Senior Staff Engineerat Slack

    Twitter:felixrieseberg

    GitHub:felixrieseberg

    TypeScript: Why and how we adopted it at Slack
    At Slack, we use one JavaScript codebase to build a multi-threaded desktop application, routinely interacting with native code. Managing large JavaScript codebases is challenging - we need a guarantee that the individual pieces fit together. In the desktop world, a small mistake is likely to result in a crash. To that end, we adopted TypeScript and quickly learned to stop worrying and love the compiler. See an introduction and a detailed account of porting a large code base, learn why exactly TypeScript is so popular, what the downsides are, and how you would slowly adopt it in your development.
  • Adam Foltzerの画像

    Adam Foltzer

    Senior Software Engineerat Fastly

    Twitter:acfoltzer

    GitHub:acfoltzer

    Introduction to Lucet
    WebAssembly is no longer just for browsers. This talk will introduce Lucet, a native code compiler and runtime system Fastly has developed for running WebAssembly programs quickly and safely in our edge cloud platform. In March, we released Lucet as open source under a permissive license. We will take a close look at how Lucet's pieces fit together, and see how the Terrarium demonstration service provides a template for designing secure web services around untrusted user code.
  • Andrew Bettsの画像

    Andrew Betts

    Technical Product Managerat Fastly

    Twitter:triblondon

    GitHub:triblondon

    Making less of the web with feature policy
    The web platform has seen a decade of furious expansion, with websites now able to access USB, vibration, bluetooth, and geolocation, as well as store huge amounts of data on end user devices, trigger background sync and notifications, and even get paid from users' digital wallets. But with this expansion has come an increased scope for attacks, costly mistakes and performance regressions. Feature policy is a new feature designed to actually disable or limit features of the platform. With a feature policy, developers can solve performance issues, improve security, police their development team's best practices, and even stop third party scripts from misbehaving. All with one new HTTP header.
  • Shinichi Kogisoの画像

    Shinichi Kogiso

    Design Engineerat SAKURA Internet

    Twitter:kgsi

    GitHub:kgsi

    デザインエンジニアとフロントエンド
    デザインとフロントエンドの連携は、良質なプロダクトを作る上で重要な課題です。デザイナー、エンジニアそれぞれに求められる技術と役割は日に日に増えており、業務の内容は規模が大きくなるほど細分化されています。

    そんな時代の中で私個人としては、デザインとフロントエンドそれぞれを俯瞰して対応できる「デザインエンジニア」でありたいと思っています。セッションでは、デザインからエンジニアリングまでこなすことについての知見と実務例、デザインエンジニアに今後求められる役割などを話します。
  • Yuta Ideの画像

    Yuta Ide

    Web Engineerat Recruit Lifestyle

    Twitter:sadnessOjisan

    GitHub:sadnessOjisan

    formの送信ログから反省する、本当は必要だったvalidationや機能たち
    私は、小売店向けのPOSレジに付随する「経営ダッシュボード」を開発しています。これは、お店の人が日々の売上や目標、日報を入力することで、最適な経営を実現するための打ち手を自動で提案するデータプロダクトです。そのため、サービスの価値を発揮するためには、利用者による日々の入力が重要であり、ありとあらゆるところにフォーム要素が存在するプロダクトです。

    開発チームとしては、ユーザー1人1人がどれほどアクティブに使うかを目標指標に置いており、細かにアクセスログを取得しています。そのログには、入力時のバリデーションエラーやサーバーでのエラーレスポンスのログも含まれており、それらを解析することでユーザーにとってどういうフォームが必要かを日々検証しています。

    このセッションでは、ログやカスタマーサクセスチームのヒアリング結果をもとに、「どういうフォームがユーザーの離脱を促してしまうのか」「その離脱を防ぐためにはどういう機能を実装しなければいけないのか」「意図せず使いにくいフォームを作ってしまう実装上の落とし穴とその回避方法(とくにマルチデバイスでの話)」についてお話しできればと思います。
  • Kengo Harunoの画像

    Kengo Haruno

    Designerat Yahoo! JAPAN

    Twitter:halsakulalala

    いちからデザインシステムを作ってみて学んだこと
    デザインシステムをいちから制作したときに学んだワークフローと、それに伴って悩んだこと、苦労したことを話したいと思います。デザインガイドラインの制定から、コンポーネントパーツ設計、React製UIフレームワークの実装まで、どのような進め方にすれば効率よくプロダクトを進めていけるのか、デザインシステムに紐付かれたUIフレームワークをどのように提供していくのが良いかなど、デザインとフロントエンドそれぞれの目線での話ができればと思います。
  • Yosuke Kuramiの画像

    Yosuke Kurami

    Frontend Engineerat FOLIO

    Twitter:quramy

    GitHub:quramy

    BFFのDeveloper Experience
    FOLIOで運用しているBFF(Backend For Frontend)について、開発効率を高めるために実施した施策の話をします。
    Node.jsのDirect Proxyを使ったマイクロサービス層のユーティリティや、テスタビリティについてに語ります。
  • Shota Kubotaの画像

    Shota Kubota

    Frontend Engineerat AbemaTV

    Twitter:kubotashota

    GitHub:kubosho

    AbemaTVにおけるCSS is too fragile問題に対する解
    ある日リファクタリングをしていたらCSS Modulesを使っていたにも関わらずCSSが壊れてしまった私達は、CSS ModulesがCSSの特性や我々のプロダクトの構成や開発方針に合わないと判断し「BEMベースのセレクタ設計 + postcss-importによるCSSファイルのconcat」へ移行を進める方針を決めました。
    これらの背景やなぜ壊れたのか、どうやって移行を進めたのか、また移行して良かった・悪かったことを話します。
  • Mariko Kosakaの画像

    Mariko Kosaka

    Web Engineerat Google

    Twitter:kosamari

    GitHub:kosamari

    世界中誰もが使えるサービスを目指して、Web標準で作るガラケーサイト
    今、東南アジアやアフリカでKaiOSを始めとしたガラケーやAndroidGoといった超低スペックモデルのスマートフォンが市場を拡大しています。これらのデバイスが昔と違うのはモダンウェブブラウザが搭載されていること!!以前のようにcHTMLとWAPで書き分けると言った必要もなければ、デスクトップサイトとコードベースを分ける必要もありません。だからといって、非力なCPUしか持っていないこれらのデバイスではSPAフロントエンドアプリを動かすのは厳しく、かなり気を使った設計をする必要があります。この発表では実際にKaiOSガラケー対応のゲームを作成する過程で発見したパフォーマンステクニックを紹介します。「描画はCanvas、でもアクセシビリティのためにDOMもopacity:0で入れる」「時間がかかる処理は段階処理にしてユーザーに遅いと思わせない仕掛けを作る」といったエピソードが満載です。
  • Sho Miyamotoの画像

    Sho Miyamoto

    Web Engineerat NIKKEI

    Twitter:azarashd

    GitHub:shqld

    Loading Performanceとの向き合い方
    日経電子版で日々行なっているクライアントサイドのパフォーマンス改善について、広告スクリプト最適化をメインにお話します。
    電子版のようなステークホルダーの多いプロダクト開発における、コントロールできない外部スクリプトと向き合うことの重要性や苦労、またその(実務的・技術的な)施策について紹介します。
  • Koichi Sawadaの画像

    Koichi Sawada

    Frontend Engineerat Yahoo! JAPAN

    Twitter:sawapi

    GitHub:sawapi

    Hajime Sasanumaの画像

    Hajime Sasanuma

    Frontend Engineerat Yahoo! JAPAN

    GitHub:33haji

    Nuxt.jsで中規模サービスを統合した話

    ヤフー株式会社と株式会社イーブックイニシアティブジャパンが共同で運営する電子書籍販売サービス「ebookjapan」が2018年10月にリリースされました。両社それぞれが運営していた電子書籍販売サービスを統合する形で生まれたこのサービスですが、当然リリースするまでには様々な苦労がありました。SPA開発未経験者がほとんどの中でのVue.js × Nuxt.jsを使った開発での苦労やAtomicDesignでの失敗談、中規模サービスの統合の難しさなど。実際に起きたこれらのことをどのように解決したのか、またはどうしたらよかったのかを振り返りながら話していきます。
    Kazunari Haraの画像

    Kazunari Hara

    Web Developerat CyberAgent

    Twitter:herablog

    GitHub:herablog

    Marina Tokiの画像

    Marina Toki

    Frontend Engineerat CyberAgent

    Twitter:tokimariri

    GitHub:tokimari

    Web App Checklist ~高品質のWebアプリケーションをつくるために~
    高品質のWebアプリケーションをつくるためには、ユーザーインターフェイス、パフォーマンス、アクセシビリティ、セキュリティ、ネットワーク、開発体験など様々な要素を適切に組み合わせなければなりません。Amebaの新機能である「こえのブログ」ではそれらを満たすためにどのように開発していったのか、チェックリスト形式でお伝えします。
    Tsuyoshi Wadaの画像

    Tsuyoshi Wada

    Frontend Engineerat CyberAgent

    Twitter:wadackel

    GitHub:tsuyoshiwada

    Soichi Masudaの画像

    Soichi Masuda

    Web Accessibility Expertat CyberAgent

    Twitter:masuP9

    GitHub:masuP9

    品質と開発速度を両立させるために捨てたものと守ったもの
    4月にリリースした WinTicket (競輪のインターネット投票サービス) では、開発速度はもちろんのこと、後発がゆえにプロダクトを高い品質でリリースし差別化を図る必要がありました。様々な利用者、利用環境が想定される公営ギャンブルという事業ドメインにおいて、高い利用体験を提供することを品質として定義しました。大規模な開発においてそれらの品質と開発速度を両立するための戦略的取捨選択の過程とその結果、これからについてお話します。

本イベントは終了しました

Buy Ticketsat Peatix

Sponsors

& Organizers

  • 株式会社サイバーエージェント
  • ヤフー株式会社