vape + 龍角散

今日は、疲れた。サーバ設定。でも、そこそこトラブったものの、なんとか1日でファイアウォールからサーバ起動まで、一通り動作させるまで設定が済んだ。松尾くんのおかげ。

なんだかなぁ、一日一箱でタバコを吸ってるペースは、コーディングが順調なら、あんまり吸わないし、トラブり出すと、もう、結構な勢いでタバコに火をつけてる。習慣ですよねぇ・・・医療関係の皆さん、ごめんなさい、僕はもうやめる気ないです。ってか、普段は事務所に僕以外はいないから、影響があるとしても僕自身の体だけだけど。
もう、今回の目的は半ば達成した気分でいるから、そんなにこれ以上長生きする気もないし。(ただ、強欲だから、これからでもできる経験は、全部詰め込んで、少しでも次はスケールアップしたい、とは、思ってるけど。僕なんか、時々インスピレーションが湧く程度だけど、経験豊富でエネルギー量の大きい方々にできることも、されてきたことも、半端ないから。僕だって、少しでも上に上がりたい、とは思う。それはさておき。)

そう思っていたら、嫁がDr. VAPEなる商品を買ってきて、押し付けてきた。ニューギニアにいた頃から、手巻きタバコの技を覚えて、埼玉でもこの近郊でシャグ用のタバコを売ってる店を何軒か見つけた。これって、やってると「いかがわしい葉っぱ」に間違えられそうで、あまり人前ではやらなくなったけど、紙巻きたばこが切れた時には自分で巻いて吸っていた。ただ、結構ニコチンもタールも多い。嫁は、僕がシャグを巻く行為を見とがめて、「ニコチンゼロ、タールゼロ」のこのDr. Vapeをネットの評判を頼りに買った、ということなんだろうか。ありがたいっちゃ、ありがたいんだけども・・・

(中略)今日は疲れた。用件は端的に短く。

僕は、学校の授業がある時は1日6時間くらい喋り通しだったりもするし(普通は、それでも、ほとんど声が枯れない)、ただ、状況によって龍角散も愛用してるけど、どうせなら、龍角散をDr. Vapeみたいにして、コラボしてくれたら、結構いいんじゃない、なんて、ふと思った。

プログラミングで、原因のわからないエラーが出た時、分かっちゃいるけどつい、タバコに火を付ける。確かに、そういう時ならDr. Vapeもいいかも知れないけど、結局本物のニコチン入りにも手を出す。で、結局あまりに喉がいがらっぽくなったら、龍角散を思いっきり肺にも吸い込む。

どうせだったら、ね。龍角散Vapeなら、一石二鳥かな、なんてね。ふと思った。

以上

巻き戻し

ラジオのスイッチはもう切った。

ただ、朝一番で、事務所でエアコンのスイッチを入れ、コーヒーを淹れ、Nack 5のアロハ太郎さんから、スマイルサミットへと、聞いていて、引っかかってしまった。

「今のシーン、ちょっと巻き戻して」と言ったら、若い人に「巻き戻しって何ですか?」と言われたらしい。
巻き戻すのはテープの時代。DVDになってからは、「巻か」ない。今は「早戻し」というらしい。
「巻き戻し」は、もはや死語だ!?ってか?
嫌だねぇ。どんどん、自分がジジイになっていくこの現実に重ねると・・・

と言いつつ、LINUXのコマンドの、tar は Tape Archiveで、磁気テープに保存した時代の名残り。
このコマンドは、まだ生きている。テープですからね!「磁気テープ」よく覚えておくんだぞ、って何を力んでいるんだか。

思えば、それから8インチのフロッピーディスクになり、3.5インチのフロッピーの頃に、MO(Magneto Optic)ディスク;光磁気ディスクが出て、そこから、CD, DVD,BDになり、今はハードディスクが主流だろうか。

不確かな記憶だけれども、確か3.5インチFDの「公式」の媒体の寿命は、1年だった。実際、パプアニューギニアではFDがカビなどで劣化して、データが読み出せないトラブルも経験した。CDやDVDも、確か、レーザ光を使うから媒体が劣化し、公式には15年とか、そんな数字だったと思う。「永遠」に記憶できる訳じゃない。最も「公式」な媒体寿命が長いMOですら、確か30年とか、そんな数字だった気がする。30年も持てば十分かも知れないが。いや、一番「長期間のデータ保存」に耐えられるのは、確か磁気テープだった、ように記憶している。記憶がややあやふやなので、そういう数字だと思って読んでください。しかも、この記事を読んだのは20年以上前の話で、今の技術は進化しているかも知れない。参考までに、そんな話を読んだ記憶がある、程度。

それでは、ハードディスクは?今、うちの会社のデータは、gitの(厳密には、bitbucketの)サーバに上げている。サーバはバックアップを定期的に取ってもらっているとして、「半永久的」という前提なんだろうか。確かに、媒体から媒体へのコピーを繰り返せば、「永遠」の保存も可能かも知れないが・・・

今の時代、爆発的にディジタル情報が増殖している。これらの情報は、半永久的に保存されるんだろうか?例えば、リベンジポルノなんかで一旦ネットに流出したら、そのデータは半永久的に残る、なんて言われている。

いえね、思うに、もし現代文明の我々の「社会」で、人間の行動が神の目に余るようになったなら、かつて何度も起きたように、リセットがかかる。例えば、強力な太陽風や磁気嵐が起き、そこに「極転移」のような「地磁気の急激な低下」が重なったなら、もしかしたら、磁気テープやハードディスクなどに蓄積された「人類の知識の蓄積」も、全てリセットされてしまい、一人ひとりの「記憶」にある内容以外は使えなくなったり、そういうことが起きても不思議じゃないなぁ、なんて、ふと思った。いや、そんな状況になったら、人類そのものがリセットされるかも知れないから、「記憶」以前に物質世界の中での「人間」が、一旦いなくなる。あんまり、そうなって欲しくない。もっとひどければ、「霊体」としての我々自身も、根こそぎ消されてもおかしくない。根こそぎ「無」になる。(この「無」っていうのが、また面倒な話で・・・やめとく。)

ただね。そもそも、「永遠に記憶するべき情報」なんて、あるんだろうか。

ラジオで流れた「巻き戻し」の話題に反応してしまって、つい、ここまで考えてしまった。

朝の暴走終わり。今は無音。今から僕はプログラマ。
よかった、なんとか昼前に「プログラミングモード」のスイッチが入った。

Login通知

ふと思った。

WEBサービスの、一般ユーザ向けのサイト構築では、ログイン通知の機能をプログラムして、「何年何月何日、誰それユーザがログインしました。」的なメール送信ができる機能を組んだりする。

ただ、紺屋の白袴というか、UbuntuとかLINUXサーバのカーネルには、ユーザログインのメール通知のデフォルトはないのかなぁ、と思っていたら、こんな記事があった。

https://qiita.com/toshi-click/items/890ca35b76e554f13cb3
サーバへのSSHログイン契機でメール通知

rootユーザでのログインを禁止しておけば、「平民」としてしかログインできない。ファイアウォールを破られ、SSHの秘密鍵が破られたとしても、「平民」からrootユーザになるには、さらにもう一段階パスワード認証がかかるから、このメールを受けて速攻でシェルのプロセスをkillすれば、ほとんど実害なしで侵入者を撃退できる。通知メッセージに、プロセス番号を含めておけば、かなりスピーディに対処できるかも知れない。

これで、相当に強くなるんじゃないかなぁ、なんて思った。

LINUXのメール送出機能って、結構無骨ですからね。味も素っ気もないというか。こういう場合、メーラを外に置いた方がいいのか、中に持っていた方がいいのか。それはそれで、ちょっと悩む。

それにしても、domainbigdataなんかで見ると、このIPアドレスはハッカーだと、断定できるくらいにabuseが多いのに、そのIPを遮断して、ネット社会から抹殺できない、っていうのは、あまりにも、制度が未熟な気がする。踏み台が多いからかなぁ。あるいは、IPの動的割り当てに該当したりするから、だろうか。動的割り当てされたIPの「踏み台」は、踏み台として使えない気もするし(いや、僕には思いつかないだけかも。つなぎっぱなしだと、つながっている間は実質的に固定IPと同じなのかな?)「踏み台」だろうが「ハッカーの実家」だろうが、まず「不正パケットが乱発されてますよ。この状態が続いたら、IPを遮断しますよ」みたいな警告を投げて、「踏み台」なら、パスワードを変えるだけでも効果があると思うし、ハッカーだとしても、すぐに別のIPを取得したりするのかも知れないけれども、そういうIPアドレスを遮断できないなら、やはり制度が未整備だという気がした。

暗号資産は時期尚早

やめときゃいいのに、なんとなく絆創膏を剥がして、傷口が今どうなっているか、見てみたい心境にかられてめくってみたりすることがあった。
結局、それで粘着力が弱くなって、また新しい絆創膏に貼り直すハメになる。バカだねぇ。

似たような気分で、最新のファイアウォールのアクセスログを開いてみた。過去40分の、侵入を試みたIPの一覧

5.189.176.208 Germany -- has a bad reputation
68.32.95.39 United States, Michigan, Ann Arbor -- no abuse detected from this ip 
77.247.110.19 country: NL -- Hacker
88.214.26.8 address: Seychelles -- Hacker
92.63.196.10 Russian Federation -- Hacker
92.118.37.97 Greece -- Hacker
94.102.49.65 Seychelles -- Hacker
104.37.191.23 United States -- no abuse detected from this ip, City: Secaucus, StateProv: NJ
112.121.163.11 Hong Kong, Cheung Sha Wan -- Hacker
142.44.211.179 Canada, Quebec, Montréal -- no abuse detected from this ip (Address: 800-1801 McGill College)
171.224.242.102 Vietnam, An Giang, Hanoi -- no abuse detected from this ip (address: Viettel Network Corporation)
185.176.27.250 Russian Federation -- Hacker
185.216.140.252 Netherlands -- Hacker

なんと、中国からのアクセスがない。今月の頭、凄まじい勢いで繋ぎに来たのは、WuhanとNanjingからだったのに、それがない。
中国をクソ味噌に非難しましたが、撤回します。偶然なのか、なんらかの対処がなされたのか、いずれにせよ、サイバー攻撃に関して中国に対する激しい非難の意識は、撤収します。世界と協調し共存するつもりがあるのならば、攻撃したいとは思わない。隣国として仲良くしたい国として、認識を改めたい。そうとなれば、新型コロナウィルスの騒動も、早期収束を祈ります。と言いつつ、こればっかりは、一度広まっちゃうと簡単じゃなさそうだ。願わくば、遺伝子の突然変異が起きないことだけは、念じたい。

ただ、気になったのは、これだけあちこちからアクセスがあるのに、いくつかのIPアドレスは「no abuse detected from this ip」となっている点だろうか。

https://domainbigdata.com/
で、Hackerと断定されているIPアドレス
例えば、これ
https://ip-46.com/88.214.26.8
が、野放しというのも不快だけれども、この”no abuse”は、どう読むか?僕は、「踏み台」だと思った。サーバが乗っ取られたことに、気づいていない方が多い。

現実問題として、僕らのような「乗っ取ったとしても、大した情報量がないサーバ」は、「踏み台」としての価値を持たされて「裏で、情報が流通している」ようだ。だとしたら、中国のハッカー集団が、海外の踏み台を最大限に活用して、中国国内に登録されたIPから「踏み台」にログインして、そこから攻撃している可能性も否定できない。

実際、年末年始のアクセスログを見る限り、Wuhan / Nanjingからのアクセスは、例えて言えば、虱潰しに、あらゆる住宅やアパートの玄関のドアノブに手をかけて、鍵がかかっているかいないか、確認し、鍵がかかっていなければ中に入ろうとする、そんなアクセスだった。ドアどころか、一軒ずつドア、窓、などなど、考えられる侵入口には、全て手をかけて、「鍵がかかっていないか」を調べているような、そんな感じのアクセスだった。もしこれを「国家」がやっていたのなら、「サイバー部隊」なんていう綺麗な呼び名は相応しくない。犯罪国家だと言いたくなるような、状況だったと思う。サーバアクセスなんて、SEでもなければ気にもかけないから、誰も興味も持たないんだろうか。例えば、人口約3万人の小さな町にも、その人たちが100人規模で押し寄せて、一軒一軒、ドア、窓に手をかけて、家の中に入れるか、入れないか、それを調べているような状況だったと僕は思う。それが目に見えたら、絶対にみんな、騒ぐと思うんだけれども。ログを開示して、説明しようとしたなら、説明はできるけれども、興味のない人にどれだけ聞いてもらえるかわからない。この比喩が通じてくれたなら、嬉しいんだけれども。

ただ、「踏み台」の否定はできないけれども、うちのこの、過去40分のアクセスログは、それぞれが独立したハッカーからのアクセスである可能性が高いと思う。根拠は、アクセスのインターバルが、分散の大きいポアソン分布になっているような気がするから。数字を眺めただけなので、厳密に調べてはいないけれども、細かく数字を並べたら、そして、過去40分ではなく、過去1ヶ月とかで調べたら、おそらく負の二項分布とか、そんな感じになると思う。それは、独立した多数のハッカーからのアクセスである根拠になるような気がする。

金融取引などに関係するIPアドレスは、ネットバンキングなどの理由で、事実上「公」になっている。未だに無頓着なサーバ管理者もいるみたいだけれども、そうしたIPには、うちら以上の「接続要求」があるだろうと思う。そして、当然、技術的には考えられる最高水準の防護策を取るんだろう。例えば、システムメンテナンスのために「接続」するためには、カードキーをかざして入室しなければ、入室記録を残さなければ入室できないような部屋でのみ、アクセスできるようにする(というよりも、サーバのある建物でなければ、メンテナンスできない、くらいの)対策は必要で、ネットワーク経由で、システムメンテナンスができる、なんていうのは、金融資産を扱うサーバの想定として、あまりにもお粗末な気がする。数百億円の暗号資産の盗難は、システム設計の認識の甘さが原因だったような気がする。

金融資産を扱うサーバは別にして、一般のサーバの場合には、ネットワーク経由のアクセスでメンテナンスできないと、かなり効率が悪い。そうしたサーバの場合には、技術的に最大限の対策をとって、ネット経由の管理者モードのサーバ接続が可能として運用することになるんだろうと思う。
そこで、最大級の対策を取れば大丈夫か。そうとばかりは言えない。ランサムウェアを仕掛けるような場合の話。

漏れているのは、人間が関係する領域で、例えば「ウイルスメール」をターゲットの会社に送りつけて、メールを開いたらウイルス感染させるようなケース。全社システムを乗っ取るのには、たった一人でも、その会社に「粗忽なやつ」がいてくれたら、簡単になる。誰か一人がウイルスメールを開いてくれたなら、この場合には表面的には何も起こさないようにして、あとは遠隔操作で、ウイルス感染させたパソコンから、バックグラウンドで「社内LAN」の探索が可能になる。情報システム自体が、いかに万全の技術的な対策をとっていたとしても、社員に一人でも粗忽な奴がいたら、そこから情報は抜き取れる。僕なら、正面玄関ではなくて、その会社の社員に、無差別にウイルスメールを送りつけて、一人でもそれを開く奴がいることをじっと待つと思う。(僕はそんなことは、しませんけど。ってか、とんでもない監視体制に放り込まれていた気がしたから、きっと、一度でも何かやったら、すぐにでも逮捕するつもりだったんだろうけれど。)

じゃぁ、その「社員のメールアドレスをどうやって集めるか。」なんだろうか。ニュース配信を読む限り、既に、あちこちの会社で「この会社の社員のメールアドレス一覧」のようなものは、作成されて取引されていると考えた方がいいような気がする。どうやってかき集めるか。

「けいおんthe Movie」ウイルス事件を思い出して欲しい。けいおん!は、京都アニメーションの作品でしたっけ?実は見ていないけれども。
そのMovieが、無料で見られると思わせたウイルスアプリが、ネットの「無料アプリ」として登録された。その直後に、数万から数百万件の、ダウンロードした人たちのスマホに登録された「住所録」が抜き取られたらしい。

当時僕は、学生の病院実習への「即応」のために、学生に僕の携帯電話の電話番号とメールアドレスを登録させて、「何かあったら、すぐに連絡するように」伝えていた。(本当なら、大学の事務方に、病院実習の対応窓口を作ってもらいたかったんだけれども、そんな、教員負担を考えるような大学じゃなかった。)そこに「けいおん」ウイルスのニュースがあって、その、ほとんど直後から、携帯に、大量の「迷惑メール」が入るようになった。僕の推測では、学生の誰かが「けいおんthe Movie」ウイルスアプリをダウンロードして、感染し、その学生の携帯から僕のメールアドレスも外部に流れて、売買された先に、その「迷惑メール」集団があって、大量の「迷惑メール」が入るようになったんだろうと思う。

同じことは今でも起き得る。若い社員がたった一人でも、スマホの「無料ゲーム」で、こうしたウイルスアプリをダウンロードして走らせ、その若い社員が、業務連絡のための、社内のメールアドレスをスマホに登録していたなら、URLから、どこの会社にどんな社員がいて、どんなメールアドレスを持っているか、は、把握できる。そこを突破口に、その会社の社員に、ウイルスメールを送りつけ、社内PCのたった一台にでも、ウイルスを仕込むことができたなら、ギリギリBIOSに近いところでLANパケットを全部読んで、中からファイアウォールのポートを探し、あとは外からそのポートにアクセスすれば、サーバ本体への侵入口を見つけられる。そこから先は、虱潰しで、ID、とパスワードの組み合わせを変えて、延々と攻撃したなら、その記録はファイアウォールのログには残らず、(認証ログには残るけれども、)時間の問題で、サーバを乗っ取れる、ように思う。
理屈ではね。実際に試すつもりはないです。可能性の問題だし、

「オレオレ詐欺」で、ジジババに対して「なんで騙されるんだろう」なんていう声が多い。ジジババだけじゃない。若い人たちも考えてみて欲しい。安全な「無料アプリ」だけを、意識してダウンロードしているか。インストールの際の、「住所録にアクセスします」みたいな、Androidの出す警告を気にしている人が、どれだけいるか。騙す相手によって騙し方を変えているだけで、ジジババが「オレオレ詐欺」に騙されるように、若い人たちは簡単に「無料アプリ」に騙される、という気がする。

結果として、病院が診療データを人質にされて身代金を支払ったり、数百億円が盗まれたり、色々と起きている訳だし、それは日本だけではないし、世界中で同じことが起きている。要するに、逆説的には、スカスカのサーバが、世界中の至る所にあるから、これだけハッカーが「暗躍」しているんだろうな、と思う。

ようやっと、表題。

暗号資産を管理するサイトだけじゃなく、そのクライアントとして接続する「不特定多数」のサイトには、不備が多すぎる気がする。
Facebookが、独自の暗号資産の発行を構想したみたいだけれども、負の側面の方が多い気がする。そればかりではなく、それ以外の暗号資産、いわゆる「仮想通貨」も、まだ、時期尚早な気がする。

あらゆる手段を使って、情報を盗み金にしようとする人たちが、間違いなく多数いる。一時的にやめていたとしても、国家ですらそうした行為を行う。(中国が何かとかばおうとする某国。バングラディッシュの銀行から、相当な金額を盗んでいませんでしたっけか?)それだけではなく、会社員をやりながら、無造作に無料アプリをダウンロードしたがる若い人たちもいる。その行動は、止められないんじゃなかろうか。
その二つの理由から、暗号資産は、まだ危険すぎる、と、僕は思う。

何よりも、暗号資産を使用すべき必然性が、僕にはどうしも理解できていない。

不安

Nack5、大野さんの番組を最後まで聴いてしまった。さっきラジオを切ったところ。
バカボンさんのも聴きたいとは思いつつ、このままだと仕事にならない。というか、あまり仕事になっていなかった。バカボンさんごめんなさい。

何かちょっとした不安があると、どうしても「固まる」癖がある。
その不安の一番の原因は、やはり某国からのハッキングのアクセスだろうか。本当に、こいつら消えて欲しい。

