パスワードを忘れた? アカウント作成

今週も投票をしましたか?

15795081 submission
IT

質問サイトで確実に回答を得る方法

タレコミ by annoymouse coward
annoymouse coward 曰く、
プログラムに関する掲示板で確実に回答をもらう方法が紹介されている。Redditの投稿

その方法とは、質問を投稿した後、別アカウントで豪快に間違った回答をつける、というもの。
人助けに興味がない奴も、他人の間違いを正す事には熱心になる。だから良い回答が得られると主張している。

この話はつまりジョークであり皮肉である。
スラドの諸兄も真似して釣ったり、ましてや釣られたりしないよう注意されたい。

情報元へのリンク
15790280 comment

annoymouse cowardのコメント: なぜTime machineを使わない? (スコア 4, 興味深い) 113

Macだったら標準で Time Machine っていうバックアップ機能があって、それで簡単に復元できる

データが会社の財産というなら、貸出前に一度 Time machine 起動しておいて、返却されたら復元(Time machineで貸出日の状態に巻き戻す)すればいいのに
この会社は何やってるんだろう?

15782818 comment

annoymouse cowardのコメント: これは無理ゲー (スコア 4, おもしろおかしい) 90

冒頭だけ読みましたが、これは初心者殺しのマニュアルですね。RMSは多数の罠を仕込んでいます。

1) 最初の罠: gitで公開されているファイルは GNU Texinfo 形式

あなたは git が使えますか? texi から html やpdfを生成できますか? この質問で何を聞かれているか理解できない人は、このマニュアルを読むことさえ出来ません。RMSこわい。

2) 次の罠: 最初のコードはフィボナッチ数を再帰処理で計算する例

いきなり再帰関数です。フィボナッチ数。スタック使って再帰を実行するぜ。メモリブロックの一部がスタックって呼ばれる領域なんだけど、C言語はそこを使って再帰を実現するんだぜ。スタック食い潰したらクラッシュする。どうだC言語は怖いだろっていう怒涛の文章になってます。これがイントロです。RMS頭オカシイ。

3) 1112行目でやっとコンパイル方法が説明されている

1000行ぐらい我慢して読み進むと、やっとコンパイル方法が説明でてきます。 gcc -g -O -o fib1 fib1.c でコンパイルできるよ、って1行だけ。説明はこれだけ。"gcc -g -O -o "の説明は皆無。ひどい

4) トドメの罠 1132行目で gdb が登場

なぜかgdbを起動する方法が紹介されます。起動する方法だけです。gdbを使ったことがない人が 書いてある通りに gdb を起動してしまうと、 gdbって何?これ、どうやって終了するの?という感じで詰みます。

ざっと見た限りでは冒頭の1章で大半の人が挫折する構成になっています。 C言語というかGNU文化を知らない人は読んでも理解できない。GNU文化を知ってる人は読む必要がない。 誰をターゲットにしたマニュアルかがよくわからない出来栄えでした。

15780795 comment

annoymouse cowardのコメント: 海はゴミ箱だった (スコア 1) 145

今でも漁村に行くと、おばあちゃんが生ごみを持って海岸に向かって歩いてる光景が見られます。ゴミを全部海に捨ててるんです。

昔は、し尿、つまりウンコも海洋投棄してて
戦後の海洋汚染防止法でさえ「し尿は1箇所に投棄しちゃダメ。拡散するようにバラ撒いて捨ててね」ってルールだったそうです。
当時の環境意識はその程度だったのです。

し尿の海洋投棄が禁止されたのは21世紀になってから。これは日本が遅れていたという話ではなく、
21世紀になってやっと世界的に海洋投棄が問題になったからです。それまでは海はゴミ箱として利用していて、そのツケが今回ってきたんでしょうね。

15750757 comment

annoymouse cowardのコメント: 長方形を伸ばすと種子島にたどり着く? (スコア 1) 42

長方形を南に伸ばした先に種子島のレーダーがあるんですかね?

気象レーダーは、電波を飛ばして、雲とか雨に反射した電波を観測する仕組みだから
種子島からみて壱岐の方向に何か障害物か妨害電波があって
それがノイズとして映ってしまったと。だからノイズの形は(ほぼ)矩形になる。

15743119 comment

annoymouse cowardのコメント: 1975年(昭和50年)から1977年(昭和52年)生まれの人は免疫がない (スコア 2) 11

