この資料は元々 Habr.comに投稿 ロシア語。著者は、それを翻訳してCodingsightに公開することを許可しました。
おそらく、誰もが、記事、本、リポジトリ、マニュアルなどへのリンクなど、特定のエキサイティングで便利なものを保持するためのファイルをどこかに持っています。ブラウザやタブでブックマークを使用し、開いたまま待っている場合があります。時間の経過とともに、すべてが過度に大きくなり、リンクが壊れ、資料が古くなります。
しかし、これらの洞察に満ちた宝石をコミュニティと共有できたらどうでしょうか? GitHubにファイルをアップロードしますか?そうすれば、あなたの発見は他の誰かに役立つでしょう。さらに、ファイルをまとめて最新の状態に保ち、古き良きプルリクエストを介してリストを更新する方が簡単です。
これが、AwesomeListsプロジェクトの目的です。
Awesome ListsはGitHubリポジトリのトップ10に入っており、すでに138kの「スター」を誇っています。あなたの作品へのリンクは、そのルートREADMEに到達するため、膨大な数の視聴者を魅了します。ただし、最初にいくつかの努力をする必要があります。ここで、私の経験を共有したいと思います。
私は、モスクワに本社を置く国際的なIT企業であるCROCのJava開発者およびデータベース研究者であるMaksimGraminです。この記事では、素晴らしいリストと、公式の素晴らしいリポジトリを作成する方法について説明します。
素晴らしいリストとは何ですか?
新しいテクノロジーやプログラミング言語を扱う必要があるときはいつでも、最初にそこに行き、必要なセクションと適切なリストを探します。 「スター」の数が増え続けていることを考えると、そのようなアプローチを採用しているのは私だけではありません。
実際、「Awesome Lists」は、別のリポジトリにある標準のプレーンなreadme.mdです。ただし、すべてのGitHubリポジトリの中で8位を占めており、特定のトピック専用の他のリストが含まれています。たとえば、プログラミング言語セクションにはAwesomePythonリストとAwesomeGoリストがあり、フロントエンド開発セクションには多数のWeb開発資料が格納されています。最後になりましたが、データベースセクションがあります(これについては後で説明します)。
もちろん、コンテンツは技術的な主題だけに限定されず、エンターテインメントやゲームなどの他のセクションも含まれます。そこにもたくさんのエキサイティングなものがあります(私は素晴らしいファンタジーのリストに本当に満足していました)。
プロジェクトの主な違いは、これらすべてのリストが作成者だけでなくコミュニティによって管理されていることです。その上、それらはすべて厳格な素晴らしいマニフェストに従って作られています。各リストは、スペシャリストの個別のコミュニティを表しており、独自の生活を送っており、プルリクエストを受け付けています。これによりさらに改善されます。さらに、トピックの調査が不足している場合に備えて、誰でも独自のリストを作成できます。
独創的なアイデアとすべての調整については、GitHubの最初の人物であり、1,000以上のnpmモジュールの作成者である伝説的なSindreSorhusに感謝する必要があります。彼はあなたのプルリクエストを受け入れる人です。
素晴らしいリストを作成する方法
必要なトピックの適切なリストが見つからない場合は、それを自分で行う必要があることを示す最初の兆候です。私自身の作成例である素晴らしいデータベースツールを使用して、その方法を説明します。
プロジェクトごとに、私はあらゆる種類のデータベースを扱わなければなりませんでした。したがって、私は仕事のためにさまざまな便利なツールを集めたいくつかのファイルを管理し始めました。さまざまなDB移行者、IDE、管理パネル、監視ツールなどがありました。これには、私がすでに使用したものや、計画しているものも含まれます。
私はこのファイルをCROC以降の同僚と共有し、多くの人にどのように役立つかを見て励まされました。それから、もっと欲しかった。データベースセクションにツール専用のリストがないことに気付いたとき、私は自分のものを追加することにしました。
そのために何が必要ですか?
- 標準のGitHub-repoを登録し、awesome-smthのように名前を付けます。私の場合はawesome-database-toolsでした。
- リストを素晴らしいに調整します 必要なすべてのファイルを正しい形式で生成するgenerator-awesome-listを使用してフォーマットします。
- 継続的インテグレーション(CI)の構成–awesome-lintとTravisCIは、リストの有効性を制御するのに役立ちます。
- 30日間待ちます。
- 他に少なくとも2つのプルリクエストを確認します。
- メインリポジトリへのプルリクエストを作成し、独自のリポジトリへのリンクを追加します。 重要 :新しいリストとプルリクエストに対する多数の要件をすべて注意深く読み、それらに正確に従ってください。
私の最初の試みは成功しませんでした。
しかし、しばらくして、私はさらに多くの資料を収集し、宿題をし、エラーを修正して、もう一度試みました。
しかし、私は1つの重要なことを忘れてしまい、彼らはそれについて丁寧に思い出させてくれました。
私は十分に注意を払っていなかったので、すべての条件が満たされていることを確認するためにユニコーンを追加しませんでした。
もう少し時間が経ち、コメントや修正が追加され、ついに、待望のツイッターが私のPRが受け入れられたのを見ました。
これが私の最初のリストを作成し、新しいツールを追加するためのコミュニティのプルリクエストを受け取り始めた方法です。それらの多くはすでにAwesomeDatabaseToolsに含まれています。
データベースに関する優れたアイデアがある場合は、自由に共有してください。また、プルリクエストやスターなど、フィードバックをお待ちしております。自分のリストを作成することについて質問がある場合は、私に知らせてください。
作者には[email protected]で連絡できます。