Speakers
-
TypeScript: Why and how we adopted it at SlackAt 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.
-
Introduction to LucetWebAssembly 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.
-
Making less of the web with feature policyThe 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.
-
-
formの送信ログから反省する、本当は必要だったvalidationや機能たち私は、小売店向けのPOSレジに付随する「経営ダッシュボード」を開発しています。これは、お店の人が日々の売上や目標、日報を入力することで、最適な経営を実現するための打ち手を自動で提案するデータプロダクトです。そのため、サービスの価値を発揮するためには、利用者による日々の入力が重要であり、ありとあらゆるところにフォーム要素が存在するプロダクトです。
開発チームとしては、ユーザー1人1人がどれほどアクティブに使うかを目標指標に置いており、細かにアクセスログを取得しています。そのログには、入力時のバリデーションエラーやサーバーでのエラーレスポンスのログも含まれており、それらを解析することでユーザーにとってどういうフォームが必要かを日々検証しています。
このセッションでは、ログやカスタマーサクセスチームのヒアリング結果をもとに、「どういうフォームがユーザーの離脱を促してしまうのか」「その離脱を防ぐためにはどういう機能を実装しなければいけないのか」「意図せず使いにくいフォームを作ってしまう実装上の落とし穴とその回避方法(とくにマルチデバイスでの話)」についてお話しできればと思います。 -
-
-
世界中誰もが使えるサービスを目指して、Web標準で作るガラケーサイト今、東南アジアやアフリカでKaiOSを始めとしたガラケーやAndroidGoといった超低スペックモデルのスマートフォンが市場を拡大しています。これらのデバイスが昔と違うのはモダンウェブブラウザが搭載されていること!!以前のようにcHTMLとWAPで書き分けると言った必要もなければ、デスクトップサイトとコードベースを分ける必要もありません。だからといって、非力なCPUしか持っていないこれらのデバイスではSPAフロントエンドアプリを動かすのは厳しく、かなり気を使った設計をする必要があります。この発表では実際にKaiOSガラケー対応のゲームを作成する過程で発見したパフォーマンステクニックを紹介します。「描画はCanvas、でもアクセシビリティのためにDOMもopacity:0で入れる」「時間がかかる処理は段階処理にしてユーザーに遅いと思わせない仕掛けを作る」といったエピソードが満載です。
Nuxt.jsで中規模サービスを統合した話
本イベントは終了しました