SlideShare une entreprise Scribd logo
1  sur  24
Télécharger pour lire hors ligne
NewsPicks での事例紹介
Web Frontend Engineer@NewsPicks / イイダユカコ
2023.03.08@高まるウェブアクセシビリティの需要ー
freee×ニューズピックスー〜フロントエンド最前線〜
01 自己紹介
©NewsPicks Inc. All Rights Reserved.
イイダユカコ
NewsPicks Web エンジニア
経歴
2013年に株式会社サイバーエージェントに入社し、サーバサイドエンジニアを
経て、2015年よりフロントエンドエンジニアとして従事。 2019年9月より株式会
社ニューズピックスにて、 Web フロントエンドをメインに担当。現在はニューズ
ピックスの Web プロダクトに関するリアーキテクチャプロジェクトとリニューアル
プロジェクトに携わる。
推進する中で Observability や Accessibility などの普及を図っています。
02 NewsPicks の紹介
プラットフォーム
日本・世界の
重要な経済ニュースを
ワンストップで提供
メディア
NewsPicks オリジナルコンテ
ンツ(記事・動画)で経済がわ
かる
NewsPicksは、ソーシャル経済メディアとして、
プラットフォーム・メディア・コミュニティ が融合した、
新しいメディア体験を提供しています。
コミュニティ
専門家や当事者のコメント・発
信でニュースを
多角的に理解
newspicks.com
経済を、もっとおもしろく。
©NewsPicks Inc. All Rights Reserved.
01
事例紹介
(当日の前半5分で紹介した内容です)
● NewsPicks(サービス)は2013年9月よりサービス提供を開始、 2014年6月より Web サービスの提供を開始
● 2021年7月より、Web Product を現行基盤から新基盤へ page 毎に移行開始(リアーキテクチャ Project)
○ 使用技術: Next.js (React) / TypeScript / GraphQL
● 2022年より、並行してデザイン刷新も推進(リニューアル Project)
● 基盤やユーザー体験を整えていく上で重要視しているのは、 ”Web Product の品質の底上げ ”
○ “品質” を構成する一つの要素に a11y の観点も取り入れている
■ 例: チーム OKR に Lighthouse のスコアを設定する
■ 例: NewsPicks におけるアクセシビリティガイドラインを作成する
02 Web Product の現在地を共有
【補足】 現在の Web Reader Experiencr Unit のチーム構成
● Web フロントエンド担当 : 3名(新メンバーが入り、後半には 4名になる予定)
● サーバー担当 : 1名
● Embedded SRE 担当: 1名+インターン生 1名
● デザイナー: Web 担当者が1名+インターン生 1名+兼務が 1名
> 2022年より、並行して page 毎のデザイン刷新も推進(リニューアル Project)
03
● 正直なところ、現行基盤はアクセシブルでない部分が多い状態
○ UI 的な問題や実装的な問題を多く含む
● リニューアル project 進行中の状態
○ デザイン時: 対象のデザインレビュー時にエンジニアから FB(フィードバック)
○ 実装時: PR 上でお互いの知識を元にチェックしレビュー時にコメントとして記入
○ 自動テスト: 全ての新基盤 component に対して jest-axe を用いて PR 毎にテスト
● リニューアル project をきっかけに新しいデザイン仕様が増え、デザイナー陣からの提案で design system project が始動
● 成果物がより安定的に、よりアクセシブルである状態にしたいという狙いから、
エンジニア側からアクセシビリティガイドライン project が始動
アクセシビリティガイドライン project 始動のきっかけ
大目的は、「成果物がより安定的に、よりアクセシブルである状態」にすべく、
● 誰でもチェックできて、誰でもアクセスブルにデザイン /実装できる a11y 項目のチェックリストの形式になっている
○ デザイン時に組み込めるようにチェックできる
● 成果物に対してどの程度アクセスブルかのチェックが可能になっている
○ どの component でどのルールが適用されているのか理解できる
○ 任意のページでの達成率はどうなっているか理解できる
○ 改善できるポイントがどこにあるか理解できる
を達成すること
04 ガイドラインの大目的
WCAG のセクション番号ベースではなく、ルールベースのチェック項目を管理
以下の4種類のページを Notion を使って管理し、ガイドラインとする
05 具体的なガイドライン構成
チェック項目一覧 ページ毎にまとめた
チェック項目一覧
component 毎にまとめた
チェック項目一覧
ルール個別解説
● 一行につき全角40文字以上にならないようにする
● XXXXXXXXX
● XXXXXXXXX
● XXXXXXXXX
● XXXXXXXXX
● XXXXXXXXX
● XXXXXXXXX
● XXXXXXXXX
● XXXXXXXXX
● 一行につき全角40文字以上にならないようにする
● XXXXXXXXX
● XXXXXXXXX
● XXXXXXXXX
● XXXXXXXXX
● XXXXXXXXX
✔
✔
✔
✔
✗
✔
達成度: XX %
記事 page
( newspicls.com/XX )
● 一行につき全角40文字以上にならないようにする
● XXXXXXXXX
● XXXXXXXXX
● XXXXXXXXX
● XXXXXXXXX
● XXXXXXXXX
✔
✔
✔
✔
✗
✔
達成度: XX %
記事カード component
概要
…
具体例
…
テスト・チェック方法
…
実装方法
…
参考リンク
…
一行につき全角 40文字以上
にならないようにする
チェック項目一覧
ルールの定義を Notion database を用いて管理する
06 具体的なガイドライン構成
カテゴリ チェック項目 適合レベル チェックフェーズ WCAG2.1
セクション番号
対象となる
component
対象となる
page
フォーム
画像
自動テスト
A
XX になってない
XX ができる デザイン仕様fix時
A
1.3.1 1.3.4 comA comB pageA
pageB
comB
Notion database の共通項目(props)を用いて table を filter し、
各ガイドラインのページ趣旨に応じて参照できるようにする
1.3.1
* メンテナンス性を向上させたいという思いから、このような使い方にしました!作って終わらない、コスト低く持続可能なメンテナンス性って大事!
理想 現実
a11y ガイドラインに設定しているものが実装に全て反映され
ている
ガイドライン作成中につき、まだまだ実装反映できてない
箇所も多い。自動テストや担当者が気づいたものは反映
できている状態。
a11y コミュニティを作れていて、グループ会社を巻き込んで互
いに相談できている
Slack チャンネル #y-a11y は存在しつつ、ほぼ固定メン
バーの不定期発信場となっている
支援技術利用者によるテストを定期的に行いたい リリース前テスト時に実装者が気づいた部分を確認する程
度しかできていない
a11y ガイドラインを公開し、 a11y 分野に貢献できている状態 まだまだ社内限定公開のステータス
07 弊チームでの a11y 活動の理想と現実
正直、まだまだ「理想」まで長い道のりが待っている印象 😇
©NewsPicks Inc. All Rights Reserved.
02
パネルディスカッション
(当日のメインでお話した内容です)
©NewsPicks Inc. All Rights Reserved.
プロダクトにウェブアクセシビリティを取り入
れるためにやったこと
01 プロダクトにウェブアクセシビリティを取り入れるためにやったこと
©NewsPicks Inc. All Rights Reserved.
1-1. 参考にしているプロダクトは?
WCAG を直接見ることもありますが、どういった解釈
をしているか知りたいときは、実際のプロダクトに対し
て作成されたガイドラインを参照することが多いで
す。
実装としてどうアウトプットされたかを知りたい際は、
同じくメディア事業をされている note さんの実装や、
UI library である MUI(Material UI)や Chakra UI
を参考にしています。
ガイドライン
実装
01 プロダクトにウェブアクセシビリティを取り入れるためにやったこと
©NewsPicks Inc. All Rights Reserved.
「何をやってるかわからない」を
徹底的に排除する
1-2. 苦労したこと/工夫したことは?
実際のプロダクト開発に繋がる
ガイドライン作成する
● デザイナー陣と寄り添う形で構成を考える
○ どうやったら使えそうと思うかについて、作成初
期段階からヒアリングさせてもらう
● 仕様策定フローへの取り入れやすさを考慮する
○ 取り入れるイメージを持ってもらえるようにどん
な形が理想化をすり合わせて進行
● Unit、division 、同グループのフロントエンドメンバーに
「意図」や「アウトプット」を共有できる形で進行する
● 「よくわからない」はやはり敬遠されがち
…細かいことも、
多少まとまってなくても、とりあえず出すようにする
苦労はこれからするんだと思っています!気合い入れてくぞ!
©NewsPicks Inc. All Rights Reserved.
明日から始める
ウェブアクセシビリティへの一歩
©NewsPicks Inc. All Rights Reserved.
1人の場合
● build 待ちの間に本番環境のdev tools で
Lighthouse 動かしてみる
組織単位の場合
● 取り入れた情報を会社のSlack の times(分報) や
tech 系チャンネルに投下してみる
チームの場合
● component 実装に対してjest-axe 等自動テストツー
ルを導入
● テストの習慣化(GitHub Actions 等で毎 PR テストする
ようにする等)
2-1. 何から始めるのがベストか?
02 明日から始めるウェブアクセシビリティへの一歩
02 明日から始めるウェブアクセシビリティへの一歩
©NewsPicks Inc. All Rights Reserved.
ガイドライン作成の進行と理想状態の仕様と
実装反映
「Web だけの挑戦/課題でない」という認識を
もっと広めたい
● 社内 a11y チャンネルにWeb フロントエンド勢以外の
メンバーも invite していきたい
○ iOS/Android 開発者、デザイナー、
PdM の方々
○ ありがたいことに、デザイナーメンバーやd&I 文脈で
興味を持ってくださってる方は社内に多いイメージな
ので、うまく巻き込みたい!
● ガイドライン輪読会の実施
2-2. 現在抱えている課題と、今後どのように進めていくのか?
● 今の project 的に、既存実装→ガイドライン→実装反映と
なっているが、理想的には、ガイドライン
→仕様落とし込み
→実装
● 理想のフローに追いつくよう、今はひたすらガイドライン化
と実装を進める形になっている
©NewsPicks Inc. All Rights Reserved.
a11y 草の根運動
まだまだやっていくぞ!
©NewsPicks Inc. All Rights Reserved.
03
質疑応答
(当日の後半でお話した内容です)
03 質疑応答
©NewsPicks Inc. All Rights Reserved.
? 前述した通り、NewsPicks の Web product では、GitHub
Actions を用いて、PR 毎に jest-axe のテストが走るようにして
います。
axe のテストが万能であるというわけではないのですが、自動テ
ストで気付くことのできる最低限のところをカバーするには良い
と思い、導入しています。
アクセシビリティ検証ツールの最新事情や、使い分け方。特に、
Google/Chromeでも採用されているDeque社のaxeの業界
内でのポジショニグ
03 質疑応答
©NewsPicks Inc. All Rights Reserved.
?
プロダクト開発において KPI目標上で優先したい動線の UIと、ア
クセシビリティの観点で優先したい UIがあった場合、どのように
折り合いをつけますか?
多様なパターンがあると思うのですが、個人の経験上では、ア
クセシビリティ文脈で実装が難しい場合、そもそもの仕様が複雑
だったり、ユーザーが意図していない操作感になっていることが
多かったです。それ故、「アクセシビリティ的に実現が難しい」と
思う場合は、今一度仕様が複雑化していないか立ち返る機会だ
と考えるようにしています。もちろん全てにおいて言えることでは
ないのですが、一度メンバー全員で向き合ってみてもいいかもし
れないです。
03 質疑応答
©NewsPicks Inc. All Rights Reserved.
? テックイベントのLPページ等でアクセシブルでない実装を見ると
「このイベント大丈夫かな」と来場者に思われないかやや不安に
なることがあります。そういった上で「アクセシブルな実装ができ
る受託開発を提供しています」というのは強みになると感じてい
ます!納品時にアクセシビリティ観点の検品書が入っていたり
するととてもかっこいいと感じました!応援しています!
受託開発側から「アクセシビリティやっておきますね!」と伝える
べきでしょうか?
©NewsPicks Inc. All Rights Reserved.
04
おまけ
04 おまけ: 宣伝
©NewsPicks Inc. All Rights Reserved.
テック情報、アウトプット中!是非お立ち寄りください!
会社紹介資料やエンジニアブログを公開中!
https://tech.newspicks.com/
デザイン系については note をチェックしてください 💁
https://note.com/newspicksdesign/
Podcast もしているので、よろしければご視聴ください 📻(出演
もお待ちしております 🙋)
カジュアル面談希望& Podcast 出演希望の方は
Twitter より @becyn に DM ください!

