Inside2022.06.23

Yahoo!ニュース トピックスはどうやって作られるのか? 入稿ツールの開発・発展の舞台裏

1日約7500本配信されるニュース記事の中から、世の中に伝える情報を選ぶYahoo!ニュース トピックス編集部。巨大なプラットフォームの運営には、編集者だけではなく、多くのエンジニアやデザイナーが関わっています。

そこで活用されているプロダクトの一つが、Yahoo!ニュース トピックスを入稿する社内向けツール「TOMATO」。2020年5月に技術基盤が刷新された新ツールとしてリリースされ、2021年7月に旧入稿ツールからの移行がすべて完了しました 。

現場の意見をふんだんに取り入れながら作られた「TOMATO」の開発経緯について、プロジェクトマネジャーの中村愛さん、エンジニアの児玉昌子さん、そして編集の福士優美子さんにお話を聞きました。

取材・文/友清 哲
編集/ノオト

トピックス入稿ツール「TOMATO」とは

「『TOMATO』とは、ツールを呼びやすく省略した呼び名で、ツールの正式名称Topics Making Tool の単語の頭から作られています。Yahoo!ニュース トピックス編集部メンバーが日常的に使うメインツールで、トピックスの入稿はもちろん、『主要トピックス』や『国内』『経済』などそれぞれのカテゴリーに表示するトピックスの編成 、アプリへのプッシュ通知、さらには災害などの有事の際に掲出する緊急速報枠の設定など、Yahoo!ニュース トピックス編集部が担うあらゆる業務ができるようになっています 」

そう語るのは編集部の福士さん。新型コロナウイルスの感染拡大に伴う緊急事態宣言の発出に際し、緊急速報枠でのニュース掲出なども、「TOMATO」によって行われました。

設計において重視されたのは、スムーズな使用感と安全性。Yahoo!ニュースはサービスの利用者が多く社会への影響力が強いため、トピックス編集部が正確に、そして迅速に日々の情報を世の中に届けられることが、開発時の最優先事項であったと言います。

「ミスを極力なくすために、わかりやすいインターフェースであることは大前提で、それが安全性にも直結します。そのため、『TOMATO』ではトピックスの見出しやURL、記事本文、写真・動画などを順にわかりやすく入力できる直感的に使えるインターフェースを採用しています。実際の掲出イメージに近いかたちで入力できるので初めて編集作業にあたる人でも、混乱することなく短い練習期間で使えるようになるのが特徴です」(中村さん)

正確さが求められるニュースを扱うトピックスでの誤字脱字やプッシュ通知の誤りは最も避けるべき事態。そのため「TOMATO」で作成されたトピックスは、その後、何重ものチェックを経て公開に至ります。

また、リアルタイムに簡易プレビューを確認しながら入稿でき 、編集業務に初めて取り組む人も混乱しないようなデザインになっています。

旧ツールが抱えていた課題

もともとYahoo!ニュース トピックス編集部では、別の入稿ツール(以下、旧ツール)を使っていました。しかし、時代が変われば技術もニーズも変わるもの。ヤフー全社でのシステム刷新に合わせて、新たな入稿ツールを開発する必要性が出てきました。

「TOMATO」の開発プロジェクトを統括した中村さんはその経緯を次のように振り返ります。

「新入稿ツール開発のプロジェクトが立ち上がったのは2019年10月です。入稿ツールは非常に重要な役割を担っているため、一度にすべての機能を移管することはリスクが大きく、事故防止の観点からできません。そこで、旧ツールから機能を少しずつ分割してリプレイスするフローが採られました」

開発に伴い、編集者が旧ツールに感じていた課題の解消、そして現場が求める新たな機能の実装を目指すことになります。

「具体的には企画、編集、そしてエンジニアとデザイナー、各部門の担当者が横断的に集まってプロジェクトチームを組み、具体的な機能性と、それに対して技術面でどうアプローチするのかを検討しました。旧ツールは2014年から5年間使われており、技術面でもいくつかの課題を抱えていましたから、これは良い機会だったと思います」

そう話すのはエンジニアの児玉さん。それでは、旧ツールが抱えていた課題とは何だったのでしょうか? 入稿ツールのメインユーザーであるYahoo!ニュース トピックスの編集者・福士さんは次のように語ります。

「旧ツールが運用された5年の間に、Yahoo!ニュースの表示形式は何度も刷新されましたし、新たな機能の追加やレギュレーションの変更など、さまざまな変化がありました。旧ツールではその都度、増改築を繰り返すかたちでどうにか対応してきました。しかし、やはり細かい非効率や不便が生じていたんです。『TOMATO』ではそうして積み重なった細かい課題を解消しただけでなく、1秒でも速くトピックスを届けるために、ツールが重たくならないようにしながら自動化できる部分は自動化したり、別ツールを介していた作業がツール内で完結できるようにしたり、機能の追加・改善がされました」

