2022年9月7日(水)に、 Hatena Engineer Seminar #21 をオンライン開催しました。ご参加いただいたみなさま、ありがとうございました。
このエントリーでは、当日のアーカイブ動画や公開資料をご紹介します。
Hatena Engineer Seminar #21 について
Hatena Engineer Seminar は、はてなのサービスを開発する上で、エンジニアがどのような事を考えているのか、どのような働き方をしているのかを語るイベントです。
#21では、15の出版社・20のマンガサービスに採用いただいているはてなのマンガビューワ「GigaViewer」の開発チーム、株式会社集英社の少年ジャンプ+編集部との協業サービス「マンガノ」の開発チームのメンバーが登壇し、モバイルアプリからフロントエンド、バックエンドまで、はてなのGraphQL活用についてご紹介しました。
GraphQLについては、はてなのチーフエンジニア id:cockscomb がこれまでに以下のようなアウトプットを公開しておりますので、こちらもぜひご覧ください。
- 2021-10-18 WEB+DB PRESS Vol.125の特集「GraphQL完全ガイド」を執筆しました - cockscomblog?
- 2021-12-17 銀座Rails#40 GraphQL Highway id:cockscomb発表資料
- 2022-01-28 ポッドキャスト「Backyard Hatena #3 id:cockscomb に聞く GraphQL の高速道路」
また、登壇メンバーの所属チームや担当サービスについては以下でご紹介させていただいています。
- 「マンガノ」
- 株式会社集英社の少年ジャンプ+編集部とはてなが協業したマンガ投稿サービス
- 「GigaViewer」
- 「少年ジャンプ+」「コミックDAYS」「サンデーうぇぶり」など20のマンガサービスに採用されているはてな開発のマンガビューワ。Web版「GigaViewer for Web」とアプリ版「GigaViewer for Apps」を提供しています。
- 「GigaViewer for Apps」でマンガの未来を広げたい - 株式会社はてな
- マンガアプリチームメンバーによる座談会コンテンツ
イベントの内容は、配信のアーカイブ動画もYouTubeでご覧いただけます。動画の概要や以下の説明で、各トークの開始時間にもリンクしていますのでご利用ください。
発表概要と資料
GraphQLを使い続けて気づいたこと 〜マンガノでの活用事例から〜 - by id:miki_bene
マンガノは2021年4月にリリースされた、はてなと集英社 少年ジャンプ+編集部が共同開発したマンガ作品に特化した投稿サービスです。マンガノでは開発当初から GraphQL を活用したバックエンド・フロントエンド開発を行っています。使い続けていくにつれて、GraphQLがAPIの実装において良い効果を与えていることに気づいてきました。開発の実例を紹介しつつ、GraphQLが与えた良い効果についてお話します。
発表資料を以下で公開しています。
Hatena Engineer Seminar #21 - Speaker Deck
配信アーカイブの該当部分は、1分9秒からです。
Perl でも GraphQL が使いたい - by id:nakaoka3
どうしてはてなのマンガメディアチームがPerlでGraphQLを使いたいのか、どうやってPerlでGraphQLを使うのか、どうやってPerlで実装するのか。
graphql-perl
を使った実装方法を紹介します。
発表資料を以下で公開しています。
Perl でも GraphQL を使いたい - Speaker Deck
配信アーカイブの該当部分は、16分14秒からです。
マルチテナントで GraphQL を使う際の工夫 - by id:mizdra
GigaViewer では多数の漫画サイトを立ち上げるため、マルチテナントアーキテクチャを採用しています。1つのコードで複数のサイトに対応させるべく、GraphQL スキーマや、サーバーの実装に至るまで、様々な工夫をしています。この発表ではそれらの詳細をご紹介します。
発表資料を以下で公開しています。
マルチテナントで GraphQL を使う際の工夫 - Speaker Deck
配信アーカイブの該当部分は、27分30秒からです。
GraphQLでフロントエンドとバックエンドを分離する - by id:magaming
GigaViewer のバックエンドは Perl で書かれており、これまで HTML のレンダリングにはテンプレートエンジン(Xslate)が使われていました。しかし現在、GraphQL + Next.js に段階的に移行しつつあります。その移行までの道のりについてお話します。
発表資料を以下で公開しています。
Hatena Engineer Seminar #21 GraphQLでフロントエンドとバックエンドを分離する - Speaker Deck
配信アーカイブの該当部分は、34分13秒からです。
はてなが作るマンガアプリのGraphQL導入から活用 ~ コミックDAYSからGigaViewer for Appsへ~ - by id:kouki_dan
REST APIで作られていたコミックDAYSアプリにGraphQLを導入するまでに実際に行った検証から実装、リリースまでの流れをご紹介します。その知見を活かして、GraphQL中心の設計でゼロから作ったはてなのマンガビューワのアプリ版「GigaViewer for Apps」での活用例や工夫もお見せします。
発表資料を以下で公開しています。
配信アーカイブの該当部分は、40分49秒からです。
クロストーク
GraphQLの活用における苦労や工夫や改善について、GigaViewer for WebとGigaViewer for Appsの開発を担当するエンジニア陣がテーマに沿ってお話しました。登壇は、id:ikesyo, id:nakaoka3, id:mizdra, id:mangano-ito です。
id:ikesyo による関連エントリ:
ikesyo.hatenablog.com
配信アーカイブの該当部分は、55分32秒からです。
さいごに
ご参加いただいたみなさま、ありがとうございました。はてな技術グループでは引き続き、ブログやセミナーなどを通じた技術情報の発信に取り組んでまいります。
次回の Hatena Engineer Seminar は2022年11月に開催予定です。ご期待ください。
はてなでは新卒・中途、東京・京都を問わずエンジニアを募集しています。今回のセミナー内容に少しでも興味をお持ちなら、ぜひともご応募ください!
id:miki_bene
藤田幹央。マンガ投稿チーム アプリケーションエンジニア。電気通信大学卒。はてなサマーインターン2016参加者。2018年4月新卒入社時より現職。
Twitter: @benevolent0505
GitHub: benevolent0505
blog: ドキュメントを見たほうが早い
id:mizdra
木戸 章紀(きど・あきのり)。マンガメディア開発チームでWebアプリケーションエンジニアを務める。2020年4月新卒入社時より現職。
Twitter: @mizdra
GitHub: mizdra
Website: mizdra.net
id:kouki_dan
斉藤 洸紀(さいとう・こうき)。2019年1月入社。マンガチームでスマートフォンアプリケーションエンジニア/テックリードを務める。
Twitter: @kouki_dan
GitHub: kouki-dan
blog: Lento con forza
id:mangano-ito
マンガーノ・伊藤、伊藤聡介。アプリケーションエンジニア。マンガチーム所属。2019年12月入社時より現職。
Twitter: @mangano_ito
GitHub: mangano-ito
blog: マンガ〜ノ伊藤ノ〜ト