大野さんの番組で、新型コロナウイルスについての投稿を集めていた。長文が多かったらしい。
その中で、たぶん、医療関係者だろうな、「大切なことは、パンデミックの不安を煽らないように、冷静に・・・」というのがあった。
そうでしょうね。同感します。ただ、僕が書いたのは、不安を煽るというよりも「願望」です。

誤解を招かないように正確に書くならば、とにかく、このハッキングを止めて欲しい。
もし某国が関与しているのならば、すぐにでもやめて欲しい。
国が関与していないとしても、取り締まって欲しい。

だけど、おそらく某国は何もしない。だったら、どうあれば、このハッキング集団に消えてもらえるか。
消えてもらうためには、例えばパンデミックでハッキングの関係者が全員感染して、いなくなれば、目的は果たせるだろうな、という、僕の強い願望を書いただけ。
不安を煽るつもりなど、毛頭ない。
ハッキングという行為が改まるのならば、それ以上何も考えない。それで、忘れる。ただ、目の前で、自分のサイトや、これから納入するはずのサイトがハッキングに晒され続けていくのならば、あらゆる合法的な手段を使って排除したい。強く念じるだけならば、それは違法じゃないでしょ?
違法でなくても、間違いなく「神の思い」には背いていると思う。ただ、どこまで落ちようが腹は括っている。

もう一つの不安。
こうして、言葉を発し続けていて、どんな形で伝わっているか。おかしな誤解を与えていないか。
特に、師匠の講演内容にかすっている話題。間違って伝わったなら、責任は、とてつもなく重いぞ。
わかっている。わかっているから、不安に押されて、被せるように書き続けている、という結果になってる。

そんなに不安だったら、黙っていればいい。
でも、黙っていたら、黙っていたで、今師匠が肉体を持たれていて、講演されていて、僕も無事に、師匠と知り合うところまで辿り着いたのに、黙っていて、もしかして何かを書いたなら、100人のうち一人だけでも、一万人のうち一人だけでも、師匠が講演会で伝えたいであろう内容を、届けることができるかも知れないのに、その機会を潰したという「後悔」が残る気がする。せっかく、こうして書いたものがある程度拡散する状況を作ったのに。黙っていたなら、これまでの僕の今回の人生の全ての「布石」を無にしてしまう、そんな「後悔」をしそうな「不安」がある。
落ちる不安と、後悔する不安と、どちらを選ぶか。

単純に解釈していただければ、それで十分です。人間の実体は「意識体」、意識を持ったエネルギー体である、ということ。人間だけではなく、地球にも、太陽にも、電子にも、人間とは違った形ではあっても「意識」がある、ということ。エネルギー体は、エネルギーレベルの違いで80段階以上(数字は目安です)に分かれていて、エネルギーレベルが違うと、ラジオのチューニングができないように「意思疎通」できない、ということ。そのままだと、いつまで経っても、どのエネルギーレベルの方も、大した経験を積めないから、より高いエネルギー体の方の生き方などを知って、経験を積むために、この「物質世界」が創造され、僕らは肉体を持てるようになっている、ということ。その「物質世界」のおかげで、自分より遥かにエネルギーレベルの高い方、例えばイエス様などが肉体を持たれれば、会って直接話をすることだってできる、ということ。この物質世界も、エネルギー体としての僕ら自身も、全て創造主によって作られたものだ、ということ。経験を積んで、より細かい意識を持てるようになれば、エネルギー量が上がって「進化」できるし、逆に物質世界に染まって「退化」することもある、ということ。誰から何を学ぶか、自らどんな人生を生きるかなど、誰もが自分の判断で、神の思いに背かない生き方ができるように、すべてのヒトに「自由」が与えられている、ということ。
ここから先、細かく補い出すと、あるいは、さらに上の話を補い出すと、際限がない。その辺を書き始めたら、「誤って伝わる」こともあるかも知れない。大雑把に言えば、僕がとにかく伝えたいのは、こんな話題、だけなので、それ以外の細かいところは全部忘れていただけたら、とても有難い。

さらに、もう一つの不安。
仕事の納期に間に合うか。(こんなこと、書いている暇はない、けれど。)

受験シーズンですね。受験の場合にも「不安」はつきものだった。だからこそ、「やるべきことはやり尽くした」と思えるだけ、頑張るだけだったんだろうと思う。それができなかったなぁ、と昔を思い出す。「不安」に押しつぶされて、固まってしまって、何度も失敗した。

今は?「不安」があるなら、さっさと仕事しろ。ハッキングに「対策」できるなら、やれることをすべてやって、後は覚悟を決めるだけ。コーディングは、とにかく書きまくれ。「決断」を先送りするな、迷っていても、エイや、で自分を信じて、決めろ。
なんだよなぁ・・・。

おい、イクオ、がんばれ。

あれこれ

僕の得意技だったフラグマスク(ビットの論理積を被せてフィルターする)が、どうもDBとの整合で、ORマッピングの世界に持ち込むと、予想外に計算負荷を増やしているみたいだ。早い段階で松尾くんから指摘があったんだけれども、つまり、なるべく簡素なSQLに直接落とせる形で、フラグを、マスクではなく、booleanの「整数値」分割すべきだと。あいつ、僕が教員をやってた間にも、業務用アプリでは、相当に現場で叩かれてるからなぁ。

よくわからないのは、boolean変数がビットでも、バイトでもなく、Integerに展開されているように見える点で、だとすると、今回10項目のフラグを設定した部分は、ビットマスクなら、64bit整数一つに落とせるのに、Integerにされちゃったらレコード一件あたり640ビット、10倍以上のデータ量になる。無論、DBMSの内部スキーマでうまい具合に圧縮してくれているならば、心配する必要はないんだろうけれども、調べきっていないもんだから、どうしてもbooleanのフラグを列挙する形式には躊躇してしまう。こういうのは、統合開発環境とか、DBMS の内部処理の効率化を信じるしかないんだろうなぁ。

いかんせん、アドレスバスからアクセス可能な主記憶は32キロバイトの時代からプログラムをしている人間だから、この発想は組み込み系には使えても、業務アプリには向かなくなったのかも知れない。圧倒的に、メモリも計算効率もいい「技」だったんだけどなぁ・・・
時代が変わった。今はもう、メモリ圧縮、計算ロジック圧縮「命」の時代じゃない。簡素な言語表現、シンプルなSQL表現が可能な、メンテナンス性能と読みやすさ、短納期「命」の時代みたいだから、頭を切り替えるしかない。

ここ、納期がきつい今リファクタリングするか、それとも現行の設計で通すか、決断できないでいたら、今日はほとんど仕事が捗らなかった。
悩み疲れた。いいです。こんな日もあります。

時代が、ではなくて、認識が変わった。より正確に言えば、子供の頃から漠然と「どうあるべきか」的な部分で感じていた疑問が、師匠の講演会でクリアに解けた、そんな話題もあるなぁ、なんて、かなり漠然と、思考のカーソルがおかしな方向を飛び回り始めた。ここからが本題。

「人間は、いかにあるべきか。」おぉ、でっかく出たな、ってな話題だが、今理解している答えは簡単。「神の思いに背かない生き方をすること」だけみたいだ。確か、まさしくこの表現を講演会で使われたこともあった。じゃぁ、何が「神の思い」なんだ、って部分は、怖くて書けません。僕に書けることは、「僕はこう考えるから、こうしています」とか、「こんなことがあった時に、僕はこう考えて、こうしました」的な部分だけかな、と思う。ただ、ざっくり言って、全然難しい話じゃない。人を殺すな、他人のものを奪うな。すべての人に平等に接しましょう。世間でよく言われている話。今さら、声を大にして叫ぶような話題じゃない。それなのに、たったそれだけのことができない人が増えている。

これも、ざっくり言えば、金をたくさん持ってることが、世界の共通の「価値観」になりつつある気がする。国がたくさん金を蓄えるために、産業保護と称してどういう政策を打ち出すか、そこだけに力点を置いている政治家と言えば、アレとアレと、アレ、みたいにゾロゾロと列挙できる。地球が壊れる訳だよ。

某国のハッカー集団。ログだけ見ていると、もう、やりたい放題やってる。ああいう人たちは、この世界から消えたらいいと、僕は書いた。言葉だけ拾い上げたなら、完全に「呪い」の言葉だよなぁ、とは自覚している。

20代、30代の頃は、大人になって、親父に反発した。僕自身、意識の大半が「金」とか「女」とか「酒」に向いていた。40代もその延長で、潰れていたかなぁ。ただ、その後師匠に出会い、できるだけ、自分の「あるべき姿」を考えるようにしてきて、微妙に、だけれども、感覚的には思春期前の自分に近づいた気がしている。小学校の頃だったか、冷たくなって硬くなったヒヨコを、必死で手のひらでマッサージして「生き返れ」と念じていたら、本当に生き返ったことがあった。その逆も何度もあった。「あんな奴、いなければいいのに」と思ってしまった結果は、書かない。
お陰様で、というべきか、この年になって「経済」を完全に諦めて、なるようになれ、と思えるようになったお陰で、逆に、あの頃に近くなっている気がする。無論、人生経験は積んできたから、そう簡単に誰かを否定するような思いは持たないから、多少のことでは「何も感じない」です。お前を殺してやる、くらいの憎悪をぶつけられても、全然平気にはなった。
ですけどね、あの某国のハッカー集団だけは、ログを見ているだけで不快になって、「こんな奴ら、いなければいいのに」の思いが、どうしても消せない。文字通り「機械的」に無制限に攻めてくる。こういう時は、素直に、自分の意識を開放しようと思った。その某国でパンデミックが起きても構わないと、僕は今そう思っている。

「お前、偉そうなことを書く割には、実際は酷い奴じゃないか。」そうですね。自分でもそう思います。人は、相手の立場を思い遣って生きるべきだ。人を殺すべきじゃない。そう書きつつ、死ぬってどういうことだろうか。実は、肉体を抜けるだけだと、今は確信している。肉体を持っている間に蓄積した「経験」の質の違いで、進化もするし、退化もする。その「経験」の内容を決めるのは、本人次第。神ですら干渉はされない。逆だ。どこまで自分の判断で「あるべき生き方」を出来るか、ただ黙って見守ってくださっている。いうまでもなく、「質の高い生き方」を求められていると、自分は理解している。
その一方で、あまりにも、誰も彼もが「物欲」とか「支配欲」に振り回され、社会全体がそれを当然と思うようになった時に、何度となく、人類は大陸ごと消されて、「原始人」からのやり直しを余儀なくされた。ただ、何億という人が大陸ごと海に沈んでも、その方々の「魂」はそのこと自体を「経験」として、また何度でも、次の機会に肉体を持って生活し、その都度、肉体を持った場所、時代、社会で「やり直し」をしてきている、と私は理解している。(すみません、ここまでは僕も、記憶を辿れていません。せいぜい、3回前くらいまでで。なので、これは伝聞です。)「やり直し」の機会を与えることができるからこそ、地球の意識は、大陸ごと消す、という手段を普通に発動されてきたのだろうと理解している。そこに至る経過を、全く学習できていない奴もいる。トランプを見ていたらよくわかる。だから、何度でも繰り返し起きた。

だから、という訳ではないが、あまりにも目に余る行為を展開するのならば、もっと具体的に書けば、某国のハッカー集団によるアクセスを見るたびに、僕自身は、その某国そのものが消えるべきだという意識になって来ている。国家のバックアップによるハッカー集団であるならば、即座に解散すべきだ。黙認していたのならば、取締るべきだ。人権問題はどうか。政府による個人の「思想・信条」への干渉を、一切やめるべきだ。(これは、いささか、拡大解釈だけれども、上位の意識体が一番不快に感じられているのは、この部分だと自分は理解する。)
それができないのならば、つまり、結果として、その某国のハッカー集団によるアクセスは続くだろうし、その行為に接するたびに、僕自身の「消えろ」という思いは強くなる。この「思い」は、下手に封じてしまうと、僕自身が自分で自分を壊す気がする。これほど強い意識があるのに、それを直接外に向けることができないなら、たぶん僕は、自分で自分を壊しにかかると思う。本当に申し訳ないけれども、僕はその某国に「消えろ」という意識を向け続けます。願わくば、某国のハッカー集団が行動を改めて欲しい。それができないのならば、そのハッカー集団が消えるまでの規模の、パンデミックが起きるように、僕は念じ続けると思う。(そういうのを、「呪い」って言うんだよ、って、そんなことはわかってる。その「呪い」をかけるって、決めた、っていう話だ。)

あまり、書きたくなかったけれど。だから今日は、途中で仕事が止まった。

正月に、ハッカーのアクセスの話題を書いた。某国からのアクセスログは、WuhanとNanjingからだった。そのWuhanは、実は省が違う。同名の別都市だったのかもしれない。でも、Nanjingではまだ、何も起きていませんね?僕が何を書きたいか、適当に察してください。

植物工業

レジ袋に「このレジ袋は、植物由来の材料を使用しています。」と書かれたのを見かけた。

最近、農協の直売所にしばしば足を運ぶようになって、確かに「品揃え」はスーパーとは違って偏っているけれども、逆に言えば「旬の食材」が並んでいるのかな、なんてことも思う。季節外れの野菜を海外から運ぶ。こう言っちゃなんだけれども、グレタさんじゃなくても、なんだか、無駄に二酸化炭素を排出している気がしなくもない。でも、海外の農家にとっては、世界を販路にするというのは、生活を改善する貴重な手段だとも思うから、痛し痒しかなぁ。
最近の「気分転換」は、事務所での料理で、ポテチとかスナック菓子を食べるのと違って、作る過程も気分転換になるし、案外、野菜って糖質も含んでいるんだよなぁ、なんてことも思う。さすがに、僕の腸内細菌も、セルロースまではエネルギーにはできませんが。デンプンと、(あ、確認してない、もし僕の理解が間違っていたら無視して下さい、)分子結合の仕方が違うだけで、ほとんど同じ組成らしいのに、セルロースはエネルギーにできない。話を戻して。

「生鮮野菜」をコンテナで、船便で運ぶ、なんてやってたら、届いた頃には、「どこが生鮮野菜だ」なんて感じになるだろうし。
10年後、20年後じゃなくて、もっと先に、例えば、電力は風力、波力、太陽光などなど、化石燃料や原子力に頼らない形で確保して、世界規模で「鉄道網」が整備されて、日本からだと、例えば福岡と釜山の間は鉄道フェリーに頼るとしても、ユーラシア大陸への、ユーラシア大陸からの輸送は、鉄道が中心になって、(そのころに鉄道が、単位重量を輸送するのに、エネルギーコストが最小かどうかは、わからないけれど、)船便よりも多少は早く大量に荷物を送れるような形で、物流が整備されたとして、その間に「鮮度を保つ」ための技術、なんていうのが開発されたりしないんだろうか。
「冷凍」と「乾燥」以外に、例えば、窒素充填とか(あ、適当に書いてます)植物の生命機能を最小限維持させたまま、代謝を止めるような技術。それができたら、きっと、今よりもっと世界とつながって、もっとみんなが豊かになったりしないだろうか。なんてことを思う。
原子力は、「廃棄物」の安全な処理手法が見つかっていないから、選択肢から排除すべきだ。そもそも、放射性の廃棄物を「安全」に処理するためには、(適当に書くけど、)未来の技術を使ったって、取り出したエネルギーよりもはるかに多くのエネルギーが「処理」に必要になると思う。だって、そもそも、核分裂のエネルギーから出る熱で、水を沸騰させてタービンを回す?牛や馬の数を数えるのに、足の数を数えて4で割る、みたいな話で、あるいは、ムカデが何匹いるか数えるのに、足の数を数えてから、100で割る、みたいあ、そんな効率の悪いやり方しかできていない。直接エネルギーを電力に変換で切うならともかく、直接のエネルギー変換ができないならば、所詮は爆弾くらいにしか使えない技術だと考えて、一旦封印するのが賢明だと僕は思う。
「地層内処分」?個人的に、俺は、そんなの、地球さんを怒らせるだけだと思う。怒らせたらとてつもなく怖い相手だと思うんだが、そんなの気にもかけてない人が多すぎる。将来世代のことも考えないし、「相手国」のことも考えずに、目先の自分の利益のことしか考えない、トランプみたいなのが、世界中に増殖しつつある。自然災害がエスカレートすると思う。今年くる奴、僕はまだ見えてない。でも、師匠は何か仰ってたなぁ。「二酸化炭素」だけが原因じゃない。平気で、あらゆる種類のゴミを出し、誰か(他国、将来世代)の迷惑など考えようともしない、今の人類の意識が問題なんだと思う。話を戻して。

いえね、安倍総理の場合には、「すぐに産業界に役立つ技術以外は、科学技術の研究予算は減らす」なんて感じのことを以前言ってた。そういうのは「研究」じゃないでしょ、と思う。どんな知識が、いつどんな形で役立つか、花開くか、わからない。
僕らは意識していなくても、優れた研究者のインスピレーションなんていうのは、上から意識や知識を送っている場合も少なくないらしい。意識体の世界の住民の方々(僕らも、肉体を抜けたら、過去の全ての記憶を取り戻して、いずれは上に戻る訳だから、今現在、上にいる方々と、僕らは今現在、この物質世界にいる、というだけの違いだと、僕は理解しているけれども、)その、上の方々は、いかんせん、既に、何度となく大陸が沈み、「文明」がリセットされた、その前の記憶すら持っている訳だから、いつ、どんな順番で、どんな知識を地上に下ろしたら将来役に立つか、きちんと伏線を張って、「基礎研究」を固めにこようとされている、僕らの「自分は、今回、これを究めたい」という意識は、実は上とつながっているかも知れない。それなのに、「今役に立つものにしか、予算を回さない」というのは、あまりにも近視眼的な気がする。なんていう説得の仕方をしても、これが実は一番、通じにくい説明かも知れないなぁ。話を戻して。

植物から、有機高分子を抽出して、レジ袋だけではなくて、例えば、コンピュータのCPUの動作をさせちゃう、とか(あ、これは実現しそう。スピードを要しない、IoTみたいな分野では、金属由来のCPUとは別の規格で、棲み分けできそう)、例えば、ユーグレナを栄養豊富な食料品にしたみたいに、植物版のペルチェ効果みたいな、植物版のゼーベック効果みたいな、温度調整の素材に使うとか、あるいは、従来の植物に求めていた、「栄養源」として、だけではなく、「保存」や「輸送」そして「摂取」に最適な「加工方法」とか、今まであまりにも、活用してこなさ過ぎた気がしなくもない。

昔は、日本では「家」の柱、骨格は、木材だったし、屋根も、茅葺とか藁葺きとか、植物だった。野菜みたいな植物だけではなく、木材だって貴重な「工業材料」として研究の対象にできる気がする。どんな加工法があるか。どんな「素材」を抽出できるか。必要最小限の加工で、鉄骨並の強度と、免震ゴム並の柔軟性を持たせた素材に、どう変貌させられるか。植物加工って、ある種のフロンティアじゃないのかな、なんていう気がした。

アメリカや中国が、それこそ、グレタさんに噛み付かれるようなことばかりをやっている(グレタさんが一番噛みつくべき相手は、中国だと僕は思うけど、)その隙に、次世代技術の基礎研究を進めて、いずれは、アメリカや中国から特許権料を巻き上げるような、そういう喧嘩のやり方って、できないものかなぁ、なんて思った。(どうして、あんたは、そうやって、いつもいつも、喧嘩腰になるんだか・・・)

鉱工業じゃない、植物工業として、新しい時代を切り開けませんかね?

Importの循環参照

また、訳のわからんエラーが・・・

ImportError: cannot import name 'get_previous_transfer' from 'create_forms.(中略).views'

ちゃんと存在するのに、importエラーって、何だよ(ーー;)
と思ってググったら、出てきた。上から2番目。

https://qiita.com/puriketu99/items/a1347bf5200f095e486e/

ImportError: cannot import nameを解消する

