週間2000万ダウンロードのOSSライブラリの開発者が、ライブラリを故意に破壊して配信 202
ストーリー by nagazou
世知辛い 部門より
世知辛い 部門より
あるAnonymous Coward 曰く、
週間2000万ダウンロードのNPMパッケージcolor.jsと、同250万ダウンロードのfaker.jsの作者が、故意に自身のライブラリを破壊してNPMの最新版として公開したとみられる事件が発生、OSSの使用をめぐる大騒動となっているようだ(Bleeping Computer、ソフトアンテナ、The Verge)。
なお、昨年のnote記事によれば、作者は2020年10月に住んでいたアパートが火事になりほぼすべての財産を失い寄付を募っていたそうだが、集まらなかったのかその後に「失礼ながら、私はもうFortune 500(およびその他の小規模企業)を私の自由な仕事でサポートするつもりはありません」「これを機に、私に6桁の年間契約書を送るか、プロジェクトを中止して他の人にやってもらうか、どちらかにしてください」とサポートをやめる旨の発言をしていたという。
職業プログラマの自殺行為 (スコア:5, おもしろおかしい)
自暴自棄になるとソースコードに八つ当たりするような人は,会社としては一番採用したくないタイプの人間です.キレると何をするか判らない,そんな奴と一緒に仕事なんて無理.
ライブラリ破壊は,オープンソースに対する問題提起ではなくて,今までのキャリアを全て無駄にする愚かな自殺行為でしかないと思います.
この作者さん,今までなら採用面接で「私が作者です」と言うだけで「弊社でも以前から使ってます!採用!」となる知名度・貢献度だったのに
非常に勿体無いことをしでかしてます.人生,転がり落ちる時は一瞬なのです.うまく復帰できるといいのですが…職業プログラマとしては終わったかも知れません.
Re:職業プログラマの自殺行為 (スコア:2, 興味深い)
・困ったときには1円も援助してくれず、
・自分に対する援助が打ち切られた時にはそれまでの貢献を忘れて打ち切ったことだけを恨む
ような人間や会社なんて積極的にお断り。
ということでわ
Re:職業プログラマの自殺行為 (スコア:2, すばらしい洞察)
この期に及んでもまだ「使ってやってる」側だと思ってるのですかい。
あなた方は「捨てたられた側」なのに。
Re:職業プログラマの自殺行為 (スコア:4, おもしろおかしい)
残念ながら私は使ってやる側でも捨てる側でもありません「作る側」の人間です
私はgithubで複数のリポジトリを無償公開していて,それなりの品質で無償サポートを継続しています.
また他プロジェクトのバグを見つけ修正できた場合は,できるだけpullリクエストを送るようにしています.
理由は,その活動が自分の顔となり,自分の評価につながるからです.
例えばlinuxのカーネルソースには私の名前が載っています.この一言が言えるかどうかで転職や仕事は大きく変わります.
つまり私は「今までの活動の履歴は,将来の自分の評価につながる」と言うことを主張したいのです.
金が欲しいならgithubのリポジトリなりオープンソースの成果を武器にして,良い職に就けばいいのです.
周りが「使ってやるとか」「捨てる」と言う話ではありません.それは受け身の発想です.
githubをどう活用すれば自分が幸せになるか?自分を「使ってくれる」のは誰か?作る側の人間は,能動的にそれらを考え行動するべきです.
ではソースコードを「破壊」したらどうなるか?自分の評価が下がるに決まってます.だから「自殺行為」と表現しました.
表現が過激だと感じた方がいらしたら,ごめんなさい.でもそれくらい「破壊」はクリエイティブな活動をする人間がやってはいけない事だと私は思っています.
Re: Re:職業プログラマの自殺行為 (スコア:1)
OSS ライセンスで配布されているものは現行の定義上無保証です。 公共財として使うのは使う側の全責任。造り手側は、作成者の仕様 意図以外は何も保証していない。
#いやなら自分で御守りしろ、だよねぇ。
Re: (スコア:0)
やりがい搾取をなんとも思わん人にいうだけ無駄かと。
Re: (スコア:0)
この人職業プログラマなの?
アーロンを例に出してる時点で自殺予告してるようなもんだけど
Re: (スコア:0)
まあ、もう人生終わらせる心境なのかも。
無敵モード
別の報道からの補完 (スコア:4, 参考になる)
Ars Technicaの方に詳しく作者Marak Squiresの背景の補足があった。
https://arstechnica.com/information-technology/2022/01/foss-developer-... [arstechnica.com]
* 2020年にアパートの火災があった件について、火事の直後に手にやけどを負って不安定な挙動をしていたとのことで、逮捕されて病院送りになった。警察がアパートに踏み込んだところ爆弾の材料が複数見つかった。
* Squires自身のツイートによると、火事で全財産を失った件のは貴金属が焼失し「アカウントへのアクセス」も失ったから、とのこと。なんのアカウントかは書いてない。
* 一方、彼が初期からのbitcoin投資家だという情報もある。
……要するにこの人絵に描いたような陰謀論者で、「銀行を信用しないので貴金属とbitcoinでタンス預金」を実践、かつ素人爆弾も製造していたところ、タンスが燃えて無一文になっちゃった、という話っぽい。それでますますおかしくなってしまったようで。
Re:別の報道からの補完 (スコア:1)
爆弾で物理的に世の何かを破壊する願望を持ってた人ならソフトウェアの破壊も当然というところか。
こっそり悪意あるコード交ぜられなかっただけましじゃね? (スコア:3, 興味深い)
マネタイズするためにサイレントでデータ抜き出して売るとか、マイニングスクリプトぶん回すみたいなコードがこっそり仕込まれてた可能性だってあったわけで、目に見えて使えなくなる、で済んで良かったと思うべきじゃないかな。
しもべは投稿を求める →スッポン放送局がくいつく →バンブラの新作が発売される
Re: (スコア:0)
まあ使用者側も、ある日いきなり非公開・使用不能になる可能性は常にあると思って使っていた筈な訳だしね。
Re: (スコア:0)
そんなこと考えてダウンロードしてる人いないよ
一定期間使えること前提で導入するんだからさ
Re: (スコア:0)
誰も保証してないものを無根拠に信じられるのがすごいよね・・・
まぁパッケージ系をいきなりアップデートするような運用することは少ないと思うけども
Re: (スコア:0)
1行目と2行目は違う人が書いたの?
Re:こっそり悪意あるコード交ぜられなかっただけましじゃね? (スコア:1)
「Log4Jに脆弱性が」「最新パッチ当てろ!はやく!」
「color.jsが変な更新されて依存してたアプリが死にました」「最新パッチ当てる前に検証しないから!」
Free (スコア:2, 参考になる)
本文中の
私の自由な仕事でサポートするつもりはありません
この場合、freeの訳は「自由」ではなくて「無料 (Free beerの方)」ですね
# Free as in Freedom / Free as in free beer
Re:Free (スコア:1)
Respectfully, I am no longer going to support Fortune 500s ( and other smaller sized companies ) with my free work.
「自分は火事でほぼ全財産失ったのに、Fortune 500の金持ち(とそれ以外の)企業のためにタダ働きするなんてやってられない」
ってなとこだろうな…
どちらかにしてください (スコア:1)
どちらにもしなかった結果ですか
「これを機に、私に6桁の年間契約書を送るか、プロジェクトを中止して他の人にやってもらうか、どちらかにしてください」とサポートをやめる旨の発言をしていたという。
Re:どちらかにしてください (スコア:1)
引用元と思われるnote記事の方には
>これを期に私に6桁ドルの年間契約を送ってくるか、このプロジェクトをフォークして他の誰かに作業するよう頼んでくれ。
ってあるから、後者側を選んだ人らに被害はないと思われる。
# いつものことだけど、何故意味が変わるレベルで書き換えるのか
Re: (スコア:0)
この部分の引用元はソフトアンテナの記事ではないでしょうか。
非開発者向けに「フォーク」を解説しようとしたものと思います。
Re: (スコア:0)
ほんとですね。
とはいえ、
>昨年のnote記事によれば、
の後に、何の予告もなく別サイトからの引用含めるのもかなり酷い。
意図的に破壊したバージョンを何の問題もなくリリース出来たって事は (スコア:1)
本当に一人で開発・保守をやってたんだな…
放置しても誰かにフォークされるだけだろうし声を上げるにはこれしかなかったって事か
叩いてよくなった! (スコア:1)
欲しいのはアウトプットであって、ソース、まして人材じゃないんだよねえ。
黙ってるだけで、真の利用者はそのことをよくわかってる。
「あんなカスが作ってるライブラリってなぜ予見できなかった。とっとと修正しろ。今日中。自腹な」って指示しておしまい。
開発者は結局いくらでも沸くし、どうぞ消えてくださいってなるだけ。
世の中甘くない。そのことを教える者がいなかったことに、ひとつ不幸の原因がある。
Re: (スコア:0)
なおいくらでも沸くという考えでいた日本IT業界は絶賛衰退中の模様
ライン越え (スコア:0)
「寄付してくれ」メッセージ程度なら許されたろうけど、ちょっとライン越えだな。
オープンソースなら広告は総スカン即フォークだけど権利の範疇、アフィリエイトリンクを含めるのは嫌う人も居るけどまぁ許容、リンククリック時にアフィリエイトタグ挿入はアウト、寄付メッセージは普通にOK。
相場としてはこんな感じかしら。
日本だと普通に不正指令電磁的記録作成等に触れるだろうか。
あとこの手の機能も名前もシンプルなライブラリって幅広く使われるけど、DL数が工数や技術に見合ってるとは必ずしも言えない。
GitHubのユーザーページ見ても去年5月頃から動いてなくて、それでも使われてたわけで。
ライセンスはMITで無償利用だし金銭要求は正当とは思えないな。6桁ドルは過剰評価かと。
「自分で書いても良いし有料なら買わないけどOSSだから」で使ってる人も多かっただろう。
一応アズイズ無保証だし、ましてやアップデートの継続やその内容は何の保証もない。
が当然GitHubバン対象にはなるし、社会的批判は当然だし、ライセンスに明記しても法的責任は多少残る。
その辺は当然だと思う。
確かにオープンソース活動が報われないってのは同意はする。
けど週間2000万ダウンロードだから数千万円が妥当とも思わない。
税制改正を含めてもうちょい寄付が広がれば良いのにとは思うが、制度面としては抜け道になりそうだし厳しそうだな。
自分しか使わないよう外注をOSSと寄付の形にするみたいなこと出来るしな。
Re: (スコア:0)
確かにオープンソース活動が報われないってのは同意はする。
報われないというのが現金化という意味で報われないという意味でなら同意するが、
大勢の人に自分のコードを使ってもらえるだけで報われる人もいるのではなかろうか?
Re: (スコア:0)
一般論としてはともかく、問題の二つのコードについては
> 大勢の人に自分のコードを使ってもらえるだけで報われる人
はいなかったということだよね。
Re: (スコア:0)
その根拠は?
Re: (スコア:0)
まあ、オープンソース活動しつつ飢え死にするわけにもいかないよなあ。
シェアウェアにクラックパスを入れるとHDDの中身を消す処理を入れてしまった人をちょっと思い出す。
インストール時に (スコア:0)
リリースノートとか見てからインストールします?って思った
作者の現状をGitHubに載せたってnpmコマンドでインストールするとき、ほとんど見られてないと思う
Re: (スコア:0)
なんだっけか、npm installするたびにメッセージ出すパッケージがあった気がする。
一等地 (スコア:0)
Node.jsを使わないんで、実際の感覚がどうなのかはわかりませんが、
パッケージングシステムのネーミングルールにJavaのような階層がなかったら
colorなんて基本的な単語は一等地で、それなりに機能が実装されてれば、
使われやすい状況があるんじゃないですかね。
Re:一等地 (スコア:1)
そのとおりですよ。早いもの勝ちだからドメインと同じことになってる。
多くのパッケージ管理システムでも同様ではあるが。
npmでいうと、モノレポの個別のプロジェクトを示す「@{user}/{package}」の記法を最初から全パッケージに適用しておけばましだったかもしれない。
ただ手を放せば良かったのに (スコア:0)
まあ色々な経緯や葛藤があっての所業だとは思いますが、
折角長年メンテナンスしてきたpackageと本人のキャリアを台無しにするよりは
「もう知らんわーメンテせんわー他探してね」で良かったのではないかと思えてならないです。
いずれにせよ長年使われ続けたpackageを作るような開発者が、他ならぬ自分の選択で今後のキャリアや
他のOSSにも多大な影響を与えてしまったのは残念です。
ご本人としての思いもあったのでしょうが、作為的にやったのなら広義にはテロと同じだと思います。
Re: (スコア:0)
精々サボタージュでしょ
ロリポルノ画像を表示するとかまで行けばテロと言えるかもしれないが
Re: (スコア:0)
sabotageのもともとの意味は「破壊活動」
日本語化(?)で語感がぬるくなった
Re:ただ手を放せば良かったのに (スコア:2)
確か、産業革命で職を失うことを恐れた労働者が木靴(サボ)で機械を叩き壊そうとしたことが語源とか説明していたような。
Re: (スコア:0)
更新停止にしたところでIssueやPullRequestなんかは飛んでくるだろうし(実際、Marak/color.jsにはPullRequestが18件ある)、
今後就職などでアピールのためにGitHubアカウント見せようと思っても邪魔になるからなぁ。
着地点としては主張しているように金を貰うか他のメンテナに引き継いだ上で退くか、以外の方法だと経歴に傷が残る。
それをしなかったのは、多分メンタルの限界で爆発してしまったんだろうね。
# 貧すれば鈍する、だな
Re:ただ手を放せば良かったのに (スコア:1)
やってられなくなったので、あらゆるプルリクを自動でマージするように仕込みました
編集合戦になりますね[要出典]
短気は損気 (スコア:0)
NPM界隈どうなのか知らないけど、有名なんだったらそれだけで仕事もらえるんじゃねーの?
あちらの人は、OSSコミュニティ活動でコネとか出来るもんなんじゃねーの?
これ、結果として、別のフォークがメインになっちゃって、下手したらその人は上手くやって大金を手にするかもしれないじゃん。
どうせ落ちるなら、寄付を要求するんじゃなくて、その手のやべーとこにでもプロジェクト売り払えば良かったんだよ。
まず火災の問題は保険とか、賠償金で解決すべき事項じゃないかな。
それから、当座の生活がやばいなら行政。
その後、やっと仕事による資産調達でしょう。
調達方法も寄付みたいな安直な方法じゃ無くて、メディアをつかったり、クラウドファンディングだったり、いくらでも方法があったと思うんだけど。
結果として物質以外にも、本当に全てを失うなんて、これからどうするのか心配だわ。
こういう時はメンタルケアが一番大事だから、友人や家族を大切にしようって再確認出来た。
Re: (スコア:0)
周りの人を大切にしてもメンヘラになった本人は苦しむだけ
嘘をついてまで大切にするのは苦しいわけですよ
今更だけど (スコア:0)
結構使われてんなあ、と気づいたくらいから、金が入るように変えて行くことはできなかったのか。
Re: (スコア:0)
やれるとすれば商用ライセンスとのデュアルにして、サポートで儲けるみたいな方法しかないかな。
少なくとも一般ユーザは有料化すれば離れるでしょうし。
ただこの手のコンパクトなライブラリって「手軽」以上の差別化(他のライブラリに対する優位性)が薄くて代替できないわけじゃないから、
商用サポートを求めたら企業(特に大手)はフォークするなり他のOSSに切り替えて終わりでしょうね。
正直、この実績を引っさげて企業に応募する(オファーを待つのではなく)以外に、作者が報われる道はなかったように思う。
なんでそんなに全部なくなる? (スコア:0)
> 住んでいたアパートが火事になりほぼすべての財産を失い
それまではどうやって収入を得ていたのだろうか?
住んでいるところが焼失しても、貯金や仕事はなくならなそうだけど。
Re:なんでそんなに全部なくなる? (スコア:1)
世の中には
「保険なんて無駄」
「銀行口座より現金を手元に置く」
主義の人も居るそうですよ。
Re: (スコア:0)
火災の民事責任を負ってしまったとか?
そりゃそうなるでしょ (スコア:0)
それがOSSってもの。
リスクを理解せずに安易に使ってる馬鹿多すぎ。
Re: (スコア:1)
ここに下げよう。旧来と違うのは、ライブラリ開発者と密結合になってることに利用者が無頓着なこと。
仮に、たった今、Linusが有り得ない外因で洗脳され、Linuxをぶっ壊したとしても、俺のスマホはとりあえず無事だ。
今回は、なんでもかんでもnpmでホイホイホイ~ってこれは、旧来にない習慣とリスクだよ。
Re:オープンソースへの貢献は貴族の道楽みたいなもの (スコア:2)
https://ja.wikipedia.org/wiki/%E3%83%9C%E3%83%A9%E3%83%B3%E3%83%86%E3%... [wikipedia.org]
ボランティアの期限は「志願兵」、特に奴隷身分から開放されるために志願した「奴隷兵」だそうです。