Contenu connexe

Similaire à 2023.03.08@高まるウェブアクセシビリティの需要ーfreee×ニューズピックスー〜フロントエンド最前線〜

コンポーネント単位で考えるWeb制作
コンポーネント単位で考えるWeb制作コンポーネント単位で考えるWeb制作
コンポーネント単位で考えるWeb制作祐磨 堀
 
日本市場における最新のDrupalビジネス動向 20160901v4
日本市場における最新のDrupalビジネス動向 20160901v4日本市場における最新のDrupalビジネス動向 20160901v4
日本市場における最新のDrupalビジネス動向 20160901v4Hidekazu Ikeda
 
アジャイル開発のためのDatadog
アジャイル開発のためのDatadogアジャイル開発のためのDatadog
アジャイル開発のためのDatadogNobuyasu Seki
 
SharePoint Framework による Viva Connections アプリの開発
SharePoint Framework による Viva Connections アプリの開発SharePoint Framework による Viva Connections アプリの開発
SharePoint Framework による Viva Connections アプリの開発Hiroaki Oikawa
 
うちのデザインシステム.pdf
うちのデザインシステム.pdfうちのデザインシステム.pdf
うちのデザインシステム.pdfIida Yukako
 
Html5時代のクリエイターのあり方
Html5時代のクリエイターのあり方Html5時代のクリエイターのあり方
Html5時代のクリエイターのあり方Masakazu Muraoka
 