importでも循環参照が発生するんだぁ。知らなかった。

嬉しかったのは、今回この問題を解決するのに、5分もかからなかったことだろうか。ようやっと、python / djangoが、手にしっくりきはじめた気がする。使い慣れない道具って、本当にストレスが溜まるけれど。

いえ、ね。何よりもQiita様と、そのライターの皆様方に大感謝。年寄りは全然貢献できていませんが・・・。

もう、拝み倒しちゃう。(ー人ー)

もう、平伏しちゃう。m(_ _)m

なんか、もう、今日の幸福感120%!

ロンドン橋

「出し惜しみしない」なんていう話題があって、どうしようかと思いつつ。できることは、全力でやる。提供できるものは全て提供する。そのつもりはあるんだけれど。

「余計なことをしない」なんていう話題もある。「余計なこと」僕が書いてるのは、正しくそれかも・・・だから、金輪際「訳のわからないこと」を書くのはやめようとも思っていたんだけれど・・・。確かにそう、宣言したんだけれども、あれだなぁ、僕の禁煙宣言みたいなもんだ。

仕事は、なんとか匍匐前進で進めています。組み合わせが多い分、作っても作っても、例外処理の「見落とし」に気付くことの繰り返し。工期が遅れまくってるけれども、1ヶ月とかではなく、数週間程度の遅れでなんとかする。できる。そう自分に言い聞かせつつ、仕事に集中できないすべての雑音は、遮断したい。と、言いつつ、自治会会計の用事は、湧いてでたら速攻で片付ける。大学のレポートの採点も、どこかで集中して一気に片付けたい。その辺は、なんとかする。

ただ、数日前から、唐突に、「ロンドン橋落ちた」のメロディーが湧いて出てきて、これは一体なんなんだと。抱えきれない。古い歌ですよね。なんで、こんなメロディフレーズが湧いてくるのよ。勘弁して欲しい。

何かテロの予感?いやぁ、違う気がする。テムズ川の氾濫?わからん。季節的にどうなんだろ。「確信が持てないなら、書くべきではない」それは分かってるけれども・・・。何かの暗喩?これが一番近い気がする。もしかしたら、ということはあるけれども、それは書きたくない。スパンは、半年くらいかなぁ。

オーストラリアのモリソン 首相が、大洋州での会議で何か、地球温暖化対策に後ろ向きの発言をした。その時に、大規模な森林火災が見えた気がした。俺、何か書いたっけか?探すのが面倒くさい。確か何か、書いた。因果関係って、あると思いますか?僕は、あると感じている。地球は「意識体」で、地上で生活する全ての生き物や、人間の「意識」を感じ取って、判断を下されている。と、僕は、理解している。

地球意識にできること。地震や、火山の噴火。などの気象現象だけではなく、原始的な生命体の創造や、ウイルスなどの遺伝子構造を組み換えることも「意志」によってできる、と僕は理解している。どこかの土地に住む人の心が、「お互い人間どうし」であるにも拘らず、人間自身の手によって、他者の自由を束縛したり、経済活動を最優先して、他の人たちの生存を脅かしたり、無頓着にそうした行為を繰り返したなら、以前だったら「警鐘」を鳴らしてきたんだろうと思う。ただ、今はもう、「警鐘」の域を通り越して、「排除」にかかっている気がする。僕は、そう感じている。

モリソン首相、温暖化ガスの抜本的な対策として、発端となった「石炭産業」の、大胆な産業シフトを打ち出してみたらどうだろうか。「燃やす」だけが石炭じゃない気がする。100年後とは言わない。せめて、30年後の地球を考えて、動いてみたらどうだろうか。もしかして、それを「地球意識」が「評価」してくれたなら、偏西風や貿易風の流れに、火災による上昇気流が関係して、「雨」による鎮火が起きるかも知れない。断言はしませんが。地球さんの「意識」なんて、僕からみたら、次元が高すぎて、波長が違いすぎて、受け取ることすらできない。せめて、ねぇ、ミカ様とかガブリ様の意識を受け取れるくらいの霊格があったら、もう少しまともなことを書けたんですが。下っ端過ぎて、ろくな話題が書けない。僕の如き下っ端にできることは、師匠のお言葉の解釈だけ。しかも、その解釈が間違っているかも知れないし。手数で攻めるって言ったって、こればっかりは、間違えたら後が怖すぎる。

これが「神の思い」です、なんて看板を掲げて書いてしまって、それが万一間違っていたら、例えば、トランプが「核兵器使用」を決断して、数十万人を殺傷した挙句落ちる地獄の深さよりも、さらに厄介な深さに僕は落ちる、と思う。そればかりは、勘弁願いたいから、できることなら今後は一切沈黙を保ちたい。ですけどね、「出し惜しみしない」って、どうしたらいいんだろうか。僕の書くことなんか、気にしないで下さいね、と枕詞を掲げてから、書く、それだけかも。

新型コロナウィルス。どこの国とは言いませんが、人権問題がなければ深刻化はしない。人権問題があるならば、もうあと、2回くらい、遺伝子の変化が起きそうな気がする。因果関係?そんなもん、証明できる訳がない。一応は、僕も「自然科学」に軸足は置いている。「地球意識」や、さらにその上の話になったなら、その存在を信じるかどうか、問題はその一点だと僕は理解している。

地下資源。大規模な地盤崩落が起きるような気がする。これは、今年とは言わない。でも、地下の空洞が、周辺の構造だけでは支えきれなくなっているかも知れない。どこだと思うか?わからん。日本でないのは確かだから、だったらもう、どこでもいい、というのが僕のスタンス。

そもそも、ね。地球にも「意識」がある、なんて、どなたも信じないでしょうね。ましてや、その上の「創造主」が実在しているなんて、自然科学的には「ありえない」んだろうか。いらっしゃったとしても、どの理論にも、どこにも矛盾はないはずなのに。

表題の「ロンドン橋」。気になって仕方がなかったから、とりあえず書いてみた。すみません、何のことやら、僕にはわかりません。


【追捕】

あんまり、こっちに意識を向けている余裕はないんだけれども・・・

「地球意識」さん、あまり「外科手術」は得意でないみたいな気がする。
一昔前の乳癌の外科手術みたいに、「疑わしい」側の乳房を根こそぎ切除する、みたいなやり方をされる、と理解している。
つまり、「警鐘を鳴らしたい地域」があったなら、どれほどの「善人」がそこに住んでいようが、そのあたり一体を丸ごと壊す。そうしたやり方をされる。細かい切り分けなんて、そもそもお考えになっていない。

なぜ、そんなやり方をされるか。肉体を持つ前は上にいて、「人としてあるべき姿」をある程度は理解していたはずなのに、一旦肉体を持つと、物質欲にどっぷりと染まったり、その「地域」の慣習で、人権を迫害しようが、金儲け最優先で人が死のうが、全く気にならない行動を示す、のが、人類。だったら、その辺一帯で「肉体を持っている状態」を滅ぼすのが、一番確実。肉体を抜けて、まずは地獄に落ちて、そこで「何がおかしかったか」自分で気づいて上に戻ったなら、また次がある。最悪の人権環境に住んでいる方々の肉体を、根こそぎ滅ぼしたとしても、汚れなかった方々には次の機会がある。そうした仕組みに基づいての「意思決定」だから、「人として、こう生きるべき」という意識をもたれている方々は、全然気にする必要はないと思う。

それは、日本でも頻発した大災害とかで亡くなられた方々も、全く同じ。法政大学で教えていた学生の一人が、3.11で亡くなった。ご両親からの「本人が提出したレポートとか、どんな痕跡でもいいから、本人の書いたものを、下さい」という連絡を事務方が受けて、そのメールを受け取って、僕のPC内にあった本人が電子提出したレポートを、事務方に送った。身近な人の生きた痕跡は、欲しいものだと思う。僕自身は、親父が最晩年好きだったBMWをを相続して、維持費が高いし、グレタ・トゥンベリさんに怒られそうなくらい燃費が悪い旧式モデルなのに、親父に甘えたくて、今でも手放せないでいる。気持ちは、すごくわかる。

ただ、心配したり、必要以上に気に病む必要はないんだろうと思う。自分の「宗教」で、こう教えてもらいました、ではなくて、自分自身の「ヒト」としての感性で、いま自分はこれができるから、こうした、と、そうした生き方をしている方々なら、火山灰に埋められようが、森林火災で逃げ遅れて焼け死のうが、津波で濁流に沈められようが、ご本人の意識体は、もう次のステップを見据えられると思うから、全然、心配は要らないとも思う。

だからこそ、「この地域」根こそぎ、という被災の仕方をしたとしても、「個」がしっかりと「ヒトとしてのあるべき姿」を意識できていたなら、どんな自然災害で「不慮の死に方」をしたとしても、全く「心配」すべき理由はないと、僕は理解している。

今はもう、例えばトランプの発言を聞いていたらわかる通りで、多くの政治家が、どれほど自然災害が続いても「経済最優先」から一切離れようとしない。「人権無視」も、看過できない域に達している国がある。覚悟すべきじゃないか、と、僕は思う。ですけどね、「私は、将来世代にも、地球環境にも、責任を負いたいから、こういう行動を起こす」という方々は、巻き込まれたって、すぐまた「次」があるから、全然心配する必要はないし、むやみやたらと、心を痛めて悼まなくても、全然、心配はないと思うよ、と、私なりに「追捕」を書いてみました。

トイレの100W

トイレの電球が切れた。

今僕が、仕事の上では一番頼りにしている方と、よく車の中で移動中に、世間話の雑談をしている。
親父から相続したBMWが、どうしても手離せない。ナンバーが、親父とお袋の結婚記念日だから、ということもあるし、この車に乗っていると、親父を感じることができるから、ということもある。無論、最大の理由は買い換える金がない、というあたりだけれども・・・燃費が悪い。思い切って、軽に買い替えた方が、コスパがいいし、間違いなく2年後には元が取れるかも、とは思うんだが・・・でも、踏み切れないのは、やはり僕は、親父を感じることのできるこの車から、どうしても卒業できていない。反発したまま死に別れたから、「墓に着せる服はない」ってな感じだろうか。

BMWのコスパの悪さ、BMWはホイールがブレーキの粉で汚れるんだよね、なんていう話から、電球や蛍光灯のストックの話に飛んだ。
我が家には、様々なもののストックが、相当量ある。電球も、40Wに、60Wなど、場所によって切れる度に、LED電球を買ってくるのではなく、親父のストックから取り出して付け替えた。蛍光管も、直管でまだ7〜8本、和室用の円形の蛍光管も各部屋これから2回くらい切れても交換できるくらいの分量があって、なかなか、LED蛍光灯への付け替えができない、なんていう話をしていたら、「それは、小林さん、断捨離したら」なんて助言を頂いた。そうだよなぁ、ただ僕は、どうしても、一度は「モノ」としてこの世に姿を持ったモノに、一度も使われることなく「ゴミ」になってもらう、ということが、どうしてもできない。(食い物なんて、もっとそうで、転職して、ゴミ箱から食い物を漁って、それで生計立てようかと思ったくらいで・・・)唐突に、その時の会話を思い出しながらも、仕方ない、ストックから交換するか、と思って納戸を見ていたら、「電球」は既に全部交換してストックが尽きていた。思い出した。万が一に備えて、20Wを2球と、40Wを2球、LEDの電球を買って、僕自身がストックしていた。あったのは、その4球と、あとは、なぜか(エジソンさんの技術を継承したままの)100Wの裸電球。
前にも、疑問に思ったっけ。この100Wの裸電球を、親父は一体どこと交換するつもりで買ったの?もしかして、買ったの俺?

僕自身のポリシーとしては、「まだ使えるモノは、使う。」で、「先にフェードアウトするべきものから順に使う」だから、僕自身のルールに従うなら、当然、40WのLED電球ではなくて、先にこちらの100Wの裸電球を、事務所のトイレで使っちゃおうか、ってな感じになるんだけれども・・・

一体、トイレで100Wの裸電球を使って、何をそんなにも「鮮明」に観察したいのよ。悪趣味だ。
ルールを曲げた。40W君に、先に出番を持ってもらった。

この100Wの裸電球もそうだし、母屋にストックされている蛍光灯もそうだけれども、出番もないまま、「エイや」でもって、捨てるか?ってな話だなぁ。

これも車の中で、お世話になっている営業の方と、よく話をしていた。中小零細の製造業の現場では、「生産設備」を更新するだけの金がないから、未だに「PC-9801」なんてのが必死でサバイバルしている。良くて、DOS-Vあたりで・・・。その辺で使われていた「通信技術」はRS-232Cで、そういうのは、僕が若かった頃最も得意にしていたプログラミングの分野だった。(若いSEの方たち、この辺の単語なんて、理解できないでしょうねぇ。)それが、未だに現役。その本体よりも通信系が先にくたばったら、今時ならとにかくLAN経由で、その先WANにも繋いで、必要最小限度の投資で、設備の延命を図りたい。
なんだかなぁ、日本の「経済産業行政」の「しわ寄せ」というか、ほとんど無視されてきた領域だから、役人だって、こんな現実を理解していないと思う。単価の安さで辛うじて生き延びてきたところが、安さだけならもう、中国、韓国、ベトナム、タイに圧倒されて、「我が社だから」なんていうスペックの高さがあったって、価格の安さには負ける。
安倍総理が何をおっしゃったところで、「シャンパンタワー」の下まで、オコボレは流れてこないって。上の方、大企業のあたりのボーナスとか、せいぜい、中堅レベルの残業時間の低減とか、そんなあたりで消えてしまって、下の方が苦しいのは全く変わらない。
それどころか、第三次産業にシフトするとかで、農林水産業、製造業は二の次なんだろうか。農林水産業は、自民党のコアな支持層も多いから、無視できない、なんてことになると、取り残された製造業は悲惨なことになるのかも・・・

G社のHさんにも、随分とお世話になった。医療系のアプリ開発。

もしまた、医療系に戻れたら、もう一度タッグを組ませていただけたら嬉しいと思いつつ、最近モチベーションが低い。人は「死んでも死なない。」そう確信を持てる域に、辛うじて辿り着いてきた。人の実体は意識体。肉体を持っている時間が、その都度有限だから、いかにその時間を有効活用するか、自分は何をすべきか、「死」という絶好の機会が与えられているからこそ、生の意味を考える機会になっている、そう考えると、一体「医学」は何を目指しているんだろうか、そこのところの疑問が湧いてしまって、「とにかく、今生きている人が、1日でも長く生きられるように」というアプローチは、間違っているんじゃないか、という疑問が湧いてきた。一家の大黒柱が、心臓発作で突然亡くなった。大変なことになると、僕は思う。それは確かだけれども、殺された訳じゃない。「心臓発作の予知・監視・通報システム」で、東京大学から学位をいただいた。それは嘘じゃない。国会図書館にも、一部納品している。(こういうのは、納品っていうのか?わからんけど。)でもね、それがなんなの?どんな意味があるの、っていう感じになってきた。

親父は、たぶん、この日本で、戦国時代に「城」を守る立場にいた人だったんじゃないか、という気がする。その「城」(我が実家)でのストックの作り方、丘屋根での屋上の作り方、我が実家の骨格(重量鉄骨)、我が実家の車庫の作りなどなど、思うにつけて(一目瞭然だけれども)、親父の来歴が目に見えた気がした。と言いつつ、たぶん僕もその時期に、親父と接点を持っている。この日本で。親父は、師匠と「今回が3回目だよ」と言われたらしい。師匠はなぁ、そんなに頻回には肉体を持たれない方だから、それで3回目って言われたら・・・と、考えては見たけれども、こんな話題書いてみても、他人には通じませんね。僕は、たぶん日本は3回目以上だとは思う。
高校時代、不思議だったのは、古文も、漢文も、ほとんど勉強していなかったのに、見たら意味が取れた部分が少なくなかった。無論、わからない「原典」は、他の真面目な学生以下だったのに、わかる「原典」は、古文も漢文も読んだだけで意味が取れた。これって、昔読んだことがあったかどうか、だけか、なんていう気がした。要するいあれ、今回(今肉体を持っている自分が)必死で(単なる記憶としてではなく、)自分の生活感覚レベルに落とし込んで、「自分自身」の一部として落とし込んだ「記憶」は、次にも引き継げるっていうことではないかと、思った。
僕の高校時代の同級生に聞いて欲しい。理系の僕が、まさかの「国語で偏差値80」を、あの東京学芸大学附属高校で取って、「なんだあいつは」っていう話になったこと。答えは単純で、たまたま、その原典の当時に、出題された古文や漢文の原文を、僕は読んだことがあったっていう、それだけの理由だと思う。この「偏差値80」の話が嘘じゃない、って覚えていてくれてる同級生が、どれだけいるかなぁ。(あのぉ、話は盛ってませんから。)

話を戻して、なんとなく、記憶を遡って、僕が日本に肉体を持ったのはこれで4回目か、なんていう気がしている。最低でも、二連チャン。前回一緒になった親父に声をかけて、父親になってもらって、今の僕を育ててもらった。そんな気がする。同時に、欧州でも、中東でも、記憶があるような気もする。答え合わせは、まだ先。6回?無理かなぁ、どこまで辿れるか。まだ「我欲」が残っている僕には、これが限界かも。(「我欲」と言いつつ、自分が生きるための「仕事」で、関係者に迷惑をかけない部分まで「我欲」に括っては欲しくない気はする。)違っている確率の方が、高いです。僕は、肉体を抜けてから答え合わせをして(いや、僕だけじゃなくて、どなたも同じだと思うけど、)次の計画を立てる。これなんかもたぶん、どこの国に生まれても同じ。

わかっていない人が多いよなぁ、なんて思う。モノは、どれほど生きるために必要だとしても、肉体を抜けたら意味がない。ただ、こうして生きている間には、あれも必要だし、これも必要。親父、戦国時代の残像を、相当に引き摺っていたらしい。家の造りもそうだけれども、篭城のための「備蓄」の思考回路が発動されたら、半端なかった気がする。いや、師匠の講演会に15年以上通って、今感覚的に気づいた。親父の基本的な「思考回路」は、戦国時代人だ。トイレットペーパーは言うに及ばず、ネジ、電池、電球、蛍光灯、フューズ、その他もろもろ、「生命線」に近い、あらゆる消耗品の「備蓄」に、親父は相当に神経をすり減らしていた。昭和人だなぁ、というよりも、戦国人だと思った。コンビニが当たり前になった今を知ったら、親父は何を言いたいんだろうか。でも、コンビニの存在を当たり前に感じられる前までは、僕は、親父の生き方に、なんの疑問も持っていなかった。

再び、思う。「100Wの裸電球」を、捨てるか、出番が来るまで放置するか。

SSHに利用可能なポート番号は、49152〜!?

松尾くんと共同で、サーバのセキュリティ強化作業。

アクセス制限を徐々に強めていく際、どちらかがログインしたままで、他方が一旦抜けて、入り直す作業の繰り返し。
今日だけで、相当にセキュリティは強化されて、普通にアクセスして来ても、まず、rootには辿り着けないようにはなった、と思う。が、問題はその操作にかかった時間で、当初の予定としては、「ちょいちょいっと、1時間程度」のつもりが、7時間かかってしまった。

どこでドツボったか。(たぶん、似たようなトラブルにハマる人もいるかも、と思うので、アップしておきます。ご参考までに。)

SSHで、暗号鍵を使ったログインの設定をする際に、そのデフォルトポートを22から変更したのに、変更後のポートが全く開けない、という現象が起きた。言うまでもなく、いくつに変更したかは書けない。中国からのアクセスみたいに、片っ端から繋ぎに来ていれば、いつかは見つかるかも知れないけれども、こんなもん、ネットに書いたら変更した意味がない。(余談ながら、今は、pingも返さないし、そのポートにSSHでアクセスされても、アクセス方法が正しくなければ一切返事しない、はず、なんだが、返事を返さなくてもしつこく繋ぎに来るハッキング・ツールがあるみたいだ。)

