はてなキーワード: M1とは
以下は精神の弱い人間が大学院あまり行けなかったけど、無理やり酷い論文で修了したという話である。どこにでもあるような最悪な内容であり、頭の悪さも相まって「お前が悪いじゃん」「でもでもだってばっかりでそうなるのはお前が悪い、死ね」なのは重々わかっているのですが、自分の踏ん切りと内容全てを何処かに残しておきたい、という気持ちのため、ここに書かせてください。ごめんなさい。
私は地方大からちょっと良い地方大の院へ進学した。移動理由は色々あったが、地元への帰省と、自身のやりたい分野がその大学院にあったからだ。ちなみに計算科学系から有機合成系へ移った。
進学当初、私は先輩につくことができなかった。理由は単純で、単に先輩の手が空いてなかったからだ。とはいえ別グループの同級生が私に研究室のノウハウを教えてくれたため、何とか実験の動作は分かるようになった。しかし私はあまりに頭が良くなかった。合成や測定結果でわからない点を同研究テーマの先輩に聞いても、直属の後輩でないから分からなかったり、手一杯だったりで、かわされてしまい上手く相談ができなかった。教授との関係も悪く無く、寧ろ気にかけてくださっている方だったが、上手く相談できずどんどん一人で抱え込んで沈んでいってしまった。合成が下手というよりは、PDCAサイクルを回すのが致命的に出来なかったのだと今は思う。勉強は少しできても、研究が出来ない最悪のタイプだった。
研究室は先述の通り有機合成系で、コアタイムは緩いものの朝早く夜遅くが基本だった。もちろん私もそれに従った。しかし一つ問題があった、同居している両親である。詳細は省くが、父が難病、母が精神疾患を抱えており、家の面倒を度々見なくてはならなかった。夕飯を作ったり、買って帰ったりは日常茶飯事で、深夜まで母が狂ったように叫ぶのを宥めたのも数えきれない。そんな状況で大学院に行くなと言われればそうなのだが、それでも進学してしまった。なので授業、就活、実験という生活の中、親の面倒も見ると言うタスクが重なり、上手く眠れず個人的にかなりシビアな状態だった。
そんなこんなで数ヶ月が過ぎると、周囲の学生とも何と無く関係ができてくる。当たり前だが、私のように「夕飯をどうしよう」なんて考える人はおらず、良いなあと心の底で思っていた。それに周囲は、学会や論文に共同研究とバンバン結果を出している。勿論努力の結果だし、純粋に凄いと思っている。対して私は何も出来ていない。B4から入ったのと、M1から入ったのでは理解も習熟度も異なるのは当然なのだけど、それでもどうしても周囲との差を感じてしまい、日に日に自身と比較しては落ち込んでいってしまった。当時の自分もそれは分かってはいたのだが、どうしても辛くなってしまった。家庭環境も含めスクールカウンセラーにも行ったが、どうにも辛さは解消しなかった。
トイレに行く時間が増え、学食から研究室へ戻るときが憂鬱になり、通学時に息が詰まる。仕方ないのでYoutubeで面白い動画を探し、見ながら笑顔になっている自分を感じながら「笑えるから大丈夫」と誤魔化していた。
しかし急に、ある日ベッドから起き上がれなくなった。どうしても起き上がれない、動けない。希死念慮が浮かぶ。自分はいなくなったほうがいいのではないか、私みたいな無能はどうやっても何も出来ないんじゃないか。実際無能だし死んだ方がいいと今も思ってる。ズルズルと風呂に入りもせず、ずっとベッドの上で死んだように寝ては泣いていた。いま文章を書いていても論理が不明だけれど、でも確実に辛かった。そして秋だった気候が冬に変わり、気づけば年も明けてしまった。研究室の友達も先生も凄く心配してくれたが、ずっと引き篭もっては一人体育座りして、夜が明けるのを日々恐ろしく思っていた。朝の鳥の飛び立つ羽音が余りにも力強くて、自身の無力さから泣いたりもした。そしてあれだけ楽しかった実験が、苦でしか無くなってしまった。
そうこうしているうちに就活が本格化し、それでも研究室にいけない日々が続いた。しかしこのまま退学をしても生きる道はなく死ぬしかない。極端な思考だと思うけど、行くか死ぬかという2択だった。どうしようもないけれど研究室に行くよりは就活は楽で、頑張って色々と行動して内定を得て、研究室へ復帰して、時折休みながら修士論文を書き上げた。ちなみに修士の中間報告や各種講義は、先生のお目溢しと慈悲と過去(M1前期)の頑張りでなんとか修了単位を頂いた。情けない限りである。
言わずもがな、周囲と比較して大変悲惨な修士論文が完成した。数ヶ月でできるテーマを2年もかけたのか?と言われたら反論の余地はない。自分でも悔しいし、誰もが優しかったし、大層恵まれた環境だったのに、自分に耐えられなかった自分が許せずにいる。今も死にたいし、実際周囲は嘲笑っていた。
休んだ理由はカウンセラーだけにしか言っていない。仮に本当のことを言ったとしても、休んだ事実は覆らない。
長々書いてきたが、勝手に精神を病んで、勝手に辛いと思い迷惑をかけた上に、カスみたいな修論を出した。もう2度と行かないし連絡しても欲しく無いから、正直連絡先も記したく無かった。
研究室の先輩、同期、後輩には色々とお世話になり、休みがちだったことが原因で叱られたこともあったが、本当にお世話になった。休んでからは直球の悪口も聞いたし(そいつは絶対に許さない)、嫌われていたのは承知だけれど、それでも何とか話してくれて有り難かった。
教授たちにも多大な迷惑を掛けてしまったものの、手厚い優しさ、応援を頂いた。それなのに何も出来ず本当に申し訳ない。
研究結果で返したかったのに、より一層自分の出来なかった・しなかったことが悔やまれる。期間を戻せるならやり直したいが、戻しても同じ病みかたをする気がするし、無能なのは代わりないから、そもそも院試で落ちた方が良かったのかもしれない。私の代わりに誰かが落ちたと聞いた。本当に申し訳ない。
面と向かって家族関係の諸般の事情を伝えていないのもあり、伝えにくいのだが、本当にありがとうございました。修士論文の末尾に謝辞を書いたが、あんな短い文章じゃ収まりきらないほどの感謝だ。
M1チャンピオンのウエストランド井上が「YouTuberは警察に逮捕されてばかりいる」という偏見を語って話題になって久しいが、今ニュースを騒がしているZ世代の強盗団事件は職業YouTuberになりたかった若者たちが引き起こしている。
さっと過去記事を検索してみて、「子供の将来なりたい職業」アンケートで「YouTuber」がランキングに入り始めたのが2016年ごろ。
当時一攫千金を夢見てYouTuberになりたかった小学生たちが中学、高校と卒業して現実の格差に直面し、金欲しさに闇バイトに手を出し19歳で強盗殺人を犯して逮捕された。
「好きなことで、生きていく」のCMの罪は大きい
増田を全削除するのであればPower Automation DesktopかSelenium IDEあたりでも使えば可能ですが、中にはブクマを集めた珠玉の増田やブクマは付かなくても割と気に入ってる増田もあるので全削除はしたくありませんでした。
Masuda Deleter
https://github.com/oribeolive/masuda-deleter/
Masuda DeleterはDockerコンテナに環境を作って動くのでDockerが必要です。
M1 Macで動作していますがWindowsは検証できるマシンが手元にないので動作未確認です。
インストールはGitHubのREADMEに書かれたコマンドを実行すればできると思います。
Masuda Deleterははてラボにログインして指定されたページ分の自分の増田の投稿をスクレイピングしてローカルのDBに保存します。
取得された投稿のリストがブラウザで見られるので、そこで削除するものを選んで実行すると、またログインして投稿を削除しにいきます。
ページのアクセスごとに読み込みと遠慮のために1秒から数秒sleepするので少し時間がかかります。
一旦投稿をローカルに保存するという過程があるため副作用として自分の投稿を検索できます。
これにより
が容易になります。
増田にはAPIがないので、IDとパスワードを使ってログインして、表示されている文章をスクレイピングしてくるという原始的なやり方になります。
(2回目からはcookieがある場合はcookieを復元してログイン状態になります。)
ユーザーが知らない外部サイトにクレデンシャルを渡すのは危険であり、サービス運営側としてもパスワードを平文で持ちたくないので、Webサービスとして実装せずセルフサービスとしております。
ユーザーによってローカルの.envファイルに書かれたIDとパスワードを使用する形です。
ソースをオープンしておりますので怪しいことをしていないかも確認ができるかと思います。
一応下にプログレスバーが出ますが、ページ遷移すると見られなくなります。進捗は進捗管理でも確認できます。
取得された投稿はリアルタイムで画面に反映されないのでブラウザをリロードしてください。
増田のID、タイトル、本文の省略、投稿日時、ブクマ数、トラバ数が表示されます。
「あとで消す」投稿をチェックし、「あとで消す」記事をついに消すボタンで削除を実行します。
チェックは別のページに遷移しても有効です。
こちらは実行した時点で表示されているページのみリアルタイムに画面に反映されます。
投稿の全文を見られます。タグ等は取得しないのでテキストのみになります。
投稿を個別に取得してローカルの文章とブクマ数とトラバ数を更新します。
対象の投稿のタイトルを空に、本文をスペース1文字にしにいきます。
処理の進捗(何件中何件処理済みか)を見ることと、処理を停止させることができます。
排他処理(取込と取込、特定IDの削除と同じIDの削除等)にしているので動いていなそうな処理を停止して再度処理を実行するときに使います。
停止する場合は停止ボタンを押すか、それでも停止しそうにない場合は強制停止ボタンを押してください。
「停止」は今行っている最中の処理ではなく次以降の処理を停止するという形になります。
停止ボタンを押したときに4ページ目を取得している場合は、5ページ目の取得を始める前に処理を終了することになります。
そのためプロセスそのものが止まっている場合は停止されません。
「強制停止」はプロセスをkillします。スクリプト名とプロセスIDでプロセスを検索して子プロセスも含めてkillします。
おまけとして、投稿日とブクマ数、投稿日と3ブクマ以上の投稿の件数、投稿時間(hour)ごとの1ブクマ以上の投稿の件数のグラフが見られます。
ブクマが付いた瞬間ではなく投稿日時なので、いつの時期に投稿した、何時に投稿した増田が活きが良いのかを見られる程度です。
集計データを別に持っていないので増田を削除するとグラフに使用されるデータも消えます。
私はこれで多いときには4000件程度あった増田を3000件程度に減らしました。
これを開発する前からも増え続ける増田の削除に日々勤しんでいたので総数はもっと多いはず。
まだまだ削除したいです。
たまに
Message: unknown error: net::ERR_CONNECTION_CLOSED
というSeleniumのエラーが出て処理が実行されないことがあります。再度実行してください。
フロントエンドがレガシーなのでMasuda Deleterの開発に飽きていなければもう少しモダンにリプレースしようと思っています。
使用していないDjango REST frameworkがrequirements.txtに入っているのはその名残です。