市場動向並びに弊社製品の今後の展望について
市場動向並びに弊社製品の今後の展望について市場動向並びに弊社製品の今後の展望について
市場動向並びに弊社製品の今後の展望についてKen Azuma
 
市場動向並びに弊社製品の今後の展望について
市場動向並びに弊社製品の今後の展望について市場動向並びに弊社製品の今後の展望について
市場動向並びに弊社製品の今後の展望についてKen Azuma
 
3 倍早い?! MS 製開発者専用ツールによる HTML5 + JavaScript を使ったWeb 作成
3 倍早い?! MS 製開発者専用ツールによる HTML5 + JavaScript を使ったWeb 作成3 倍早い?! MS 製開発者専用ツールによる HTML5 + JavaScript を使ったWeb 作成
3 倍早い?! MS 製開発者専用ツールによる HTML5 + JavaScript を使ったWeb 作成Osamu Monoe
 
こだわりのkintone
こだわりのkintoneこだわりのkintone
こだわりのkintoneYusuke Amano
 
スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向Tsutomu Ogasawara
 
自社サービスkintoneをふんだんに活用したサイボウズの開発フロー
自社サービスkintoneをふんだんに活用したサイボウズの開発フロー自社サービスkintoneをふんだんに活用したサイボウズの開発フロー
自社サービスkintoneをふんだんに活用したサイボウズの開発フローYuki Okada
 