結論から言えば、IANAに登録がないポート番号でも、どれでも使える訳ではない、ということのようだった。(間違いなく、昔は、使っていなければ任意のポート番号に設定できたはず、なんだけれども・・・)
問題解決に時間がかかりすぎて、何が原因だったか確認する余力が、僕にも、松尾くんにも残っていない気分でした。

最初は、ファイアウォールに蹴られているか、と思い、ufwの設定を変えて、試しまくった。何よりも、初期状態では inactive だったのに・・・。activeにして、明示的にそのポートを開いても、22番は通るものの、新しいポートにつながらない。散々時間を潰した挙句に、ufwのログを調べたら、ufwがそのポートへのアクセスを蹴った記録が一切残っていない。ということは、ufwは切っていない。

次に試したのは、/etc/ssh/sshd_config のポート以外の指定。効果なし。 /etc/ssh/ssh_config も試した。iptablesのツールも入れて調べたけれど、ポート自体は「許可」になっている。どこをどう見ても、そのポートは「口を開いて待っている」設定になっている。
あぁでもない、こうでもないと、延々と試行錯誤した。ネット検索しても、どのサイトも「ここだけ直せばすぐに変更できる」となっている。何で俺たちだけ?と、無力感に晒されてくる。

結論:開いていても、ssh deamonには、使えないポート番号がある。

TCPやUDPにおけるポート番号の一覧

このサイトで、

ウェルノウンポート番号 (0–1023)
登録済みポート番号 (1024–49151)

となっているのが気になった。ここを外して設定してみようか。40152-65535の範囲にある別のポートに切り替えたら、瞬殺で、動作した。何で、こんなところに時間を費やして・・・

ググると、「こうやれば、簡単にできます」のサンプルでは、この1024-49151の範囲にあるポート番号が「適当に」設定されて、使えることになっている。「適当な値に変えて下さい」その「適当」とは、0-49151以外のようだ。(もう、試す元気がない。)

SSHのポート変更で、うまく動かなかったら、「使われていないポート番号」を探すだけではなく、0〜49151を避けるというのも、重要なことのように、自分は理解した。(間違っているかも知れないけれども、経験則として・・・)あるいは、ちょっと試してつなげなかったら、すぐに別のポート番号を試す、というのが、おそらく正解なんだろうと思う。二人して、ほぼ一日浪費した気分。(こうして、どんどんと予定がずれ込む。)

最近、仕事の仕方が「きれい」じゃない。とにかく動けばそれでいい、そんな感じになって来た。でも、これほど調べたのに、SSHに「使える」ポート番号について書かれたサイトが、一つもなかった。もう、結果オーライ。

もう22番はファイアウォールも閉じているから、これでだいぶ静かになってくれたらありがたい、と思ったのだけれども、結局認証ログは静かになったのに、ファイアウォールのログが、凄まじい勢いで膨らんでいる。認証ログが騒がしいよりは、心が穏やかだけど。こういうアクセスをする人たちには、この世界から消えて欲しいよなぁ。

長い名前

デバッグを終えた。手持ちのデータでは動作確認した。ただ・・・

テストスクリプト、テスト手順書を書かないと不安は残る、けれども、網羅テストの手順を書くのは、詳細設計書を書き上げるのと同じくらい時間がかかる。これ以上、余計なことは書きませんが・・・

人名ではないけれど、長い名前で「表示が重なる」バグを出した。最初の設計で、25文字で行分割した。その後で、少しでも「きれいに見えるように」表示のレイアウトを調整し、フォントの大きさも調整した、その後で、実際の「長い名前」のテストをしていなかった。僕の不注意。(細かいところに、神経が回り切れていない。正直な話、紛争のニュースなんかに反応している暇があったら、目の前の仕事に集中しろ、という感じだろうか。今後は、そうする。何が起きても、一切反応しない。そう決めました。)ご迷惑をおかけした皆様、ごめんなさい。

実際、折り返しはプログラムできていたのだけれども、調整後に「折り返す」位置は22文字目になっていた。バグのご指摘をいただいた「長い名前」は24文字だった。対応していなかった訳じゃないのだけれど。言い訳ですねぇ。見苦しい。今後は、プログラムだけを考えるように意識を切り替えます。「ニュース禁止」の張り紙をしようか。

学生によく、「日本で一番長い名前」の話をした。名前の入力フィールドの、上限とか画面上の枠の大きさとか、の話題。漢字4文字くらいの姓までは、時々見かける。ざっと、姓も名も、5文字くらいで大丈夫かなと思うけど、なんていう話をしたことがあった。ちょっと待て、と思った。

道端アンジェリカさん、名前が6文字。高橋メアリージュンさん、7文字。外国人の名前を忘れていた。そういえば、高校時代の同級生のタイ人。彼の名前はカタカナで7文字。8文字の留学生もいたなぁ。カタカナ表記だと、10文字くらいは普通にいそうだ。忘れていました。頭が固い。今時、これに対応しないと「使えねぇソフト」になってしまう。(おっと、「外国人」の名前じゃなく、外国系の日本人の名前、か。)

なんてことを、ぼんやり考えつつ。バグの連絡を受ける前の仕事に頭を切り替える。本当に、切り替えが下手だ。別のコードを頭の中に広げる。

事務所に一人でいると、ついつい、こういう時に何か書きたくなる。松尾さんに、シェアオフィスでも借りて、必要な時に活用したら、なんて助言ももらったけど、そんなことをしたら、相手の迷惑も考えずに、のべつまくなし話しかけて、顰蹙を買いそうだ。

とにかく、次。

タプル生成

やっと、いくらかエラーの根本原因がいくつか見えるようになって来たのが、tupleが作られちゃうバグ。この話題は、少し前に書いた。

記述を書き直す際に、つい、リストから持って来て代入文を書いたりする。(Typoがあるから、この行為自体は別にそんなに悪いことじゃないと思う。)リストの区切りにカンマがなければ、その場所がエラーだと、コンパイラが騒いでくれるし、Pycharmでもsyntax errorを出してくれる。それはいいんだが、その逆が問題。

代入分の行末のカンマ、エラーにならないで、タプルが生成される。言語仕様なんだ。ようやっと、いくらか慣れて来たけれども、見落としたままわからずに、これも数時間悩んだのは、クラスの初期化で部分的にタプルが渡ってしまった時。あろうことか、そのクラスインスタンスが stringに解釈されちゃう、という現象が起きた。

3段階くらい別の場所で、stringには、そんなメソッドはないぞ、というエラーが出て来て、開き直って、30箇所くらいにprint文を入れて辿っていったら、インスタンスの初期化変数の一つが上述の原因でタプルになっていた。こんなところに虫がいたかぁ・・・しかも、悪いことにそのインスタンスの別のメソッドは生きていたりしたから、全くわからなかった。

こうやって、つまらない(全然、つまらなくないけど)バグを出すから、もう、想定外に時間が無駄に浪費されてしまう。完全に「慣れる」まで、あと、どれくらい時間がかかるんだろうか。pythonそのものは、十分に理解しているつもりなんだが、こういう「バグの出方/現象の出方」それ自体のデータベースが、頭の中にまだない、です。

ジジイです。悔しい。何よりも悔しいのが、つい、Ruby on Railsのつもりで「納期予測」を出してしまった自分の甘さ。寝てる間ないなぁ。甘い。砂糖のシロップ漬け。絶叫!

医療用アプリを書いていた頃、再三、販社の人に「読みの甘さ」を指摘されていたのに・・・学習してない。今はもう、サラリーマンじゃないですからね。ゴメンじゃ済まない。

初パートナー

記憶の泥沼。

僕が初めて、自分の書いたプログラムを「商品」として売って頂いたのは、大学4年の時だったと思う。CANON販売の代理店をしている方だった。細かい話を飛ばせば、今と全く同じ、バグは出る。営業さんは振り回されて、ご迷惑をおかけする、けれども、最後はきちんと動作させた。ある時、その方が、「漢字が使えるプリンターがあるから、それに対応して欲しい。」とおっしゃった。「買い取ってもらえたら、自分のものとして使える」という一言に乗って、2回分くらいの売上(当時の50万円)と相殺する形で、「廉価版」の漢字プリンタ、EPSONのMPシリーズだったか(確か、MP-8000Kだったかなぁ)を買った。

その半月くらい後に、そのEPSONから、上位互換のUPシリーズだと思ったけれども、格安の漢字プリンタが発売された。性能はかなり上で、価格は、僕が買った50万円から30万円にまで安くなっていた。何のことはない、僕のソフトウェアの価格、ほぼ1本分が安くなっていて、何だか、その方の「在庫」を僕が買い取って、お客様に2件売り上げた分は、丸ごと、新製品発売の、半月前の旧タイプのプリンタに化けて、相殺になった。

すぐには気付かなかったけれど(鈍いです、僕は。馬鹿です。)その方は、ソフトウェアの販売と抱き合わせで、EPSONのパソコン(QC-10)も、プリンタも、お客様に売って稼いでいたはずなのに、そのパソコンを売るために搭載した僕のソフトウェアの売上を僕に支払うことなく、そっくり「相殺」で、旧型プリンタの在庫処分に僕を使ったんだろうなぁ。僕の、営業職嫌いは、あの時から始まった。いくら仕事をしても、全然金にならない。確かに、仕事の道具は自分のものになったけれども、なんだか、モヤモヤした感じだけが残った。

その後知り合った営業職の方々には、とても誠実なお付き合いをさせて頂いたけれども、あの、「最初」のインパクトは、今でも忘れられない。「いい経験をさせていただきました。ありがとうございます。」そうなんですけどね、僕の「営業職嫌い」は、たぶん、その時に始まった。若いSEとかプログラマの方々、こういうこともあるんだよ、というお話として、知っておいて欲しいなと思った。

経験することはとても大切だけれど、学習しなかったら意味ないなぁ、なんてことも思った。2年前の場合には、その方の営業力がなかっただけで、悪意はなかったんだろうなぁ。作り続けたけれども、一円にもならなかった5本のアプリ。

世の中、こういうこともあります。ぜひ、若いSEさんや、プログラマさんの参考にしていただければ。

Integer Field の Null値

結論から言えば、Django自身の機能を使う場合には、相当に細かいところを押さえていないといけない、ということなんだと、理解した。

PostgreSQLの DBのIntegerフィールドにNull値を入れる。あまり使いたくなかった。

cut_off = models.IntegerField(verbose_name='締め日', default=25, blank=True, null=True)

defaultを、Noneではなく、25として最初定義した。これだと、blank=True, null=Trueの意味がない、という結論に、試行錯誤の末、辿り着いた。なぜ、31にしなかったか。だって、2月とか、4月とか、31だと問題でしょうが・・・。「月末」を締め日にするには、カレンダー機能の翌月1日を求めてから1日戻す。そうすれば、閏年計算なんかしなくても、末日は求められるけれど、ここでの「締め日」は、「参考データ」なので、「あらゆるフィールドが省略可能」という前提だと、31はやめて25を入れておけば良いか、という安易な判断が墓穴を掘った。(参考データだとしても、結構パターン化した処理手法は、あるんだろうなぁ。)

まだ、Djangoを使いこなしていなかった頃(今でもそうかなぁ・・・) get methodとpost methodで、処理の大半を書いていた。(PHPのZendの流れ、Ruby on Railsでも、そんな感じだった。)その時点では、正常動作していた。

ある程度慣れてきて、どこかの段階で、これを form_valid 内部での処理に置き換えた。それでバグが出た。再現しなかったと思ったけれども、情報はきちんと提供されていました。不注意だ。これに悩まされた。

invalid literal for int() with base 10: ''

このエラーは、空白文字列を整数に変換しようとして起きる。ところが、getに失敗した際にはわざわざNoneを与えるように(postで処理していた時の流れで)書いているし、Noneを受け付けるはずなのに、これが出てしまう。ダミーの画面フィールドを設定して、処理して置き換えるようにすると、「そんなフィールドは定義されていない」のエラーに変わるだけ。細かいなぁ。ググりまくったけど、全然ヒットしない。

開き直って、これに変えた。defaultをNoneにした。

cut_off = models.IntegerField(verbose_name='締め日', default=None, blank=True, null=True)

これで解決した。データベースのIntegerフィールドにNoneを入れる、っていうのに、なんとなく抵抗があった。というか、昔だったらそんなことをしたらエラーにされた気がした。だから、0を入れるのが常套手段だった気がする。ところが、0を入れると、画面に「締め日: 0」と出てしまう。空欄にならない。やめときゃいいのに、こっちを修正しようかとも思ったけれども・・・綺麗な逃げ方が見つからない。

しこたま迷走した挙句、出した答え。Null値を受け入れるならば、defaultをNoneにする。当たり前って言ったら、確かに当たり前の答えだった。「締め日」を空白にする、なんていう発想が最初になかったから、25を入れた、それがそもそもの誤り。最初は無難に動いていたから、疑いすらしなかった。それが、form_validでの処理に切り替えた途端に、Noneの値を強引に(たぶん、default=25のおかげで)整数変換するように動作させてしまった。これがdjangoの動作なんだと、一つ学びました。

わかってしまえば、default=Noneのありがたさ、ということになるけれど、せっかくの「お休み」をたっぷりと潰しました。今回経験したから、次からは同じ失敗はしない。

もう一つの教訓。テストケースを書く時間的余裕が全くないなら、安易にリファクタリングすべきじゃない。「動作しているコード」が全て。サバイバルに近い。美しくなかろうが、見苦しかろうが、正常動作しているならば、触らない方がいい。そんなことはわかっていたけれども、まさか、こんな結果になるとは思わなかった。

すみません、格安です。短納期で、ギリギリまで請求金額を下げています。本当なら、「テスト手順書」か、または、テストScriptをきちんと書いて、バグなんか出したくない。だけど、組み合わせを変えてのテストは割愛しているから、後は経験で対応するしかない。昔のKKD(勘、経験、度胸)の世界です。でも、僕は、バグは潰します。安くしている分、何かが起きたらオンサイトで対応します。絶対にバグは潰します。そこにバグがあることがわかるなら、潰せないバグはない。それだけは、声を大に主張したい。

できることなら、テストスクリプトをきちんと書いて、絶対に客先ではバグは出さない、そうしたいけれど、それをやるには、納期と料金を、今の1.5〜2倍くらいにしてもらわないと、ならないと考えています。というのが、弊社の状況。安くて、短納期の要望を出されるのならば、バグ潰しにご協力願いたく存じます。

同業者の方、こういうこともあるのかと、ご参考になさってください。そのうち、会社のサーバを引っ越したら、Qiitaあたりに土俵を移しますが、今はまだ、サイトすら整理している余裕がないので・・・


これ、違ってました。サーバをリブートしたら、また同じエラーが出た。原因はこれでもなかった。ついに、これだけで1日以上潰すか・・・

逃げました。「締め日」を、IntegerFieldから、CharFieldに変えた。データベース上でのフィールドの型も変えて、migrateした。

そもそも、日付として扱わない「日付」で、Nullの可能性があるなら、最初からIntegerではなくCharにすべきだった。これなら、万一「日付として使う」としても、その都度変換したらいい、だけだった。汚ねぇコードだなぁ・・・でも、これなら確実に動く。

私的ページのエピローグ

最初は、「説明的な独り言」だった。確か、そこから始まったと思う。

近所を徘徊しながら考えた。(もう少し若かったら、「散歩」なんだろうけれど。)今、覚えながら実戦投入した、僕にとって新しい開発環境での、開発中アプリで起きていることが、想定を遥かに超えている。もう、どこかで何か、自分の生き方から見つめ直さないと、このままだと僕は自滅する。そんな気がした。だとしたら、一番切り離さないとならないのは、この「私的ブログ」じゃないか、と言う結論に辿り着いた。

言語自体には、もうかなり慣れていたが、開発プラットフォームは、まだ使い始めて1年経っていない。癖がわからない。想定外の現象に、次から次へと晒されて、要するに「未経験」だから、一通り経験するまではこの状況が続くんだろう。あまりの情けなさにもう、苦笑いしか出ていない。昔からなじんだ道具だけを使い続けていればいい業界ではないし、今後も「新しいものを使い始める」ことは何度もあるんだろう。集中しなければ乗り切れない。

おしまいにしよう。決めた。今度こそ。いい区切りの年齢でもあるし。

その頃のある日、職場で、女子社員がこちらを見ながら「夜中の2時から飲み始めるなんて、非常識よね」と聞こえよがしに言っていた。え、まさか俺のこと?まさかね、と思った。その前日、夜中の11時過ぎまで会社で仕事をしていて、家に戻ったけれども、プログラムが頭から離れず(調子が良ければ、そう言う状態になるんだが)全く寝つかれなかった。布団に入っても、頭の中にはプログラムコードが広がったまま。寝なきゃ、と思いながら、眠れない。飲んで寝ようと、思い「しゃぁない、飲むか」と言って、ビールを飲み始めたのは、確かに午前2時だった。と思う。だけど、何で?と言うのが???だらけだった。その後、それに近いことが何度かあって、もしかしたらと思い、アドバルーンというか、実際には思ってもいない一言(部屋の中での独り言)を口にして、周囲の反応を探って見た。明らかに、伝わっているとその時は感じた。

そこからが、おかしくなった。部屋にいても、くつろげない。何だか神経がテンパってる。何がどんな形で外に漏れているのか、わからないし、どうも、自分が実際に意図してもいない伝わり方で、外におかしな解釈をされていることもあった。これも、後から気付いたけれども、あたかも僕が「自発的に何かを公開している」かのような伝わり方で外に出ていたようで、そうなると、何をするにも、わざわざ「説明的な独り言」を口にして、他意がないことを明確にしておかないと、不安でならない精神状態に陥った。その頃、向かいの家の窓に(当時は、まだ馬鹿デカかった)監視カメラがあるのを見つけ、何だかもう、不快というよりも、正体不明の不安感がひどくて、過呼吸に陥って、自分でもどうなったのかわからずに、隣の部屋の住人Kさんに救急車を読んでもらったのもその頃だったし、何が起きているのか、これからどうなるのか、一度壊れかけていた気がする。メニエルが悪化して、一時期両耳が聞こえなかった。
結構、酒浸ってもいた。当時はコンビニなんてなかった。酒類の自販機も、午後11時になると買えなくなった。部屋に戻っても10時過ぎになって酒がないと、「あ、酒買ってこなきゃ」と「独り言」を言う。それがまた、どうも外に伝わる。ますます酒に頼る。

色々な「偶然」もあった。その「偶然」の正体もわからなかった。結論から言えば、もしかしたら、何らかの理由で僕は「目立つ」必要があるのかも知れない、と思うようになった。結論を先送りしたのは正解だったと思う。誰かのサポートに入ることを自分で決めてきていた「予感」は確かにあった。僕が「僕は、師匠のチンドン屋だ」と、勝手に名乗り始めたのは、自分なりの「答え」を見つけてから、だった。(合ってるかどうかはわからない。)本当は直接確認したい、と思ったこともあったけれども、「自分が誰なのか」や「自分が今回、何のために生まれてきたのか」は、自分で必死で考え抜いて自分で答えを出すしかないと、安易に師匠に確認するのはやめて、とにかく「師匠の存在」を伝えるように、自分なりの試行錯誤を続けた。そのことすらも、もう「卒業」してもいいんじゃないか、と言う気がする。

