いい話だった

どうやって部品を選ぶかについての話 | スイッチサイエンス マガジン

俺はスイッチサイエンスの人ほど本格的に実装しないけど、部品(ソフトウェアも含めて)の選び方について便乗して書いてみる。
IRKit、BlendMicro、DigiSpark、Jawbone Up24もこのへんを概ねクリアしてたので安心して買えた。


生きてる

プロジェクトが死んでる可能性がある。リポジトリの最終更新日を確認するべき。


テストされてる

ハードウェアだとテストコード書くの難しいし、テスト用の治具とか必要だったりするけど、それでもテストコードだけでも同梱されてると安心できる。ちゃんとテストしてるんだなと思えるしテスト漏れてそうな所とかもチェックできる。
ソフトウェアのライブラリの場合はテスト読んで、手元でテスト走らせてみる。


縛られてない

ライセンスの問題があるかもしれない。Web APIの場合、無料で使うと1日の使用回数が決まっていたりする。


オープンソース

これは「すでに使っている人がいる」にも関係してるけど、最近は誰も使ってなくても買ったりしてる。
IRKit、BlendMicro、DigiSparkあたりは誰も使ってなくてもファームウェアと回路図が見れたので事前にチェックできた。実物が手元に無くても自分の目でクオリティを確かめられるのはいいと思う。カタログスペックよりコードの方が信用できる。不穏な雰囲気があるコードとか見ればすぐわかるから読んだ方が早い。


オープンな仕様、ドキュメント

Jawbone Up24とか、「認証はOAuth2、APIはRESTでJSON」って書いてあってそれなら買うよってなる。知ってる仕様でAPI作られてるのは安心感がある。
Nike FuelBandはパートナー企業にしかAPI公開されてないので安心してスルーできた。


GitHubにある

GitHubにソースコードがあると、pull requestが使えるから不具合見つけたらパッチを送りやすい。
GitHub以外だとMLとか独自仕様の掲示板とか使わなければならなくなって、つらい。
パッチが送れないと、本体がバージョンアップした時にまた自前で治さないとならないので面倒くさい。