App Modernization for .NET
App Modernization for .NETApp Modernization for .NET
App Modernization for .NETYuta Matsumura
 
ネイティブアプリ開発を加速する、モダンバックエンドとのタイアップ手法
ネイティブアプリ開発を加速する、モダンバックエンドとのタイアップ手法ネイティブアプリ開発を加速する、モダンバックエンドとのタイアップ手法
ネイティブアプリ開発を加速する、モダンバックエンドとのタイアップ手法Akira Hatsune
 
Increase productivity with vue.js
Increase productivity with vue.jsIncrease productivity with vue.js
Increase productivity with vue.jsPALSYSTEM-IT
 
運用まで見越したWeb CMS導入のチェックポイント[効率化] Webマスター必見!
運用まで見越したWeb CMS導入のチェックポイント[効率化] Webマスター必見!運用まで見越したWeb CMS導入のチェックポイント[効率化] Webマスター必見!
運用まで見越したWeb CMS導入のチェックポイント[効率化] Webマスター必見!FatWireKK
 
Adobe Symposium 2019 Analytics & Target Session
Adobe Symposium 2019 Analytics & Target SessionAdobe Symposium 2019 Analytics & Target Session
Adobe Symposium 2019 Analytics & Target SessionKeisuke Anzai
 

Similaire à 2023.03.08@高まるウェブアクセシビリティの需要ーfreee×ニューズピックスー〜フロントエンド最前線〜 (20)

コンポーネント単位で考えるWeb制作
コンポーネント単位で考えるWeb制作コンポーネント単位で考えるWeb制作
コンポーネント単位で考えるWeb制作
 