「説明的な独り言」は、やがて、部屋の中で、新聞の折り込み広告の裏にボールペンでかきなぐった文章に代わり、電話での会話も漏れていた気がしたから(それが、部屋の中の音声としてもれたのか、電話回線経由かは確認できなかったけれども、)電話での会話での「説明的な一言」に広がり(僕は、訳のわからんことを言う変な奴になった)、そこから、webと言う形に移ってきた。2000年頃にはもう、webにしていたと思う。足掛け30年の、情報発信。だけれども、最初の頃のは、言わせてもらえれば、「情報発信」じゃない。外から勝手に拾い上げられていた。webにしたのは「意図を明確に、言葉の限り説明したかった」から、だった。そして「目立つ」ために、書き続けた。(けれども、途中で、何度もメンタルが壊れている。)
あの頃の「不安」が解消したか、と言えば、全く解消していない。今でも「誤解」を恐れて、やたらと「説明」というか「自己弁護」したくなる気持ちは強い。(このページもそうだ。)その根底にあるのは、もしかしたら「三つ子の魂」かも知れない。物心ついた頃から、親に「言い訳」とか「弁解」とか、延々とそんなのを続けていたような、あやふやな記憶がある。だから、「不安」に押されて、黙っていられなかった。裏を返して言えば、こうして「延々と書き続ける」には、絶好の「育てられ方」をしたのかも知れない。だとしたら、僕をそのように育てることを、僕自身が上で、両親に頼んで来たのかも知れない。「答え合わせ」ができるまで、もう、そんなに先ではないから、深入りすることもないんだろう。そして結局、深層にある僕の「不安」は、たぶん死ぬまで消えない。

有り体に書けば、仕事で今僕が出している「不具合」は、僕自身がスキルアップしなければ完全には解消できないし、相当に意識を集中しなければ、無理だろうとも思う。そうなると、「こうした話題」を書き続けることは、僕自身の仕事には、デメリットでしかない。その現実に、背中を押された。書いている時間の問題もあるし、もし僕の関係者が、こうしたページを読まれたら、どう感じられるか、という問題でもある。

いずれにしても、「師匠の存在」について、書き続けた「結果」は、ある程度出た気がする。仮に、結果を出せなかった、としても、もう、現実から逃避する訳にもいかず、こちらの「目に見えない世界」の話は、打ち切るしかないとも思う。打ち切るというよりも、すぐに書けるネタはほとんど出し尽くした。もう十分書いた。

「私的内容」を書くことや、「ニュースに反応して書く」ことを、今度こそ終わりにするのであって、SEとして、プログラマとして、あるいは、学校の先生モードで、自分の考えを書くことはあるかな、とは思う。ただ、公的な顔以外は、あまり出したくない。

正直いって、この決断を下して、ほっとしました。「目立つ」ことは、そんなに好きじゃない。「師匠の存在」さえ世間に伝わってくれたなら、正直な話、僕がこれまで書いた内容も消えてもらった方がいい気がするし、僕が生きた軌跡そのものも、消えて欲しい気がする。僕が出したかった「結果」は、僕自身の人生の軌跡じゃない。たぶん、これも30年前に気付いていた。だから、何度壊れても、かろうじて復元させていただいたのかも知れない。

とにかく、このページをもって、僕自身の「顔」の一部を外に晒すことは、終わりにします。後は、仕事関係の顔、SE、プログラマの顔だけを残そうと思います。
こんな、訳のわからないページを読んでくださった皆様、申し訳ありませんでした。また、ありがとうございました。

おつとめ品

ヤオコーさんの「おつとめ品」には、いつもお世話になってます。
僕は料理の初心者。何となく「お腹がすいた」に加えて、「気分転換」があって、よく事務所で料理している。
そしたら、何となく面白くなっちゃって、(それに、うまい具合にいくと美味しいし、)レシピサイトによくアクセスするようになった。

そうしたら、「既製品」ではなくて、材料から作ると1/3とか1/4とかの値段で作れることがわかってきて(加工食品会社の皆様、ごめんなさい、喧嘩を売ってる訳じゃありません。美味しいんだけど、金がないから・・・)あ、そうなんだ、収入が少なくても、これなら年金生活でも何とかなるな、なんていう気分になる位、あれも安く作れる、これも安く作れる、みたいな感じでして。
そうなってくると、食材のバリエーションに妙にハマってしまって、ヤオコーさんの「おつとめ品」ワゴンに乗ってる「売れ残り品」に妙に興味がいっちゃって、「80円、買った!」みたいな感じで、ついつい、食べたことはあったけれど、料理の仕方のわからない食材を買うようになった。
そうしたら、なんだか、世界がいきなり広がった感じで、あ、こんなものも作れる、こんなに美味しい、それも、10分とか15分とか、ほとんど時間をかけずに、結構楽しめるようになってきた。なんだか、本当に世界が広がった気がしました。

ただ、ね。気になったのは、その「おつとめ品」の経緯。担当者の方は、売れると思って仕入れたんだろうなぁ。それが売れなかった。廃棄したらゴミになる。でも、僕みたいに試しに買う人間もいる。
ふと、身につまされた。2年位前だったか、それなりに「商談」があって、これなら売れるかと、ほとんど本チャん納入可能くらいの勢いで「サンプルプログラム」を書き続けたのに、8ヶ月間の間に、5本くらいはサンプルアプリを書き下ろしたのに、一本も「ビジネス」につながらなかった。商売の難しさ。「営業力」って、すごく大切なんだな、と身にしみた。
本当にごめんなさい、本音を言わせて貰えば、僕は技術屋で、「無」から「有」を生み出す仕事をしているつもり。何もないところから、「価値」のあるものを作りだす、それが技術屋の真骨頂であり、プライドだと思っていた。「営業屋」なんてさ、手八丁口八丁で、右から左にものを動かすだけで金をピンハネしてる奴らだ、みたいな認識を、結構長い間持っていた。独立してから、多少その認識が変わりつつあったけれども、やっぱり、「技術屋の誇り」(つい、「埃」になりかけたけど、僕の場合がそっちかなぁ)にしがみついて、意味のない「優越感」みたいなのがあった。それが、あの8ヶ月で、砕け散りました。売れなきゃ、それは「仕事」じゃない。

とにかく、誰かに試してもらわないと、「仕事」にならない。
あの、8ヶ月間の悪夢が、後になって、流動資産が枯渇しかけてから、じわじわと、のしかかっている。サンプルプログラムを、書いても書いても、エンドユーザさんに見てもらう機会さえない。「商談の打診」があるから、言われるままのスペックのプログラムを書き続けた。それなのに、披露する機会、クライアントさんに見てもらう機会すらない、お蔵入り。(しかもね、Python/Djangoに乗り換える前の、Ruby on Railsのアプリだから、使い回しもできない。)

その反動で、もう、片っ端から食らいついて、全部「やります」と、そんな感じになった。今度は、クライアントさんとお話する機会を持たせていただいた。「それならできる」というスタンスで聴いていたら、なんだか、スペックが膨れ上がって、すごいことになってしまった。(松尾くんを巻き込んじゃって、申し訳ない。)納期がキツいのは、僕自身の責任。「それは、納期的に、金額的に無理です」という一言がどうしても言えない。作ることができると思うから「できます」とは言うんだけれども、やっぱり、「ビジネス」を知らないんだろうなぁ。(その指摘は、20年も前に、親しい同僚に言われたよ。)なんで、こんなに「学習」できない!?

なんだか、あれ、「山田うどん」で(埼玉県民以外の皆様、ごめんなさい)税込み280円に釣られてお店に入って、素うどんを食べるつもりが、メニューを見ている間に、あれもこれもで、結果的に、あれこれ頼んで食って、精算したら700円になってた、みたいな感じで、僕の場合はその逆。「280円」で興味を持っていただいて、その後、あれも、これもに、価格の上乗せができないまま、全部乗せを「素うどん」の料金で提供せざるを得ない感じかな、なんて思ってしまった。(いや、2倍くらいなら、全然構わないけど。)何だかなぁ、営業交渉が下手なんだわ。わかってるのに、やっちゃう。ボヤクのはおかしい。僕が悪い。そうなんだけど、やっぱり、シンドイ。(松尾くん、ごめん。)しかも、ついうっかりバグを出して、卵の殻が「うどん」に乗ってたら、相手によっては「全額返金」になっちゃうのかも。全額返金ではないとしたら、ありがたいけれども、基本は「素うどん」のつもりだった、ってのは、気持ちとしてはわかって欲しい気がする。

買う側からしたら、あの「おつとめ品」シールは、ありがたいし、その「おつとめ品」シールを貼って回る方々は、きっとパートさんとか何だろうなぁ。何の躊躇いもなく、仕事としてシールを貼って、少しでも「食品廃棄」を減らすのに貢献しているんだろうと思う。だけど、その商品を仕入れた方が、そのシールを貼る現場を見たなら、どれほど辛いか。なんてことを、つい考えてしまった。読み違い。方針設定の誤り。色々あるから、仕入れ担当者の方とか、さらには、店長さんとか、結構悔しかったり、辛かったりするんかなぁ、なんてことを、ついつい考えてしまった。(いや、サラリーマンに徹している方々なら、何も思わないのかも。つい、自営業の感覚を、被せてしまった。)

何だかなぁ、何かって言うと、ついつい考えてしまう。考えることをやめたらいいのにと、何度となく思う。でも、きっと、考えることをやめたら、プログラマの商売は成り立たないし、でもつい、何かあるたびに考え込んでしまう。この辺は、「変わりたい、何も考えたくない」願望は、諦めた。ヤオコーさんで、「おつとめ品」に食指を伸ばしただけなのに、何で、こんなにドンヨリしちゃったんだろう。何だかなぁ、もっと、純粋に、「ビジネス」に直結することだけに「考える」行為を集中できたらいいのに、なんてことは、そうだよなぁ、もう、何千回考えたかわからない。

ごめんなさい、本気でボヤきました。つい、ドンヨリしてしまった。
心から頼れるパートナーが欲しい、なんて言いかけたけれども、それは違うかも。自力でなんとかしないと、出口は見つからない。自分をどう変えるか、なんだろうなぁ。考えるべきこと(プログラミング)を考えるように、自分を仕向けられない、なんてこともある。馬鹿だよなぁ。瞬間湯沸かし器だから、訳のわからん話題に、すぐに口を突っ込む。もうちょっと若かったら、昔の僕の「営業マン蔑視」の態度を改めて、新人のつもりの武者修行で、どこかの会社の「営業マン」として経験を積む、なんてこともできたかも知れないけれど、この歳になっちゃうと、逆にもう、その余裕はない。です。

全然、学習できてない。答えは出てないけど、とにかく、一度でも自分が口にしたことは、コツコツと頑張る。それしかない。メンタル的には、もう、相当にテンパってるけど。

お読みいただいた皆様方、本当に、ごめんなさい。訳のわからないこと、買いちゃって・・・(たかが、「おつとめ品」を手にしただけで、これですから・・・人間が腐ってますので、気にしないでください。)

塩抜き

バグってるとのご連絡。おかしいなぁ・・・再現しない。データ処理でのif / else絡みか、フラグ値の処理か・・・。

まず、同じ現象が起きるデータを作ります。

色々と思うところはあるけれども、見苦しいから書かない。
ゴーンさんみたく、なりたくないし。

何となく、食後3〜4時間でもうお腹が空く。1日千歩歩いてないだろうなぁ。こんなに体を動かしていないのに、なんで?以前は、ブルボンのお菓子4種類くらいの詰め合わせがお気に入りで、よく食べていた。ところが、そのうち、靴紐を結ぼうとしたらお腹が邪魔になって、これはヤバイと。あの辺のお菓子は卒業しました。時々買いたくなるけど。

そのうち、農協で買ってきた野菜を、浅漬けにしたり、ぬか味噌に漬けて、ポリポリ食べたり、甘いものの代わり。不思議なことに、ニンジンとかキャベツでも、食べると空腹感が和ぐ。

バグの連絡を受けて、しばらく煮詰まってた。癒されたいなぁ、なんて思って、ぬか床をかき混ぜたら、中に漬けたまま忘れていたタクアン発見。三日くらい前に入れた奴だ。ここんところ、ぬか床を見てなかった。試しに、一切れ食べてみた。しょっぱ!

ある人から、「塩抜き」を教えてもらった。薄い食塩水にしばらく置いておくと、塩が抜ける。前は、そんなこと知らなかったから我慢して食べてたけど、すごい塩分摂取量だったんだろうな。冗談みたいな血圧の値になったのは、漬け過ぎたぬか漬けのせいか。

この空腹感をどうするか。とりあえず今は、靴紐は結べる。(当然でしょうが。何を基準にしてるんだ。)甘いものはやめておこう。野菜、漬け物?塩分が・・・血圧がかなり高い。ドロドロのメタボ。走りに行きてぇ・・・ただ、短納期の仕事が連続で入っていて、僕自身がもう、パソコンの付属物状態。1日千歩も歩いてない。この状態が、あと半年くらいは続くかも。

タクアンはいいですよね。ちょっと薄めの塩水に浸しておくと、塩が抜ける。体は、そういう訳にはいかなそうだ。脂肪も抜きたい。それよりも、動きたいし、走りたいかなぁ。
どこかで、仕事を止めて、走ったり体を動かしに出ないと、これはかなり、ヤバイかも知れない。

体を動かしていないと、血の巡りも悪くなってるのかも知れない。コードを読んでいても、頭があまりスッキリしない。朝方、同じ暖房でも寒く感じる。めちゃくちゃ代謝が落ちた。どこかで、何か、方法を考えないと・・・でも、時間との競争なんだよなぁ。

松尾くんとの合作だけれども、テーブル数49、帳票6、URIの数が57、アクションの数はまだたぶん2割くらい増える。これを着手から3ヶ月で仕上げて納品。テストも十分できないから、どうしてもしばらくはバグの連絡が入る。
地獄だ。目標は、半年後も生きていること。

訂正

なんだか、本当にどうでもいい(いや、どうでもいいと思っているのは自分だけで、実は結構、大事なことかも知れないけれども、そういう)ところで、自分が書いてしまった内容について、後から、「あそこ、違ってた」というのを思い出すことがあったりしてます。(そのセンサーが働かなくなったら、僕はもう、書くのはやめる。)

ゴーンさん関連で、日産にいた友人から聞いた話について書いた、ここ。

もう一つ、彼から聞いた話を思い出した。
研究開発部門で、5万円だか、10万円だかの備品を購入するのに、「ゴーン前」はざっと30個程度の「承認印」が必要だったらしい。担当部門の主任、係長、課長補佐、課長、経理部門の誰それ、工場の誰それ、30個?よくわからんけど、まさか社長決済じゃないだろうな、とは思うんだが。

金額は、5万円だったと思う。この時の会話の情景を、かなり鮮明に思い出した。承認印の数は、30個ではなく、15個だった。訂正します。

こんなどうでもいいこと、とか思うんだが、とにかく、気づいた間違いはその場で訂正しておきたい。いや、何がどこでどう、「地獄での長逗留」の原因になるかわからんし。特にこれって、僕の「話を盛る癖」が原因かも知れないから。

本当に、結構な勢いで「話を盛って」いる気はする。ただ、これを書いた時の自分の心境としては、「すごい個数だったよな」というあやふやな記憶から、あれ、15個だったっけか?それとも30個、みたいな感じで、記憶を完全に辿り切れないまま、30個と言葉にしてしまった。
もし、100個って書いていたら、逆に訂正する必然性は減っていたかも知れないけど。それでも、100個って書かれていると、何も疑わずに信じちゃう人が、世間には結構いるっていうことも、最近理解して来たので、全ての過ちは訂正すべきなのかも知れない。

結構、この類の、ほんの些細な「話の盛り方」が、周り回って、誰かを致命的に追い詰めたりする結果になったりすることって、あったりする気がする。「あいつってサァ」みたいな感じで、相当に適当なことを言ってしまった挙句に、その「立てた噂」が一人歩きして、みたいなケース。「加害者側」に回ったことがどれだけあったか、思い出し切れていないけれど、「被害者側」になったケースは、いくつか思い出せる。もう、今更訂正してもらわなくても構わないけど。
すごい話になると、誰かが適当に言った内容が、誰も検証せずに「歴史」になっちゃったりして、しかも教科書に掲載されたりしているし。僕は、そこまで酷いことはしてない、と思いたい。

こうした人の心に関する問題。誰かにつけてしまった「心の傷」に、自分で気付いていなければ、本人がそれに気付くまでは地獄から上がれない、らしい。というのは、その経緯を(どこかのローティーンの女の子も書いていた)「上の世界」の住人は見ていて、自分では「問題ない」と思って上に戻っても、上ではそれを見て知っているから、本人が気付くまで相手にしてもらえない。あまりの居心地の悪さから、結局自分から「地獄」に下りるしかなくなる、そういうものらしい。
こいつ、訳のわからん事を書いてるな、と、お思いでしょうね。でも、僕は、誰かから聞いただけではなく、自分が直感した内容の説明を聞いて、合点がいった。
もし、そうした「仕組み」を全否定したとしても、「いい加減な発言」を訂正する事で、今生きている僕自身の友人、知人に「迷惑」をかけることが減れば、僕は多少、胸を張って堂々と生きていける。そんな気がしたから、こんな「世界の仕組み」なんてものがないとしても、やはり、「間違い」は訂正しておきたい。

たかだか、30→15の数字の訂正だけなのに、言ってることが、くどいし、長いな。すみませんね。この僕の性格は、たぶん、体に染み付いているから、直しようがない。

くどいページに付き合わせてしまって、(訂正すべき内容を書いてしまったことも含めて、)申し訳ありませんでした。ごめんなさい。

もう一つの可能性

このページで書いた、不正アクセス。

http://www.signalysis.co.jp/blogs/tech/2020/01/02/200102/

基本的には、それほど高度なテクニックを使っている訳ではなく、常識的なセキュリティ設定の範囲で十分にブロックできるとは思うから、気にしないで忘れたらいい、とは思ったけれども、何か、ずっと引っ掛かっていた。

こういう気になることがあると、結局目の前の、今片付けなければならない仕事に集中できなくなる。
本当に悪い習性だ。今まで、どれだけこのせいで失敗して来たか。仕事の優先順位の付け方がおかしい。自覚してるのに。
できることは、とにかく、考えられるだけ考えて、「引っ掛かっている内容」の正体を見つけて、自分なりの結論を出したら、さっさと意識の中から追い出してしまって、目先の仕事に集中することかな、なんて思った。

で、China, Jiangsu, Wuhanと、China, Jiangsu, Nanjingからのアクセス要求、一貫してrootのユーザ名で複数のポートにアクセスしに来ているけれども、ポートを探していると最初は思っていた。ただ、もしポートを探すならば、同じポートを複数回アクセスするということはないと思った。また、一件ランダムに見えるポート番号にも実は意味があるとしたら、どんな意味か。
で、自分が考えたのは、まず、複数回しつこくアクセスしに来ているのは、「電源が切られていたら応答できないから、繋がらなくても再び時間を置いて、同じ場所にアクセス要求をかけている」ということかな、と思った。だとしたら、応答しない、か、接続できない我が社のサーバに、しつこく何度でも接続要求を投げている理由が説明できる。

それならば、rootと、今回繰り返しているポートは何なのか。どこかに、rootで、そのポートで応答するマシンが存在しているはずで、そのマシンがどのIPで接続できるかを探している、と考えると、いわゆる「踏み台探し」とか、セキュリティの甘いマシンを探し出してランサムウェアを仕掛けたり、クレジットカード番号や個人情報などを盗んだり、というのとは目的が違うということになる。それなら、このアクセスパターンの説明がつく、と思った。

つまり、バックドアを仕掛けたマシンが世界中に散っていて、それを探しに来ている、という可能性があると自分は考えた。
某国では(今更匿名にする意味があるのか?)大量の借款を世界中にばら撒き、「経済支援」を行い、その際に、某社製の通信機器を使うように強く勧めているというニュースがあった。推測に過ぎないけれども、経済支援を行った相手に、通信機器を使わせる、それらの通信機器は当然中央官庁などの政府機関で使うことになるんだろう。民間企業に押し付ける、ということは考えにくい。もしくは、政府の息のかかった外郭団体などということになるかも知れない。それらの通信機器にバックドアが仕掛けてあれば、実質的にその国の国家情報のかなりを吸い上げることができる。もしくは、webカメラのような監視機器かも知れない。世界中の監視映像を、盗み見ることができる。

そのための、接続要求ではないか、と考えると、このアクセスログのパターンの説明がつくような気がした。

