1 ポイント 投稿者 GN⁺ 2023-08-15 | 1件のコメント | WhatsAppで共有
  • OpenFarmは、農業・園芸の知識を誰でも共有できる無料のオープンデータベース兼Webアプリケーションで、植物栽培情報をレシピのように探して使えるモデルを目指していた
  • サーバーは2025年4月に終了しており、コードベースの保守停止と、2025年5月に予定されていたサーバーインフラのセキュリティアップデート終了が直接の理由だった
  • 中核コンテンツであるGrowing Guidesには、種まき間隔、植え付けの深さ、水やり、土壌構成、コンパニオンプランツ、日なた/日陰条件といった栽培に必要な構造化情報が含まれていた
  • 開発者は、Vagrant・VirtualBoxベースの簡単なセットアップ、またはRuby、Rails、ElasticSearch v6.5.0、MongoDBを個別にインストールする方式でローカル環境を構築できた
  • ソフトウェアはMIT License、データベースはPublic Domain(CC0) として公開されていたが、サービスは無期限終了となり、GitHubリポジトリのみが公開アーカイブとして残された

2025年4月のサーバー終了

  • OpenFarmサーバーは10年あまり運用された後、2025年4月に終了した
  • 終了の主な理由は2つだった
    • コードベースがもはや保守されていないこと
    • サーバーインフラが2025年5月以降セキュリティアップデートを受けられなくなる予定だったこと
  • 近年サイト利用量が減少していた点も踏まえ、サーバーを無期限終了し、GitHubリポジトリを公開アーカイブ化することにした
  • OpenFarmは「植物栽培のためのWikipedia」になるほどの十分な利用量は得られなかったが、10年以上にわたりAPI利用者とWeb訪問者に価値を提供してきた

OpenFarmの目的とコンテンツモデル

  • OpenFarmは、農業と園芸の知識のための無料オープンデータベースであり、Webアプリケーションでもある
  • 目標は植物栽培のためのWikipediaに近かったが、実際の利用形態は料理レシピサイトにより近かった
  • 主要コンテンツはGrowing Guidesだった
    • クリエイティブでクラウドソース型の単一著者ドキュメント
    • 植物を育てるのに必要な構造化情報を含む
    • 種まき間隔、植え付けの深さ、水やり、推奨土壌構成、コンパニオンプランツ、日なた/日陰条件などを扱う
  • ガーデナーは「トマトをどう育てるか?」のような質問への答えを見つけることができた

コミュニティと参加経路

  • 参加者は、OpenFarmのコアコントリビューターと議論するためにSlack roomへ参加するよう案内されていた
  • 貢献に関する質問については、FAQでAngular、Issue Tracker、IRCチャンネルなどを確認できた
  • 作業が必要な項目はOpenFarm Projectsで優先度付きリストとして管理されていた
  • コード貢献はフロントエンドとバックエンドの両方でGitHub Projectsベースに分かれていた
  • Webサイト翻訳にはTransifexを通じて参加できた

包摂的な貢献原則

  • OpenFarmは、技術系・非技術系メンバー、園芸初心者から専門家まで、あらゆる参加を歓迎していた
  • コミュニティは、多様性と安全で包摂的な空間のためにCode of Conductを採用していた
  • 問題解決の進め方として、次の3つを志向していた
    • 行動の理由を透明に残すため、文書化・質問・回答に時間を使う
    • 完璧さより完了を重視し、作業を小さく分けて、誰でも短時間で貢献できるようにする
    • ユーザビリティ改善と機能実装において、最も明確で短い経路を見つける

開発環境の構築

  • 簡単なインストール方法として、VagrantVirtualBoxの使用が推奨されていた
  • Vagrant設定後は、vagrant sshcd /vagrantrails sでRailsサーバーを起動できた
  • ローカルではhttp://localhost:3000にアクセスでき、正常に設定されていればシード済みデータベースとデフォルトアカウントadmin@admin.com / admin123を利用できた
  • 個別インストール方式ではRubyRailsElasticSearch v6.5.0MongoDBが必要だった
  • 直接実行の手順は、リポジトリのクローン、bundle installrake db:setup、環境変数ファイルの作成、rails sの実行で構成されていた
  • 一部のLinuxユーザーはElasticSearchのインストール問題に直面しており、Dockerでelasticsearch:6.5.0mongoを実行する回避策が示されていた
  • bundleのインストールや実行時の問題については、Common Issues Pageを参照するよう案内されていた

コアコントリビューターのルールとライセンス

  • 2つのPRを作成した貢献者はcore contributorとして追加される可能性があった
  • コアコードコントリビューターのルールは次のとおりだった
    • --force pushやGit履歴の変更は禁止
    • 作業中の変更にはmasterではなくブランチを使用
    • 外部API変更や重要な修正では内部pull requestでフィードバックを求める
    • 重要でない変更を除き、貢献にも内部pull requestを推奨
    • 既存のコードスタイルに従うよう努める
  • 実際のGitHubコード貢献者はGitHub contributorsで確認できた
  • GitHub外でも、資金支援、Webサイト向け園芸コンテンツの作成、OpenFarmの認知拡大といった形で貢献した人々がいた
  • ソフトウェアはMIT Licenseで配布されていた
  • OpenFarm.ccデータベースのすべてのデータはPublic Domain(CC0)で提供されていた

