JavaScript Primer (https://jsprimer.net/) では、毎年ECMAScriptの新しい仕様への追従を行っています。

ES2025はもうすでにリリース候補が公開されていて、2025年6月に正式リリースされる予定です。

今年もES2025で追加される機能についての対応Issueを作成しました。

これらのIssueを一緒に進めてくれるContributorと、JavaScript Primerの活動を支援してくれるSponsorを募集しています。

ES2025対応のIssue

ES2025のMeta Issueとして次のIssueがあります

具体的に対応するものとして次のIssueを作成しています。

各Issueには、作業量の見積もりとしてpointを付与しています。(これは感覚値なのであんまり正確ではないです。実際にやってみたら変わる可能性もあります) このpointは、作業の難易度や必要な調査量などを考慮して設定していて、後述するOpen Collectiveでの報酬計算にも利用します。

pointの目安は以下の通りです。これは作業時間ではなく、タスクの複雑さや規模を表す指標です。 例えば2 pointは「1日あれば終わるかな」という感覚値に近いものです。

Point Description
0 些細な変更 (typo修正など)
1 2 よりは簡単
2 大体1日分の作業量で終わる想定
3 2 よりは難しい
5 かなり難しい、調査や広範な変更が必要
8 難易度がとても高く、できる人が限られるレベル

ES2025に対応するマイルストーンは、次のページで公開しています。

ES2025は毎年6月末ぐらいに公開される予定なので、7月ぐらいには完成させる予定です。

Contributorを募集しています

JavaScript Primerの執筆、レビュー、サンプルコード作成、仕様調査などに興味がある方を募集しています。

今年のIssueは、1人 1Issueで綺麗に分けられると思うので、それぞれのIssueに興味がある人を募集しています。

去年のES2024対応 (JavaScript PrimerのES2024対応を手伝ってくれるContributorとSponsorを募集しています | Web Scratch) の反省を踏まえ、今年はもう少しオンボーディングやコミュニケーションを丁寧に行いたいと考えています。 IssueにAssignはすると思うのですが、どういうイメージで書いていくかをやり取りしながら進めていければいいかなと思っています。 (幸いLLMが充実してきているので、下書きレベルならざっくりと出せると思うので、具体に近いものを見ながら進めていけるといいのではないかなと思ってます。)

特に、Iterator Helpersのように難易度が高いものは、事前にオンラインミーティングなどで進め方や認識合わせをする機会を設けたいと思っています。 Iterator Helpersは正直かなり難易度が高いので、実際に手を動かせるレベルになるまではもうちょっとかかりそうな気がします。 (一応募集はしていますが、これは結構な気合いが必要なIssueだと思っています。)

Contributeしたい人は、次のDiscussionに参加してみてください。

Open Collectiveによる報酬

JavaScript PrimerはOpen Collectiveを通じて、活動資金の支援を受け付けています。 Contributorとして参加していただいた方には、この予算からContributing Expenses Policyに基づき、作業量に応じた報酬を請求できます。

報酬額は、Issueごとに設定されたpointに基づいて計算されます。 現時点での年間予算は約$421で、これを元に計算すると 1 pointあたり約$7 となります。

pointの目安は以下の通りです。これは作業時間ではなく、タスクの複雑さや規模を表す指標です。

Point Description
0 些細な変更 (typo修正など)
1 2 よりは簡単
2 大体1日分の作業量で終わる想定
3 2 よりは難しい
5 かなり難しい、調査や広範な変更が必要
8 難易度がとても高く、できる人が限られるレベル

過去のIssueに対応するpointの参考値やOpen Collectiveの利用方法については次のページを参照してください。

書き方について

JavaScript Primerは技術書であるため、次の点に気をつけて書いていきます。

  • 正確性: 仕様やMDN、信頼できる情報源を元に、矛盾のない正確な記述をします。
  • 読みやすさ: 読者が理解しやすいように、平易な言葉遣いや構成を意識しますが、textlintのチェックがあるのである程度強制されます。
    • LLMの利用自体は問題ありませんが、最終的な品質は人間が読みやすかどうかで判断します
  • サンプルコード: ユースケースに基づいた、実践的で理解しやすいサンプルコードを扱います。なぜそのコードが必要なのか、どのような場面で役立つのかが伝わるように意識します。
    • 実際に使われているパターンなどをもとにサンプルコードを書きます
  • 目的意識: jsprimerにははじめに · JavaScript Primer #jsprimerに書いているように、本書の目的と目的ではないことが書かれています
    • 毎年悩むのは「どこまで書くか」ということですが、悩んだ時は本書の目的に立ち返って判断します

これもLLMを使って一部書いていますが、やや小難しくなりがちです。

実際に書籍を書くときには、textlintによる文章のチェックやレビューやサンプルコードに対するテストの仕組みなどもあるので、文章ですがコードを書くような感覚で書いていくのが良いと思います。

詳しい書き方やルールについては、次のドキュメントを参照してください。

参加方法

Contributorとして参加してみたい方は、次のDiscussionにコメントしてみてください。

ご興味のある方、ぜひ参加してみてください!

Sponsorを募集しています

JavaScript Primerの活動は、個人や企業のSponsorからの支援によって支えられています。 書籍の継続的なメンテナンスや改善活動を支援してくださるSponsorを随時募集しています!

今年の更新に関する費用は、次の方々の支援によって成り立っています。 ご支援ありがとうございます!

Gold Sponsors

Supporters

jsprimer backers

jsprimerの更新を金銭的にサポートしたいという方は、是非検討してみてください!

詳細はJavaScript Primerスポンサー · JavaScript Primer #jsprimerをご覧ください。

オマケ: TSKaigi 2025での発表

TSKaigi 2025の2日目に、JavaScript Primerの取り組みについて発表する予定です。

技術書をソフトウェア開発する - jsprimerの10年から学ぶ継続的メンテナンスの技術 https://2025.tskaigi.org/talks?day=2

JavaScript Primerという書籍が作られ、どのようにメンテナンスされているかといった内容について話す予定です。 発表は一ヶ月後なので、その頃にはES2025対応もある程度進んでいる(または始めている)状態になっていると思います。

興味がある人は、ぜひ見にきてください!

参考: 前回の募集