私の知人の「防犯カメラ」の向きが、朝見たら変わっていた、というのは、もしかしたら、このアクセスがあったのかも知れない。「防犯カメラ」は、ファイアウォールの内側に設置して、スマホなどで接続する際にはVPN経由とかにしないと、このアクセスの餌食になるかも知れない。けど、通常はデフォルトで「出来合いのサーバ」経由でアクセスするんだろうなぁ。何よりも、まず、国内で流通している防犯カメラや通信機器などを全機種、リバースエンジニアリングしてカーネルのプログラムをチェックし、バックドアの存在の有無を検証しないと、某国のスパイ活動の餌食になる気がした。膨大な数の機密情報が某国に流れる。なんて、一旦は考えた。
でも、よく考えてみたら、そんな簡単に「証拠」を掴まれるようなことをするだろうか?だとしたら、出荷時の「デフォルト」のまま使われているマシンを探している、ということも考える。それならば、デフォルト設定から変えてしまえば、バックドアと違って、rootのユーザ名を変えるだけでブロックできる。それならば、まずは安心ということになるだろうか。ここから先は、この不正アクセスを繰り返している人に聞かないと、わかりませんね。

この「目的」についての推測は、可能性に過ぎないけれども、1日に1500回を超える不正な接続要求が中国から来ていることは、事実だし、おそらく、私の会社のサーバだけではなく、多くのサーバに同じような「接続要求」が飛んできているはずだという気がする。現場のエンジニアは知っていたとしても、影響とか、対策について、認識の甘い人たちも少なくないんじゃなかろうか。

30年前にも同じことを騒いだ覚えがある。「その気さえあれば、簡単に侵入できるマシンが、ゴロゴロしている。」物理的に無理だと思えたのは、専用回線を使用しているシステムくらいで(ルパン三世は、電話線に何かタッピングしていたけど・・・)、20〜15年位前になると、無防備なWiFiルータでは、クレジットカード情報なんかも平文で飛び交っていて、大企業の近くや住宅街で、開発者向けのネットワークモニターで電波を拾えば、1日に何十組だってクレジットカード情報や社内情報が拾えただろうと思う。今は、WiFiでも、無料の公衆LANなどを除いてごく初歩的な接続認証がかかっているから、昔ほど簡単ではないとは思う。だから敢えて今初めて「こうすれば盗める」と言う話題を書いたけれども、「その気があるならできる」ということは、技術屋には常識だったと思う。そして今は、実際に「その気がある」人が大勢いるということなんだろう。

こんなことを書く私が「超危険人物」だったでしょうか?そういえば、「悪いことをしていないのなら、何をどう盗み見されたって平気はなず。」なんて言う人もいた気がする。そうかなぁ。そう言うことを言う人には、だったら、トイレも、風呂も、寝室も、何から何までガラス張りの部屋で生活してみな、なんて言いたかったけれども。・・・いかん、いかん、このまま「こっちの話題」にブレると、またフラッシュバックを起こす。別の流れで仕事ができなくなる。
もう、十分に消化したはずなんだけれども、やっぱり、体が重くなって、動きも悪くなるし、思考停止に近くなる。何もしたくない、「ただ生きているだけモード」に切り替わっちゃうから、この話は終わり。

でも、改めて思う。やっと話が通じる時代が来た。言っていることを理解してもらえる時代が来た。
これは、僕にとって喜ばしいことかも知れない。理解してもらえる、と言うのは、無条件に嬉しい。そう考えるべきなんだろうな。

これで、この話題は打ち切る。どれだけサーバに不正アクセスがあっても、うちのサーバとか、僕や松尾くんがセットアップするお客様のサーバには、絶対に不正侵入はさせない。今僕が考えるべきことは、ただそれだけなんだろうと思う。以上。

認証系

面倒な時代になった。

昔だったら、「ID」と「パスワード」の入力を求めて、IDが違っていたら「IDが違います」と表示し、IDが合っていて、パスワードだけ違ったなら、「パスワードが違います。」と表示するのが親切だった。
ところが、今、こんな画面表示をしていたら、(というか、そういう応答を返していたら、)「あ、パスワードは違うけれど、IDは合ってるな」と、推測されてしまう。だとしたら、そのIDに対するパスワードを、今度は同じID(ユーザ名)で、パスワードだけ変えて接続要求を繰り返せば、いい、ということになって、不正侵入に一歩前進されてしまう。そうなると、「IDまたはパスワードが違います。」と、どちらが違っているか伏せた応答を返すしか、セキュリティレベルを考えたなら、方策がない。

おそらく、だけれども、中国の、というか、アクセス元が中国なだけで、中国の国家とは思えない気がした、そのアクセスは、Vodafoneと使い分けていた、ということは、ひとつ前のページで騒いだ中国サーバも、そのIP利用の個人設置である可能性が高い気がするし、もしかしたら、あれほど、必死になっているということは、中国が容認している某国の出稼ぎ労働者か、もしくは、中国が中継ノードを提供している某国のハッカー集団の一人の、ノルマ稼ぎかも知れない気がするけれども、相手が誰であれ、こちらとしてはブロックする以外に方策はない。

ログを眺めていて、感じたことがある。この「不正アクセス」のプログラムを書いた人たちの技術レベルは、それほど高くはない。力任せに、手当たり次第に「隙のあるサーバ」を狙っていて、実際に、隙だらけのサーバがあちこちにあるから、うまくしたら、容易にハッキングできてしまう、という、ただ、それだけのことなのかも知れないと思った。細かい根拠は、色々とあるけれども、知ってる人は誰でも知ってるし、基礎知識のない人に書いても、ほとんど意味がないので割愛する。なんだかなぁ、どのアクセスも、20代の若い盛りの「ネットワークを勉強しました、あれ、こんなことができるかも」で悪事を働き始めたガキどもの仕業、という気がするんだけれども、どうなんだろうか。実際に、日本だの、アメリカだのが、サーバー防衛軍を設立するだのと大騒ぎしている、「仮装敵」の「ハッカー集団」も、力任せに悪事を働いているだけで、それほど技術力が高い訳じゃない気がする。アメリカなんて、とっくに気付いていて、防衛予算をトランプに出させるために、「敵」を誇大に吹き込んでいるんじゃないか、という気もした。

その一方で、そのガキどもに、簡単に侵入を許すサーバも少なくないんだろうな、とも思った。まず、スカスカのrootのパスワード。だって、rootのパスワードを「root」にしておくなんて、「鍵をなくしたら家に入れないから」って言って、鍵のあるドアノブに、その鍵をぶら下げておくみたいなもんで、やめろ、って言いたかった。
それを30年前に強硬に主張したもんだから、僕の訳のわからない人生の「転機」が訪れた。本当に、今でもトラウマになってる。ただ、感謝すべきかなと思うことにしている。おかげさまで、マスターベーションを全世界に実況中継されてもビクともしない程度のメンタルが、鍛えられたのかも知れない。その境地に至るまで、滅茶苦茶騒ぎ続けたけれども。ゴーンさんがいうところの、「日本の、基本的人権を無視した司法制度」的な発言には、一部共感している。あれは、国家権力とマスメディアによる、集団リンチに近かった気がする。もう、今となってはどうでもいいけど。
話を戻す。

もうちょっと、リスクに対する認識を改めるべきだ。って、30年前から、どれほど、まずボヤき、部屋の中で走り書きして、次はネットに書き始め、たぶん、もう、4000ページくらいは書いている気がする。1ページが、ざっくりと平均3000文字を超えてるから、どれくらい書き殴ったんだろうか。でも結局、意味ねぇなぁ。
例えば、グレタ・トゥーンベリさんなんかが、国連演説をしたって、日本の経産大臣は(また蒸し返しているけど)「石炭火力を温存したい」でしょ?東大の、実績ある教授が、原発の下に活断層がある、って言って、NHKの取材でそれを話したって、全部カット。公式記録には「活断層の存在は確認できない」とかになったんだっけか。こんな国、勝手に潰れろ、なんて気分になってくる。福島級が、もうあと2回くらい、福井とか、愛媛とか、あちこちで起ってから、それでようやっと、「原発は、リスクが大きすぎる」なんていうことになるのかなぁ。日本の国土の1割くらいが「居住不能地域」にならないと、「この程度は問題ない」ってな認識なのかも知れない。原発関連事業者と国家公務員にとっては。もう、諦めるしかないね。
人を撥ねて、あるいは、轢き殺してからでないと、「君の運転は、危険だね」という指摘に聞く耳を持つようにならない。だったら、指摘したって、意味ない。それが、「既得権」に縛られた某政党の政治なんじゃないかと、僕は思うけれども、僕はもう十分生きたから、あとは、若い人たちが勝手に、その結果を浴びてください。若い人たちが政治を変えようとしないのなら、僕の知ったこっちゃない。
全然、話が戻ってない。今度こそ、戻そう。

以前、アメリカが某国の、某通信機器メーカの製品を名指しで非難した。その根拠がなかったと思えるだろうか。おそらく、通信屋のいわゆるところの「バックドア」が仕掛けられていた証拠は、押さえていたんじゃないか、という気がする。
前にも一度書いた。私の知人が、その某国産の安い「監視カメラ」を事務所に設置していたところが、ある朝みたら、カメラの方向が変わっていたらしい。間違いなく、遠隔操作されていたと思ったらしい。正直な話、僕は某国製の通信機器、あるいは、某国製の通信制御CPUが入っている機器を使う気に、なれない。いや、私生活がどうこうなんてのは、気にしない。でも、仕事の話が漏れるのは、取引先に迷惑がかかる。

正規の通信機器や、プロバイダを利用して「不正」を試みても、できることには限界がある。そんな、大袈裟に「サイバー部隊創設」なんてやらなくたって、丁寧に細かく対処していけば、大した金をかけなくたって防御できると思う。アメリカも日本も、民間人の無知を利用して大騒ぎして予算を取ることだけは得意みたいだから、もう何も言いませんが。
ただ、国家ぐるみの犯罪で通信機器自体にバックドアが仕掛けられていたら、この防御は困難を極めると思う。

確か日本には、「消費生活センター」とかあって、家電製品とかの安全性をテストしていたような気がする。似たような「通信機器安全センター」みたいなのを創設して、日本国内で流通している全ての「通信機器」を、最低3台は納入させる法律、っていうか、あるいは、業界団体の協力が得られないならば、最低3台は国家予算で購入して、「リバースエンジニアリング」が可能なように、ストックしておくべきじゃないか、なんて思った。
3台と言うのは、1台はそのまま保存する。1台は、CPUを外して、ICE(In Circuit Emulator)を繋いで、CPUの周辺機器にバックドアを仕掛けたプログラムが記録されていないか、読み出す。その際に外したCPUが生きていて、そのCPU単体を検査できるならば、そのCPU内部のフラッシュメモリ領域のプログラムを吸い上げる。もし、非破壊的にCPUの取り外しができないならば、3台目を利用して、CPU内部のプログラムを調べる。

なぜ、フラッシュメモリ領域と書いたか。もし、僕が、通信機器にバックドアを仕掛けるならば、「通信機器」は必ずネットワークに接続されるから、万が一の際には「証拠を隠滅」するために、バックドアを仕掛けたプログラムを、「まともなプログラム」に「更新」させる仕掛けも、同時に仕込むだろうと考えたから。それを見越した上で、犯罪の証拠を押さえるなら、ネットから切り離した環境で、CPUを動作させ、CPU自体の機能を使って、フラッシュ領域のプログラムを吐き出させる必要があるかな、と考えた。そう考えたら、やはり3台は必要かなと思った。

きっと、国内の通信機器メーカーからは反発があるだろうし、アメリカの企業からも反発はあるかもなぁ。だったら、いっそのこと、「国連人権監視委員会」の下部組織か何かで、「通信機器不正防止委員会」とか(名称は適当)を作って、そこに、全世界で利用されている「通信機器」を3台程度納入させ、例えば、その通信機器の内部に、外からの、例えば、中国国内の特定のIPからのアクセスに対しては、あるいは、特定のIDやパスコードを持ったアクセスに対しては、通信データをduplicateして、不正に送信する機能がプログラムされていないか、徹底的に検証する、そうした委員会を設置したっていいんじゃないか、と言う気がする。
その某国が、国際援助との抱き合わせで、被援助国にその通信機器を使うように迫っていたとしたなら、その国際援助を受けた国の国内情報は、全てがダダ漏れで、その某国に流れていくと思って間違いない気がする。
それを防ぐためには、国連などの下部組織で「通信機器の不正」を検証する目的で、数台のマシンを納入させ、コードを丸裸にして、不正がないことを検証するプロセスが必要になる気がする。

僕自身は、某国の通信機器をどうしても信じられない。安倍総理が、IRと同様に、金をつかまされていないか、不安でならない。
どこまで、「不正のない機器」を前提として、「通信の秘匿という安全を確保」できるのか。疑問でならない。国を敵に回したら、携帯電話での通話なんて、全部傍受されますからね。

別に、某国で、政府監視下にある「特定のアプリ」を使わないと、行政サービスすら受けられない、そんなことは、世界中の誰にも関係がないことだけれども、某国の通信機器を使ったなら、国家機密が某国に全部流れる、それは、あってはならないことのように、私には思える。

日本については、・・・どうでもいいけど。(昔のことを思い出した。)
やっぱり、どうでもいいや。もうこれ以上、この話題は、僕の人生には関係ない。何を書いたって、意味がない。なんか、そんな気がした。
(一番キツイ、トラウマの根っこに、自分で好き好んで首を突っ込んじゃった。)

無差別攻撃

年末年始の三日間の間に、(まだ、設定中のサーバへの)rootの接続要求が数千回に達していた。たった三日のログが30000行。
まだ、sshはデフォルトポートのまま動作させていた。
但し、暗号認証の設定は済ませている。

最後に、ログの一部を掲載します。(我がサイトに関する情報は、伏字にしてます。)

接続要求があった相手のlocationは、以下の通り。(最後に、一覧を添付します。)
Vietnam, United States, France, China, -(Amsterdam), Germany

【簡単な傾向分析】

1. 中国からの接続要求は、三日間に5000回以上。ポート番号を変えながら、一貫して root での接続を試みている。
Jiangsu, Nanjingからの接続要求と、Jiangsu, Wuhanからの接続要求は同時には来ていない。(その双方を、切り替えながらアクセスが続いている。)
→ rootで接続可能なポートを探しに来ている。
これで、もしポートが見つかったなら、次は、rootのパスワードを変えながら接続を試すんだろうと思う。
全く諦める気配がなく、延々と接続要求を繰り返している。

2. Franceからの接続要求は、ユーザ名piで繋いできて、数回失敗した後、次を試していない。
→ IOTで使われている Raspberry Piが、デフォルトのままネットに繋がれているものを、探しに来ているように見える。

3. ベトナムからと、オランダからの接続要求は、ユーザ名そのものを、root, admin,11111などと変えながらリトライして、一通り試したら諦めている。

4. アメリカからの接続要求は、たった1行、 connection closedの記録があるだけ。何しに来たんだろう?pingを打つとこのログが残るの?

5. ドイツからの接続要求は、アクセスがある間は中国からの接続要求が止まっている。どういうことなんだろうか?
———————
こういう情報を、分析機関なんかに寄せていくと、ネット犯罪の抑止に使えるんじゃないかと思った。

中国からの侵入の試みが、とにかくしつこい。
ポート番号をデフォルトから変えたとしても、これだけしつこく変えて接続を試みてきたら、いつかはポート番号が見つかる。

ただ、rootのユーザ名をrootで接続しに来ているから(うちのrootの名前は、rootではないし、adminでもないけれど、あまり凝ってはいないから、第三段階くらいで破られるかも知れない、)rootユーザの名称を、思いっきり凝ったものにするのも対策の一つかも知れない。
ただ、パスワード自体は、かなり破りにくいパスワード(チェッカーで見ると、最高難度になってた)だから、当面は、この程度の侵入試みなら、ブロックできている気がする。でも、油断はできないなぁ。なんせ、ずっと、延々と破りに来ているから、どこかで「偶然」があるかも知れない。

それ以前に、rootでのログインを禁止して、sudoersの設定で、2段階のログインを要求するようにすべきなんだろう。
うちは、まだ設定していないけれども、パスワード入力要求も停止すべきで、全て暗号鍵だけの接続認証にすべきなのかも知れない。

IOTのRaspberry Piにしても、ちょっとしたサーバにしても、これ、対策しないと、どこかで破られる気がした。デフォルト設定のRaspberry Piなんて、丸裸だろうなぁ。

接続を認めるIPアドレスに制限をかける、とかしないと、ならないけれど、どこかでちょっと「うっかり」があると、自分たちでも繋げなくなっちゃうものなぁ。

嫌な世の中だ。

以下、分析材料の生ログの抜粋です。

三日間に接続要求のあったIPアドレス

IP Address 27.78.14.83, 27.78.12.22
IP Reputation Check abuses from 27.78.14.83
NetRange 27.64.0.0 - 27.79.255.255
Organization Viettel Group
Name VIETTEL-VN
Geolocation Vietnam, An Giang, Hanoi
---------------
IP Address 159.203.193.44
IP Reputation Check abuses from 159.203.193.44
NetRange 159.203.0.0 - 159.203.255.255
Organization DigitalOcean, LLC
Name DIGITALOCEAN-12
Geolocation United States, California, San Francisco
---------------
IP Address 90.93.167.228
IP Reputation Check abuses from 90.93.167.228
NetRange 90.93.160.0 - 90.93.167.255
Organization POP Nantes
Name IP2000-ADSL-BAS
Geolocation France, Rhone-Alpes, La Roche
---------------
IP Address 218.92.0.205
IP Reputation Check abuses from 218.92.0.205
NetRange 218.90.0.0 - 218.94.255.255
Organization CHINANET jiangsu province network
Name CHINANET-JS
Geolocation China, Jiangsu, Nanjing
---------------
IP Address 112.85.42.195
IP Reputation Check abuses from 112.85.42.195
NetRange 112.80.0.0 - 112.87.255.255
Organization China Unicom Jiangsu province network
Name UNICOM-JS
Geolocation China, Jiangsu, Wuhan
---------------
IP Address 45.141.84.25
IP Reputation Check abuses from 45.141.84.25
NetRange 45.128.0.0 - 45.159.255.255
Organization RIPE Network Coordination Centre
Name RIPE
Geolocation 
 OrgId: RIPE
 Address: P.O. Box 10096
 City: Amsterdam
---------------
IP Address 178.6.196.33
IP Reputation Check abuses from 178.6.196.33
NetRange 178.6.0.0 - 178.6.255.255
Organization Vodafone D2 GmbH
Name VFDE-DSL-NET20
Geolocation Germany, Nordrhein-Westfalen, Übach-palenberg
---------------

アクセスログ(生データ)の抜粋