日本市場における最新のDrupalビジネス動向 20160901v4
日本市場における最新のDrupalビジネス動向 20160901v4日本市場における最新のDrupalビジネス動向 20160901v4
日本市場における最新のDrupalビジネス動向 20160901v4
 
アジャイル開発のためのDatadog
アジャイル開発のためのDatadogアジャイル開発のためのDatadog
アジャイル開発のためのDatadog
 
SharePoint Framework による Viva Connections アプリの開発
SharePoint Framework による Viva Connections アプリの開発SharePoint Framework による Viva Connections アプリの開発
SharePoint Framework による Viva Connections アプリの開発
 
うちのデザインシステム.pdf
うちのデザインシステム.pdfうちのデザインシステム.pdf
うちのデザインシステム.pdf
 
Html5時代のクリエイターのあり方
Html5時代のクリエイターのあり方Html5時代のクリエイターのあり方
Html5時代のクリエイターのあり方
 
市場動向並びに弊社製品の今後の展望について
市場動向並びに弊社製品の今後の展望について市場動向並びに弊社製品の今後の展望について
市場動向並びに弊社製品の今後の展望について
 
市場動向並びに弊社製品の今後の展望について
市場動向並びに弊社製品の今後の展望について市場動向並びに弊社製品の今後の展望について
市場動向並びに弊社製品の今後の展望について
 
3 倍早い?! MS 製開発者専用ツールによる HTML5 + JavaScript を使ったWeb 作成
3 倍早い?! MS 製開発者専用ツールによる HTML5 + JavaScript を使ったWeb 作成3 倍早い?! MS 製開発者専用ツールによる HTML5 + JavaScript を使ったWeb 作成
3 倍早い?! MS 製開発者専用ツールによる HTML5 + JavaScript を使ったWeb 作成
 
こだわりのkintone
こだわりのkintoneこだわりのkintone
こだわりのkintone
 
スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向
 
自社サービスkintoneをふんだんに活用したサイボウズの開発フロー
自社サービスkintoneをふんだんに活用したサイボウズの開発フロー自社サービスkintoneをふんだんに活用したサイボウズの開発フロー
自社サービスkintoneをふんだんに活用したサイボウズの開発フロー
 
【Web TECH FORUM 2017 in大阪】Webシステム開発とJavaScript UIコンポーネント
【Web TECH FORUM 2017 in大阪】Webシステム開発とJavaScript UIコンポーネント【Web TECH FORUM 2017 in大阪】Webシステム開発とJavaScript UIコンポーネント
【Web TECH FORUM 2017 in大阪】Webシステム開発とJavaScript UIコンポーネント
 
App Modernization for .NET
App Modernization for .NETApp Modernization for .NET
App Modernization for .NET
 
ネイティブアプリ開発を加速する、モダンバックエンドとのタイアップ手法
ネイティブアプリ開発を加速する、モダンバックエンドとのタイアップ手法ネイティブアプリ開発を加速する、モダンバックエンドとのタイアップ手法
ネイティブアプリ開発を加速する、モダンバックエンドとのタイアップ手法
 
楽天エンジニアライフ
楽天エンジニアライフ楽天エンジニアライフ
楽天エンジニアライフ
 
Increase productivity with vue.js
Increase productivity with vue.jsIncrease productivity with vue.js
Increase productivity with vue.js
 
Ignite UI 2012 最新情報 jQuery Mobile 編
Ignite UI 2012 最新情報 jQuery Mobile 編Ignite UI 2012 最新情報 jQuery Mobile 編
Ignite UI 2012 最新情報 jQuery Mobile 編
 
運用まで見越したWeb CMS導入のチェックポイント[効率化] Webマスター必見!
運用まで見越したWeb CMS導入のチェックポイント[効率化] Webマスター必見!運用まで見越したWeb CMS導入のチェックポイント[効率化] Webマスター必見!
運用まで見越したWeb CMS導入のチェックポイント[効率化] Webマスター必見!
 
Adobe Symposium 2019 Analytics & Target Session
Adobe Symposium 2019 Analytics & Target SessionAdobe Symposium 2019 Analytics & Target Session
Adobe Symposium 2019 Analytics & Target Session
 