by annoymouse coward (#4297297) ネタ元: 米ニューヨーク州でポリオの症例

日本で1975年から1977年に生まれた人は免疫が不十分だそうです。
原因は、当時使用されたワクチンの出来が悪かったため。免疫が必要な場合はワクチンの追加接種が必要になります。

と言っても、ポリオはほぼ根絶されていて、現在危ないのはパキスタンあたりだけ。
だからこそ今回のように先進国(しかもアメリカ)でポリオが発生するとニュースになります。

15718202 comment

annoymouse cowardのコメント: ロトカ・ヴォルテラの方程式 (スコア 4, 参考になる) 22

自然界ってのは安定しているようで実は常に変動しています。
餌が増えればそれを食べる捕食者がじわじわと増え、捕食者が増えるにつれて今度は餌が減り始めます。餌が減ると捕食者が減るので…の繰り返しです。
この現象はロトカ・ヴォルテラの方程式として知られていて
つまり被食者と捕食者の関係は位相差をもつ周期関数として近似できます。

実例としては
- アオキアミとクジラの例
- ウサギとヤマネコの例
などがよく本に載っています。

複数の時系列の関係を周期性だけなく、位相も考慮して捉える考え方はとても重要です。
実際、ロトカ・ヴォルテラの方程式は生物学だけはなくて、経済学における景気動向の予測や、コロナ対策にも登場します。
興味がある人は、ロトカ・ヴォルテラの方程式を調べてみてください。面白いですよ。

15713829 comment

annoymouse cowardのコメント: Re:故人が言っていないことを喋らすなんて (スコア 1) 73

ちなみに日本の個人情報保護法では
個人情報とは「生存する個人の情報」と定義されていて
亡くなった人(故人)の情報は保護対象となっていません.

具体例をあげるとマスコミが故人の情報(事実)を報道する場合は個人情報保護法が適応されません.

ただし虚偽の情報を報道した場合は名誉毀損罪となる場合があります.
判例があり,故人に対する遺族の想いが侵害されたから名誉毀損罪という解釈だったと思います.

つまり日本国内において今回の技術で故人の声を模倣したりそれを商業利用する場合などは,
遺族の了承をあらかじめ取っておく必要がありそうです.上記の判例があるので,了承なしだと裁判でほぼ確実に負けると思われます.

15679049 comment

annoymouse cowardのコメント: NULLは諸悪の根源 (スコア 4, すばらしい洞察) 105

よくあるバグですね.

データベース(SQLやCSV)で「ワクチン接種の有無」という項目をつくり
値は,有,無,NULL,の3値となるような設計&実装をします
つまり,不明の場合はNULL,確定した場合は有or無, です.

これを2値と勘違いして,「有」と「それ以外(つまりNULL or 無)」と集計したり
SQLで  SELECT * FROM hogehoge WHERE "ワクチン接種の有無" == TRUE などとクエリを書いてしまう
と,今回のようなバグが発生します.

ワクチン接種の有無,という一見2値のような項目名に対して,データは3値になるという「矛盾」が
混乱を招くのでしょう.(今回の場合は,日付の入力がある or 無い(=NULL) or 不明(=NULL)の3状態を
接種済みと未接種(=NULL)の2状態に誤分類したバグ)

NULLに関わるバグ・不具合はデータベース界隈では頻繁に生じています.
プログラムやデータベースをいじったことがある人なら同種のバグに遭遇し,
「NULLは糞」「NULLなんて許容したやつは誰だ?」と苛ついた経験がある人も多いはずです.

私は,仕様書などでNULLを見かけたら
- NULLは諸悪の根源!
- 集計する際,デバッグする際は必ずNULLの有無を確認!
と肝に銘じてから実装や集計を始めるようにしていますが,それでも先日NULLで1箇所失敗していました.

よくあるミスなので,本件も寛大に受けて止めてあげてください.NULLが悪いんです.NULLが.

15616688 comment

annoymouse cowardのコメント: 作者はいい人だった (スコア 1) 47

後輩が「絵が可愛い」と力説するので、一緒に個展を見に行ったことがあります。

不覚にも少し気に入った絵があったので一つ購入してみたら、作者さんがやってきて
5分ぐらい時間をかけてイラスト付きでサインを書いてくれました。
雑談しながら楽しそうにペンを動かす、感じのいい人でした。

ただ個展といっても売約済の作品はほとんど無く、とても盛況とは言えない雰囲気で
作者さんも複雑な気持ちだったんじゃないかと思います。

15611866 comment

annoymouse cowardのコメント: 1位は「データ分析業」じゃなくて「データ入力業」? (スコア 5, 参考になる) 116

気になって論文斜め読みしましたが
「データ分析業」という業種は,例えば「データ入力」をおこなう業種だと定義されてました.

入力と分析では業務内容が大きく異なるように感じます.

論文は退屈だと見做される職業の1位は「データ分析業」と言っていますが
我々は「データ入力業」が1位だと解釈すべきかもしれません.(元論文はこの点ちゃんと説明できてない雰囲気だったので精読するのは諦めました)

15603397 comment

annoymouse cowardのコメント: googleを盗む (スコア 1) 169

by annoymouse coward (#4218935) ネタ元: ある日突然 30 年前に飛ばされたら

googleのpage rankの論文が 1998年、会社としてのgoogle設立も同じぐらいです。

1992年なら page rank の特許を先に出せるだろうし、検索エンジンで確実に一儲けできそうです。

# あとはビットコインが登場したら「こっそり」買い占めたい。

15598184 comment

annoymouse cowardのコメント: バッテリー取り外しを義務化? (スコア 2) 57

「バッテリー取り外し」が義務化されたら、今あるスマホは全部バッテリーを抜かれて、ただの文鎮になりますね。(充電ケーブル繋げば使えるけど…)

正しくは「バッテリーの取り外しや交換が可能な設計」を義務化だと思います。

15593984 comment

annoymouse cowardのコメント: Max Kellermann 氏に感謝 (スコア 5, 参考になる) 17

https://dirtypipe.cm4all.com/ にて、発見者の Max Kellermann 氏が詳細な報告をまとめてくれてます。

彼が最初に不具合を遭遇したのは、2021年の4月。
彼は CM4all と言うホスティングサービスの保守を担当しており、2021年4月に顧客からファイル破損のレポートを受け取ったそうです。
何かおかしいと感じた彼は、その後3ヶ月間で37ファイルが破損するなどファイルが頻繁に破損していることを突き止め、
カーネルの不具合を疑いはじめます。

その後の試行錯誤を経て実証コードが完成したのが2022年02月19日。(技術的な詳細は割愛します。詳しくは彼の説明を読んでください)

これはセキュリティホールでもあると言うことで 、2月20日に Linux kernel security team にレポートを送り、
2月21日にセキュリティホールの詳細は伏せて、LKMLに修正パッチを投稿、
2月23日にバグ修正版のlinux-5.16.11 がリリースされています。
実証コードがしっかりしているので、レポートが送られてからリリースまで話がとんとん拍子に進んでいます。

最初の不具合から約一年、地道な調査と修正パッチまで投稿してくれた Max Kellermann 氏の貢献はもっと多くの人に知られるべきです。
興味がある人は是非 https://dirtypipe.cm4all.com/ で彼の報告を読みましょう。

また今回の不具合はセキュリティホールだけでなく、ファイルの破損を引き起こします。

ファイルが破損する条件も具体的に記載されていますので、気になる人はMax氏の報告に目を通しておくべきだと思います。

15589574 comment

annoymouse cowardのコメント: C89からC11への変更点 (スコア 4, 参考になる) 76

C89からC11だと間に C99があります.

C99で標準化された機能でカーネルコードに影響がありそうなものは
- 可変引数マクロ. __VA_ARGS__ 使うやつ
- designated の初期化. struct A { int hoge; int fuga}; A a = { .hoge = 1, .fuga= 2}; って書けるやつ
- 可変長配列
- サイズゼロ配列
- for (int x=0; x<10; ++x) って感じでローカル変数が宣言できるやつ
などがあります.

最後の for文内でローカル変数が宣言できる機能が,今回のC89からC11に移行するきっかけになった新機能です.
LKMLの議論だと,全部のメールを読んだわけではありませんが流し読みした感じでは
C89からC99に移行しようと言う話になって,どうせならC11にしたら?って流れになってました.

ただし上記のC99機能は以前からgccなどたいていのコンパイラでは実装済みになっていて(確か GCC 5.0あたりで実装された)
例えば,サイズゼロ配列や designated 初期子は既存のlinuxカーネルでも多様利用されています.
ですから厳密にはC89だけではlinuxカーネルはコンパイルできません.

次にC11で標準化された機能でカーネルコードで役に立ちそうなのは
- _Generic キーワード.c++ でいうtemplate関数みたいなtype genericなマクロが書ける
- stdalign.h .アラインメントを指定する修飾子が使える
です.

特に _Genericキーワードはかなり強力で,よりセキュアで実行速度が速いコードが簡単に実装できるようになります.今後の展開が楽しみです.

typodupeerror

クラックを法規制強化で止められると思ってる奴は頭がおかしい -- あるアレゲ人

読み込み中...