Dec 30 10:01:18 xxxx sshd[6520]: Invalid user Management from 27.78.14.83 port 36986
Dec 30 10:01:18 xxxx sshd[6520]: pam_unix(sshd:auth): check pass; user unknown
Dec 30 10:01:18 xxxx sshd[6520]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=27.78.14.83
Dec 30 10:01:20 xxxx sshd[6520]: Failed password for invalid user Management from 27.78.14.83 port 36986 ssh2
Dec 30 10:01:21 xxxx sshd[6520]: Connection closed by invalid user Management 27.78.14.83 port 36986 [preauth]
Dec 30 10:02:26 xxxx sshd[6524]: Invalid user ftpuser from 27.78.12.22 port 53194
Dec 30 10:02:26 xxxx sshd[6524]: pam_unix(sshd:auth): check pass; user unknown
Dec 30 10:02:26 xxxx sshd[6524]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=27.78.12.22
Dec 30 10:02:28 xxxx sshd[6524]: Failed password for invalid user ftpuser from 27.78.12.22 port 53194 ssh2
Dec 30 10:02:29 xxxx sshd[6524]: Connection closed by invalid user ftpuser 27.78.12.22 port 53194 [preauth]
Dec 30 10:03:22 xxxx sshd[6531]: Invalid user admin from 27.78.14.83 port 48942
Dec 30 10:03:22 xxxx sshd[6531]: pam_unix(sshd:auth): check pass; user unknown
Dec 30 10:03:22 xxxx sshd[6531]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=27.78.14.83
Dec 30 10:03:24 xxxx sshd[6531]: Failed password for invalid user admin from 27.78.14.83 port 48942 ssh2
Dec 30 10:03:25 xxxx sshd[6531]: Connection closed by invalid user admin 27.78.14.83 port 48942 [preauth]
Dec 30 10:03:35 xxxx sshd[6533]: Invalid user user1 from 27.78.12.22 port 46296
Dec 30 10:03:35 xxxx sshd[6533]: pam_unix(sshd:auth): check pass; user unknown
Dec 30 10:03:35 xxxx sshd[6533]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=27.78.12.22
Dec 30 10:03:38 xxxx sshd[6533]: Failed password for invalid user user1 from 27.78.12.22 port 46296 ssh2
Dec 30 10:03:40 xxxx sshd[6533]: Connection closed by invalid user user1 27.78.12.22 port 46296 [preauth]
Dec 30 10:04:02 xxxx sshd[6537]: Invalid user admin from 27.78.14.83 port 34470
Dec 30 10:04:04 xxxx sshd[6537]: pam_unix(sshd:auth): check pass; user unknown
Dec 30 10:04:04 xxxx sshd[6537]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=27.78.14.83
Dec 30 10:04:05 xxxx sshd[6537]: Failed password for invalid user admin from 27.78.14.83 port 34470 ssh2
Dec 30 10:04:07 xxxx sshd[6537]: Connection closed by invalid user admin 27.78.14.83 port 34470 [preauth]
Dec 30 10:04:32 xxxx sshd[6540]: Invalid user admin from 27.78.12.22 port 45022
Dec 30 10:04:32 xxxx sshd[6540]: pam_unix(sshd:auth): check pass; user unknown
Dec 30 10:04:32 xxxx sshd[6540]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=27.78.12.22
Dec 30 10:04:34 xxxx sshd[6540]: Failed password for invalid user admin from 27.78.12.22 port 45022 ssh2
Dec 30 10:04:35 xxxx sshd[6540]: Connection closed by invalid user admin 27.78.12.22 port 45022 [preauth]
Dec 30 12:34:45 xxxx sshd[7097]: Connection closed by 159.203.193.44 port 32906 [preauth]
Dec 30 13:05:38 xxxx sshd[7203]: Invalid user pi from 90.93.167.228 port 49800
Dec 30 13:05:38 xxxx sshd[7204]: Invalid user pi from 90.93.167.228 port 49816
Dec 30 13:05:38 xxxx sshd[7203]: pam_unix(sshd:auth): check pass; user unknown
Dec 30 13:05:38 xxxx sshd[7203]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=90.93.167.228
Dec 30 13:05:38 xxxx sshd[7204]: pam_unix(sshd:auth): check pass; user unknown
Dec 30 13:05:38 xxxx sshd[7204]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=90.93.167.228
Dec 30 13:05:40 xxxx sshd[7203]: Failed password for invalid user pi from 90.93.167.228 port 49800 ssh2
Dec 30 13:05:40 xxxx sshd[7204]: Failed password for invalid user pi from 90.93.167.228 port 49816 ssh2
Dec 30 13:05:40 xxxx sshd[7203]: Connection closed by invalid user pi 90.93.167.228 port 49800 [preauth]
Dec 30 13:05:40 xxxx sshd[7204]: Connection closed by invalid user pi 90.93.167.228 port 49816 [preauth]
Dec 30 15:33:45 xxxx sshd[8214]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=178.6.196.33 user=root
Dec 30 15:33:47 xxxx sshd[8214]: Failed password for root from 178.6.196.33 port 38120 ssh2
Dec 30 15:33:47 xxxx sshd[8214]: Connection closed by authenticating user root 178.6.196.33 port 38120 [preauth]
Dec 30 15:33:49 xxxx sshd[8216]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=178.6.196.33 user=root
Dec 30 15:33:50 xxxx sshd[8216]: Failed password for root from 178.6.196.33 port 38192 ssh2
Dec 30 15:33:50 xxxx sshd[8216]: Connection closed by authenticating user root 178.6.196.33 port 38192 [preauth]
Dec 30 15:33:52 xxxx sshd[8218]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=178.6.196.33 user=root
Dec 30 15:33:54 xxxx sshd[8218]: Failed password for root from 178.6.196.33 port 38265 ssh2
Dec 30 15:33:54 xxxx sshd[8218]: Connection closed by authenticating user root 178.6.196.33 port 38265 [preauth]
Dec 30 15:33:55 xxxx sshd[8221]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=178.6.196.33 user=root
Dec 30 15:33:57 xxxx sshd[8221]: Failed password for root from 178.6.196.33 port 38333 ssh2
Dec 30 15:33:57 xxxx sshd[8221]: Connection closed by authenticating user root 178.6.196.33 port 38333 [preauth]
Dec 30 15:33:58 xxxx sshd[8223]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=178.6.196.33 user=root
Dec 30 15:34:01 xxxx sshd[8223]: Failed password for root from 178.6.196.33 port 38412 ssh2
Dec 30 15:34:01 xxxx sshd[8223]: Connection closed by authenticating user root 178.6.196.33 port 38412 [preauth]
Dec 30 15:34:02 xxxx sshd[8225]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=178.6.196.33 user=root
Dec 30 15:34:04 xxxx sshd[8225]: Failed password for root from 178.6.196.33 port 38495 ssh2
Dec 30 15:34:04 xxxx sshd[8225]: Connection closed by authenticating user root 178.6.196.33 port 38495 [preauth]
Dec 30 15:34:06 xxxx sshd[8227]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=178.6.196.33 user=root
Dec 30 15:34:08 xxxx sshd[8227]: Failed password for root from 178.6.196.33 port 38578 ssh2
Dec 30 15:34:08 xxxx sshd[8227]: Connection closed by authenticating user root 178.6.196.33 port 38578 [preauth]
Dec 30 19:05:01 xxxx CRON[9704]: pam_unix(cron:session): session opened for user root by (uid=0)
Dec 30 19:05:01 xxxx CRON[9704]: pam_unix(cron:session): session closed for user root
Dec 30 19:07:35 xxxx sshd[9716]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=112.85.42.72 user=root
Dec 30 19:07:37 xxxx sshd[9716]: Failed password for root from 112.85.42.72 port 11385 ssh2
Dec 30 19:07:41 xxxx sshd[9716]: message repeated 2 times: [ Failed password for root from 112.85.42.72 port 11385 ssh2]
Dec 30 19:07:41 xxxx sshd[9716]: Received disconnect from 112.85.42.72 port 11385:11: [preauth]
Dec 30 19:07:41 xxxx sshd[9716]: Disconnected from authenticating user root 112.85.42.72 port 11385 [preauth]
Dec 30 19:07:41 xxxx sshd[9716]: PAM 2 more authentication failures; logname= uid=0 euid=0 tty=ssh ruser= rhost=112.85.42.72 user=root
Dec 30 19:08:40 xxxx sshd[9720]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=112.85.42.72 user=root
Dec 30 19:08:42 xxxx sshd[9720]: Failed password for root from 112.85.42.72 port 22035 ssh2
Dec 30 19:08:45 xxxx sshd[9720]: message repeated 2 times: [ Failed password for root from 112.85.42.72 port 22035 ssh2]
Dec 30 19:08:46 xxxx sshd[9720]: Received disconnect from 112.85.42.72 port 22035:11: [preauth]
Dec 30 19:08:46 xxxx sshd[9720]: Disconnected from authenticating user root 112.85.42.72 port 22035 [preauth]
Dec 30 19:08:46 xxxx sshd[9720]: PAM 2 more authentication failures; logname= uid=0 euid=0 tty=ssh ruser= rhost=112.85.42.72 user=root
Dec 30 19:14:56 xxxx sshd[9740]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=112.85.42.72 user=root
Dec 30 19:14:58 xxxx sshd[9740]: Failed password for root from 112.85.42.72 port 12264 ssh2
Dec 30 19:15:00 xxxx sshd[9740]: Failed password for root from 112.85.42.72 port 12264 ssh2
Dec 30 19:15:01 xxxx CRON[9743]: pam_unix(cron:session): session opened for user root by (uid=0)
Dec 30 19:15:01 xxxx CRON[9743]: pam_unix(cron:session): session closed for user root
Dec 30 19:15:02 xxxx sshd[9740]: Failed password for root from 112.85.42.72 port 12264 ssh2
Dec 30 19:15:02 xxxx sshd[9740]: Received disconnect from 112.85.42.72 port 12264:11: [preauth]
Dec 30 19:15:02 xxxx sshd[9740]: Disconnected from authenticating user root 112.85.42.72 port 12264 [preauth]
Dec 30 19:15:02 xxxx sshd[9740]: PAM 2 more authentication failures; logname= uid=0 euid=0 tty=ssh ruser= rhost=112.85.42.72 user=root
Dec 31 02:39:17 xxxx sshd[14078]: Disconnecting invalid user admin 45.141.84.25 port 52018: Change of username or service not allowed: (admin,ssh-connection) -> (root,ssh-connection) [preauth]
Dec 31 02:39:21 xxxx sshd[14080]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=45.141.84.25 user=root
Dec 31 02:39:24 xxxx sshd[14080]: Failed password for root from 45.141.84.25 port 33965 ssh2
Dec 31 02:39:24 xxxx sshd[14080]: Disconnecting authenticating user root 45.141.84.25 port 33965: Change of username or service not allowed: (root,ssh-connection) -> (administrator,ssh-connection) [preauth]
Dec 31 02:39:27 xxxx sshd[14082]: Invalid user administrator from 45.141.84.25 port 13531
Dec 31 02:39:27 xxxx sshd[14082]: pam_unix(sshd:auth): check pass; user unknown
Dec 31 02:39:27 xxxx sshd[14082]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=45.141.84.25
Dec 31 02:39:29 xxxx sshd[14082]: Failed password for invalid user administrator from 45.141.84.25 port 13531 ssh2
Dec 31 02:39:30 xxxx sshd[14082]: Disconnecting invalid user administrator 45.141.84.25 port 13531: Change of username or service not allowed: (administrator,ssh-connection) -> (admin,ssh-connection) [preauth]
Dec 31 02:39:33 xxxx sshd[14084]: Invalid user admin from 45.141.84.25 port 55688
Dec 31 02:39:33 xxxx sshd[14084]: pam_unix(sshd:auth): check pass; user unknown
Dec 31 02:39:33 xxxx sshd[14084]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=45.141.84.25
Dec 31 02:39:36 xxxx sshd[14084]: Failed password for invalid user admin from 45.141.84.25 port 55688 ssh2
Dec 31 02:39:36 xxxx sshd[14084]: Disconnecting invalid user admin 45.141.84.25 port 55688: Change of username or service not allowed: (admin,ssh-connection) -> (123321,ssh-connection) [preauth]
Dec 31 02:39:39 xxxx sshd[14086]: Invalid user 123321 from 45.141.84.25 port 30741
Dec 31 02:39:40 xxxx sshd[14086]: pam_unix(sshd:auth): check pass; user unknown
Dec 31 02:39:40 xxxx sshd[14086]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=45.141.84.25
Dec 31 02:39:41 xxxx sshd[14086]: Failed password for invalid user 123321 from 45.141.84.25 port 30741 ssh2
Dec 31 02:39:42 xxxx sshd[14086]: Disconnecting invalid user 123321 45.141.84.25 port 30741: Change of username or service not allowed: (123321,ssh-connection) -> (111111,ssh-connection) [preauth]
Dec 31 02:39:46 xxxx sshd[14089]: Invalid user 111111 from 45.141.84.25 port 8802
Dec 31 02:39:47 xxxx sshd[14089]: pam_unix(sshd:auth): check pass; user unknown
Dec 31 02:39:47 xxxx sshd[14089]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=45.141.84.25
Dec 31 02:39:49 xxxx sshd[14089]: Failed password for invalid user 111111 from 45.141.84.25 port 8802 ssh2
Dec 31 02:39:49 xxxx sshd[14089]: pam_unix(sshd:auth): check pass; user unknown
Dec 31 02:39:51 xxxx sshd[14089]: Failed password for invalid user 111111 from 45.141.84.25 port 8802 ssh2
Dec 31 02:39:52 xxxx sshd[14089]: Disconnecting invalid user 111111 45.141.84.25 port 8802: Change of username or service not allowed: (111111,ssh-connection) -> (user,ssh-connection) [preauth]
Dec 31 02:39:52 xxxx sshd[14089]: PAM 1 more authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=45.141.84.25
Dec 31 23:35:01 xxxx CRON[20355]: pam_unix(cron:session): session opened for user root by (uid=0)
Dec 31 23:35:01 xxxx CRON[20355]: pam_unix(cron:session): session closed for user root
Dec 31 23:42:24 xxxx sshd[20377]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=218.92.0.205 user=root
Dec 31 23:42:26 xxxx sshd[20377]: Failed password for root from 218.92.0.205 port 53535 ssh2
Dec 31 23:42:30 xxxx sshd[20377]: message repeated 2 times: [ Failed password for root from 218.92.0.205 port 53535 ssh2]
Dec 31 23:42:30 xxxx sshd[20377]: Received disconnect from 218.92.0.205 port 53535:11: [preauth]
Dec 31 23:42:30 xxxx sshd[20377]: Disconnected from authenticating user root 218.92.0.205 port 53535 [preauth]
Dec 31 23:42:30 xxxx sshd[20377]: PAM 2 more authentication failures; logname= uid=0 euid=0 tty=ssh ruser= rhost=218.92.0.205 user=root
Dec 31 23:45:01 xxxx CRON[20385]: pam_unix(cron:session): session opened for user root by (uid=0)
Dec 31 23:45:01 xxxx CRON[20385]: pam_unix(cron:session): session closed for user root
Dec 31 23:47:30 xxxx sshd[20393]: Received disconnect from 218.92.0.205 port 27042:11: [preauth]
Dec 31 23:47:30 xxxx sshd[20393]: Disconnected from 218.92.0.205 port 27042 [preauth]
Dec 31 23:48:59 xxxx sshd[20400]: Received disconnect from 218.92.0.205 port 54788:11: [preauth]
Dec 31 23:48:59 xxxx sshd[20400]: Disconnected from 218.92.0.205 port 54788 [preauth]
Dec 31 23:55:01 xxxx CRON[20417]: pam_unix(cron:session): session opened for user root by (uid=0)
Dec 31 23:55:01 xxxx CRON[20417]: pam_unix(cron:session): session closed for user root
Dec 31 23:59:01 xxxx CRON[20432]: pam_unix(cron:session): session opened for user root by (uid=0)
Dec 31 23:59:01 xxxx CRON[20432]: pam_unix(cron:session): session closed for user root
Jan 1 12:32:01 xxxx CRON[23582]: pam_unix(cron:session): session opened for user root by (uid=0)
Jan 1 12:32:01 xxxx CRON[23582]: pam_unix(cron:session): session closed for user root
Jan 1 12:32:25 xxxx sshd[23586]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=112.85.42.195 user=root
Jan 1 12:32:27 xxxx sshd[23586]: Failed password for root from 112.85.42.195 port 13147 ssh2
Jan 1 12:32:33 xxxx sshd[23586]: message repeated 2 times: [ Failed password for root from 112.85.42.195 port 13147 ssh2]
Jan 1 12:32:34 xxxx sshd[23586]: Received disconnect from 112.85.42.195 port 13147:11: [preauth]
Jan 1 12:32:34 xxxx sshd[23586]: Disconnected from authenticating user root 112.85.42.195 port 13147 [preauth]
Jan 1 12:32:34 xxxx sshd[23586]: PAM 2 more authentication failures; logname= uid=0 euid=0 tty=ssh ruser= rhost=112.85.42.195 user=root
Jan 1 12:33:32 xxxx sshd[23590]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=112.85.42.195 user=root
Jan 1 12:33:34 xxxx sshd[23590]: Failed password for root from 112.85.42.195 port 49188 ssh2
Jan 1 12:33:36 xxxx sshd[23590]: Failed password for root from 112.85.42.195 port 49188 ssh2
Jan 1 12:33:39 xxxx sshd[23590]: Received disconnect from 112.85.42.195 port 49188:11: [preauth]
Jan 1 12:33:39 xxxx sshd[23590]: Disconnected from authenticating user root 112.85.42.195 port 49188 [preauth]
Jan 1 12:33:39 xxxx sshd[23590]: PAM 1 more authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=112.85.42.195 user=root
Jan 1 12:34:35 xxxx sshd[23594]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=112.85.42.195 user=root
Jan 1 12:34:37 xxxx sshd[23594]: Failed password for root from 112.85.42.195 port 62803 ssh2
Jan 1 12:34:43 xxxx sshd[23594]: message repeated 2 times: [ Failed password for root from 112.85.42.195 port 62803 ssh2]
Jan 1 12:34:44 xxxx sshd[23594]: Received disconnect from 112.85.42.195 port 62803:11: [preauth]
Jan 1 12:34:44 xxxx sshd[23594]: Disconnected from authenticating user root 112.85.42.195 port 62803 [preauth]
Jan 1 12:34:44 xxxx sshd[23594]: PAM 2 more authentication failures; logname= uid=0 euid=0 tty=ssh ruser= rhost=112.85.42.195 user=root
Jan 2 13:23:15 xxxx sshd[605]: Failed password for root from 218.92.0.206 port 28706 ssh2
Jan 2 13:23:15 xxxx sshd[608]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=218.92.0.206 user=root
Jan 2 13:23:16 xxxx sshd[603]: Failed password for root from 218.92.0.206 port 58568 ssh2
Jan 2 13:23:16 xxxx sshd[603]: Received disconnect from 218.92.0.206 port 58568:11: [preauth]
Jan 2 13:23:16 xxxx sshd[603]: Disconnected from authenticating user root 218.92.0.206 port 58568 [preauth]
Jan 2 13:23:16 xxxx sshd[603]: PAM 2 more authentication failures; logname= uid=0 euid=0 tty=ssh ruser= rhost=218.92.0.206 user=root
Jan 2 13:23:17 xxxx sshd[608]: Failed password for root from 218.92.0.206 port 51114 ssh2
Jan 2 13:23:17 xxxx sshd[605]: Failed password for root from 218.92.0.206 port 28706 ssh2
Jan 2 13:23:19 xxxx sshd[608]: Failed password for root from 218.92.0.206 port 51114 ssh2
Jan 2 13:23:20 xxxx sshd[605]: Failed password for root from 218.92.0.206 port 28706 ssh2
Jan 2 13:23:20 xxxx sshd[605]: Received disconnect from 218.92.0.206 port 28706:11: [preauth]
Jan 2 13:23:20 xxxx sshd[605]: Disconnected from authenticating user root 218.92.0.206 port 28706 [preauth]
Jan 2 13:23:20 xxxx sshd[605]: PAM 2 more authentication failures; logname= uid=0 euid=0 tty=ssh ruser= rhost=218.92.0.206 user=root
Jan 2 13:23:20 xxxx sshd[610]: Received disconnect from 218.92.0.206 port 37686:11: [preauth]
Jan 2 13:23:20 xxxx sshd[610]: Disconnected from 218.92.0.206 port 37686 [preauth]
Jan 2 13:23:21 xxxx sshd[612]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=218.92.0.206 user=root
Jan 2 13:23:21 xxxx sshd[608]: Failed password for root from 218.92.0.206 port 51114 ssh2
Jan 2 13:23:21 xxxx sshd[608]: Received disconnect from 218.92.0.206 port 51114:11: [preauth]
Jan 2 13:23:21 xxxx sshd[608]: Disconnected from authenticating user root 218.92.0.206 port 51114 [preauth]
Jan 2 13:23:21 xxxx sshd[608]: PAM 2 more authentication failures; logname= uid=0 euid=0 tty=ssh ruser= rhost=218.92.0.206 user=root

国土保全

