Ha4go の開発と運用をやっている @PharaohKJ です。この記事はチームの総意だとかそういうのじゃなく、あくまでも開発と運用を担当している私の考えていることです。いわゆるシビックテック発のプロダクトを開発・運営する現場について少しでも感じる、伝わればと思っています。
Ha4go とは
Ha4go by codeforkanazawa-org を参照してください。一応、Code for Kanazawa にリポジトリがあって開発されています。
CfKのメンバーだけではなく、 Code for Okinawa の kimihito (kimihito) さん、Code for Japan の halsk (Hal Seki) さんにもコードのコミットをいただいて共同開発しています。
大きな役割は3つだと考えています.
- みんなで見つけた・考えた課題の投稿
- 課題を解決するための何かを提供できる人の登録
- 課題の欲していることからの課題と人のマッチング
実績(現状)
今年は、全国対応版としてバージョンアップすることを宣言しましたが、実質とりかかれていません。なんかまぁ下げ止まってるのか、ユーザー数にあまり変化はありません。
UU・PV
登録されてる課題と増えた量
去年は5件、今年1件でした。CfK Civic Hack Nightに集まってくる人も減ってきてますし、後述する「権利的な課題」が噴出したこともあってなかなか件数が増えません。要全国版ですね!
subject | created_at |
---|---|
ネット犯罪に巻き込まれるのを防ぎたい | 2019-02-24 21:35:12 |
mysql> select year(created_at), month(created_at), count(id) from projects group by year(created_at), month(created_at);
+------------------+-------------------+-----------+
| year(created_at) | month(created_at) | count(id) |
+------------------+-------------------+-----------+
| 2016 | 3 | 1 |
| 2016 | 4 | 2 |
| 2016 | 5 | 1 |
| 2016 | 7 | 5 |
| 2016 | 8 | 1 |
| 2016 | 9 | 1 |
| 2016 | 10 | 3 |
| 2016 | 11 | 1 |
| 2016 | 12 | 1 |
| 2017 | 5 | 2 |
| 2017 | 6 | 1 |
| 2017 | 8 | 1 |
| 2017 | 10 | 1 |
| 2018 | 1 | 1 |
| 2018 | 3 | 1 |
| 2018 | 5 | 1 |
| 2018 | 6 | 1 |
| 2018 | 9 | 1 |
| 2019 | 2 | 1 |
+------------------+-------------------+-----------+
運用
ソースコード、issue
前述のとおり、CfKのGitHubにリポジトリなど一式用意されています。 → codeforkanazawa-org/ha4go: ha4go
ウェブ上のインフラ
今年は全国版に移植する、、、と宣言したのですが、特にかわっていません。これまでは金沢の課題は kanazawa.ha4go.net
に集め、他の課題は xxx.ha4go.net
といったように xxx
を地域名にして運用しようと当初考えていましたが、今後は全国版にしていこうと考えています。
ドメイン名はCfKにとっていただいてます。
ウェブページ( http://ha4go.net )は上記リポジトリの GitHub Pages を使って運用しています。
ウェブアプリは さくらインターネット様のご厚意で、IaaSであるさくらクラウドをご提供いただきました。この上に以下のような構成とミドルウェアを使っています。
- Ruby on Rails のウェブアプリ用インスタンス1
- nginx
- Let's Encrypt
- docker (Ruby on Rails アプリ)
- MySQL 用インスタンス1
- docker (MySQL)
- メンテ用踏み台1
- munin
- cron
- DBデイリーバックアップ
- Let's Encrypt 証明書更新(マンスリー)
通知メール配信はさくらのメールボックスを使わせてもらってます(これは有料でもともとCfKが契約していたものです)。
開発のコミュニケーションは 一連の業務の拠点となるデジタルワークスペース | Slack の無料プランで行っています。GitHubとの連携や、さくらインターネットさんの障害情報のRSSをここに通知させたりしています。
課題と今後
技術的課題
去年と全くかわっていません。セキュリティアラートはGitHubから飛んでくるので、把握はしやすくなりましたが、デプロイはオオゴトです。また、Railsも6がリリースされて、そちらに以降したいと考えています。幸いなことに、JavaScriptがたくさんあったりはしないので移行は簡単、、、なはずと考えています。
権利的な課題
今年増えた課題「ネット犯罪に巻き込まれるのを防ぎたい」において、プロダクト作成にまで進んでいたのですが、いろいろあって特に権利問題、、、つまり「CfKでやったものについてはCfKに帰属する」というところがご納得いただけず、プロジェクトは解散になってしまいました。
アイデアソンやハッカソンなどやるのはいいのですが、なかなかどうしてこういった権利関係は複雑になりがちで、それ故に「権利はすべて主催者側に帰属する」とざっくりと決めざるを得ないことが多いと思います。しかしながら、この方式だと人が集まってくる・やろうとする限界があるんじゃないかなあとも考え始めています。
「これが飲めないんだったら、発言も手を動かすもやめてください」ってのはさすがにキツすぎませんか?何か新しいライセンスや権利など、提案できたらなと考えています。そうじゃないと「ha4goに課題を書いたら損」「会に参加して思いついたことを話したら損」なんて状況になるのはちょっと加藤が望む状況ではありません。
今後
来年こそは
- ha4goを全国版対応
- Rails 6 対応
- 発言や書き込みへの ha4go ライセンスについて提案
したいと考えています。よろしくおねがいします。