その一つとして、画像の入稿パーツではトピックスではスマホやPCなど、それぞれ異なるサイズで表示されるよう設定しています。

「増改築を重ねるうちに画像入稿の動作が特に重たくなっていて、これだけでかなり時間が取られてしまう状況でした。そこで、完全手動で画像サイズ指定をしていたこの部分を、半自動化しました。『TOMATO』になってから、使い勝手もスピードも大きく改善しています」

新たな言語や技術を習得しながらの開発

しかし、「TOMATO」開発のプロセスにはさまざまな苦労も。例えば、Yahoo! JAPANの全ページに掲出される緊急表示枠は、人命にかかわる重大なニュースを扱うことも多く、極めて重要な機能です。

そのため、チーム内だけでなく、関係部署との綿密なコミュニケーションを心掛け、アクセスの少ない深夜に本番試験運用のテストも行いました。

それ以外にも、技術面においても多くの障壁がありました。

「旧ツールは、長年にわたって仕様を継ぎ足しながら運用していました。処理が複雑に絡みあっており、現在は使われていない処理が残っていたり、全容が分かるドキュメントが存在しないといった課題があったんです。そのため、旧ツールの全ての処理を把握し、今後も必要な機能を精査する作業が必要でした。エンジニアチームで分担して大量のソースコードをひととおり読み、その後4日かけて仕様を整理して新ツールの骨子を設計しました。手間取りましたが、振り返ってみると、とても大事なフェーズだったと思います」(児玉さん)

さらに「TOMATO」開発にあたっては、プログラミング言語を始め、新しい技術を採用しています。これもエンジニアチームにとっては大きな挑戦でした。

「今回、プログラミング言語としては『TypeScript』を採用し、サーバーサイドに『Node.js』、ツールの見た目部分には『React』を使用しています。これらの技術はYahoo!ニュースの中でも採用が増えている技術ですが、プロジェクトがスタートした時点では『TOMATO』のエンジニアチームには扱える人材がいませんでした。ヤフーにはプログラミング言語ごとに開発をサポートしてくれるチームが存在します。今回はNode.jsのサポートチームに協力を仰ぎ、学習しながら開発を進めていきました。これは私たちとしても新鮮な経験でしたね。また、Yahoo!ニュース全体で使用言語をできる限りそろえていくと、部署内で人材異動があってもすぐに適応しやすくなります。今後の改修しやすさを担保するためにも、新たな言語を学ぶことには意味があったと思います」(児玉さん)

他方、細かな機能や仕様の決定については、メインユーザーである編集者の視点が欠かせません。そこでプロジェクトチームでは、編集者に対する詳細なヒアリングが行われました。

「旧ツールから大幅に使用感が変わってしまうと、慣れるのに時間がかかります。そこでなるべく従来のインターフェースを踏襲するようリクエストし、機能面でどうしても使い勝手が変わるものについては、複数パターンの中から編集者にとって使いやすいものを選ばせてもらうなど、入念なすり合わせを行いました」(福士さん)

しかし、使い勝手には個人差が付き物。そこで、編集業務におけるリスクヘッジを最優先しつつ議論を重ねていったと福士さんは振り返ります。

TOMATO」開発によって得られた成果

では、「TOMATO」のリリースによって、具体的にどのような成果が得られたのでしょうか? 中村さんは「安全かつスピーディーな作業が実現したこと」と語ります。それは編集業務だけでなく、エンジニアリングの面でも同様です。

「時代に合わせてYahoo!ニューストピックスも、これからまだまだ変化を重ねていくはずです。TOMATOによって、新しい機能の追加や改善施策に対して、迅速に対応できるようになった点は大きなメリットです。また、今回こうしてゼロベースでツールを開発したことで、仕様が可視化できたことも成果の一つです。日常的に使っているツールの全容があらためて周知されたことは、今後の機能拡張やアップデート、管理においても有意義だと感じています」(中村さん)

実際、編集部内では早くも、さらなるツールやデータベースとの連携を望む声など、次のアップデートに向けたリクエストが続出しているのだそう。最新技術によって利便性の高い環境が整備され、そこでまた新たな要望が生まれ、さらなる機能性アップにつながる。そんな理想的なサイクルが生まれつつあります。

『TOMATO』のリリースで自動化、簡略化された作業は少なくありません。その分、編集者の負担を減らすことができるのは、トピックス編集部として大きな意味がある、と中村さんは言います。

「編集部には多様なバックグラウンドを持つ多彩な人材がそろっていて、入稿作業に割くリソースが省ければ、それだけその人材本来の能力を他のところで活かすことができる。それはYahoo!ニュースというサービス全体のクォリティ向上にもつながるはずです」(中村さん)

お問い合わせ先

このブログに関するお問い合わせについてはこちらへお願いいたします。