今日はもう、仕事にならない。(元日?でしたっけか?)
マスターメンテナンス系の画面遷移、データの受け渡しが一部うまくいってない。
バグかなぁ、ティポかなぁ。もういい。明日やる。
ついうっかり、ゴーンニュースに反応しちまった。おかげで、頭が切り替わらなくなった。
ついでに、この間、どうしても突っ込みたかった話題に突っ込んでおく。

吐き出してしまって、余計なものを意識の中に入れておきたくない。
(もう、今回の残り時間は、そんなに贅沢に使える訳じゃないから・・・)

そうなんだ、「正月がめでたい」新年明けましておめでとうございます、っていうのは、去年死んでしまうこともなく、今年も生きて、「数え年」で一つ年をとることができた、まだ生きてます、良かった良かった、っていう、そういうお互いの挨拶、なんじゃないかな、と思う。簡単に人が死ぬ時代が長かったから、と、僕は思う。

話を戻して。

この間、スマホのニュース配信に、結構過激なページがあった。
「少子化対策」は、もう「打つ手がないでしょ」と。主張していた。曰く、政治が「古いスタイル」にこだわり過ぎている。

この間、ちょっとは変わったのか、シングルマザーの「税制面」での見直しのニュースがあった。自民党なんて「日本古来の家制度が」どーたら、こーたらで、夫婦別姓は絶対にいかん、シングルマザーなんて(無論、その子供も)存在してはならない(つまり、形だけでも結婚して「家」に帰属しろ、)とか、もう、あんたら明治時代の人間か、っていうのがゴロゴロいるし。「社員を社畜にして何が悪い」みたいな人たちに支えられているのが、自民党だと、僕はそう理解している。(すみません、僕もかなり過激です。)

もう、「少子化対策」の時期は、終わった。時すでに遅し。今後は、「少子化」でも持ち堪える制度に、作り変えろ、と。端的にいって、論点は2点で、(1)切り捨てるべき年寄りは切り捨て、(2)切り捨てるべき限界集落は切り捨てろ、と、そういう議論だと僕には読めた。だから、突っ込みたくなった。都会生まれ、都会育ちの、結構若い人が書いているんだろうなぁ。

いや、僕がうがって読んでいるだけかも知れない。元ネタを細かく読み返そうと思ったんだけれども、見つからなかった。だから、個人攻撃ということではなく、一般論に対する一般的な反論として、私のこのページを読んでいただければ幸いです。

僕自身は、これ以上、自分から社会に対して働きかけることができなくなったら、それは仕事をするという意味とか、こうして何か言葉を発したり、地域社会でできることをするとか、最低限、自分自分の生活は自分で支えるというレベルで、それができなくなったら、というレベルで、そうなったら、もう、医療や介護の世話になりたくないから、枯れて朽ちたいと思っている。食欲が衰えて食えなくなったら、無理して栄養を摂らない。そうすれば、自然と朽ちて枯れる。僕はそれでいい。ただ、その主張に、他人を巻き込みたくない。だから、第一の論点の、(1)切り捨てるべき年寄りは切り捨て、のところには、敢えてコメントしない。

取り上げたいのは、表題にもした第二の論点、(2)限界集落は切り捨てろ、の部分。

むしろ、逆に「限界集落」にこそ、次の世代の「価値」を見出すべきじゃないかと僕はおもう。

そのページでボヤいていた、「限界集落に水道を引く無駄」について言えば、そもそも日本は水には恵まれた国で、「多すぎる」くらいの水が使えていた。湧き水でも、井戸水でも、個別供給のわずかな濾過技術さえ工夫すれば、いくらだって「自然水」で「限界集落」だって水は確保できるはずだ、と思う。「水道」っていう発想は、都市部の発想だ。
電気も同じ発想で、今だったら太陽光発電もあるし、風力だって、自給自足を考えた程度の、それこそ、羽が一枚数十メートルなんていうものではなく、もっと小規模の設備だって、家庭で使うエネルギーは賄えると思う。(石炭火力にこだわる経産大臣には、だから、何も知らんのかと言いたい。)経産省がそっちに目を向けていないから、「家庭向け風力発電設備」なんて、議論さえされていないと思う。わざわざ、送電線を引かなくたって、電力の自給自足ができる時代は、すぐそこにきていると思うのに。
さらに言えば、電力に拘らず、広く「エネルギー源」として考えるならば、太陽光での「温水化」に、断熱、蓄熱、蓄電、最先端のあらゆる技術を駆使すれば、離島だって、電気、水に困らない生活ができると思う。
そして、通信。電話に関して言えば、「基地局」があれば、今時、ギガヘルツ帯の通信容量は「有線」を凌ぐ。エネルギー源が問題になってると思うけれども、社会全体に対するエネルギー配分のマクロな切り口から考えたなら、「限界集落」は都市部に劣らず、都市部にはない「資源」に恵まれた地域だという気もする。

反論の第一の論点として、「限界集落」の「立地条件」に言及したかった。「ビジネスに不利だ」そうかなぁ。東京オリンピックの「混雑緩和」で、「サテライトオフィス」を東京都が提唱した。そのサテライトオフィスは、「限界集落」だって可能だと僕はおもう。通信回線がつながっていればいいんだから。それ以外のインフラは、「快適に整備する」技術的な要因は整っている。
今時、どんな田舎に住んでいたって、世界中と繋がれることを、若い人たちは実感していると思う。北朝鮮とか中国のような一部の国を除き(今、ロシアが、中国のCWW(中国政府監視下におけるWEBネットワーク)を模倣して、導入しようとしているらしいが)そうした、現あるいは元共産圏の一部を除けば、どんな田舎にいたって、全世界とつながった本音のビジネスを展開できる。

反論の第二の論点。
大都市集中のリスクを指摘したい。
阪神淡路大震災があった1995年、インドネシア領ニューギニア島のイリアンジャヤで、マグニチュード7を超える(確か僕の記憶では、阪神淡路と同規模の)地震が起きた。その地震による死者はゼロで、負傷者が十数名だった。というのは、震源地の真上には、人口数十名の村が一つあるのみで、しかも、簡単な木造の住宅が、全壊に近かったけれども、潰されても死ぬほどではなかった、という、そんなニュースだったと、あやふやに記憶している。半径50kmに、ほとんど「村」はなかったんじゃないかな?同規模の地震が起きても、それが大都市圏の直下と、ほとんど人の住まないジャングルの奥地とでは、被害にそれだけの違いが出る。そこまで極端でなくても、自然災害を考えたなら、「リスク」は分散すべきだと思う。

田舎では「買い物」が大変。そうかなぁ。
それこそ、今時の若い人たちは、「便利さ」を享受しているでしょう?ネット通販がある。
物流は大変かも知れない。ペイするかどうか。ただ逆に、そうしたローカルな社会で、閉じた形で「物流ビジネス」を成立させるビジネスモデルもあるような気がする。生活必需品については、独自に(定期的な需要がある物品で)販売方法を工夫し、「たまにしか購入しない」ものについては、アマゾンでもヤフーでも、巨大通販システムの「配送」サービス(多分、黒猫とか、佐川とか、もしかしたら郵便局とかに落ちてくるのか、それ)を、マルチで下請けして、最低限のコストで請け負う、物流のルーターとか、ローカルネット内のハブのような位置付けのビジネスを成立させることは可能だと思う。

田舎にいたら、人と出会えない。
それはあるかも知れない。出会える人の数は、限られてくる。ただ、逆に、相互依存が高まるから、より他人との「付き合い方」は工夫が必要になるけれど、それは、「大切なこと」だと僕は思う。
今、若い子たちが、簡単にネットで知り合ったばかりの人に、騙されたり、殺されたりしている。「人との付き合い方」を知らないし、「人を知る」というプロセスを、多分親もないがしろにしているから、ネットで知り合った人に、自分の願望を投影して、若い子たちの目には、みんな「王子様」や「お姫様」に見えてしまう、ということが起きているような気がする。もちろん、これは都会でも同じことができると思うけれども、もっと、リアルな人との接点を見直して、人との付き合い方を「学ぶ」っていうか、スキルを上げる必要があるのかも知れない。
田舎にじっとしている、っていうのは、一つの会社にどっぷりと浸かっているのと似ていて、ドロドロの人間関係の中で、身動きが取れない状況っていうのも、あると思う。ただ、だからこそ、他人の意外な一面を知って、それが自分を変えるキッカケになったり、自分を発奮させる動機になったり、そういうこともあると思う。具体例は、いくつか書けるけれども、僕の知人にはダダ漏れで、話題に挙げられた人が誰だと個人名を特定された上で、その人だけなら他人に知られていないプライバシーを曝け出す結果になりかねない、そんな話題もあるから、具体例は書けないけれども、60年も生きていると、そうしたことっていうのは、間違いなくあると思う。20代や30代の、まだ人生経験の浅い方々には、なかなかそうした機会はないかも知れないけれども、この辺は、信じてもらっても8割方、間違いないと、僕は思う。(残り2割の、責任は負いませんけど。)ドロドロの人間関係だからこそ、得たものが多かった、そうした話題は、誰にでも、結構ある気がする。(その経験そのものを覚えていない人の、多いだろうけれど。)

ネットで思い出したけれども、リアルに身近にいる人たちとの接触方法と同時に、ネットで、どこの誰だか知らない人との交流、なんていうのは、若い人たち、普通にやっていませんか?両方あって、いいんじゃないか、っていう文脈だと、どんなド田舎でも、それはできると思う。

そして、第三の論点。(やっと、表題に括りつく。)
限界集落を見捨てる、ということは、無人の地域を作ってしまう、ということかな、と思う。
人が住まなくなった土地は、やがて、自然に飲み込まれていく。それはそれとして、「いいこと」なのかな、とも思うけれども、「適正な人口」を、国土全域に「適正に配分する」という視点で考えると、一旦無人地帯にしてしまった地域を、(例えば、大災害などの理由で、大規模移住が必要になって、再び)人が住めるようにするためのコストというのは、ずっと人が住んでいた場合と比べて、桁が違ってくる気がする。

本当に、そんなことが起きるのか?
約180年後の話は、既に何度か書いた。既に書いた以上に、補いたい関連情報はあるけれども、多くの方々にとって、それは「情報」ではなく、「デマ」だと認識されるだろうから、これ以上は書かない。ただ、僕は、僕自身が信じる相手に対して、誠実でありたいと願い、僕自分の立ち位置でできることを続けたいと思っているから、過去にも書いたし、今後も書くかも知れない。それだけの話として読み飛ばしていただけたら幸いです。
ただ、そんな180年後の話題だけではなく、僕自身も含めて、まだ私たちが生きている今だって、「大災害」が起きない保証なんて、あるのか?と思う。震源地がどこか、台風がどこを通るか、それを人類が制御できるならば、無視してもいい。制御できないならば、想定はすべきだと思う。

トランプ大統領が、核爆発でハリケーンを解消しろとか発言したらしい。雨傘を一本持っていれば、拳銃強盗も怖くない、みたいな発想だと僕は思った。いや、広島、長崎の十万倍位のエネルギーを集約したら、もしかしたらハリケーンを消せるかも知れないから、そういうのは、フロリダ上空あたりで試してみたら?と思った。話が逸れてる。
マクロにしか論じていない。自分の知人がもし大都市に住んでいたら、とか、そんなことは全く考えていない。マクロに、死者が数千人、数十万人なのか、それとも、数人なのか、そういう視点でしか論じていないけれども、大災害がどこに訪れたときに、どうなるか、リスクは分散すべきだ、という視点で考えるべきだと、僕は思う。
そして、何かが起きてしまった時には、移住することが可能な地域が、日本国内に、多ければ多いほどいい、と僕は考えている。一度、どこかの土地を見捨ててしまったら、そこを「生産可能」な拠点にすることも、「居住快適性」のある地域にすることも、容易ではないと、僕は思う。

たぶん、そのネット記事を書いた人は、まだ若い人だと思う。主張はどんどんとすべきだ。そこから議論を発展させるべきだ。感情論は嫌いだ。僕は、議論は好きだけれども、口論は嫌い。ましてや、感情的に煽って、ひたすら暴言を投げかける書き込みは、不快でしかない。(また、話が逸れてる。)

あなたが正しいと僕にも思えたなら、僕は引き下がります。ただ、もし、僕があれこれと書いた内容のどこかに、たったの一片でも、「この内容は、根拠を持って正しいと言えるかも知れない」と、あなたが感じる部分があったなら、ぜひ、それを(著作物がなんちゃらの)「私の意見」としてではなく、あなた自身の「血肉」にして、取り込んで欲しいと、願ってやまない。僕の主張を、あなたが、「これは私の主張だ」と口にしても、僕は怒らないし、むしろ、嬉しいと思う。

もっともっと、若い人たちには「考えて」欲しいし、政治にも積極的に参加して欲しいし、日本を変えて欲しい、と思うんだけれどなぁ。なんか、こんなページを書くなんて、無駄なことしちゃったかなぁ。
大丈夫。180年後、何も起きませんて。起きたって、僕もあなたも、まず生きてないから関係ないしね。
どうせあなたも、子孫を日本に残す気はないんでしょ?

保身

【声明全文】ゴーン被告「私はレバノンにいる」渡航禁止も出国
https://www3.nhk.or.jp/news/html/20191231/k10012232821000.html

なんだか、思ってしまったことがある。人は、なかなか自分の「行動パターン」や「思考パターン」を変えられない。
彼の「違法出国」は、誰の目にも明らかだし、彼自身も否定はできないだろうと思う。
それを、彼は「日本の不公正と政治的迫害」に責任転嫁した気がする。

日本の司法制度は、国際法や条約のもとで守らなくてはいけない法的な義務を目に余るほど無視しています。

誰の目にも明らかな違法行為を正当化した、実は、それと同じことを日産でもやっていて、無罪の主張が認められそうにないから、同じ発想で逃げた、ということのような気がした。今回やったことは、もう間違いなくそれ自体が違法でしょ?と思うのだが。
メディアへの主張も、同じ枠組みの中での「正当化」の繰り返しなんだろうという気がする。

ゴーン氏が着任して間もない頃、日産自動車の技術系の社員だった友人がいる。
彼の一言を思い出した。
「リストラ」っていうのは、Restructuring、つまり「構造を変える」ことを意味しているはずで、本来「首切り」の意味ではなく「構造改革」のはずなのに、ゴーンさんはどんどんと首を切ってる。大胆に首が切れれば、経営状態が回復するのは当たり前で、日本人の経営トップはそれをする勇気がなかったから、外から「首切り役人」を引っ張ってきたんじゃないか。
確か、こんな主旨だったと思う。
実際、彼もその時期に日産を離れている。

恐縮ですが、彼の主張の根拠を僕は調べていない。どの程度「理不尽な首切り」をしたのか、それが不可避だったのか、日産にどの程度無駄があったのか、知らない。ただ、結構な規模の「退職」があったらしい記事は、何かで読んだうろ覚えの記憶がある。

もう一つ、彼から聞いた話を思い出した。
研究開発部門で、5万円だか、10万円だかの備品を購入するのに、「ゴーン前」はざっと30個程度の「承認印」が必要だったらしい。担当部門の主任、係長、課長補佐、課長、経理部門の誰それ、工場の誰それ、30個?よくわからんけど、まさか社長決済じゃないだろうな、とは思うんだが。で、結果的に「稟議書」というか、「購入申請」を出してから、全部ハンコが押されて戻ってくるまでに3ヶ月とか半年とかかかっていたらしい。その間に、ホンダとかトヨタだったら、もうその「備品」を使っての実験の結果が出ているに違いない、という文脈で、彼は話してくれた。
ちなみに、僕の務めていた大学でも、ちょっとした(確か10万円を超えたあたりだったか)購入でも、学長決済にまで上がっていたから、面倒って言えば面倒だった。っていうか、僕が勤め始めた時は、常勤講師の「年間研究予算」が10万円だったから、学長決済にまで上がる書類は出しようがなかった気もするが、もう、細かい数字を覚えてないなぁ。

首は切らない、構造は変えない、決済のルールも見直さない、誰かが手をつけなければならないのに、「手をつけようとしない」人間ほど出世して、上に上がって高い給料をもらう。そういう「保身」が最大の「価値」につながる会社っていうのは、確かに今でも存在しているんだろうけれども、その結果どうなるか、っていうのは、結構あちこちで今、ボロが出ているんじゃないだろうか。

変えるべきものを変えろと、主張する人間を(無論、論拠の緻密さは検証する必要はあるんだろうけれども、)重用するような組織でないと、長続きしないんじゃないか、という気がする。それなのに、(僕の場合には、「指摘」というよりも「悪口」だから、干されても煙たがられても、文句はないけど、)上に「異論」を唱えれば、干される組織が多い気がする。みんなそれがわかっているから、自分を守るために、一切「おかしい」と言わない。それが日本の社会の病根だという気がしなくもない。まるで、中国共産党みたいな会社や組織が、至る所に存在している気がする。
どれほど「正しい」と自分で思っていても、それを会社なんかで主張するのは、結構勇気が要るでしょうね。でもそれができなければ「保身」ということになる。間違っていてもいいから、「正しい」と思うことは、どんどんと口にできる、上司が部下から、面と向かって非を唱えられても、その主張が正しければ受け入れるし、間違っていたとしても、間違いを指摘した上で、主張したこと自体にはマイナスの評価をしない、そういう組織自体の「リストラ(再構成)」が必要なんじゃないか、という気がする。

しばらく前に絶句したのは、経産大臣の「石炭火力発電の選択肢を温存したい」発言。変える気がない。そのビジネスにしがみついている人たちに、何もシグナルを送れない。そういう人が大臣になる。それでも、日本人は自力で「最適な人間」を選べない。そうやって、ゴーンさんは日産にやってきたんだろうけれども、国がおかしくなったらどうするんだろう。
若い人たちは政治に無関心だから、最後は、国のトップにゴーンさんみたいな人を迎え入れる?きっと、バッサバッサと、切ってくれると思うな。
以前、西武鉄道が、海外の「資金提供元」に、「西武秩父線は廃線にしろ」とか言われた、そんなニュースがあった。海外から見たら、切れる「無駄」はいくらでもあるんだろう。自分たちで変えられなければ、いつかきっと、外から来た人が変えてくれる。自分たちは、いつまでも保身で固まって、黙っていたらいい。いつまで続くかなぁ。

だから、一概にゴーンさんだけを責める気もないけれど、なんとなく僕は、エンロンの「事件」の顛末、エンロンの経営者を思い出した。あのエンロンの経営者も、マスメディアには「絶賛」されていたみたいだ。

「基本的人権が満たされていない日本の司法環境」みたいな表現があった気がする。もしかして、それって、留置場とか刑務所のことなんだろうか。ゴーンさんの感覚っていうのは、冷暖房完備で、風呂やシャワーは毎日自由に使えて、食事にはステーキなんかも出てきて、留置場や刑務所であっても、それができなきゃ「自分の人権が侵害されている」っていう感じなんだろうか。

確かになぁ、日本も細かいところにお金が回っていない。保育士さんとか、介護関係とか、小中学校の教員とか、労働量と賃金とのバランスが問題視されていて「法を犯していない」人たちの生活でも、問題は山積している訳で、ましてや、留置場とか、刑務所とか、そういった所の「生活環境改善」に、どの程度お金が回せるのか、あまり回せないんだろうな、とも思う。だとしたら、ゴーンさんの主張も、わからんでもない。
それっていうのも、何億、何十億っていう給料をもらっていても、所得を少なく見せかけたり、一円でも多く自分も懐に入れたい人たちが少なくないから、どうしたって税収も頭打ちで、当然、留置場とか刑務所の環境に回せるお金は少なくなるんだろうなぁ。一義的には、ゴーンさんみたいな人に、もっと課税できないと、留置場の環境改善もできないんだろうなぁ。ゴーンさんに、何か言う資格あるの?

来週から、メディアに何を主張するのか、楽しみだ。「出国管理を通さない出国」が「法を犯していない」とでも主張するのかな?