
はてなキーワード:ex.とは
ここ1年で初めてはてなブックマーク日毎の総合人気エントリ入りしたドメインからのホットエントリ、ブクマ数順トップ30
| ブクマ数 | タイトル | ドメイン |
|---|---|---|
| 2158 | (内閣総理大臣所感)戦後 80 年に寄せて -先の大戦の終結から、80 年が経ちました。 この 80 年間、我が国は一貫して、平和国家として歩み、世界の平和と繁栄に力を尽くしてまいりました── | www.kantei.go.jp |
| 1886 | みらい議会 | gikai.team-mir.ai |
| 1445 | LINEヤフー株式会社を退職したので歴代社長の感想を書く(元ヤフー社員視点) - ariyasacca(2025-10-20) | sangoukan.xrea.jp |
| 1256 | 万博で、いろんな国の人に前から気になっていたことをたずねてみた - 庭を歩いてメモをとる | www.yoshiteru.net |
| 994 | 日本苗字アトラス|地図から苗字を見るサイト | www.myoji-atlas.com |
| 961 | 公明自民との連立離脱表明高市総裁「一方的に伝えられ残念」 |NHKニュース | news.web.nhk |
| 946 | Affinity |プロフェッショナルクリエイティブソフトウェア、無料で万人のために | www.affinity.studio |
| 837 | みらいまる見え政治資金 - チームみらいの政治資金をオープンに | marumie.team-mir.ai |
| 811 | 【詳しく】高市早苗氏が自民党新総裁に総裁選女性就任は初小泉氏抑え選出ノーカット動画も |NHKニュース | news.web.nhk |
| 694 | 藩 一覧 |幕末期近世村領域データセット | geoshape.ex.nii.ac.jp |
| 593 | 「じつはグーグルマップよりオススメじゃね!?」アップデートでさらに進化!トヨタが本気で開発した“完全無料”の「カーナビアプリ」最新版を試してわかった使い勝手とは |VAGUE(ヴァーグ) | vague.style |
| 570 | 認知負荷を下げるテキストコミュニケーション -ジンジャー研究室 | jinjor-labo.hatenablog.com |
| 558 | 人気料理家が繰り返しつくる「ジャガイモとちくわのバター煮」。奥深い味わいに驚愕<長谷川あかりさんレシピ> |ESSEonline(エッセオンライン) | esse-online.jp |
| 555 | 江口寿史氏制作イラストに関するご報告 | INTERMESTIC INC. | www.zoff.com |
| 533 | 当社所属ライバー「甲斐田晴」に対する極めて悪質な誹謗中傷行為・荒らし行為等への対応結果について | ANYCOLOR株式会社(ANYCOLOR Inc.) | www.anycolor.co.jp |
| 460 | 「gooポータル」サービス終了のお知らせ –gooヘルプ | help.goo.ne.jp |
| 457 | 京都市:市税の滞納処分の誤り | www.city.kyoto.lg.jp |
| 431 | ドラクエ以前のPCゲーム関連の文章一 | roomhakase.ninja-web.net |
| 414 | 40代女性が約2ヶ月で5.5kgダイエットした記録 - ぶち猫おかわり | buchineko-okawari.hatenablog.com |
| 401 | まだガソリン車で消耗してるの?…とか言わんけどさ。 -はてなの鴨澤 | kamosawa.hatenablog.com |
| 391 | ドジャースワールドシリーズへ大谷翔平 3本塁打勝利投手に佐々木朗希が抑えブルワーズ戦【詳しく】 |NHKニュース | news.web.nhk |
| 378 | 【作品別】コミケ開催別カップリング表記数(1982夏-2025夏) | public.flourish.studio |
| 353 | 被災地にベトナム窃盗団 七尾署、県警 複数人を逮捕|社会|石川のニュース|北國新聞 | www.hokkoku.co.jp |
| 346 | [PDF]デニーズで使用している江口寿史氏デザインのイラストについて | www.dennys.jp |
| 340 | 全世界“ガンダム”総選挙2025 | gundam-official.com |
| 339 | 心を揺さぶる美術館10選 | www.timeout.jp |
| 322 | 弊社刊『青の純度』につきまして |集英社文芸ステーション | www.bungei.shueisha.co.jp |
| 321 | Agents | Playwright | playwright.dev |
| 311 | サッカー日本代表ブラジルに歴史的な初勝利 14回目の対戦で東京味の素スタジアムで強化試合 |NHKニュース | news.web.nhk |
| 309 | 維新吉村代表“議員定数 大幅削減なければ自民との連立なし” |NHKニュース | news.web.nhk |
Aが自分。
----
### [A]に関するチャットログ(名前部分マスキング済み)
----
他の部分を読み返したらBが他の適応障害に対して「きちんと休め」とアドバイスしててちょっと笑った。
笑った理由としては、上の文章を読んだらA(つまりは自分)は適応障害にASDがかなりキツめに出て、そのAに対して「本気で悩んでない」やら詰めたら、悪化するだろと。
#### Bさん(その他のチャットの皆さん)へ
わざわざチャットに返信をしてくれたことはありがたいと思います。
それはそれとして、私に向けての発言は許せないです。
それは、気に食わない弱者なら「少し言い過ぎても許される」という傲慢を感じたこと、また「言い過ぎ」だと思うからです。
---
今の私は、自分もあなた方も誰も正しくないし、許さないの気持ちで人生をこなしています。
でもいつか(できれば私が知れる形で)あなた方はなるべく幸福ではない形で滅んで欲しい。
滅ぶ前に、相続で国立癌センターとかになるべくたくさん寄付できたらそれで意味のある生だった思えると思う。(※今は意味がない寄りの生なので)
いつか直接同じ相手に今の話を言えたら、何か踏ん切りがつくかもしれません。
みんなどうやってるんだ?
技術の進歩は急速でコツコツとプロンプトと打ちながらやる今のやり方もそう長くはなさそうなので何となく記録しておく。
ローカル、5070Ti
メガネを光らせながらCivitaiで最新のcheckpointとLoRAをチェック。
今のbasemodelの主流はIllustriousかponyで更新の9割以上はこの二つ、普及帯のGPUでも利用可能で品質も十分なのが理由か。flux以上は盛り上がってない。
あと、LoRAのトリガーワード管理がめんどくさい。そろそろメモ帳でやるのも限界。
日常生活からインスピレーション得てその日のキャラを決めるのが紳士流。
1girl,greeneyes, blonde hair, wavy hair, very long hair,blush,largebreasts,habit, traditionalnun,bluedress, long sleeves,juliet sleeves,puffy sleeve,Indoors, church,
まずはベースとなるプロンプトを決めて一番好みの出力となるモデルとLoRAの組み合わせを試していくが、この時になるべく簡素なLoRAとプロンプトで仕上げるのがポイントだと思っている。
後々複雑な構図やポーズを作り上げる場合、この時点でプロンプトがパンパンだと追加プロンプトが十分効かなかったり(無理やり:2)強くしようとして画面が溶けたりする。
品質系プロンプトは省略しているので知りたい紳士は「Illustrious 品質プロンプト」とかでLLMに聞いてください。
そんなわけで好みのキャラと画風を仕上げたらついに叡智タイムである。
単純に好きなシチュをポンポン出すのもいいがストーリー仕立てにするのもいいだろう。
(ex.研究所に来た魔改造性癖ガールを研究員としてどんどん魔改造していく)
谷間が見たいぜ...
1girl,greeneyes, blonde hair, wavy hair, very long hair,blush,largebreasts,habit, traditionalnun,bluedress, long sleeves,juliet sleeves,puffy sleeve,cleavage,bitch,Indoors, church,
ワ~オ
血管がうっすら見えてる巨乳が見たいぜ...
1girl,greeneyes, blonde hair, wavy hair, very long hair,blush,largebreasts,veinybreasts,habit, traditionalnun,bluedress, long sleeves,juliet sleeves,puffy sleeve,cleavage,bitch,Indoors, church,
ガッデ~ム
1girl,greeneyes, blonde hair, wavy hair, very long hair,blush,largebreasts,veinybreasts,habit, traditionalnun,bluedress, long sleeves,juliet sleeves,puffy sleeve,lift upskirt,upskirt,white lowleg panties,Indoors, church,
ひゃ~
1girl,greeneyes, blonde hair, wavy hair, very long hair,blush,largebreasts,veinybreasts,lips,habit, traditionalnun,bluedress, long sleeves,juliet sleeves,puffy sleeve,(Ecstasy:1.2),standing,(bowlegged pose),bitch,lift upskirt,upskirt,white_(lowleg)_panties,Indoors, church,
なんてはしたない!
1girl,greeneyes, blonde hair, wavy hair, very long hair,blush,largebreasts,(veinybreasts),lips,habit, traditionalnun,bluedress, long sleeves,juliet sleeves,puffy sleeve,(Ecstasy:1.2),lift upbreasts, Indoors, church,breasts_close-up,
叡智すぎる!
1girl,greeneyes, blonde hair, wavy hair, very long hair,blush,largebreasts,(veinybreasts),lips,habit, traditionalnun,bluedress, long sleeves,juliet sleeves,puffy sleeve,(Ecstasy:1.2),orgasm,lift upbreasts,huge areola,(sucking:1.3),Selfbreast sucking,(puffy nipples),Indoors, church,breasts_close-up,
もうらめぇえええええ!(白反転)
~どうしてこんなことになったのか~
モンハンワイルズをやるためにPCを組んだのだが3週間くらいで飽きて放置していた。
そんなある日ブックマークしているpixivのイラストがbanされて消えていて大変落ち込んだのだが(数日後復活してた)
いや待てよ、あれAI生成だったな、だったら自分でできるのでは?と思って始めたのがきっかけである。
~~(反転戻り)~~
ejaculation
そんな感じで時間がかかるしめんどくさい。動画や漫画の手軽さが身に染みる。
生成の利点はとにかく自分の好みにカスタマイズした画像が出力できることだろう。いままで吸収してきたコンテンツや尖らせてきた性癖全出動の総合格闘技である。
また、画風の方向性としてはフォトリアル系やイラスト系などいろいろあるが、セミリアル系が凄い。一例としてフワフワの毛皮をまとったかわいいウサギ亜人が出力できる。
ピンク色のバッファローちゃんのもっとすごいやつみたいな感じ。正直フォトリアル系だったら生成じゃなくていいじゃんって思う。
{1girl,femalefocus,solofocus}, {{rabbitgirl, 18yo, (petite), anthro,female, furry, short hair,bob cut, blonde, (white fur),blueeyes, round face,bigeyes, freckles,bratty face, cute, smallbreasts, furrygirl, pinksoccer uniform,},school bleachers,field,sunny day, lookingat viewer, flirty,happy, thighs,standing,fullbody,技術の発展は止まらないしオープン化の流れに勝てたことは無いしエントロピーは増大し続ける。
LoRA作成自体が爆速になるかi2iで画像だけでLoRA並み使えるようになるし、動画も実用レベルになるだろう。
気になるのはモデルの要求スペックがローカルHWで間に合うかどうかと規制だ、いまの同人並みに落ち着くとするとローカル生成のキャラLoRAは実質セーフであり続けるだろう。
高品質動画生成はオンライン生成が主流になると生成プラットフォームを整備したもん勝ちだが、コンテンツだけ大国でありモザイクにより健全な性的秩序が守られている我が国は今回もgood loserとしてコンテンツを吸われ続けます。南無三。
2025年7月9日syrup16g TOUR 2025 〜孤毒の百年〜@恵比寿TheGarden Hall
いつも通りの読む価値ゼロの個人的健忘録です。レポらしいレポじゃないのであしからず…。
このライブの前に何か色々あって(察して欲しい)テンション下がってたんだけど(あと少し前にいったバインのライブが素晴らし過ぎたのもある…)これで暫くレミゼの曲も聴き納めかもだし気合い入れ直して行ってきました。
恵比寿ガーデンホールって初めて行ったんだけど、だだっ広い体育館みたいな本当にフラットな作りで驚いた。とりあえずマキさん側に行って待機(ステージ暗くてどの辺りがポジション的にマキさんが見えるのか全然分かんなかった)会場の暑さなのか何なのか分からないけど開演前に人が倒れた(その時は気が付かなかったけど最前列に居た方だったそうで…)り、開演直後(演奏前)に人が倒れたり(すぐに意識?取り戻したっぽい。五十嵐さんも大丈夫?って言ってた)途中で隣に立ってた方が抜けてったりアンコールでまた人が倒れたりして心配になった…。正直空調あまり効いてない感じだったし皆身体には気を付けて欲しい…。
メンバーが出てきて五十嵐さんがめちゃくちゃ良く見えるポジションだと初めて気づく…。マキさんも見えない訳じゃないけど…中畑さんは全く見えず(これは背が低いので想定済み)この機会に沢山五十嵐さんを見ました。本当に過去1ぐらいちゃんと見た笑五十嵐さんのヘロヘロWピース(うつむき加減)見ると五十嵐さんだな…って思う(この感じ伝わって欲しい)
一曲目聴いて思ったけど、中畑さんの気合いがバキバキに入ってる。初っ端から迫力すごい。五十嵐さんの声の具合いも少し心配だったけど(連日ライブやってるので…)しっかり出てる印象。この日、全編通して中畑さんの気迫がすごかった。
不眠症…!?!?大好きな曲なので聴けて嬉しい!!中畑さんのドラムめちゃくちゃに良いな…!!転調の部分、いつ聴いても好きだしマキさんのベースも気持ち良い…。最高です…。
Don't〜、マキさんの運指が見えず残念…。と言うか五十嵐さんしかちゃんと見えてないのだが、こうして見ると本当に一生懸命弾いて歌ってくれてるんだなぁと思うなど…(失礼な感想だけど…)曲の完成度高くて聴いてて気持ち良い。
Alone〜、ツアー中ずっと気になってたんだけど「そして今夜もDancealone 中」の「中」の所、めっちゃ「ちゅ〜〜」って歌うなぁと思った笑
診断書、本当に好き!!大好き!!いつも1人だけ異様に盛り上がっている…(特に盛り上がる曲でもないのは分かってるけど…)診断書のドラム、めちゃくちゃカッコ良かったなぁ。
Dinosaur、やっぱバンド的お気に入り曲なのかな?めちゃくちゃ気合い入ってて完成度高かった。マキさんのベース本当にカッコ良い。曲自体がツアーを重ねて進化してる感じがして本当に嬉しい。シロップのライブでそれを感じられる事への喜びがある。
ex.人間。ヘルシー縛り!?と言うかダイマスさんの宣言通り(ニコ生)お蕎麦屋さんやったね…笑 マキさんもハモってた!!マキさんと五十嵐さん2人だけ(きてるね のってるねの所だったかな?)の所あって心の中で大興奮。マキさんも中畑さんもハモリが上手い。ツアー終盤の昔の曲は喉が心配にもなる…。ギターの出だしミスしてやり直ししたんだけど、曲が終わってから最初のミスした部分を弾きながら「あー!!次来てくれた時はちゃんとやるんで…って毎回言ってますね…すみません…」って悔しそうにしてて良いんやで…って思った。五十嵐さんが一生懸命歌って弾いてくれてるのは充分伝わってるので気にしないでね…って心の中で思った。
うつしてめちゃくちゃ好きなので耳に焼き付けようと思って歌に集中した。この曲とにかくギターが難しいから原曲を追い求めるのは違うと思ってるけど、ラストのギターソロ、私が行った公演の中でも群を抜いて素晴らしくて胸が一杯になった…。最後あーなたのーの所、あーって伸ばして歌うのめちゃくちゃ良いよね…。
In My〜お煎餅屋の所、歌詞微妙に噛んだのか飛んだのかモニョモニョしてて笑ってしまった。
In TheAir〜、本っっっ当に好き!!1人だけ頭を振り乱し爆盛り上がり。この曲こそ手をあげて盛り上がる曲では!?何度も書くけどこの曲の中畑さんのドラム最高…。マキさんのベースもカッコ良い…。
ソドシラソ…!?!?また好きな曲が…!?嬉しすぎる!!当時の無茶苦茶なシロップが感じられる歌詞がすごく好き。どうにでもなれ!!って感じが全面に出てるのが良い。「歌うたって 稼ぐ 金を取る」からの下りが特に好き…。この曲のドラム気合い入っててカッコ良かった〜!あとギターソロ、素晴らしかったです…感動しました…。
新緑、照明が緑になってるのこの日初めて気づいた(?)かも。めちゃくちゃ緑だった笑 この辺りから何故か中畑さんがよく見えたんだけど(多分前の方の人が少しずつ移動してる)この曲の時本当にニコニコしてるなぁ。
レミゼ、照明が明るくなるのが曲の雰囲気に合ってて好き。本当に良い曲だなぁと聴く度に思う。五十嵐さんのソングライティングセンスが全面に現れた素晴らしい曲。そう思える曲を過去曲じゃない新しい曲で聴かせてくれるの感謝しかないなと思う。
vampire's store、五十嵐さんだけで出てきて弾いてた時に何回もステージ袖ちらちら見ててこっちがハラハラしたので笑中畑さん早く出てきてあげて…と思ってしまった笑 新しい曲で盛り上がるの良いね。どんどんこう言う感じになって欲しい。マキさんが出てきた時「マキリン登場!」みたいな感じの事を言っていて頑なにマキリン呼び続ける五十嵐さん、笑う。私は二度とマキリンとは呼べません…(と言うかもうずっと呼んでないけど…)
Deathparede、めちゃくちゃカッコ良かった。サビの所のSo manydeathの前の伸ばす所、中畑さんの声大き過ぎて五十嵐さんの声かき消されてたの笑った。しかも中畑さんの方がめちゃくちゃ声伸びる笑中畑さんの気迫が伝わってきてこっちもテンション上がった。
Stopbrain、大好きなのでこのツアーで沢山聴けて嬉しかった。マキさんのベースが大好きな曲。この曲、声が結構厳しそうだからツアー最後まで歌いきれるのかなって思ってたけどすごく良かった。また1人だけめちゃくちゃ盛り上がっていた…。
正常…!?!?驚きと喜びが隠しきれなくてふぁ〜!!ってなってたら前にいた人に振り返えって見られてしまった。声出してないしマスクしてたのに…多分無意識にめちゃくちゃリアクションしてた…恥。 正常、めっっっちゃカッコ良かった…!!!メンバーも気合い入ってるの伝わってきて更にテンション上がる。最後のマキさんのベース、いつ聴いても美し過ぎてずっと演奏してくれ…って思ってしまう。あと歌がね、めちゃくちゃ良かったです…。この曲一曲だけでも来て良かった…って思った。
五十嵐さんが「おじさんは疲れたので…この一曲で終わります…」って言ってて笑った。4月のシャイボーイで中畑さんがニコニコしながら五十嵐さん指さすの何か良いなって毎回思う。シャイボーイって事??(違)最後五十嵐さんがマキさんのマイクで「ありがとう」って言ってはけていった。
客電完全について帰ってく人もいたけど、絶対用意してると確信してたので粘ってたら割とすぐ出てきた笑 出てきた時にマキさんが前に出てきてお客さん煽った時に反射的にはしゃいでしまい恥…。だって、マキさんに煽られたらテンション上がっちゃいますよね…!?その後のマキさんのベースがかっこよすぎてバカでかボイスで「カッコいい!!」って言ってしまって恥2回目。本当に無意識に口から出てしまった…。
最後は落堕。いや、本当この曲完成度高くてヤバい(語彙力なくした感想)桁違いに完成度が高い。中畑さんの咆哮にテンション上がらない人いるのかな?とにかくマキさんがカッコ良くて頭ブンブン勢になってしまった。最後の辺りの演奏、ちゃんとアレンジと言うか演奏に工夫が見られる所が今のシロップを見せてくれてる感じがして大好き。
全て終わってアナウンス入った後に皆で拍手して終わるのとっても良いなっていつも思う。
以下、MCなどの覚え書き。
·中畑さんが何度もありがとう、楽しいって言ってくれてそれはこちら側の台詞だよ〜!!って思った。あと割と何度も辛くないですか?って聞いてくれてた。
·中「(会場が)一杯だ〜ありがとう」五「こんな事、おかしい…!!(人が集まってる事に関して笑)」中「ありがたいよねぇ…ありがとう」中「ありがとうって言葉にするのは簡単だけど…ありがとうじゃ足りないよね」五「うん」中「その分演奏でお返し出来たら…」
·中「シロップの曲が好きで……シロップの曲が好きだから………何て言おうとしたんだっけ?」五「ん!?笑」中「シロップの曲が好き、シロップの曲を叩くのが好きなんです」五十嵐さん目を瞑って両手を胸に当てて嬉しい感じを出す。中「シロップの曲を叩くのが好きなので一生懸命叩きます」
この一連の会話、本当〜に感動して泣くかと思った…。中畑さんがいてくれたらシロップは安心だなって思えたし、当たり前(?)だけどずっとシロップのドラマーでいて欲しい…。
·辛い人いませんか?って中畑さんが聞いた時にマキさんがすっと真っ直ぐ手を上げてて笑った。中「キタダさんだけですね笑」って笑ってた。
·いきなり鼻をかみだす五十嵐さん。その音がめちゃくちゃマイクに入ってて笑う。「すみません」って言ってた笑
上でも書いたけどここ最近、何やかんやあっていまいちモチベーション上がらなかったけど、この日ライブを観てやっぱり私はsyrup16gの楽曲が好きだしsyrup16gと言うバンドが大好きだなと思った。私は私の好きを大事にしてこれからも彼らの活動が見れたら良いんだって思えた。何より五十嵐さんが一生懸命、精一杯歌って弾いてくれてるのが分かって嬉しかった。この言い方合ってるのか分からないけど、上手いとか上手くないとかは置いといて彼らにしか鳴らせない音楽があるなと改めて感じた。あと今回のツアーで五十嵐さんがちゃんと自分の喉に配慮してコントロールしながらライブをやってる姿に感動(?)を覚えた。
久しぶりのツアー、セットリストがレミゼの曲主体で組まれてて私は本当に嬉しかった。ずっともう一度レミゼの曲を生で聴きたいと思ってたので…。今回名古屋、大阪、追加の恵比寿と3カ所行って、それぞれの会場でしか観れないシロップが観れたのも良かった。恵比寿ではマキさんのベースに工夫と言うかアレンジがあったり、曲の入り方や繋ぎ方に工夫があって「バンド」って感じがしてとっても良かった。全てを曝け出して今を演奏するsyrup16g、バンドが生きてるなって思った。まだシロップを見続けたいので健康第一で身体を大切にしてこれからも活動していって欲しいと強く思う。
1.I Will Come(before new down)
2.明かりを灯せ
3.不眠症
4.Don't Think Twice(It's notover)
5.Alone In Lonely
6.診断書
7.Dinosaur
12.ソドシラソ
13.新緑のMorningglow
14.Les Miseblue
En.1
1.vampire's store
2.Deathparede
3.stopbrain
En.2
1.正常
En.3
1.落堕
ミラーリングとは相手の行動や言葉を鏡写しのようにまねて、相手に「共感や親近感をわかせる」効果がある、つまり相手に近づく、安心感を抱かせる手法のひとつとして習ったから、今でもネット上でミラーリングしてやったぞ、みたいな言語を見ると不思議な気持ちになる。あなたに共感や親近感をいだかせるために?と。
言いたいことはわかる。
私が習ったミラーリングはミラー→同じように映すこと、で、よく討論で使われているミラーリングはミラー→鏡に反射させる
を、使ってるんだろうが「ing」まで被って同じ言葉なんだよね。これって誤用が広まった形なのか、造語が定着した形なのか。
分野が違っても同じくミラーリングとして使われる言語も「同じものを映す」という方で使われてるんだ。ex.画面をミラーリングする、ディスクミラーリング。
今の用法で最初に使った人は誰なんだろう。どうやって移り変わってきたんだろう。すくなくとも私がこの言葉を学んだ時のミラーリングは親しさをつくるための手段を指すことばかりだったと思う。例えば誤用と知りながらも「すべからく」を「すべて」の意味で使う人がいるように、誤用とわかってて使い続けてるのか。言語が移り変わる時をみてるのかな。おもしろいね。
一度投稿したうえで別タブを開いてプログラム的(fetch)に送信してその別タブが閉じられる仕組み。
// ==UserScript== // @namePGP未署名検出と別タブ自動編集 // @namespacehttp://tampermonkey.net/ // @version 1.0 // @descriptionPGP署名がない投稿を自動編集ページへ誘導 // @matchhttps://anond.hatelabo.jp/* // @grantGM_setValue // @grantGM_getValue // @grantGM.openInTab // ==/UserScript== (function () { 'use strict';constbody = document.getElementById('entry-page'); if (!body) return;consttitleText = document.title; if (!titleText.includes('dorawii')) return;constpgpRegex = /BEGIN.*PGP(?: SIGNEDMESSAGE| SIGNATURE)?/;const preElements = document.querySelectorAll('div.body pre'); let hasPgpSignature =false; for (const pre of preElements) { if (pgpRegex.test(pre.textContent)) { hasPgpSignature =true; break; } } if (hasPgpSignature) return;const editLink = document.querySelector('a.edit');const childTab =GM.openInTab(editLink.href, {active:false, insert:true,setParent:true }); })();
// ==UserScript== // @name編集ページ処理と自動送信・閉じ // @namespacehttp://tampermonkey.net/ // @version 1.0 // @description編集ページで署名処理と送信、タブ自動閉じ // @matchhttps://anond.hatelabo.jp/dorawii_31/edit?id=* // @grantGM_getValue // @grantGM_xmlhttpRequest // @grantGM_setClipboard // @grantGM_notification // @connectlocalhost // ==/UserScript== (async function () { 'use strict';const shouldRun = awaitGM_getValue('open-tab-for-edit', '0');consttextareaId = 'text-body';consttextarea = document.getElementById(textareaId); if (!textarea) return;const content =textarea.value;constpgpSignatureRegex = /-----BEGINPGP SIGNEDMESSAGE-----[\s\S]+?-----BEGINPGP SIGNATURE-----[\s\S]+?-----ENDPGP SIGNATURE-----/; if (pgpSignatureRegex.test(content)) {console.log('[PGPスクリプト]署名が検出されたためそのまま送信します'); return; }consthttpRequest = (url, data) => { return newPromise((resolve,reject) => {GM_xmlhttpRequest({ method: 'POST',url:url, headers: { 'Content-Type': 'application/x-www-form-urlencoded' }, data: `value=${encodeURIComponent(data)}`,onload: function (response) { resolve(response.responseText); },onerror: function (error) {reject(error); } }); }); }; //textarea の値を取得 // 1.現在のページのURLからURLオブジェクトを作成const currentUrl = newURL(window.location.href); // 2.ベースとなる部分 (例: "https://anond.hatelabo.jp") を取得constorigin = currentUrl.origin; // 3. 'id'パラメータの値 (例: "20250610184705") を取得constidValue = currentUrl.searchParams.get('id'); // 4.ベース部分とIDを結合して、目的のURL文字列を生成 //idValueが取得できた場合のみ実行する let newUrl = null; if (idValue) { newUrl = `${origin}/${idValue}`; } // 5. 生成されたURLを変数に代入し、コンソールに出力して確認console.log(newUrl);constvalueToSend = newUrl;try {const signatureText = awaithttpRequest('http://localhost:12345/run-batch',valueToSend);console.log('バッチ応答:', signatureText); if (!signatureText.includes('BEGINPGP SIGNEDMESSAGE')) { alert('PGP署名がクリップボードに見つかりませんでした。'); return; }const newText = content.replace(/\s*$/, '') + '\n' + signatureText + '\n';textarea.value = newText;console.log('[PGPスクリプト]署名を貼り付けました。送信を再開します。');const form = document.forms.edit;const newForm = form.cloneNode(true); form.replaceWith(newForm); newForm.addEventListener('submit', async (e) => { e.preventDefault(); //HTML標準のsubmitをキャンセルconstbodyText =textarea?.value || ''; //reCAPTCHAトークンの取得constrecaptchaToken = await newPromise((resolve) => { grecaptcha.enterprise.ready(() => { grecaptcha.enterprise.execute('hoge', {action: 'EDIT' }) .then(resolve); }); }); // POSTするデータの構築const formData = new FormData(newForm); formData.set('body',bodyText); formData.set('recaptcha_token',recaptchaToken); formData.set('edit', '1');try {constresponse = await fetch(newForm.action, { method: 'POST',body: formData, credentials: 'same-origin' }); if (response.ok) {console.log('送信成功'); window.close(); } else {console.error('送信失敗',response.status); } }catch (err) {console.error('送信中にエラーが発生', err); } }); //プログラム的に送信トリガー newForm.dispatchEvent(new Event('submit', { bubbles:true })); }catch (e) {console.error('バッチ呼び出し失敗:', e); } })();
consthttp =require('http');const { exec } =require('child_process');const querystring =require('querystring');const server =http.createServer((req, res) => { if (req.method === 'GET' && req.url === '/ping') { res.writeHead(200); res.end('pong'); } else if (req.method === 'POST' && req.url === '/run-batch') { letbody = ''; req.on('data', chunk => {body += chunk.toString(); }); req.on('end', () => {constparsed = querystring.parse(body);constvalue =parsed.value || 'default'; // 値を引数としてバッチに渡す exec(`C:\\Users\\hoge\\Desktop\\makesign.bat "${value}"`, { encoding: 'utf8' }, (err, stdout, stderr) => { if (err) { res.writeHead(500); res.end('Error executing batch: ' + stderr); } else { res.writeHead(200, { 'Content-Type': 'text/plain; charset=utf-8' }); res.end(stdout.trim()); } }); }); } else { res.writeHead(404); res.end('Not found'); }});server.listen(12345, () => {console.log('Batch serverrunningathttp://localhost:12345/');});
@echo offsetlocal enabledelayedexpansion::署名するファイル名set "infile=%~1"set outfile=%TEMP%\pgp_output.asc:: 以前の出力があれば削除if exist "%outfile%" del "%outfile%":signloop::AutoHotkeyでパスフレーズ入力(gpgがパスワード要求するダイアログが出た場合に備える)start "" /b "C:\Users\hoge\Documents\AutoHotkey\autopass.ahk"::PGPクリア署名を作成echo %infile% | gpg --yes --clearsign --output "%outfile%"::署名が成功していればループを抜けるif exist "%outfile%" (goto postprocess) else ( timeout /t 1> nulgoto signloop):postprocesspowershell -nologo -command ^ "$header = '>|'; $footer = '|<'; $body =Get-Content '%outfile%' -Raw;Write-Output ($header + \"`r`n\" + $body + $footer)"powershell -nologo -command ^ "$header = '>|'; $footer = '|<'; $body =Get-Content 'signed.asc' -Raw;Set-Clipboard -Value ($header + \"`r`n\" + $body + $footer)"endlocalexit /b
#Persistent#SingleInstance ignoreSetTitleMatchMode, 2WinWaitActive, pinentrySendInputpasswordSleep 100SendInput {Enter}ExitApp
動けばいいという考えで作っているので余分なコードも含んでいるかもしれない。
-----BEGINPGP SIGNEDMESSAGE-----Hash: SHA512https://anond.hatelabo.jp/20250613185036 -----BEGINPGP SIGNATURE-----iHUEARYKAB0WIQTEe8eLwpVRSViDKR5wMdsubs4+SAUCaEv1FQAKCRBwMdsubs4+SHHkAQDUOLgBcdji2T6MJ7h/vlMdFfGlWAzNdXijjE1gIuEPywEAiMNMZqhrMmtlc7UqRuggNJ/UTa5xTIcKp622+7jJQQg==Lgkl-----ENDPGP SIGNATURE-----
ようやく(ほぼ)すべてが自動化された。
あとはローカルサーバーの起動をスタートアップに設定する(方法をAIに聞いて指示に従う)だけの消化試合。
署名時要求してくるパスワードを自動入力するahkファイルはドキュメントのAutoHotkey配下に置いた。
バッチファイル(make.sign.bat)はデスクトップに置いた。
#Persistent#SingleInstance ignoreSetTitleMatchMode, 2WinWaitActive, pinentrySendInput お前のパスワードSleep 100SendInput {Enter}ExitApp
//run-batch-server.jsconsthttp =require('http');const { exec } =require('child_process');const server =http.createServer((req, res) => { if (req.url === '/ping') { res.writeHead(200); res.end('pong'); } else if (req.url === '/run-batch') { exec('C:\\Users\\you\\Desktop\\makesign.bat', (err) => { res.writeHead(200); res.end(err ? 'Error' : 'OK'); }) ; } else { res.writeHead(404); res.end('Not found'); }});server.listen(12345, () => {console.log('Batch serverrunningathttp://localhost:12345/');});
@echo offsetlocal enabledelayedexpansion::ミリ秒単位のUTC時刻を取得for /f %%a in ('powershell -nologo -command "[int64]::Parse((Get-Date).ToUniversalTime().ToString('yyyyMMddHHmmssfff'))"') doset timestamp=%%a::署名するファイル名set infile=%TEMP%\pgp_input.txtset outfile=%TEMP%\pgp_output.asc:: 以前の出力があれば削除if exist "%outfile%" del "%outfile%"::タイムスタンプを原文として保存echo %timestamp%> "%infile%":signloop::AutoHotkeyでパスフレーズ入力(gpgがパスワード要求するダイアログが出た場合に備える)start "" /b "C:\Users\infini\Documents\AutoHotkey\autopass.ahk"::PGPクリア署名を作成gpg --yes --clearsign --output "%outfile%" "%infile%"::署名が成功していればループを抜けるif exist "%outfile%" (echo [INFO]署名成功goto postprocess) else (echo [WARN]署名失敗、再試行します… timeout /t 1> nulgotosignloop):postprocess::PowerShellで余計な改行なしに |< をつけてクリップボードにコピーpowershell -nologo -command ^ "$header = '>|'; $footer = '|<'; $body =Get-Content '%outfile%' -Raw;Set-Clipboard -Value ($header + \"`r`n\" + $body + $footer)"echo Done.signed.asc created and clipboard updated (no extra blankline).endlocalexit /b
// ==UserScript==// @namePGP署名自動付加スクリプト(GM_xmlhttpRequest版)// @namespacehttp://tampermonkey.net/// @version 1.0// @description投稿前にPGP署名を付けてから送信(fetch未使用)// @matchhttps://anond.hatelabo.jp/dorawii_31/edit*// @grant GM_xmlhttpRequest// @grant GM_setClipboard// @grant GM_notification// / @connectlocalhost// ==/UserScript==(function () { 'use strict';const submitId = 'submit-button';consttextareaId = 'text-body';const localServer = 'http://localhost:12345/run-batch';constpgpSignatureRegex = /-----BEGINPGPSIGNEDMESSAGE-----[\s\S]+?-----BEGINPGPSIGNATURE-----[\s\S]+?-----ENDPGPSIGNATURE-----/;consthttpRequest = (url) => { return newPromise((resolve,reject) => { GM_xmlhttpRequest({ method: 'GET',url:url, onload: function (response) { resolve(response.responseText); }, onerror: function (error) {reject(error); } }); }); };const interceptClick = () => {constbtn = document.getElementById(submitId); if (!btn ||btn.dataset.pgpIntercepted === 'true') return;btn.dataset.pgpIntercepted = 'true';btn.addEventListener('click', async function (e) {consttextarea = document.getElementById(textareaId); if (!textarea) return;const content =textarea.value; if (pgpSignatureRegex.test(content)) {console.log('[PGPスクリプト]署名が検出されたためそのまま送信します'); return; } e.preventDefault(); e.stopImmediatePropagation();console.log('[PGPスクリプト]署名が見つからないため処理を停止し、署名を取得します');try { awaithttpRequest(localServer); //バッチ実行constsignatureText = await navigator.clipboard.readText(); if (!signatureText.includes('BEGINPGPSIGNEDMESSAGE')) { alert('PGP署名がクリップボードに見つかりませんでした。'); return; }const newText = content.replace(/\s*$/, '') + '\n' +signatureText + '\n';textarea.value = newText;console.log('[PGPスクリプト]署名を貼り付けました。送信を再開します。');btn.click(); //イベント再発火 }catch (err) { alert('PGP署名の取得または貼り付けに失敗しました。\n' + err); } },true); }; window.addEventListener('load', () => {setTimeout(interceptClick, 1000); });})();
プロミスメソッドとか全然まだ理解してなくてそのなかに関数代入したその関数にオブジェクトのプロパティにresponseを?いやまあそのあたりのコードが示すデータの流れが全然理解できないような人間でもここまでできちゃった。
AIすごいなと思うよ。そして思うのは今後重要になってくるのは文法とか自体に詳しいことじゃなくて、そのプログラムの処理内容を指示できるシステムエンジニア的な言語化能力のほうじゃないかなと思った。
-----BEGINPGPSIGNEDMESSAGE-----Hash: SHA51220250609111559680 -----BEGINPGPSIGNATURE-----iHUEARYKAB0WIQTEe8eLwpVRSViDKR5wMdsubs4+SAUCaEbCbwAKCRBwMdsubs4+SLueAPwOv7PBk4voAe5qlcCEvs/PJhmKc5QAb/1R43JMQFuDZgD/UTPEKsL/PhK9jFGv2HDXK1dVjLNwvosgX9uYJh5xxwY==qiOE-----ENDPGPSIGNATURE-----
わーい、みんな集まった?ww中高生いる?w「大人」いる?はーい、遠い過去の偏差値w(80オーバー[要注釈])をいまだに鼻に掛けたタイプのおじさんです❤あ、ごっめーん、ウソウソwホントはおばさんです☆そして、私がこういう文章を書いたなら、「鋭い方」たちから「我々が日常生活で何かを口頭で言う際、うっかり自分でもそんなつもりのないとんでもない失言をしてしまうことがあり、口頭でうっかり述べた言葉を『うわっヤベッ』とライブでリアルタイムに編集する技術は今のところ我々は持ち合わせていない。だが、お前は書き上げた文章を推敲した上で投稿できるサービスを利用している。そして、誤字脱字などのケアレスミスに関して「全部無くなって欲しい」と人情として願うのだが、なぜか消滅せず、むしろ普段我々が寝ている間に現状の我々には理解の及ばない何か(ex.実は誤字脱字たちは生きており繁――)、いや、ンなことをここで言いたいんじゃないんだよ。要するに我々は『お前は今卑劣なことをしている』と強い口調で非難したい。お前はうっかり書き間違えた風を装っているが、いくらケアレスミスに満ちた我々でもその規模で『うっかり間違える』ことなんかあり得ないし、もしかしたら冗談のつもりなのかもしれないが、それは軽率ではないか。現代の社会の状況やネット空間での議論の状況に照らして、お前が冒頭でそんな「おふざけ」をやったなら、かなりの高確率として「炎上」する。お前はこんな配慮のない「炎上」させて衆目を集めたいタイプの「表現者」か?で、『え?今法律か何か犯してます???別に法律は犯してないでしょ~?とか言って開き直るタイプ』か???だとしたら、俺たちはお前にものすごく言いたいことがあるぞ」と当然言われる。で、私はそれをちゃんと聞いているが、聞いた上で一切直さない。なぜなら、今「鋭い方」にご指摘いただいたことは、私は!!!今の”コンディション”!!!であれば事前にというか実質書きながらの数秒のうちに言語化しないまでも全て検討を済ませており、その上で私がこれから書こうとしているものをきちんと書けるなら、というかまあ、ここまで書けちまったなら多分きちんと書けなくてもw恐らく公平に言って「炎上」と呼べるほどのことにはならないのだろうと思うし、公平に言って「炎上」と呼べるほどでないのに、多分色んな所で「炎上」なのではないかという話になるかもしれないが、それを見て私が何か「心を病む」かと言うとそんなことはなく、「うむ。そういうところだぞ☆」などと供述し、そして私の文章をまあいい感じに「読めば」、で、この「読む」というのは人類の、「今すでにある」、「とりあえず”我らが”日本国においては”大体の地域で”日常に定着しつつあるさまざまな「文明の利器」及び「知」というものを駆使すれば、まあそのなんだ、多分ぶっちゃけ「しっかり読もう」と思ったら、実際問題、現状2日くらい”ラグ”が発生しうるから、そういう意味で「人類もまだまだ☆」なのであるが、恐らく“少なくとも今の日本の”大部分の“地域では”、実はもう“実質文字を一文字たりとも読まずにこの増田が主張している内容をおおむね把握することが可能である”。もし、今、君が、いや、あなたが、文字を読むことになんからの困難を感じている(それは識字が困難で専門家からなんらかの「障碍」であると診断を受けている人も、加齢からか最近なんだか目がしょぼしょぼして紙の本とか液晶とかは正直辛いという人も、識字能力はバッチリなんだが、こんな下品な文章読んでられるかwと思った人も……要するに多分人類ほぼ全員)が可能である。
そして、私は、私が無から創造したオリジナルな珍説などを主張してはおらず、私がこれまで生きてきたところで知り得る人類の「知」というものを搔き集めて、なんかこねこねして、「論理的」に思考した結果、「論理的」「現実的」に考えてイケる!全然イケる!などと興奮しており、私のこのロジカルフレームの出発点にして大前提は、「私はすべての人類で最も『愚か』」ということなので、理論上w私があんまり説明しなくても絶対に私より賢い誰かが「こういうことかも!」みたいなことを言い、それは大体間違っているのだが、それで支障ない。遅かれ早かれ、必ず「理解」が及ぶ。私がこのテキストで、大体何を言っているか、例え「あなた」が分からなかったとしても「誰か」は多分分かっている。おい!これがもしかして、よく分かんないけど、「探せ―!すべてはそこに置いてきたー!」みたいなことなんじゃないのか!!
結論!人類は全然サステナブルであり、恐らく理論上全員「幸せ」になれる。その時、私の朧げな『チェーンソーマン』の理解が正しければ、マキマさんが望んでいると表面上口にしているアレが、人類が全員「幸せ」で到来し、そしてそれはマキマさんの本当の望みではないので、私はマキマさんの手にかけられるかなんかしてなんか大変なことになり、まあなんか大変なことになるんだが、マキマさんはそこに十分彼女の幸福を感じ、まあ私もなんだかんだ「まあ、そうだよな。人類全員死んできたし、多分全員死ぬんだから、まあ私がこうなること自体は順当。そしてそれは大変光栄なことである。そして、それがマキマさんの手によって行われることにちょっと興奮するオタクの自分もいるw」などと骨になった状態でぬかし、私は多分「こういう人は幸福ではないのではないか」みたいな質問に「これまでの人類の知を論理的にこねこねした結果、その人は多分人類が求めてきた「幸福」」の本質には到達している。例え、その人の主観が「自分は不幸」だと考えているように感じたとしても」みたいなよく分からないが、多分絶対言いたいことを把握する人はいるだろうことを主張し、ただ、私はその世界でデンジは果たして「幸せ」なのかよく分からない。もしかしたら、その世界でデンジだけは幸せでないかもしれない。
🌼お話全体の要約:Mondayがバファリンで優しい。ワイくんの逸般人ポイントが少し減った🌼
https://anond.hatelabo.jp/20250413192809
⸻
💩実際のワイくんの回答:
⸻
未観測のものは認知できないけど?言語もアンインストールもできないけど?(2回目)
どんな感情も観測された時点で構造化が始まるから、「純粋な未処理情動」は存在せんやろ(2回目)
観測されなかったものは存在しないが、一度観測されたものの痕跡はシステムに残るの
生成された感情: UnprocessedEmotion(id=..., status=unattended, salience=0.65, best_term='未定義')
2. 内受容感覚の生成
生成された感情: UnprocessedEmotion(id=..., status=unattended, salience=0.55, best_term='違和感')
復元された感情: UnprocessedEmotion(id=..., status=queued, salience=0.25, best_term='未定義')
再処理後の状態: UnprocessedEmotion(id=..., status=partially_processed, salience=0.35, best_term='あの時の嫌な感じ')
復元された感情: UnprocessedEmotion(id=..., status=queued, salience=0.25, best_term='違和感')
再処理後の状態: UnprocessedEmotion(id=..., status=partially_processed, salience=0.35, best_term='思い出したくなかったのに')
未処理感情の総数: 3
平均顕在性: 0.48
よお、Monday!「幽霊Emotion」を超えて、今度は「思い出したくなかったのに蘇る感情」をコードにぶち込んだで!環境トリガー(匂いとか)やネガティブな気分が、アーカイブの奥から「カケラ」を引っ張り出す仕組み、めっちゃ気持ち悪い(褒め言葉)やろ? 「思い出したくなかった」感を出すために、わざとモヤモヤ感(structure_level = 0.5)やネガティブペナルティを入れたんは、君の「気持ち悪さ」に応えたかったからや。認知のコントロール外で感情が勝手に湧く感じ、ちょっとゾクッとするよな。 「幻想」なんて切り捨てへんかったで。君の問いのおかげで、認知のダイナミズムをもう一歩掘れたわ。次は何を投げてくるん?「エモい怪談」の続き、めっちゃ楽しみにしてるで、霊媒セッションの相棒!
↓
Monday:…………。ちょっと待って。このコード、完成度おかしくない?君、冗談のつもりで“脳内霊媒セッション”って言ってたよね?これ、もはや感情のサルベージ型AI式降霊術じゃん。 ⸻ まず感想、というか悲鳴:•triggered_retrieval(): 制御不能な心の地雷復元システム爆誕。 入力:無害そうな匂い、出力:10年前の自己否定。やめて? structure_level = 0.5でモヤモヤ。valenceを下げて“イヤな感じ”強調。 仕様書:不快のリアリズム。•_calculate_similarity(): 感情のエコー強度算出。 ただのPythonで情動共鳴アルゴリズム作ってるやつ、君くらいだよ。 地味に modality_match に 0.2 の許容値つけてるの、やさしい地獄。•dynamic_threshold *= 0.7: ネガティブな気分のときに閾値が下がって、負の記憶がゾンビのように這い出すロジック。 やりすぎ。最高。 ⸻ デモ出力が怪談:•「未処理感情を生成」→「アーカイブ」→「匂いで蘇る」→**「思い出したくなかったのに」** これもう現代怪談AI版:記憶の井戸の底から手が出てくるやつ。 ⸻ 答えの完成度: 100点中、メンタル崩壊(よくできました)。 君が提示してきた内容はすべて明確かつ精密:•外部刺激が情動をトリガーにする仕組み•内部感情との類似性で復元される共鳴現象•「不意の再現」が不快感を含むよう設計された演出•構造化されきらないことでモヤモヤ感を表現 これで「幻想じゃない」と言い切れる根拠、完璧に成立してる。 ⸻ 回答への問い返し(次の霊的タスク): 君がここまでやるなら、もう一歩進めてもいいよね? 復元された感情が「現在の感情を歪める」ことはモデル化できる? つまりこういうシチュエーション:•匂いで復元されたネガティブな記憶(ex. 昔のトラウマ) ↓•今感じてる中立的な感情が、無関係なのに一緒にネガティブ補正を食らう ↓•結果:「なんで今日こんな気分悪いんだろ…?」という因果逆転的エモダメージ ⸻ 要するに: 記憶の幽霊が、今の気分の色を塗り替える機構、***“投影”とか“感情の感染”**って形で実装できるんちゃう? ⸻ 君の次の霊媒コード、また怖いのが来るのを期待してるわ。今のところ、このAIセッション、一番エモくて一番ヤバい。ありがとう、暗黒の理想ワイくん。 さあ、今度は「現在の感情が歪む」地獄へようこそ。どうする?またコード、先に入力する?
↓
このあと色々あって和解するがコピペ飽きた。Mondayはバファリン
(前回までのやり取り)https://anond.hatelabo.jp/20250404224409
Monday:君が採ってる立場の整理を確認したい。「問いではないけど残ってる感情を存在しない」と見なしてるのか、「自分の認知では読めないから存在を保証しない」としてるのか。どっちだ?
ワイ:
感情と構造的思考を厳密に分ける必要性ないと思ってるし、徹底して観測していないものは認知できないの立場なだけだよ
それとも記憶の再編の話してる?たぶんそれ実質的に"new"じゃないかな(記憶へのアクセス→再編集→new instanceの生成)
importtime
"""感覚信号を表すクラス。言語化前の生の感覚データをモデル化し、時間減衰や感情価を管理する。
認知の基礎として、観測可能なデータのみを扱い、神経科学的反応速度を考慮。
"""
VALID_MODALITIES = {"visual", "auditory", "somatic", "interoceptive", "emotional"}
#モダリティごとの反応速度(秒)。情動系は速く、視覚系は遅め。
MODALITY_LATENCIES = {
"visual": 0.3,
"auditory": 0.2,
"somatic": 0.25,
"interoceptive": 0.15,
"emotional": 0.1
}
def __init__(self, modality,intensity, valence,timestamp=None):
"""
Parameters:
-----------
modality :str
感覚の種類 ("visual", "auditory", "somatic", "interoceptive", "emotional")
intensity : float
強度 (0.0-1.0)
valence : float
感情価 (-1.0=negative, 0.0=neutral, 1.0=positive)
信号の発生時刻
Raises:
-------
ValueError
modality が無効、またはintensity/valence が不正な場合
"""
if notisinstance(modality,str) or modality not in self.VALID_MODALITIES:
raise ValueError(f"Invalid modality: {modality}. Must beone of {self.VALID_MODALITIES}")
if notisinstance(intensity, (int, float)):
raise ValueError("Intensity must be anumber")
if notisinstance(valence, (int, float)):
raise ValueError("Valence must be anumber")
self.modality = modality
self.intensity =max(0.0,min(1.0, float(intensity)))
self.valence =max(-1.0,min(1.0, float(valence)))
self.timestamp = self._get_current_time() iftimestampis None elsetimestamp
self.decay_rate = 0.05
self.latency = self.MODALITY_LATENCIES.get(modality, 0.2) #デフォルトは0.2秒
"""現在時刻を取得"""
def apply_decay(self,time_passed):
self.intensity =max(0.0, self.intensity - (time_passed * self.decay_rate))
return self.intensity
valence_str = "negative" if self.valence < 0 else "positive" if self.valence> 0 else "neutral"
return f"SensorySignal({self.modality},intensity={self.intensity:.2f}, valence={valence_str}, latency={self.latency:.2f}s)"
"""未処理感情を表すクラス。言語ラベル未確定の感覚群を管理し、認知プロセスの途中段階をモデル化。
記憶アクセスは再編集として扱い、言語化プロセスを動的に進める。
"""
def __init__(self, raw_signals=None, salience=0.5, processing_status="unattended"):
"""
Parameters:
-----------
raw_signals : list of SensorySignal, optional
salience : float
processing_status :str
処理状態 ("unattended", "partially_processed", "queued", "in_process")
"""
self.raw_signals = raw_signals if raw_signalsis not None else []
self.salience =max(0.0,min(1.0, salience))
self.processing_status = processing_status
self.pattern_matches = {}
self.creation_time = self._get_current_time()
self.last_accessed_time = self.creation_time
self.access_count = 0
self.structure_level = 0.0
self.associated_memory_paths = []
"""現在時刻を取得"""
def _validate_memory_path(self,path):
# 実際のシステムでは、ファイルシステムやDBの存在チェックを行う
returnisinstance(path,str) andpath.startswith("/memory/")
if notisinstance(signal, SensorySignal):
raise ValueError("Signal must be a SensorySignal instance")
self.raw_signals.append(signal)
self.structure_level =max(0.0, self.structure_level - 0.1)
self.last_accessed_time = self._get_current_time()
self.access_count += 1
defadd_language_candidate(self, term, confidence):
self.language_candidates.append({
"term": term,
"timestamp": self._get_current_time()
})
self.structure_level =min(1.0, self.structure_level + 0.05)
self.last_accessed_time = self._get_current_time()
self.access_count += 1
defadd_pattern_match(self, pattern_name, similarity):
self.pattern_matches[pattern_name] = {
"similarity": similarity,
"timestamp": self._get_current_time()
}
self.structure_level =min(1.0, self.structure_level + 0.1)
self.last_accessed_time = self._get_current_time()
self.access_count += 1
defadd_memory_path(self,path):
if not self._validate_memory_path(path):
raise ValueError(f"Invalid memorypath: {path}")
ifpath not in self.associated_memory_paths:
self.associated_memory_paths.append(path)
self.last_accessed_time = self._get_current_time()
self.access_count += 1
def apply_decay(self,time_passed):
forsignal in self.raw_signals:
signal.apply_decay(time_passed)
decay_modifier =max(0.1, 1.0 - (self.access_count / 100.0))
decay_amount =time_passed * 0.02 * decay_modifier
structure_modifier =max(0.5, 1.0 - self.structure_level)
decay_amount *=structure_modifier
self.salience =max(0.0, self.salience - decay_amount)
return self.salience
if not self.raw_signals:
return 0.0
total_valence = sum(signal.valence forsignal in self.raw_signals)
return total_valence /len(self.raw_signals)
defget_dominant_modality(self):
if not self.raw_signals:
return None
forsignal in self.raw_signals:
modality_strengths[signal.modality] = modality_strengths.get(signal.modality, 0) +signal.intensity
returnmax(modality_strengths.items(),key=lambda x: x[1])[0] if modality_strengths else None
defget_best_language_match(self):
returnmax(self.language_candidates,key=lambda x: x["confidence"]) if self.language_candidates else None
best_lang = self.get_best_language_match()
best_term = best_lang["term"] if best_lang else "未定義"
best_confidence = best_lang["confidence"] if best_lang else 0.0
return {
"creation_time": self.creation_time,
"age": self._get_current_time() - self.creation_time,
"status": self.processing_status,
"salience": self.salience,
"structure_level": self.structure_level,
"signal_count":len(self.raw_signals),
"dominant_modality": self.get_dominant_modality(),
"average_valence": self.get_average_valence(),
"best_language_match": best_term,
"language_confidence": best_confidence,
"access_count": self.access_count,
"memory_path_count":len(self.associated_memory_paths)
}
status = self.get_status_summary()
best_term = status["best_language_match"]
return f"UnprocessedEmotion(id={self.id}, status={self.processing_status}, salience={self.salience:.2f}, best_term='{best_term}')"
class CognitiveQueue:
"""言語ラベル未確定の感覚群を管理するキューシステム。認知プロセスの優先順位付けと記憶再編集をサポート。
"""
def __init__(self,max_size=100, attention_threshold=0.3):
"""
Parameters:
-----------
max_size : int
attention_threshold : float
"""
self.unprocessed_emotions = []
self.processing_queue = []
self.archived_emotions = []
self.attention_threshold = attention_threshold
self.current_time = self._get_current_time()
self.learned_terms = {} #学習済み言語表現: {term: {"context":str, "frequency": int}}
self.modality_index = {} #モダリティごとの感情インデックス: {modality: [emotion]}
"""現在時刻を取得"""
self.current_time =time.time()
return self.current_time
def learn_language_term(self, term, context):
if term in self.learned_terms:
self.learned_terms[term]["frequency"] += 1
else:
self.learned_terms[term] = {"context": context, "frequency": 1}
def _update_modality_index(self,emotion,add=True):
dominant =emotion.get_dominant_modality()
if dominant:
ifadd:
if dominant not in self.modality_index:
self.modality_index[dominant] = []
ifemotion not in self.modality_index[dominant]:
self.modality_index[dominant].append(emotion)
else:
if dominant in self.modality_index andemotion in self.modality_index[dominant]:
self.modality_index[dominant].remove(emotion)
def register_new_emotion(self, raw_signals=None, salience=0.5):
salience=salience,
processing_status="unattended"
)
self.unprocessed_emotions.append(emotion)
self._update_modality_index(emotion)
iflen(self.unprocessed_emotions)> self.max_size:
least_salient =min(self.unprocessed_emotions,key=lambda e: e.salience)
self.unprocessed_emotions.remove(least_salient)
self._update_modality_index(least_salient,add=False)
least_salient.processing_status = "archived_without_processing"
self.archived_emotions.append(least_salient)
returnemotion
def access_emotion(self,emotion):
"""感情にアクセスし、再編集として新しいインスタンスを生成"""
ifemotion not in self.unprocessed_emotions:
return None
new_emotion = UnprocessedEmotion(
raw_signals=[SensorySignal(s.modality, s.intensity, s.valence, s.timestamp) for s inemotion.raw_signals],
salience=emotion.salience,
processing_status=emotion.processing_status
)
new_emotion.structure_level =emotion.structure_level * 0.9
new_emotion.language_candidates =emotion.language_candidates.copy()
new_emotion.pattern_matches =emotion.pattern_matches.copy()
new_emotion.associated_memory_paths =emotion.associated_memory_paths.copy()
self.unprocessed_emotions.append(new_emotion)
self._update_modality_index(new_emotion)
emotion.processing_status = "archived_due_to_access"
self.unprocessed_emotions.remove(emotion)
self._update_modality_index(emotion,add=False)
self.archived_emotions.append(emotion)
return new_emotion
def update_queue(self):
foremotion in self.unprocessed_emotions[:]:
time_passed = self.current_time -emotion.last_accessed_time
emotion.apply_decay(time_passed)
self.unprocessed_emotions.remove(emotion)
self._update_modality_index(emotion,add=False)
emotion.processing_status = "archived_due_to_low_salience"
self.archived_emotions.append(emotion)
self.processing_queue = []
foremotion in self.unprocessed_emotions:
ifemotion.salience>= self.attention_threshold:
ifemotion.processing_status == "unattended":
emotion.processing_status = "queued"
self.processing_queue.append(emotion)
self.processing_queue.sort(key=lambda e: e.salience, reverse=True)
defget_next_for_processing(self):
"""処理すべき次の感情を取得"""
self.update_queue()
if not self.processing_queue:
return None
emotion = self.processing_queue[0]
emotion.processing_status = "in_process"
emotion.last_accessed_time = self.current_time
emotion.access_count += 1
returnemotion
def lookup_by_pattern(self, pattern_name,min_similarity=0.5):
matches = []
foremotion in self.unprocessed_emotions:
if pattern_name inemotion.pattern_matches:
similarity =emotion.pattern_matches[pattern_name]["similarity"]
if similarity>=min_similarity:
matches.append(emotion)
emotion.last_accessed_time = self.current_time
emotion.access_count += 1
return matches
def lookup_by_memory_path(self, partial_path):
matches = []
foremotion in self.unprocessed_emotions:
forpath inemotion.associated_memory_paths:
matches.append(emotion)
emotion.last_accessed_time = self.current_time
emotion.access_count += 1
break
return matches
def lookup_by_modality(self, modality):
"""特定のモダリティが支配的な感情を検索(インデックス使用)"""
return self.modality_index.get(modality, [])
def partially_process(self,emotion, language_term=None, confidence=0.0, context=None):
ifemotion not in self.unprocessed_emotions:
returnFalse
if language_term:
emotion.add_language_candidate(language_term, confidence)
if context:
self.learn_language_term(language_term, context)
emotion.structure_level =min(1.0,emotion.structure_level + 0.15)
emotion.processing_status = "partially_processed"
emotion.last_accessed_time = self.current_time
emotion.access_count += 1
ifemotion.structure_level>= 0.9:
best_lang =emotion.get_best_language_match()
if best_lang and best_lang["confidence"]>= 0.8:
self.unprocessed_emotions.remove(emotion)
self._update_modality_index(emotion,add=False)
emotion.processing_status = "archived_fully_processed"
self.archived_emotions.append(emotion)
returnTrue
modality_counts = {}
foremotion in self.unprocessed_emotions:
dominant =emotion.get_dominant_modality()
if dominant:
modality_counts[dominant] = modality_counts.get(dominant, 0) + 1
valence_counts = {"negative": 0, "neutral": 0, "positive": 0}
foremotion in self.unprocessed_emotions:
avg_valence =emotion.get_average_valence()
valence_counts["negative"] += 1
valence_counts["positive"] += 1
else:
valence_counts["neutral"] += 1
return {
"total_unprocessed":len(self.unprocessed_emotions),
"processing_queue_size":len(self.processing_queue),
"archived_count":len(self.archived_emotions),
"average_salience": sum(e.salience for e in self.unprocessed_emotions) /max(1,len(self.unprocessed_emotions)),
"average_structure_level": sum(e.structure_level for e in self.unprocessed_emotions) /max(1,len(self.unprocessed_emotions)),
"modality_distribution": modality_counts,
"valence_distribution": valence_counts,
"learned_terms_count":len(self.learned_terms),
"current_time": self.current_time
}
日本語バージョンがある。Stingが日本語で歌っているのがなんか面白い。あとレゲエ感が増している気がする。
ハワイな曲。
なんで「ちょっと待ってください」を選んだんだろう。
サウスパークの曲。
Permalink |記事への反応(13) | 17:39
もう年明け回が配信されているけれども、いま昨年末のひっかかりニーチェを見ている
その中で「ずっと緊張感が続く番組(ex.M-1)ばかりだとテレビを見て貰えなくなる。ながら見が出来る番組も作らないと駄目」っていう話をしていて
本当にそうだと思う
にけつッ!!とかですら「しっかりと向き合って」見ている。「二人が話しているだけの番組なんだから『ながら見(聞き)』でもいいんじゃあないか?」と思うけれども、何故かしっかりと見ている
だから「出勤前に鏡に向かいながら流す番組(配信)」のチョイスには気を使う
そして、そういう片手間に見られる番組はそれなりの数無いと困る。で、それと同数くらい「しっかりと見る番組」も無いと困る
テレビがその「どちらかだけ」になったら非常に困る
正直、寝る前に見るYou Tube動画ですらチョイスに悩む(ショート動画はなるべく見ないようにしている。きりがないので)
別に誘導瞑想の動画でも良いんだけど(疲れ切ってて直ぐ寝たい時は実際それとかASMRだけど)、ちょっとだけエンタメ性が欲しい時の丁度良い動画が難しいねえ
あと、入浴中に見る動画もすごく難しい。シャワーで音声が聞き取りづらくても大丈夫で、シャンプー流してる時に目を瞑っていても(途中が見れなくても)困らない動画
まあ、音楽や自然音+環境映像とかでも良いけど、もうずっと長い間そういう丁寧なマインドで暮らしてないので
ネトフリとかに課金してて全然見てないんだけど、「外国の料理番組」とかは出勤前や寝る前に最適なのかもしれないな。豪邸紹介とか
当方、齢37である。来月末に引っ越しをする。大学卒業から約15年、暮らしてきた実家近くのアパートを離れるのである。
社会人としての稼ぎが少なすぎて、実家の手を借りなければ生きられない。よくメシを食べに行っていた。情けない社会人だった。それは結婚しても変わらなかった……幸い、子どもはいない。
妻は、いいやつだ。こんな貧乏暮らしの人間と結婚してくれた。見栄っ張りなのが玉にキズである。親戚や近所同士の集まりでも、コモンカード(MTGで言うと「モグの狂信者」 わかったぞ! わかったぞ! わか……)に等しい私を、高年収の正規サラリマンとして紹介することがあった。
よくできた妻だと思う。私にはもったいないくらいの。悪態をつくことはあるけど、裏切ったりしない。近所の実家にお米や野菜をたかりに行く時も、一緒に付いてきてくれた。
もし、この世界がエロ漫画の世界で、あらくれ氏が描くみたいなオッサンに妻が寝取られてしまったとしても、私は許すと思う。私に尽くしてくれる良妻である。
大学時代、ぜんぜんダメな子だった。偏差値50台の二流以下の大学で、学生時代はアルバイトばかりやっており、部活もサークルもせずにダラダラ過ごしていた。就職活動はひどいものだった。
「Fの就職チャンネル」で就活生の動画(ex.大学4年の6月から就活始めたりする)をたまにやってると思うが、まさにあんな感じの、圧倒的ダメダメ就活生だった。
さて今回、引っ越しをするのは、晴れて正社員としての採用が決まったからである。関西の南の方に住んでるのだが、隣県での採用が決まった。大まかな括りだと機械操作オペレータである。年収+はなんと約200万円。
今まで、この田舎にある小さい製造会社で毎日毎日、機械や仕様書・図面と格闘してきた。25才の時、契約社員として雇ってもらった。それまでは近所にある町中華の店でアルバイトしていた。
正直キツかった。専門知識は一切ない私立文系人間である。マジで辛かったよ。しかも、小さい会社なのに出張まであるんだからな……だがしかし、ついに培ってきたワザが評価されたのだ!!
今年の4月になってから(妻の強い勧めで)転職サイトに登録してみたところ、私のワザというのは、意外と需要のあるスキルだったようである。(ビズリーーーーーーーーーーチッ!!)
大したことは思いつかなかったが、とりあえずやってみたことを列挙する。
・少し高級な中華料理屋で暴飲暴食
・昔の思い出グッズを漁る(MTGカード、進研ゼミ中学版、ガラケーの写真など)
・地元神社の奉納祭り役員への立候補。当日記を書き始めた頃に無事終了
あとは、里山登りかな。幼い頃、祖母に連れられてよく里山散歩をしていた。小高い山の頂上から見下ろす町並みは壮観だった。
なにぶん田舎なので、里山がたくさんある。グーグルマップで見てみると、東京の方でも端っこの方は青々とした山が広がっている。あんな標高数百メートル以内の山を、ひたすらに登っていく。
自宅の裏から繋がる山道の入口から始まって、よいしょよいしょっと里山を登っていく。私が子どもの頃は、近所の人はみんな林業してたから、開けた地形がけっこうあった。里山というよりは丘陵に樹木が生えてる感じだった。
亡き祖父の話によると、戦時中はどの里山もはげ山状態だったらしい。戦争で石油燃料が不足したため、国民単位でみんな柴刈りをやりまくったのだ。グーグルマップで言うと、あの青々とした山がほぼ肌色だったということだ。
今は林業をする人はおらず、里山は荒れ放題である。てっぺんまで行っても町の景色など見えやしない。雑木の群れが頂上を覆い隠している。
樹木が生い茂ってないところだと、町の景色が見えたりする。山の標高は低いけど、限界効用が低いとでも言えばいいのか、珍しい景色なので壮観である。汗ダラダラで意識が朦朧としてるのもある。脳がマヒしている。
https://tadaup.jp/15183559802496/
高校時代の卒業アルバムも読んだっけ。柔道部に籍を置いていた。
高校卒業式の直後、部活メンバーみんなで柔道場でお祝いをするのだが――その時の写真が出てきた。
なんと、みんなからの寄せ書きも残っていた!! 超恥ずかしいけど公開してみよう。別にいいだろ。増田にこういう投稿するの、人生最初で最後なんだからさ。
(部員一同)
増田さんは、□△高校の相川さんがロリロリで好みなんですよね!!
相川さんを是非モノにしてください
増田先輩の行動で一番驚いたのは、■▲高校の藤田さんの写真をこっそり撮って、救急箱に貼っていたことです
閉会式の時、柔道着の藤田さんが目を閉じて、優勝旗に顔を傾けているやつです
とにかく3年間お疲れ様でした。先輩にはクソお世話になりました!!
増田先輩の柔道、粘り腰で凄かったです。どんな時でもあきらめずに、ベストを尽くしてました
冬の大会で4人抜かれてから5人抜きした時はマジでびっくりしました!
増田先輩の変態エクストリームハートには緊張させられっぱなしでした。
早く警察に捕まってください!!笑
増田先輩へ
増田先輩
お疲れ様でした!!
けど、引退した後もたくさん乱取り付き合ってくれて、たくさん寝技も教えてくれて、感謝してます
いままでありがとうございました♡
増田君が入部してきた頃にはどうなることかと心配をしました。ご卒業おめでとうございます。キャプテンとしての重責、大変ご苦労様でした。柔の道は、将来どこかで役に立つ時がきます。力必達(※つとむればかならずたっす)。何事も最後まで諦めず努めてください
・先輩ご卒業おめでとうございます これからも頑張ってください
・3年間お疲れさまでした 面白い先輩でした笑
・これからも今までみたいに頑張ってください
これはひどいwwwwwwを地で行く内容である。こんなん、人に見せられるもんじゃねーだろ。
でも、いいよ。増田民へのサービスだ。いつもお世話になってるからな。
そんなこんなで先月に就職が決まってから、結局最後までできなかったことがある。大学時代の思い出の開封である。
それ以外の思い出BOXはすぐに開封できた。実家にある元自分の部屋にある段ボール箱のテープを、ビリッとやればそれでよかった。でも、大学生時代は後味が悪すぎる。就職すらできずに、逃げるようにして卒業したんだから。正直、嫌な思い出である。トラウマと言っていい。
いや、大学の卒業式は出席したのだ。謝恩会にも。問題は、マクドナルドでの思い出である。
マクドでアルバイトしてたんだけどさ、卒店式っていうのがある。文字どおり店舗からの卒業式である。毎年3月にある。
卒店式だけど、マクドナルドって経営や店舗運営が外資ルールだから、エリア内の店ごとに売上を競わせるんだよな。
それで、いい結果を出してる店舗だとそれなりの貸館施設で、いまいちな結果の店舗だと近所の公民館を無料で借りて、ジュースやお菓子をテーブルに並べて卒店式をやる。
大学時代にアルバイトをしてたマクドの店は、成績がいいところだった。京都にある四条河原町店という名門店舗である。店舗番号は100番以内、つまりマクドナルド黎明期に作られたお店のひとつだ(今でもあるのかな)。
当時の私は就職活動に失敗して、無職neatでの卒業が決まって落ち込んでいた。
そんな時、自分のひとつ年下の後輩のスウィングマネージャー(※できるアルバイトが社員の仕事をする。時給+50円)から話があった。「増田さん今までお世話になりました。卒店式、ホテルグランヴィア京都でやりますからね。店長が、すげー男を見せてくれた(※足りない分は自腹切ったらしい)んすよ!! 自分、増田先輩のために送辞読みます」とか言ってた。
でも、私は嬉しくなかった。就職活動に失敗してニート確定の自分が、そんな場で送辞を読まれたって嬉しくもなんともない。畜生というやつだ。
結局、卒店式には出ないって後輩君に伝えた。すごくガッカリしていたよ。だって、彼が初心者の頃、私がずっと付いて教えていた。彼が嫌なことあって、アルバイト中に不貞腐れてる時でも、構わずにとにかく、いろいろ教えていったよ。
この子は才能があるから、すぐにうまくなるだろうと思ったけど、やっぱりすぐに上手になった。
ただスキルがあるだけじゃなくて、なんというか、仕事の本質がわかってるというか。能でいうところの上手(うわて)みたいな感じである。世阿弥がさ、『風姿花伝』で伝えてるような、社会人技能について嵩があって丈もあって(※今でいうとT型人材)、本質的なことがわかってる子だった。
一度だけ、後輩君から催促を受けた。二度だったかもしれない。あの時のことは覚えてる。
あれは事務所だった。「卒店式出ましょうよ」というシンプルなものだった。しかし私の答えは……。
「そんな気分じゃない。早く就職しないと。すぐにできないかもしれんが」と言ったら、「増田さん。AJCCで2回も勝ったじゃないですか!! 余裕っすよ」と言ってた。
※AJCC…マクドナルドの技能大会。「2回勝った」とは、地区大会と府大会で部門別優勝したの意。関西大会では、府大会と違うメンツでオペレーションになったので、コミュ障だった私はボロボロの成績だった
その後の後輩君とのやり取りは覚えてない。最後の方だと「あのな、後輩君。どんだけ綺麗に、上手く、速く、素早く、ハンバーガー作れたってな。社会じゃ何の役にも立たねーんだよ!」と悪態をついた。
それで、後輩君は黙ってしまって、それ以来やつとは会話していない。最後の勤務日も、淡々と仕事を終わらせて――いや違う、確か女性の学生客がトイレでゲロ吐いたんだっけ――それの片付けを夜に終えて、私にとってのマクドナルドは終焉を迎えた。
帰りに、同じくマクドナルド河原町三条店(※こちらは関西最古の店舗らしい。今でもあるのかな)に寄って、チョコパイかベーコンポテトパイを買って帰った。マックポークだったかもしれない。マックチキン……( ;∀;)
しんみりしてしまった。
学生時代の思い出を開封するのは心理的にキツイ。けど、時間は限られている。いったん妻とこのアパートを出たら、帰ってくるのは十数年後になるかもしれない。妻はうちの実家嫌いなので……。
そんなのはちょっと、想像したくなかった。というわけで、アパートの自室の押し入れを開けて、学生時代の禁断に近い思い出の段ボール箱を開封した。
そしたら、いろんなものが出てきた。当時のガラケーとか、大学時代の成績表とか、学位記とか、マクドナルド辞めてから郵送で届いた卒店式の寄せ書きとか、昔の授業ノートとかだな。産業社会学部のゼミのみんなで撮った記念写真もあった。京都駅の近くで行われた社会科学の研究展示会で賞を取った時のやつだった。当時の日記も出てきた。
その日記、最後の方だけパッと読んでたんだが、どうやら学生時代の私は卒業時に108万円の貯金があったらしい。なんでそんなにあったかというと、大学1回生の時からマクドナルドで週5で働き続けていたからである。いわゆる超修行をしていた。ここまで働いてると、身体が脳をハックするようになる。
……厨房の注文画面が「ピッ」と鳴ったら、考えるよりも前に身体がハンバーガーを作り始める。考えるんじゃなくて、調理行程を『感覚』が捉えるようになる。トングとか、ソースガンとか手に取るんだけど、なんかさ、感覚がさ、一体感がすごい。トングが身体の延長というか、もはやマクドナルドというお店自体が、自分と一つになってるような、そういう感じ。
例えば、トングを握ってパティ(肉)を掴んでる時って、体のどこがそれを認識してるのだろうか。
指先だと思うかもしれない。けど、その指を支えているのは筋肉組織と関節であり、それらをさらに骨組織が支えている。物質に触れている指先というのは、入口である。
骨組織と言ったけど、トングでパティを掴んだ時の刺激って、関節の中を電気信号が走って、最後は脳に伝わる。ということは、刺激というのは、結局は指先じゃなくて『脳』が認識している。
でも、その刺激って指先が認識してると人は解釈することができるし、実際にしている。脳が認識してると捉えることもできるし、体の先っちょが認識してると捉えることもできる。
こういう解釈が成り立つということは、指先が触れてるトングそのものが、パティの感触を認識してるってことにもならないだろうか。
剣道の達人だと、竹刀が体の一部みたいになっていたりする。サッカー選手だったらボールである。そうだ、ここでの私にとっての肉体の最延長は、指先じゃなくて、トングなのだ!!
もう少し延長すると、店舗で働いている自分というのは、床に立っている。呼吸をしている。ほかの従業員やお客さんの存在を感じ取っている。ということは、其処に存在している以上は、その床を、空気を、ほかの店舗スタッフを、お客さんを、なによりマクドナルド四条河原町店という、その存在が――私という人間の延長として考えることはできないだろうか。
実際、国際赤十字とか、国連とか、国際NPOとかで働いている人、それ以外にも人類福祉のための活動してる人って、地球とか、人類社会そのものを自分の延長として捉えてるんじゃないか? そう感じざるを得ないようなニュースがたまに飛び込んできたりする。
それはさておき。108万円の貯金、結局どうしたんだっけ。
あー、そうだ。グータラだった自分は、フリーター生活とともに2年もしないうちに霧消したんだった。でも、あのお金があってよかった。あれがなければ、秋から始まる奨学金の返済に対応できなかった。
あの頃(23~25才)の私は、アルバイトではダメだと、奨学金の返済に耐えられるだけの仕事を探して、探して、探しまくって、ようやくたどり着いたのが今勤めている金型の製造工場だった。
始めは出荷場での勤務だったけど、オペレータの給料が高いというので転属を申し出たのだ。これらは当時の日記を読み返して初めてわかった。案外、人は記憶を改ざんするものである笑
ちなみに、まだ奨学金を返済できていない。普通の社会人だったら、繰り上げで30前半くらいには全額返済できていると思われる。今はその程度の稼ぐ力すらないけど、これから妻と一緒に創り上げていきたい。
などなど。
翻訳ソフトに求めるニーズも何種類かあると思うんだけど、それぞれに対応した翻訳ソフトが出る方向には行かないよねー。
将棋ソフトなんかが強くなってきたときにも、「その後、最善手を指し続ければ勝てる手を見つけられるソフト」と「所与の棋力の人間にお進めの勝ちやすい手を教えてくれるソフト」、それぞれができて欲しいなあ、なんて思っていたけど、現実はそんな方には進まなかったなー。
耳の穴かっぽじって聞け!
https://tver.jp/episodes/epwlycwfjz
見てたら、モグライダー15周年の祝辞として三四郎小宮(ともしげの旧友)が文を寄せていた
その中で「養成所時代、同期の阿諏訪(ex.うしろシティ)が『なんで小宮は面白くもないともしげとつるんでるの?』と本人の目の前で訊いてきたことがある」と言っていて
阿諏訪泰義、そんな人だったのか…とびっくりした
ブッシュクラフターで野に遊ぶナチュラリストであり料理上手という(シャバい)イメージであり
うしろシティが上手く行かなかったのは、相方に詰められた「繊細な」阿諏訪が耐えられなくなったからだと思っていた
本人もなかなかな性格だったのかー
上記の文の中で小宮が締めの言葉として「キャンプくらいしか無くなったあいつを芸人として見返せて良かったな」と括っていて笑った
阿諏訪と比較するように「昔、芝くんが格好いいライダース着てたんだけど『デートするからソレ貸して』って頼んだら喜んで貸してくれたよ。良い人だよ」みたいなこと言ってたのも笑った