2023.03.08@高まるウェブアクセシビリティの需要ーfreee×ニューズピックスー〜フロントエンド最前線〜

  • 1. NewsPicks での事例紹介 Web Frontend Engineer@NewsPicks / イイダユカコ 2023.03.08@高まるウェブアクセシビリティの需要ー freee×ニューズピックスー〜フロントエンド最前線〜
  • 2. 01 自己紹介 ©NewsPicks Inc. All Rights Reserved. イイダユカコ NewsPicks Web エンジニア 経歴 2013年に株式会社サイバーエージェントに入社し、サーバサイドエンジニアを 経て、2015年よりフロントエンドエンジニアとして従事。 2019年9月より株式会 社ニューズピックスにて、 Web フロントエンドをメインに担当。現在はニューズ ピックスの Web プロダクトに関するリアーキテクチャプロジェクトとリニューアル プロジェクトに携わる。 推進する中で Observability や Accessibility などの普及を図っています。
  • 3. 02 NewsPicks の紹介 プラットフォーム 日本・世界の 重要な経済ニュースを ワンストップで提供 メディア NewsPicks オリジナルコンテ ンツ(記事・動画)で経済がわ かる NewsPicksは、ソーシャル経済メディアとして、 プラットフォーム・メディア・コミュニティ が融合した、 新しいメディア体験を提供しています。 コミュニティ 専門家や当事者のコメント・発 信でニュースを 多角的に理解 newspicks.com 経済を、もっとおもしろく。
  • 4. ©NewsPicks Inc. All Rights Reserved. 01 事例紹介 (当日の前半5分で紹介した内容です)
  • 5. ● NewsPicks(サービス)は2013年9月よりサービス提供を開始、 2014年6月より Web サービスの提供を開始 ● 2021年7月より、Web Product を現行基盤から新基盤へ page 毎に移行開始(リアーキテクチャ Project) ○ 使用技術: Next.js (React) / TypeScript / GraphQL ● 2022年より、並行してデザイン刷新も推進(リニューアル Project) ● 基盤やユーザー体験を整えていく上で重要視しているのは、 ”Web Product の品質の底上げ ” ○ “品質” を構成する一つの要素に a11y の観点も取り入れている ■ 例: チーム OKR に Lighthouse のスコアを設定する ■ 例: NewsPicks におけるアクセシビリティガイドラインを作成する 02 Web Product の現在地を共有 【補足】 現在の Web Reader Experiencr Unit のチーム構成 ● Web フロントエンド担当 : 3名(新メンバーが入り、後半には 4名になる予定) ● サーバー担当 : 1名 ● Embedded SRE 担当: 1名+インターン生 1名 ● デザイナー: Web 担当者が1名+インターン生 1名+兼務が 1名
  • 6. > 2022年より、並行して page 毎のデザイン刷新も推進(リニューアル Project) 03 ● 正直なところ、現行基盤はアクセシブルでない部分が多い状態 ○ UI 的な問題や実装的な問題を多く含む ● リニューアル project 進行中の状態 ○ デザイン時: 対象のデザインレビュー時にエンジニアから FB(フィードバック) ○ 実装時: PR 上でお互いの知識を元にチェックしレビュー時にコメントとして記入 ○ 自動テスト: 全ての新基盤 component に対して jest-axe を用いて PR 毎にテスト ● リニューアル project をきっかけに新しいデザイン仕様が増え、デザイナー陣からの提案で design system project が始動 ● 成果物がより安定的に、よりアクセシブルである状態にしたいという狙いから、 エンジニア側からアクセシビリティガイドライン project が始動 アクセシビリティガイドライン project 始動のきっかけ
  • 7. 大目的は、「成果物がより安定的に、よりアクセシブルである状態」にすべく、 ● 誰でもチェックできて、誰でもアクセスブルにデザイン /実装できる a11y 項目のチェックリストの形式になっている ○ デザイン時に組み込めるようにチェックできる ● 成果物に対してどの程度アクセスブルかのチェックが可能になっている ○ どの component でどのルールが適用されているのか理解できる ○ 任意のページでの達成率はどうなっているか理解できる ○ 改善できるポイントがどこにあるか理解できる を達成すること 04 ガイドラインの大目的
  • 8. WCAG のセクション番号ベースではなく、ルールベースのチェック項目を管理 以下の4種類のページを Notion を使って管理し、ガイドラインとする 05 具体的なガイドライン構成 チェック項目一覧 ページ毎にまとめた チェック項目一覧 component 毎にまとめた チェック項目一覧 ルール個別解説 ● 一行につき全角40文字以上にならないようにする ● XXXXXXXXX ● XXXXXXXXX ● XXXXXXXXX ● XXXXXXXXX ● XXXXXXXXX ● XXXXXXXXX ● XXXXXXXXX ● XXXXXXXXX ● 一行につき全角40文字以上にならないようにする ● XXXXXXXXX ● XXXXXXXXX ● XXXXXXXXX ● XXXXXXXXX ● XXXXXXXXX ✔ ✔ ✔ ✔ ✗ ✔ 達成度: XX % 記事 page ( newspicls.com/XX ) ● 一行につき全角40文字以上にならないようにする ● XXXXXXXXX ● XXXXXXXXX ● XXXXXXXXX ● XXXXXXXXX ● XXXXXXXXX ✔ ✔ ✔ ✔ ✗ ✔ 達成度: XX % 記事カード component 概要 … 具体例 … テスト・チェック方法 … 実装方法 … 参考リンク … 一行につき全角 40文字以上 にならないようにする チェック項目一覧
  • 9. ルールの定義を Notion database を用いて管理する 06 具体的なガイドライン構成 カテゴリ チェック項目 適合レベル チェックフェーズ WCAG2.1 セクション番号 対象となる component 対象となる page フォーム 画像 自動テスト A XX になってない XX ができる デザイン仕様fix時 A 1.3.1 1.3.4 comA comB pageA pageB comB Notion database の共通項目(props)を用いて table を filter し、 各ガイドラインのページ趣旨に応じて参照できるようにする 1.3.1 * メンテナンス性を向上させたいという思いから、このような使い方にしました!作って終わらない、コスト低く持続可能なメンテナンス性って大事!
  • 10. 理想 現実 a11y ガイドラインに設定しているものが実装に全て反映され ている ガイドライン作成中につき、まだまだ実装反映できてない 箇所も多い。自動テストや担当者が気づいたものは反映 できている状態。 a11y コミュニティを作れていて、グループ会社を巻き込んで互 いに相談できている Slack チャンネル #y-a11y は存在しつつ、ほぼ固定メン バーの不定期発信場となっている 支援技術利用者によるテストを定期的に行いたい リリース前テスト時に実装者が気づいた部分を確認する程 度しかできていない a11y ガイドラインを公開し、 a11y 分野に貢献できている状態 まだまだ社内限定公開のステータス 07 弊チームでの a11y 活動の理想と現実 正直、まだまだ「理想」まで長い道のりが待っている印象 😇
  • 11. ©NewsPicks Inc. All Rights Reserved. 02 パネルディスカッション (当日のメインでお話した内容です)
  • 12. ©NewsPicks Inc. All Rights Reserved. プロダクトにウェブアクセシビリティを取り入 れるためにやったこと
  • 13. 01 プロダクトにウェブアクセシビリティを取り入れるためにやったこと ©NewsPicks Inc. All Rights Reserved. 1-1. 参考にしているプロダクトは? WCAG を直接見ることもありますが、どういった解釈 をしているか知りたいときは、実際のプロダクトに対し て作成されたガイドラインを参照することが多いで す。 実装としてどうアウトプットされたかを知りたい際は、 同じくメディア事業をされている note さんの実装や、 UI library である MUI(Material UI)や Chakra UI を参考にしています。 ガイドライン 実装
  • 14. 01 プロダクトにウェブアクセシビリティを取り入れるためにやったこと ©NewsPicks Inc. All Rights Reserved. 「何をやってるかわからない」を 徹底的に排除する 1-2. 苦労したこと/工夫したことは? 実際のプロダクト開発に繋がる ガイドライン作成する ● デザイナー陣と寄り添う形で構成を考える ○ どうやったら使えそうと思うかについて、作成初 期段階からヒアリングさせてもらう ● 仕様策定フローへの取り入れやすさを考慮する ○ 取り入れるイメージを持ってもらえるようにどん な形が理想化をすり合わせて進行 ● Unit、division 、同グループのフロントエンドメンバーに 「意図」や「アウトプット」を共有できる形で進行する ● 「よくわからない」はやはり敬遠されがち …細かいことも、 多少まとまってなくても、とりあえず出すようにする 苦労はこれからするんだと思っています!気合い入れてくぞ!
  • 15. ©NewsPicks Inc. All Rights Reserved. 明日から始める ウェブアクセシビリティへの一歩
  • 16. ©NewsPicks Inc. All Rights Reserved. 1人の場合 ● build 待ちの間に本番環境のdev tools で Lighthouse 動かしてみる 組織単位の場合 ● 取り入れた情報を会社のSlack の times(分報) や tech 系チャンネルに投下してみる チームの場合 ● component 実装に対してjest-axe 等自動テストツー ルを導入 ● テストの習慣化(GitHub Actions 等で毎 PR テストする ようにする等) 2-1. 何から始めるのがベストか? 02 明日から始めるウェブアクセシビリティへの一歩
  • 17. 02 明日から始めるウェブアクセシビリティへの一歩 ©NewsPicks Inc. All Rights Reserved. ガイドライン作成の進行と理想状態の仕様と 実装反映 「Web だけの挑戦/課題でない」という認識を もっと広めたい ● 社内 a11y チャンネルにWeb フロントエンド勢以外の メンバーも invite していきたい ○ iOS/Android 開発者、デザイナー、 PdM の方々 ○ ありがたいことに、デザイナーメンバーやd&I 文脈で 興味を持ってくださってる方は社内に多いイメージな ので、うまく巻き込みたい! ● ガイドライン輪読会の実施 2-2. 現在抱えている課題と、今後どのように進めていくのか? ● 今の project 的に、既存実装→ガイドライン→実装反映と なっているが、理想的には、ガイドライン →仕様落とし込み →実装 ● 理想のフローに追いつくよう、今はひたすらガイドライン化 と実装を進める形になっている
  • 18. ©NewsPicks Inc. All Rights Reserved. a11y 草の根運動 まだまだやっていくぞ!
  • 19. ©NewsPicks Inc. All Rights Reserved. 03 質疑応答 (当日の後半でお話した内容です)
  • 20. 03 質疑応答 ©NewsPicks Inc. All Rights Reserved. ? 前述した通り、NewsPicks の Web product では、GitHub Actions を用いて、PR 毎に jest-axe のテストが走るようにして います。 axe のテストが万能であるというわけではないのですが、自動テ ストで気付くことのできる最低限のところをカバーするには良い と思い、導入しています。 アクセシビリティ検証ツールの最新事情や、使い分け方。特に、 Google/Chromeでも採用されているDeque社のaxeの業界 内でのポジショニグ
  • 21. 03 質疑応答 ©NewsPicks Inc. All Rights Reserved. ? プロダクト開発において KPI目標上で優先したい動線の UIと、ア クセシビリティの観点で優先したい UIがあった場合、どのように 折り合いをつけますか? 多様なパターンがあると思うのですが、個人の経験上では、ア クセシビリティ文脈で実装が難しい場合、そもそもの仕様が複雑 だったり、ユーザーが意図していない操作感になっていることが 多かったです。それ故、「アクセシビリティ的に実現が難しい」と 思う場合は、今一度仕様が複雑化していないか立ち返る機会だ と考えるようにしています。もちろん全てにおいて言えることでは ないのですが、一度メンバー全員で向き合ってみてもいいかもし れないです。
  • 22. 03 質疑応答 ©NewsPicks Inc. All Rights Reserved. ? テックイベントのLPページ等でアクセシブルでない実装を見ると 「このイベント大丈夫かな」と来場者に思われないかやや不安に なることがあります。そういった上で「アクセシブルな実装ができ る受託開発を提供しています」というのは強みになると感じてい ます!納品時にアクセシビリティ観点の検品書が入っていたり するととてもかっこいいと感じました!応援しています! 受託開発側から「アクセシビリティやっておきますね!」と伝える べきでしょうか?
  • 23. ©NewsPicks Inc. All Rights Reserved. 04 おまけ
  • 24. 04 おまけ: 宣伝 ©NewsPicks Inc. All Rights Reserved. テック情報、アウトプット中!是非お立ち寄りください! 会社紹介資料やエンジニアブログを公開中! https://tech.newspicks.com/ デザイン系については note をチェックしてください 💁 https://note.com/newspicksdesign/ Podcast もしているので、よろしければご視聴ください 📻(出演 もお待ちしております 🙋) カジュアル面談希望& Podcast 出演希望の方は Twitter より @becyn に DM ください!