1件のコメント

 
GN⁺ 2023-08-15
Hacker Newsのコメント
  • HNのトップページに載っているのを見て驚いた。FarmBotにいた頃、OpenFarmの主要メンテナーの一人だったし、すでに何人かが言っているように、このプロジェクトは残念ながら活発にはメンテナンスされていない
    ただし、FarmBot内では作物情報の管理用途でまだ使われているので、死んだプロジェクトだとは思わない
    いま最も必要なのは何よりも依存関係のアップグレード。古いRails/Mongoid/Angular 1.xの上で動いている。このプロジェクトを復活させたい人は、現在のメンテナーに必ず連絡してみるのがよいと思う。私はもう関わっていない

    • Angular 1だって!
      https://github.com/openfarmcc/OpenFarm/blob/mainline/app/ass...
      $scope.$watch()とは懐かしい。おそらくVueが良い選択肢になりそう
    • 私と私たちの会社がメンテナー役を引き受けると提案した。これは私たちが情熱を持って関心を寄せている分野だ
    • 作物/植物データベースのコピーを受け取れる可能性はあるだろうか?自宅用の小さなアプリを作っているのだが、整理されたデータやAPIを見つけるのが難しかった
  • 連絡先にメールを送ってみたところ、こんな返信が来た
    「こんにちは。OpenFarmは数年間メンテナンスも作業も行われておらず、Slackグループももうアクティブではありません。OpenFarmプロジェクトのメンテナー役に関心がある場合は、OpenFarmのGitHubリポジトリを通じてご連絡ください。また、このメールアドレスは現在、定期的には確認していない点にもご留意ください。この返信は自動不在応答です。ご理解ありがとうございます。」

    • GitHub READMEに@farmbot.ioのアドレスがあるのを見ると、少なくとも初期にはFarmBotの社員がメンテナンスしていた可能性がある。今もそうかもしれないし、DependabotのPRをマージするような形で、最低限火を消さないように維持している人はいるようだ
      価値のあるリソースなので、HNで露出したのを機に誰かが名乗り出てメンテナンスしてくれるといい
    • 本当に残念
      リポジトリ https://github.com/openfarmcc/OpenFarm に情報は全部あるように見えるが、正直これは必ずしもWebサイトである必要はない。相互リンクされたMarkdownファイル群をGitHubに置いておくほうが、メンテナンスと拡張がずっと簡単そうだ。もう少しそれらしくしたければJekyllを使えばいい
      学生や似たようなグループが週末のハッカソンで取り組むのにちょうどいい、すっきりしたプロジェクトだ
  • 似たようなプロジェクトに参加したことがあるが、特に小規模農場では、多くのことが場所や植物の品種に非常に強く結びついている、という点は見落とされがちだ
    剪定の日付も数百km移動するだけで1か月以上変わることがあるし、土壌条件も同じで、すぐ隣の農場に行くだけでも変わり得る。こうした情報を体系的に集めて配布することが、極端に複雑にならずに可能なのかはよく分からない

    • 可能だ。だから植物図鑑や植物学情報のようなものが存在する
      植物学は科学であり、情報はすでに出ている。地域の図書館に行って見て回ればいい
      気に入らないのは、サンフランシスコのテックブロたちが、すでに解決済みの問題をハイテクで解き直そうとする姿勢だ。同僚たちがFarmBotを設置するのを見たが、同じ作業は一人が移植ごて一本で数時間かければできた。実際には、ビル管理者が1日に1回ホースを持って行って植物に水をやっていた
  • うちの母ならここにかなり貢献できるだろうが、Vagrantとgitの設定が必要という点は、母のような一般の人には参入障壁が高すぎる
    残念なことだ。ガーデニングにおける知識共有はとても理にかなっているし、もしかすると私たちの文明が生まれた方法の一部だったのかもしれない

  • 保護施設の動物ケア分野にある、ある程度似たプロジェクトで、かなり綿密だ
    https://opensanctuary.org/

  • アイデアは素晴らしいが、作物をうまく育てるために必要な知識は、単純な**「ハウツー」形式**にはうまく圧縮できない
    有機栽培でやろうとしているのか、土壌検査はしたのか、地域にどんな害虫がいるのか、畑が1日に何時間日光を受けるのか、といった変数がある
    結局、共通する技術も多いが、地域知も多く必要になる

  • サイトにスパム対策を少し入れる必要がある。ガイドや投稿の大半が空かゴミだ

  • このプロジェクトは、もしかするとWikimedia Foundationが引き受けられるかもしれない。貢献者が品種や知識を追加しやすいWeb UIを提供し、そのデータをWikidataの知識グラフに保存する方式だとよさそう

    • どうかそうしないでほしい。不透明な略語だらけのWikiポリシー一覧を延々と暗記している退屈な削除主義者たちのせいで、コミュニティプロジェクトがさらに疎外されるのは望まない
  • Webサイトがこちらでは落ちている。HNトラフィックのせいで過負荷になったのだろうか?

  • https://agritech.tnau.ac.in
    より多くの情報を扱っている。最新ではないが、今でも関連性はある