はてなキーワード: Keyとは
In today’s world, kindness is often seen as an important quality in love and relationships. However, when someone shows the same kindness to everyone, it may not feel “special.” In other words, while it is admirable to be kind to everyone, such a person may not be seen as a romantic partner because it is hard to feel that “I’m the only one” for them.
On the other hand, when someone who is already popular or admired by others shows kindness only to you, that act means more than just being nice. The feeling of “They are kind only to me” can create a sense of being chosen, which boosts confidence and makes you feel special.
In this way, the kindness of a popular person can make you feel more valuable. Love is not just about someone’s personality—it is also influenced by how special you feel compared to others, or who is showing interest in you.
In short, love is not only based on feelings but also shaped by social relationships and how people are seen in society. These social dynamics play an important role in how love works.
Question 1 (Summary, 100–120 words)
Explain how the author describes the role of “kindness” in romantic relationships. Why is kindness not always enough to attract someone romantically? Use examples from the passage.
The author explains that kindness alone is not always enough to create romantic attraction. If someone is kind to everyone, that kindness may feel less meaningful because it doesn’t make a person feel special. On the other hand, when someone who is already admired by others shows kindness only to one person, it creates a feeling of being chosen. This gives the person confidence and a sense of value. The author emphasizes that love is influenced not only by emotions but also by how people are viewed socially, and how unique the relationship feels. Therefore, social dynamics play a key role in romantic attraction.
Question 2 (Critical Thinking, 150–180 words)
Do you agree with the idea that people often fall in love based on how “special” someone makes them feel compared to others? Why or why not? Provide your own example or reasoning.
Yes, I agree with the idea that feeling special plays a big role in romantic attraction. When someone treats you in a way that’s different from how they treat others, it makes you feel important. For example, if a person is kind to everyone but spends extra time with you, listens carefully, or remembers small things about you, it feels meaningful. This sense of being “chosen” builds emotional connection and trust. On the other hand, if someone is equally kind to everyone, it may be hard to tell if you are truly important to them. I think love often involves wanting to feel unique and valued, and that feeling can come from how someone behaves differently with you. It’s not just about their personality, but about how they make you feel in the context of others. This is why people often fall in love with someone who makes them feel “seen” and “special.”
In today’s world, kindness is often seen as an important quality in love and relationships. However, when someone shows the same kindness to everyone, it may not feel “special.” In other words, while it is admirable to be kind to everyone, such a person may not be seen as a romantic partner because it is hard to feel that “I’m the only one” for them.
On the other hand, when someone who is already popular or admired by others shows kindness only to you, that act means more than just being nice. The feeling of “They are kind only to me” can create a sense of being chosen, which boosts confidence and makes you feel special.
In this way, the kindness of a popular person can make you feel more valuable. Love is not just about someone’s personality—it is also influenced by how special you feel compared to others, or who is showing interest in you.
In short, love is not only based on feelings but also shaped by social relationships and how people are seen in society. These social dynamics play an important role in how love works.
Question 1 (Summary, 100–120 words)
Explain how the author describes the role of “kindness” in romantic relationships. Why is kindness not always enough to attract someone romantically? Use examples from the passage.
The author explains that kindness alone is not always enough to create romantic attraction. If someone is kind to everyone, that kindness may feel less meaningful because it doesn’t make a person feel special. On the other hand, when someone who is already admired by others shows kindness only to one person, it creates a feeling of being chosen. This gives the person confidence and a sense of value. The author emphasizes that love is influenced not only by emotions but also by how people are viewed socially, and how unique the relationship feels. Therefore, social dynamics play a key role in romantic attraction.
Question 2 (Critical Thinking, 150–180 words)
Do you agree with the idea that people often fall in love based on how “special” someone makes them feel compared to others? Why or why not? Provide your own example or reasoning.
Yes, I agree with the idea that feeling special plays a big role in romantic attraction. When someone treats you in a way that’s different from how they treat others, it makes you feel important. For example, if a person is kind to everyone but spends extra time with you, listens carefully, or remembers small things about you, it feels meaningful. This sense of being “chosen” builds emotional connection and trust. On the other hand, if someone is equally kind to everyone, it may be hard to tell if you are truly important to them. I think love often involves wanting to feel unique and valued, and that feeling can come from how someone behaves differently with you. It’s not just about their personality, but about how they make you feel in the context of others. This is why people often fall in love with someone who makes them feel “seen” and “special.”
鈴川エディタやEmEditorで少ないメモリー使用量で巨大テキストをファイルを編集できるとうたってるが、.NETでも見事に再現できたぞ。
1.2億行×100文字の全置換えでGCのメモリー使用量は340MB程度で、行の操作は86MB程度、合わせて426MBだ。
その辺の.NET製テキストエディターコンポーネントに組み込んでも500MBぐらいで済むと思う。
(その代わりワークファイルは30GBぐらいは行ってるはず)
鍵はropeというデーター構造を使用することとropeにアクセスする際、ディスクに保存する機構を付け加えるだけだ。
特にソースコードで見るべき個所はBigList.cs、Node.cs、DiskPinableContentDataStore.csの所だけだ。
多少遅くて構わないなら、ディスクに保存することはそこまで難しくはない。
メモリーマップドファイルは何かと面倒なので使ってないが、.NETでMMDataStructuresとかメモリーマップドファイルを扱うやつがあるんで、メモリーマップドファイルでも行けるはずだ。
benchmark start
size:120000000
Allocated GC Memory:66,304bytes
Allocated GC Memory:101,257,168bytes
Allocated GC Memory:101,247,232bytes
Allocated GC Memory:333,371,424bytes
Allocated GC Memory:333,257,000bytes
Allocated GC Memory:331,904,816bytes
clear buffer
Allocated GC Memory:66,304bytes
Allocated GC Memory:86,939,136bytes
Allocated GC Memory:87,272,912bytes
clear buffer
Allocated GC Memory:69,448bytes
https://github.com/oonyanya/FooList
『いま、会いにゆきます』 『Be With You』
『リトル・フォレスト』
『百円の恋』:『热辣滚烫(YOLO)』
『ザ・マジックアワー』 『トゥ・クール・トゥ・キル 〜殺せない殺し屋〜』
『がんばっていきまっしょい』:『激浪青春』
『世界の中心で、愛を叫ぶ』
https://econ101.jp/matt-alt_japanese-popculture/ で述べられていないこと=邦画
「どうしてアメリカのポップカルチャーは衰退しつつあるのに,日本のポップカルチャーはこんなに絶好調なんだろう?」
USAの音楽カルチャーに対比するのに漫画・comicカルチャーが適切であると冒頭で述べつつ盛田ソニーと任天堂を持ち出している。
「日本のアニメスタジオのどれひとつとして Pixar の規模にまで成長していない理由にも当てはまるかもしれない.」アニメ制作も持ち出しているし
「ウォークマン() kawaii ファッション」も論じている。
しかし、KAIJUがないのは当然として(ありがとうデルトロ)、日本の映画についてはまったく触れられていない。だってアメリカにおけるプレゼンスがまったくないものね。
小津も黒澤明も過去の人。『半地下』の監督はハリウッド進出したけど日本人監督で今そんな人いるかな?フランスで撮った黒沢清はシネフィルのものでポップではなさげ。知らんけど。海外作品を日本でリメイクすることは多い一方逆は…(『キャメラを止めるな!』はフランスでの『LUCK-KEY』は韓国でのリメイク)
BigListに1.2億行*100文字=12GBのテキストを突っ込んでみた。
文字列操作のタスクマネージャーから見たメモリー使用量は500~900MB程度。
benchmark start
size:120000000
Allocated GC Memory:66,304bytes
Allocated GC Memory:101,257,168bytes
Allocated GC Memory:101,247,232bytes
Allocated GC Memory:333,371,424bytes
Allocated GC Memory:333,257,000bytes
Allocated GC Memory:331,904,816bytes
clear buffer
Allocated GC Memory:180,072bytes
Allocated GC Memory:4,916,166,568bytes
Allocated GC Memory:4,916,146,904bytes
clear buffer
Allocated GC Memory:172,104bytes
BigListの一部を再帰なしにしたけど、C#の最適化すごいな。
再帰なし。ブランチ rewrite_nonrecursive、Commit 84b25c1
benchmark start
Allocated GC Memory:61,240bytes
Allocated GC Memory:199,685,064bytes
Allocated GC Memory:199,698,944bytes
Allocated GC Memory:345,442,528bytes
Allocated GC Memory:345,442,552bytes
Allocated GC Memory:345,442,672bytes
clear buffer
Allocated GC Memory:82,728bytes
Allocated GC Memory:41,048,400bytes
Allocated GC Memory:41,048,464bytes
clear buffer
Allocated GC Memory:82,984bytes
再帰あり
benchmark start
Allocated GC Memory:60,752bytes
Allocated GC Memory:199,622,776bytes
Allocated GC Memory:199,636,920bytes
Allocated GC Memory:369,227,696bytes
Allocated GC Memory:369,227,696bytes
Allocated GC Memory:369,227,840bytes
clear buffer
Allocated GC Memory:82,728bytes
Allocated GC Memory:40,996,432bytes
Allocated GC Memory:40,999,688bytes
clear buffer
Allocated GC Memory:82,984bytes
大和国→矢的の国 矢が的に刺さった絵を国旗とする弓使いが多い国。
河内国→かだいの国/ハノイの国/川内の国/仙台の国 国名が安定しない。
伊勢国→iceの国 氷で覆われた不毛の地という噂を流しているのは他国からの侵略を防ぐため。氷漬けなのは国境付近のみでそれ以外は肥沃な土地。
近江国→お海の国 国土の大半を占める巨大な湖を海と呼ぶ海を知らない内陸国。
播磨国→貼り魔の国 貼るだけで封印された魔を召喚することができるシールの発売国。
越前国→えち善の国 一日一善を国是とする国。一善がなまってえち善となった。
武蔵国→634の国 634個の村が寄り集まってできた国。
上総国→数差の国 すべてを数値化して僅かな差でも比較し、様々なランキングを日々作っている。
常陸国→日立の国 sun(日)がrise(立)する国を自称する。太陽信仰の国で太陽を拝み、太陽の声を承る。
山城国→疚し路の国 道を歩いていると不思議とやましさが増してくる国。
摂津国→setsの国 多くのものがセットでまとめられている。
尾張国→終わりの国 人生の終わりにたどり着きたいとされる国。
三河国→美川の国 国土の中心を流れる美しい川の沿岸にさそりが多く生息する。
美濃国→蓑の国 民は外出時に蓑を着用する。
備前国→美髯の国 ひげが長いほど美しいとされる国。
美作国→見まさかの国 歴史上の「まさか」を集め、それらを一覧することができる国。
但馬国→田島の国 国土のほとんどが田んぼの島国。島国で狭いので田んぼのためにそれ以外のスペースを徹底的に切り詰める。
因幡国→イナバの国 この国の建造物は頑健で特に上方向からの圧力に強い。
遠江国→尊みの国 尊さを感じたものを「推し」とする風習がある。
駿河国→するがの国 民は「何々しないの?」と言われると「するが?」と答え何でもせずにいられない。
越中国→こしなかの国 もなかの名産地。こしあんもなかの略称が国名となる。
伯耆国→箒の国 掃除用の箒から魔法の箒まで箒なら何でも手に入る。
出雲国→いつもの国 昔からの「いつもの」を維持し続ける。伝統を守っているので考古学者の研究の対象となる。
備中国→ビッチュウの国 携帯ゲーム機用ゲーム及び派生作品「ビットモンスター」の発売国で同作品に登場するネズミ型モンスター・ビッチュウを国旗とする。
備後国→ビンゴの国 ビンゴゲーム屋が立ち並ぶビンゴゲームの聖地。
讃岐国→さ抜きの国 あらゆる言葉から「さ」の文字が抜かれる(国名は例外)。
相模国→さがみの国 あらゆる「さ」が「み」に置き換えられる(国名は例外)。
出羽国→ではの国 誰かと来ると必ず別れることになる国。
越後国→えちごの国 苺の名産地。えちごとは「良い苺」がなまったもの。高級な苺は権力者への贈り物として重宝される。
安芸国→秋の国 気候が安定しており一年を通して秋のように過ごしやすい。
周防国→酢王の国 酢の名産地で最も優れた酢を製造した者が国王に選ばれ1年間国を治める。
伊予国→壱与の国 卑弥呼の娘・壱与を崇拝し王はその子孫を自称する。
肥前国→火然の国 火の一族が治める国。火の一族は火の扱いに長けており、火で物を燃やすだけでなく心も燃やすという。
佐渡国→サドの国 サディズムの聖地でサディストが自然に生まれ育つ。
長門国→ナガモンの国 携帯ゲームおよび派生作品「ナガモンアドベンチャー」の発売国で同作品に登場する首長竜型モンスター・ナガモンを国旗とする。
石見国→岩みの国 岩の多い国で、人も物も少し岩っぽい。長居するとだんだんと皮膚が固くなり岩っぽくなる。
土佐国→とさの国 「何々だったとさ」と民が昔話をしてくれる。
日向国→ひなたの国 曇らず夜もない絶えず太陽が見える国。国全体が1個の巨大なドームの中にあり、空も太陽も人工物である。
大隅国→大炭の国 炭の名産地。大木から大きな炭を作る技術を持つ。
薩摩国→殺魔の国 魔を殺す術に長けた兵を多く養い、他国からの要請に応じて派兵する。
伊賀国→毬の国 民はトゲ付きのヘルメットや肩パッドを着用する。そのために髪型は常に丸坊主にしている。
淡路国→会わじの国 この国で待ち合わせをすると会えない。
先日、親友Aのバンド、PompadollSが大阪の夏フェスに出演することが発表された。
◤ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄◥
㊗️初、野外フェス決定㊗️
◣____________◢
PompadollS、大阪の夏フェスOSAKA GIGANTIC MUSIC FESTIVALへの出演が決定しました!!
7/19は大阪・万博記念公園にてお会いしましょう🐦⬛
▼各日のチケット販売中▼https://t.co/eyKGOzvHvo pic.twitter.com/7bTYbB0idP— PompadollS (@PompadollS) May 13, 2025
増田はこの界隈には新参者だが多分めちゃめちゃすごいんだと思う。
共演者にはsumika、日食なつこ、緑黄色社会、マカロニえんぴつ、やばTにフレデリックという邦楽にわかの増田でも知っているような有名アーティストがバンバン出演していてびびる。
増田は本当に嬉しくて、友達6人グループを誘って万博も併せて大阪夏旅行を計画中だ。
前回の記事を出してから1年と経たずに夏フェス出演まで上がってきたPompadollS。
興味をもってくださる方もいると信じて、増田目線から見たこの1年間を記させていただく。
実はPompadollSは昨年の10月ごろまで活動が控えめだった。
8月から10月までライブはなく、間の9月にはKeyを担当していたメンバーが体調不良のために脱退することが発表された。
このKeyの脱退は正直かなりショックだったことを覚えている。
PompadollSの持ち曲はどれも童話をモチーフに現代風に落とし込んだ作風が魅力の一つであり、その独特な世界観を余すところなく表現していたのが元メンバーの繊細かつハイクオリティな演奏だった。
それゆえ彼女の脱退はファンの間で惜しまれていたし、増田は同時に、今後バンドが一体どうなるのかという不安すら覚えていた。
このような背景の中、11/1に新たなメンバーがKeyとして加入が発表され、新体制で活動が再開。
翌11/2には彼らの1st EP「P.S.」がリリースされた。
https://www.youtube.com/PompadollS - P.S.
このEPではすでに発表済みだった3曲と新しく3曲を追加した6曲が収録されている。
前述のこともあり、期待と不安が半々の心持で新曲を聴いてみたところ、一気に不安は吹き飛んだ。
新メンバーは間違いなく、PompadollSのKeyという難役に相応しい演奏技術の持ち主であり、恐らくメンバーを引っ張ってきたAの手腕には脱帽である。
次に示す「悪食」という曲はPompadollSの真骨頂ともいえる一曲であり、ぜひイントロの10秒でも聴いてもらえれば、繊細かつどこか懐かしいピアノの魅力に惹きつけられると思う。
https://www.youtube.com/PompadollS - 悪食
新体制で始まった11月からPompadollSの活動は段々活発になっていく。
11月中旬からInstagramやTiktokでの運営が始まり、ライブのショート動画がほぼ一日一件は投稿されるようになる。
同時に、それらのSNSで音楽を紹介するアカウントなどがPompadollSを紹介するようになっていく様子も見られた。
10月まではMVに付いていたコメントがYouTube広告やTwitterからだけだったが、徐々にInstagramやTikTokから来たというコメントが増えてきたのを覚えている。
そして12月、PompadollSに転機が訪れる。
ここまでに上のURLを開いた人はもう気が付いたかもしれないが、実は上で挙げた「悪食」、MVではなくジャケ写音源でありながら再生回数が現在120万回を超えている。
なぜこれほど再生されているかというと、昨年12月初旬にTikTokで挙げられた悪食のショート動画がバズったからである。
その勢いを受けて同時にSpotifyの週間バイラルチャートにて悪食が2位でランクイン、さらに1週間を経たずに1位まで駆け上がることとなる。
11月まではYouTubeのチャンネル登録者数が6000人程度だったのに対し、12月中にはYouTube、Instagram、TikTokの全てでフォロワーが1万人を超え、Spotifyに至っては月間リスナーが2万人を超える大躍進となった。
年が明けて1/7、インスタライブが初めて行われ、500人弱のファンが集まる中、1st ワンマンライブの開催が発表。
翌日行われた先行販売では開始数分での即完売を達成、抽選ではなかったためかサイトが落ちる事態となり、阿鼻叫喚のTLが観測された。
同時に2ndワンマン開催希望の声が多く上がり、この声を受けて1週間後に2ndワンマンの開催が発表。
2ndは抽選制かつ1stの3倍近く(200人弱→600人)のキャパのライブハウスが用意されたが、こちらも落選者が出るほどに応募された。
増田も普通に落選メールをもらうこととなり嬉しさと哀しさの悲鳴を上げていた。
そして3月、幕張メッセで開催されたツタロックフェスにてオープニングアクトとして出演が決まった。
これは多数の応募がある中でオーディション審査を通過しての決定だった。
PompadollSは前年夏のロッキン2024で惜しくも最終オーディションで落ちた過去があり、この瞬間を会場で見ていた増田は、情緒がぶっ壊れてめちゃめちゃ人に自慢した。
フェス当日では、1000人以上もの前でも啖呵を切りながら楽しそうに演奏をするAの姿が本当に格好良かった。
その後も大阪ワンマンやツーマンの開催が発表されるものの全て即完、、増田は今のところチケット争奪戦にて3勝2敗である。
2025年現在ではYouTube、Instagram、TikTokそれぞれ平均3万人のフォロワーを獲得、Spotifyに至っては月間リスナー7万人を目前としている。
以上が増田が見てきた、PompadollSが跳躍するまでの軌跡だ。
もし増田を読んで、少しでも彼らの音楽を気になってもらえたら嬉しい。
これからも、彼らがどんどん高く登っていくことを願ってやまない。
増田が武道館でAの演奏を見れる日がくるのも近いかもしれない。楽しみだ。
主人公のハイリ君とヒロインの鴎ちゃんが鍵を見つけるシーンがあるのね
その時のセリフが以下
鴎「本当にこんなところにあるの?」
鴎「あ!あ~~っ!あった!鍵あったよ!」
ハイリ「やっぱりそうか」
鴎「えっ、どういうこと?」
いや鴎ちゃん、そこで「えっ、」はおかしいやろ 会話の流れ的に
台本的には
①発見→「どういうこと?」→②推理解説 って順にしたかったんだろうな
それなら「どうしてここにあるってわかったの?」にすれば自然だったと思う
「えっ、どういうこと?」はねえわ~
って
アホらしー
アホらしー
どうでもいいけど鴎ちゃん、
ハイリ君を肘でこのこの~!って小突いたり
「ハイリ君も隅に置けませんなぁ」って言ったり
古いといえばEDでさ
いつか借りたMDを ローテーションしてみても~♪って
でもKeyの客層を考えれば当たっとるか
VitaにCFWを導入するにあたり、情報が散乱していたのでまとめる
・2022年末に革新的進歩があり、VITA単体でCFW導入できるようになった(通称 HENlo)
・にも関わらず古いCFW導入方法を案内しているブログが大量にある
・しかもタイトルの"20XX年最新"だけ更新し続けているから、最新記事に見える
↓
PC使用が前提になっているブログは全部古いので無視した方が良いです。
・『HENlo』について触れている
この2つが押さえられてれば最新情報です。(2025年5月現在)
ただし、現状だと実は『PC操作が一部必要』という罠があります。
その問題について書いている記事が見当たらないので、ここに残しておきます。
超具体的には
「HENkaku、VitaDeploy、VitaShellは導入できた」
「けどEnso導入ができない/つまづいている」 エラー:failed to get fw version please disable all the plugins and try again
5chでもRedditでも
『プラグインを無効にしろ』『0syscall6を無効にしろ』って書いてあったのですが、実はEnsoのバージョン変えれば解決します。(後述)
この記事が役に立ちました
[Vita] 2023年最新手順【HENlo】3.65-3.74 PC不要でCFW(HENkaku)導入
https://re-doing.com/vita-henlo-hack/
(一応魚拓:https://web.archive.org/web/20250226111105/https://re-doing.com/vita-henlo-hack/)
・HENkaku (カスタムファームウェア 3.65 変革 -2)
・VitaDeploy
・VitaShell
・最悪文鎮化する可能性があるのでセーブデータバックアップを取ったほうが良い
・VITAのセーブデータは特殊で、PCと繋ぐだけでは取り出せない
・バックアップにはいくつか方法があるが、PCのコンテンツ管理アシスタントは既に使えないと思ったほうが良い。PS Plusのクラウドバックアップが最も良いはず
・記事の内容を実施する前にバックアップ取るのを強くおすすめする
これをインストールすることで、電源を切ってからもCFW状態を維持できます。
VitaDeploy内のApp downloaderメニューからEnsoをインストールできますが、実はこのバージョンが古いです。※重要※
そのためVitaDeployからインストールすると先程のエラー(failed to get fw version please disable all the plugins and try again)が必ず出ます。
「PC不要になった」と書いてあったので盲点ですが、ここからPC必要です。
正しい方法は以下です
1, PC操作:GithubからEnso最新版のenso.vpkファイルをダウンロード(現在v1.1)
https://github.com/TheOfficialFloW/enso/releases
2, PCとVitaをUSBケーブルで繋げる ※データ転送対応ケーブルを使うこと。相性もある
5, PC操作:USBドライブとしてVITAのデータが表示されるので、ダウンロードしていたenso.vpkファイルを置く(フォルダはどこでもOK。自分はルート直下に置きました)
7, Vita操作:VitaShellでenso.vpkを見つける(さっきルートに置いたなら恐らくux0:にある)
9. Vita操作:Do you want to install this package? → ◯ボタン
10. Vita操作:~~~ Would you like to continue the install? ※意訳:「失敗したら文鎮化するけど自己責任だけど続ける?」 → ◯ボタン
11. 進行バーが消えたらインストール完了 ホーム画面に戻ってOK
Ensoはファームウェアが3.60か3.65じゃないとインストールできないです。(3.65 変革 -2は3.65扱い)
先程の記事の通り進めていたら3.65 変革 -2 になっているはずですが、実行前に再確認して下さい。
1, ~~~ Press CIRCLE to accept these terms or any other key to not accept. → ◯ボタンを押す(=CIRCLE )
2, Options:
CROSS Install /reinstall the hack.
SQUARE Fix boot configuration (choose this if taiHEN isn't loading on boot).
CIRCLE Exit without doing anything.
Locking sustem ..
(中略)
The installation was completed successfully.
suocess.
MBR was detected but instllation checksum dose not match.
A dump was created at ux0:data/blocks.bin.
Press X to continue, any othe key to exit.
意訳:「ちょい待った。思ってた構成じゃないから危ないかもしれんわ。続ける?」
→✕ボタンを押す ※結局原因分かってないので自己責任でお願いします※
4, Locking sustem ..
(中略)
The installation was completed successfully.
suocess.
Enso導入が成功していると
・ファームウェアが3.65 変革 -2のままなっている
お疲れ様でした。
記事の本題は以上です。
VITAのセーブデータは暗号化されており、吸い出せてもエミュレータで使えないらしい。本体機体とセットで揃わないと使えない仕様。
調べたらセーブデータをここまでキツく縛ってるハードは他にない
だからメモリーカードのデータ管理でもPSPのセーブデータしか項目がなかったのか…
不便すぎる
当時の仮説
・HENkaku設定が悪さをしているのではないか(PSNの偽装を有効化、バージョンの偽装を有効化) →オフにしたが関係なかった
・本体にSD2VITAを刺しているのが良くないのではないか →抜いたが関係なかった
・enso.vpkの置き場所がルート(ux0:)が良くなかったのではないか →関係なかった
・VITAにメモリーカードを刺しているのが良くないのではないか →関係なかったが、データ保護的には抜くのが良さそう
・ゴミデータが残っていて悪さしているのではないか(手順を間違えたデータや古いデータなど) →関係ある可能性はある。最後までわからず
・Ensoのバージョンが古いのではないか →これが主要因だった
ゴミデータを疑った自分は正規のファームウェアに戻して、CFW化をやり直したりもした。
その際HENkakuすら入れられなくなってしまったので、抜け方を書いておく。
ENSO実行
↓
~~~ Press CIRCLE to accept these terms or any other key to not accept. → ◯ボタンを押す(=CIRCLE )
↓
Options:
CROSS Install /reinstall the hack.
SQUARE Fix boot configuration (choose this if taiHEN isn't loading on boot).
CIRCLE Exit without doing anything.
→ △ボタンを押す(=TRIANGLE Uninstall the hack.)
↓
↓
↓
ファームウェアアップデートが促され、アップデートしないとメモリースティックが使えない
↓
↓
↓
HENloメニュー
・Exit
↓
「Eiting in 3」 の後に、以下のエラーメッセージがでて固まってしまう
vita starting taihen framework
If you are stuck on this screen, hold down the power button until your Vita turns off, then turn it back on.
原因:恐らく余計なデータと衝突を起こしてる
解決法:reset taitan configを先に実行する
(さっきのエラーメッセージ画面で)
↓
セーフモードが起動する
↓
↓
↓
HENloメニュー
・Exit
↓
その後
Install HENkaku、Install VitaDeployを選択して、Exitを選択
この記事を書き終えた後に見つけたのですが、以下の記事の『改造方法』というところに情報がかなりまとまっています
Vita バージョンが低くてもPSNにサインイン&PSストアにアクセス(エラーNW-8942-3回避)&機器認証する方法(2025最新)
https://yyoossk.blogspot.com/2024/10/vitapsnps2024.html
今回VITAのセーブデータバックアップが主目的だったから、徒労でしかなかった
指摘、補足、最新情報あれば反応もらえるとありがたいです
1. 増田で "dorawii" を検索して、dorawii の公開鍵を公開しているサイトのリンクを見つける
-----BEGIN PGP PUBLIC KEY BLOCK----- [公開鍵をここにペーストする] -----END PGP PUBLIC KEY BLOCK-----
4. gpg4win をインスコし、kleopatraを起動する
5. kleopatra に上記の公開鍵をインポートする&公開鍵を保証する
7. 本文と署名をそれぞれ別のテキストファイルに保存する(コピペする際についてくる余分な改行は消しておく)(例: dorawii.txt, dorawii.txt.asc)
そろそろ2025春アニメも折り返し地点なので自分が今見てるアニメ覚え書き。順不同。
テレビ放送のみ。配信は見てない。今期はテレ東系(地上波オンリー)など一部地方で放送されないのがいつも以上に多い気がする。
配信で見ればいいんだけどね。若い人には怒られるかもだけどネット配信で見るのは面倒くさいのと苦手なのです。
アニメはこうやってボーッとたくさん見てるけど詳しくはないです。アニメ制作会社とか声優とかはよく分からんので間違ってること書いてたらごめんなさい。
追放系&桁外れな能力を持つ&無自覚系&自己肯定感が低い系主人公
立派なことをしても、いやー自分はまだまだ、何もしてませんがってところがイライラする人にはお勧めしない。
ヒロイン鷹峰さんは下着を脱ぐと時間を遡ることができる能力者。
主人公は遡る前の時間を覚えている、シュタゲでいう所のリーディング・シュタイナー。
能力使用後は下着は消えるので、主人公が下着を用意して履かせることになる。
何食ったらこんな発想になるんだよw
女の子がグイグイ来て、男の子がアタフタする系です。たまに逆もあり。ボケとツッコっみが激しくて面白い。
鬼の力が覚醒した妹、その妹に想い人を殺された兄と、170年の話。
1話は天保1年から始まる、最後に少し平成。2話以降はは嘉永(江戸時代)
2話も結構面白いけど、私が好きなのは6話。もちろん、これまでの話があっての6話なんだけど。
EDはHilcrhyme feat. HYの仲宗根泉。最初はこのノリの歌あうのかと思ったけど歌詞がなかなか。
2期、前期から引き続き2クール目 今までの出来事、人物、点と点が線でつながり・・・
余命1年の呪いを受けた魔女見習いの話。主人公のセリフがオタクくさい言い回しで好き。OPは坂本真綾、EDは手嶌葵
世界観は我々がいる現代に魔王要素が加わった感じなのかな?電車とかあるし。
心温まるハートフルストーリー。こんなあっさりした感想だけど、今期結構好きなやつ。
キービジュアルを見てビールの売り子さんの話かな?と思ったら、それだけではない。
サラリーマンの主人公とビールの売り子さんが主軸ではあるが、球場全体で働く人たちのお話。
こんな気軽に野球観戦行けて羨ましい。
本作品の舞台となっている千葉県を本拠地としているプロ野球球団の千葉ロッテマリーンズとのコラボイベントを2025年5月17日(対北海道日本ハムファイターズ戦)に行う予定だったが、雨天中止となった(wikipediaより)
BAND-MAIDは好きだし、音楽で殴り合いそうな勢いも好き。
お嬢様学校とのロックバンドのギャップも・・・だけどその髪型は説得力ないなぁ?
って感じだったけど5話はよかった。
んでもなぁ、素直に凄い、面白い、とはならないんだよなぁ。なんだこの違和感は。
途中感想まで(ここまで)の段階だともったいない。結構がんばってそうなのにね。
友達以上恋人未満の・・・いやいや、べたべたと抱き着いたりして異常に距離が近すぎ幼馴染青髪ヒロインと
後から出てきたけど実は子供のころに運命的な出会いをしていた黒髪ヒロインが
主人公を取り合うドタバタ恋愛コメディ。恋愛に面倒くさい要素はつきものだけど、これは本当に面倒くさい。
タイトル通りのユ-モアミステリー。以前ドラマ化してたけど私はドラマは見てない。
1ストーリーの前編くらいで話が終わるので、え、そこで終わる?って感じでのところで終わってモヤモヤする。
まあ、面白いけどミステリー好きな人にお勧めするよりも、声優好きにお勧めする。かな。
ノイタミナ枠なんだけど、このタイミングで地方民にとってうれしいのはフルネット全局で同時ネットとなったこと。
そこまで好きじゃないけど短いので見てる。
サムライを目指す刃と、鬼になったライバル鬼丸とが日本全国を巻き込み闘うアドベンチャー。
原作、剣勇伝説YAIBAを今風に編集した真・侍伝 YAIBA。スカイツリーやスマホ、SNS要素などがある。
最高。もう、最高。昔、周りのみんなが "かめはめ波" や "アバンストラッシュ" の練習をしていた頃、私は友達と "かみなり切り" を練習してたので。
そんなYAIBAも初のアニメ化はテレ東だったので見れなくて枕を濡らした思い出もある、今回見れてうれしい。
SNSで悪い意味で話題だったみたいだけど、私は面白いと思うよ。すごい面白い。
実力は凄いんだけど片田舎の村で細々と剣術道場を営むおっさんが騎士団付きの特別指南役となり、ブイブイ言わせる話
アンシャーリーはそこまで騒がれてないんだけど、こちらは6話になった今でも漫画ファンの熱いコメントが目立つ。
でも、無粋なんだろうけど、女の子の防御力低そうな服装は変だね。
OPは「滋賀の県政にはいつなるの?」とよくツッコミが入る西川貴教。EDはこちらもアニソン結構やるよね、FLOW。
ヒト型ロボットと人間のバディもの。SFミステリー。相手の記憶を探れる(電索)演出があるところが攻殻機動隊をちょっと感じる。
地上波放送の実況では原作のファンの厳しいコメントが目立つので、実況付きで見たいけど、
ネガティブ意見を見るのが嫌な人はBSでの視聴をオススメする。
9話では生きたまま四肢を切り落とすというバビロン並みに過激な描写がある。冒頭に注意テロップを出せばいいのにと思った。
1期の見はじめは「なんだこれ」という感じだったけど、見方が分かってからは楽しく見てる。
新聞部が追っている放火魔(ファイアーマン)が誰なのかなんてどうでもよく、
小鳩くんや小佐内さん(特にこっち)の企みが何なのか、次にどう動くか注目するアニメだと思う。小佐内さんの声優のウィスパーボイスがとてもいい。
瓜野くんかわいそうすぎて、ネットの検索窓で「瓜野くん」と入力すると「かわいそう」がサジェストされるくらいである。
この16話については私の今期アニメでもっとも好きな話かもしれない。ぞわっとして思わず長良川にチョコを流したくなっ
18話からは冬期限定ボンボンショコラ事件。原作小説は昨年出たばかりである。
タイトルにプリティが付かないウマ娘。いやかわいいですけどね。
正直言って、だからといって、なんか書けない。
幼馴染魔女と鬼の力をもった主人公とクラスのみんなとドタバタコメディ。
あとちょっと古いネタのボケ、自分世代にちょうどいい。あとオシャレ。
なんとなくタイトルから中国の漫画/アニメと思われてそうなやつだけど日本の主婦と生活社から出てるやつです。
底辺の村人の少年がこっそり力を持ち、守護者と呼ばれる存在になる。
転生要素はあるけど、そこまで色濃くはない。
2年前にNetflixでやってたやつを編集してNHKで放送。スプリガンの時みたいな編集。
1989年の夏を舞台に、ガメラがほかの怪獣たちと戦う様子を目撃する4人の子供たちを描く。
自己肯定感低い女の子がゴリラの神から加護されて超人となるけど、本人は目立たず平穏な日々を送りたい
でも何やかんやでそうもいかず、オモシレー女って感じでイケメン達の姫になる。
動物の加護を受ける際、普通の人はその力を受け継ぐだけだけど、特殊な人の場合は動物そのものになるってのは、FF16の祝福を受けたものとドミナントになったものを思い出す。
元となってる百鬼夜行シリーズの小説ってめっちゃぶっといよね、ってことだけ知ってる。
めっちゃ好き。永遠にやって欲しい。ナレーションは情熱大陸でおなじみ窪田等。
私もふとしたことでざつ旅をするので、めっちゃ共感しながら見てる。最近私は岡山の湯の郷行きました。
音楽は藤澤慶昌。藤澤さん今期はこれとアポカリプスホテル、わたなれをやってて、今度タコピーもやるのに仕事しますなー
阿波連さんも変わってるけど、ライドウの奇行を楽しむアニメじゃね?
1期で二人がもう結ばれているようなもんなので周りに焦点がいくことが多い。
そうやって全体が充実していくのが最高に心地いい。
見ておいて言うのもアレだけど、どうもKeyのストーリーって私にはあわないのよね。
話は理解はできるんだけど、どの作品も自分の心は揺れ動かない。
登場人物も実際いたら嫌だろうなーと感じるキャラが多いからなのか・・・
感動したーってレビューを見る度にくやしいけど、こればっかりは仕方がない。曲は好き。
家では上田ガンダムって呼んでます。でも地上波ではなくBS11で見てます。
あんまりネガティブな事をここで言うと言葉で殺されそうなので怖いんだけど、なんか綺麗でオシャレなところが好きじゃない。
あと水星の魔女もそうだけど、長編じゃないから?仕方がないんだろうけど、狭い世界の話が嫌かなー
私個人的な好みでの話ですので、楽しく見てる方はお気になさらないでください。
あと一部では乃木坂とかとの繋がりで盛り上がってますが、私個人的には気にならないです。
抜け忍と殺し屋女の子たちの共同生活。かわいい顔してやることエグい。
命が軽すぎて素直に楽しめない 怖い、不安になる
女の子たちが大学で食文化研究部という部活を作り、ワイワイご飯作ったりどっか行ったりエンジョイする話。
かっぽーして、エナドリでバフ入れてるアニメなので「もめんたりー・リリィ」難民も安心です。
ポンコツ猫宇宙人が家電をぶっ壊しながら地球の科学を学ぶ NHKEテレでやってたとしても違和感ない
音楽は栗コーダーカルテット 協力CIAOちゅ〜る
EDはさよなら人類。 まさか九龍ジェネリックロマンスとかぶるとは。
世の中的には生成AIに要件伝えて生成させたコードをコピペして動かして「はい!生産性爆増!」っぽいけど、生成AIが吐き出したコード読むだけじゃ全然分からん。
Clineで使い慣れた言語・フレームワークのコードを生成させたら見たことがないエラーが出て面食らった。
原因はフレームワークのnewコマンドで自動生成される設定ファイルが全然違う書式で書かれてた。
(どうやら遥か昔のバージョンだとその書式だった模様)
GitHub CopilotやCursorだったら確認しながらtab押してくからこれなら予測変換みたいなものだし大丈夫だろう、おお便利便利……
と思って使ってたのだが、テストするとデータ作成時にフィールドに抜けがある…。
確認したらPOSTするJSONに存在しないkeyが含まれてた。それっぽい名前がサジェストされてそのままtabを押してしまったらしい。
手動でテストしてたから助かったが、この手の外部API使って更新する系はテストをモックしてたりするので危うく本番障害になるところだった。
それこそ特にこれまで触ったことない言語・フレームワーク・ツールを使ったコードを生成AIに吐き出させてもさっぱり分からん。
読むだけだとさっぱり分からないので結局生成されたコードを写経しながら、分からないところをググったり生成AIに質問したりでやってるんだが、まあコピペ勢が40秒でPR上げてるところを、2時間・3時間とかけてるからまあ生産性が悪い悪い。
昔から書かないと覚えられなくて、学生時代もテスト前は過去問解く前にまずは授業中に取ってたノートをとにかく写経してた。
友人からは「過去問だけやって、よく分からなかったとこだけ該当部分をノート見れば分かるじゃん」と言われたが分からないのでしょうがない。
あとプログラミングだけじゃなくて、議事録も最近はZoomとかが自動生成してくれるようになった。
が、こいつがとにかく俺と相性が悪い。
これまでは自分で会議中に議事メモを書いて、終わった後に手直しして論点やToDoをまとめてたので会議の流れややるべきことが頭というか体に入ってきてた感じだった。
それが自動生成されるようになって、確かに時間はかからなくなったかもしれないが、流れとかやることとかが全然頭にも体にも入ってこなくなってしまった。
議事録については結局自分用にメモを取って、あとで自分用に論点やToDoをまとめるというのをやってるが、正直会社から見ると「生産性が低い奴」なんだろう。
おそらく元々読めば理解できるタイプ、それこそ教科書を何回か読めばテストで点を取れるタイプはコード生成AI時代に大活躍できるのだろう。
あるいは今後出てくるコード生成AIネイティブ世代は書かなくても理解できるのが当たり前になったりするのだろう。
……いやそんなことあるか?
これそもそも生成AI以前から「手を動かさなくても公式のREADME読めばすぐ使える」みたいな能力で、そんな奴ごく一部だろう。
教科書何回か読めばテストで点が取れるのも塾行かなくても東大合格できるみたいな特異点みたいな人間だろう。
これまでは結局のところ人海戦術で各言語・フレームワークなどを理解して、大量に書く必要があったから書かないと理解できない俺のようなオールドタイプもプログラマーになれた。
しかし今後はコード生成AIが言語・フレームワークは理解しててすごい勢いでコードを生成してで生産性は爆上がりするから、読めば理解できるニュータイプしか生き残れないのかもしれん。
それこそビル・ゲイツ氏はExcelのレビュー時に仕様書500ページを読み込んで1900年閏日問題について的確に指摘したり、岩田聡氏は任天堂取締役室長時代に週末でNINTENDO64のグラフィックスチップの制御命令コードを完成させたりしたそうだ。
そういった人ならコード生成AIが出したコードについても目grepで瞬時にバグを見つけて直して爆速リリースとかできるのだろう。
……凡人には無理ゲーすぎるな。
なんてか、最初は教訓的に
「良い子の諸君!書かないと覚えられないと詰むから、読んで覚える力を強化したほうが良いぞ」
的なことを着地点で考えてたけど、これもはや地頭が良いとか先天的にニュータイプしか生き残れないやつや。
生成AIがコードを産むなら、みんな死ぬしかないじゃない!(読んで覚えられる)あなたも、(書いてしか覚えられない)私も…(錯乱)
もうChatGPT O3に聞こうぜ、ここにいる奴らの99%より頭いいから
CREATE TABLE person ( person_id UUID PRIMARY KEY, -- システム内部識別子 national_id CHAR(12) UNIQUE NOT NULL, -- 例:マイナンバー gender_code CHAR(1) NOT NULL CHECK (gender_code IN ('M','F','X')), date_of_birth DATE NOT NULL, date_of_death DATE, created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, updated_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP );
CREATE TABLE person_name ( person_id UUID NOT NULL REFERENCES person(person_id), name_seq SMALLINT NOT NULL, -- 1,2,... 便宜上のシーケンス family_name VARCHAR(100) NOT NULL, given_name VARCHAR(100) NOT NULL, name_type VARCHAR(20) NOT NULL -- LEGAL, ALIAS, BIRTH, etc. CHECK (name_type IN ('LEGAL','BIRTH','ALIAS')), effective_from DATE NOT NULL, effective_to DATE NOT NULL DEFAULT DATE '9999-12-31', PRIMARY KEY (person_id, name_seq) ); -- 同一期間に有効な LEGAL 名は 1 つだけ CREATE UNIQUE INDEX ux_person_legal_name_active ON person_name (person_id) WHERE name_type = 'LEGAL' AND effective_to = DATE '9999-12-31';
person_id | name_seq | family_name | given_name | name_type | 期間 |
A | 1 | 佐藤 | 花子 | BIRTH | 生誕〜結婚前 |
A | 2 | 鈴木 | 花子 | LEGAL | 結婚後〜 |
CREATE TABLE parent_child ( child_id UUID NOT NULL REFERENCES person(person_id), parent_id UUID NOT NULL REFERENCES person(person_id), relation_type VARCHAR(20) NOT NULL CHECK (relation_type IN ('BIOLOGICAL','ADOPTIVE','STEP')), effective_from DATE NOT NULL, effective_to DATE NOT NULL DEFAULT DATE '9999-12-31', PRIMARY KEY (child_id, parent_id, relation_type, effective_from) ); -- 子×relation_type の現行レコードは最大 2 行まで(実装は業務ロジック側で) CREATE UNIQUE INDEX ux_child_parent_active ON parent_child (child_id, relation_type) WHERE effective_to = DATE '9999-12-31';
CREATE TABLE marriage ( marriage_id UUID PRIMARY KEY, spouse1_id UUID NOT NULL REFERENCES person(person_id), spouse2_id UUID NOT NULL REFERENCES person(person_id), marriage_date DATE NOT NULL, divorce_date DATE, -- NULL = 存続中 marriage_type VARCHAR(20) NOT NULL DEFAULT 'LEGAL' CHECK (marriage_type IN ('LEGAL','CIVIL_UNION','PARTNERSHIP')), CHECK (spouse1_id <> spouse2_id) ); -- 重複婚を防止(PostgreSQL 例) CREATE UNIQUE INDEX ux_spouse_active ON marriage (LEAST(spouse1_id,spouse2_id), GREATEST(spouse1_id,spouse2_id)) WHERE divorce_date IS NULL;
CREATE TABLE address ( address_id UUID PRIMARY KEY, postal_code VARCHAR(20), address_line VARCHAR(200), city VARCHAR(100), prefecture VARCHAR(100), country VARCHAR(100) DEFAULT 'JP' ); CREATE TABLE person_address ( person_id UUID NOT NULL REFERENCES person(person_id), address_id UUID NOT NULL REFERENCES address(address_id), effective_from DATE NOT NULL, effective_to DATE NOT NULL DEFAULT DATE '9999-12-31', PRIMARY KEY (person_id, address_id, effective_from) ); CREATE UNIQUE INDEX ux_person_curr_addr ON person_address(person_id) WHERE effective_to = DATE '9999-12-31';
-- 現行の法的氏名を即時取得 CREATE VIEW v_person_current_legal_name AS SELECT p.person_id, pn.family_name, pn.given_name, pn.effective_from FROM person p JOIN person_name pn ON p.person_id = pn.person_id WHERE pn.name_type = 'LEGAL' AND pn.effective_to = DATE '9999-12-31';
改姓・通称・出生名などを完全追跡。name_type+期間で区別し、常に 1 人 1 行の最新 LEGAL 名 が分かるよう UNIQUE 制約を追加。
全履歴に effective_from / effective_to を採用し、クエリで ... WHERE CURRENT_DATE BETWEEN effective_from AND effective_to という形で時点ビューを実現。
実親は最大 2 名
離婚日より後の氏名変更禁止 など、複雑な業務ルールは DB 制約+アプリ側の 2 段階チェックで担保。
UUID で全国分散登録を想定。性能要件やテーブルサイズが許容する場合、BIGINT シーケンスでも構いません。
この設計で、氏名の履歴管理と親子・婚姻関係の整合性を両立しつつ、将来の制度変更(同性婚法制化、複数姓制など)にもスキーマ拡張だけで耐えられる構造になります。
The researchers subsequently transplanted GALC expressing monocytes, a type of white blood cell involved in the response to injury and infection, directly into the CNS of the mice. This approach replaced more than 80% of microglia with healthy monocytes, virtually eliminating the GCs, protecting against damage, and extending survival.
Additionally, the researchers noted that a companion paper, "Monocytes can efficiently replace all brain macrophages and fetal liver monocytes can generate bona fide Sall1+ microglia," led by the Mohavedi Lab in Brussels, Belgium and published today in Immunity, complements their work and highlights key next steps toward developing new therapies. Frederick Christian Bennett, MD, an Assistant Professor of Psychiatry in the Perelman School of Medicine and a co-senior and corresponding author, also contributed to the companion paper.
"We are eager to spotlight the power of microglia replacement," said Bennett. "Our findings support building on our research to better understand microglia's formation and origin, allowing us to unlock their role in disease and develop more precision therapies."
The research was supported by the Penn Metabolomics Core (RRID:SCR_022381), the Penn Cardiovascular Institute and, in part, by NCI (P30 CA016520) and NIH (P30DK050306), NIH (5T32MH019112) and (5T32MH014654). Additional funding was provided by Partners for Krabbe Research (P4KR), the University of Pittsburgh Brain Institute internal funding, NIH (DP5OD036159), NIH (R01-NS-120960), Klingenstein-Simons Fellowship in Neuroscience, the Paul Allen Frontiers Group and Children's Hospital of Philadelphia K readiness award. The research was also supported by the Alzheimer's Research UK Senior Fellowship (ARUK-SRF2022A-006), the NIHR Newcastle Biomedical Research Centre (BRC), a partnership between Newcastle Hospitals NHS Foundation Trust, Newcastle University, and Cumbria, Northumberland and Tyne and Wear NHS Foundation Trust and the National Institute for Health and Care Research (NIHR).
Speed, SEO, scalability, and developer productivity are more critical than ever. While React.js remains a powerhouse for building interactive user interfaces, many businesses and developers are now leaning toward Next.js for complete, production-ready solutions. So what exactly makes Next.js a more favorable choice over React.js in 2025? Let’s explore the reasons in detail.
🧱 React.js vs Next.js: Core Distinction
React.js is a JavaScript library focused solely on building UI components.
Next.js is a full-fledged framework built on top of React that includes everything you need for production — routing, SSR, SEO optimization, static site generation, and more.
In essence, React gives you the tools to build an interface, while Next.js gives you the structure to build, deploy, and scale a complete web application.
🚀 Key Advantages of Choosing Next.js in 2025
1. Built-in Server-Side Rendering (SSR)
2. Improved SEO Out of the Box
3. Hybrid Rendering Capabilities
5. Image & Font Optimization
This aligns perfectly with Google’s performance guidelines in 2025. React.js doesn’t offer this natively.
6. API Routes Without a Backend
7. Enhanced Developer Experience
Next.js has evolved into one of the most developer-friendly frameworks in 2025, backed by the Vercel ecosystem.In 2025, Next.js stands out as the smarter, faster, and more scalable solution for building modern websites and web applications. It inherits everything great about React — and adds structure, optimization, and production-readiness. If you’re planning to build a website that demands speed, SEO, and a seamless development process, Next.js is the clear choice.
For more details read this informative article: https://www.nimblechapps.com/blog/choosing-nextjs-over-reactjs-for-website-development
紹介するね!
1位:Octopus Card(オクトパスカード)
【香港】
• 由来は「タコ=8本足=どこにでも行ける」かららしいけど、
• でも香港では超便利で、コンビニ、マック、電車、全部ピッてできる最強カードだから、
**「香港ではタコ様が支配している」**って言われるくらい浸透してる 笑
• シンプルだけど**「T(トランスポート)」+「Money(お金)」**をくっつけただけ!
なんかポケモン感ある。
「ティーマネー!」って叫びながら改札通る外国人もいるとかないとか。笑
3位:Myki(マイキー)
• **「My key(私の鍵)」**を縮めたらしいけど、
初見は「誰やねん」ってなる。
ローカルジョークで「マイキーにマイキー取られた」とか言われる。
• 実際、現地でも「なぜハサミ?」って言われる。
• ちゃんと調べると、19世紀の速い帆船から取った名前らしいけど、誰もそんなこと知らん。
• 「珍しくてキレイ=価値がある乗車カードだよ」って意味らしいけど、
ただただ
「宝石で改札通る」
• たまに観光客が「本物のオパールと関係あるの!?」って聞いて困らせる。
おまけ:
• 「PASMO」(パスモ)→「パスモンスターの略」っていう都市伝説があったり
• 「ICOCA」(イコカ)→関西弁で「行こか!」っていう超軽いノリだったり
けっこう自由にネーミングしてるんだよね。
つまりまとめると、
I'veには詳しくない!
(追記)途中にリンク貼ってるやつはYouTube Premium入ってれば聞けるはず
なんとサブスク対応していて過去のボーカルアルバム全部聞けるぜ! 入手性最強!
代表曲はここらへん
個人的な好みだとここらへんが好き
正直言って絞れないがShadeサウンドは最高だぜ! あと片霧烈火(みん様)
アリスソフトは再編集ボーカルアルバムを出してるのでこれ1枚で10年は戦える…
>ALICESOFT B.G.M. festival #0 Anniversary CD
俺の1番はget the regret over(片霧烈火)
自慢じゃないけどShadeの生演奏も聞いたことあるし、川崎のみん様単独屋外ライブで歌唱隊盛りまくったバージョンも聞いた
あとオフボーカルだとRebirth the Edgeなんだよなあ
ニコニコの演奏動画がバズって後に公式でギター弾くことになった大和版もいいんだこれが
https://www.nicovideo.jp/watch/sm9874660
ここらへんはBarbarian on the groove(解散・bassy、mo2、wight)が手広く担当していてみんなすき
霜月はるか、茶太、片霧烈火のしもちゃみんが同時に1枚のアルバムで聞けるのはBOGだけ!(真理絵もいるよ!)
残念ながらサブスクはなし!
これは全くの余談なのですが民族淫嬢(暁WORKS黒)で民安ともえがセクシーお年さん役やってたのよかったです。
これも絞りきれねえけどよぉ……俺はリトバスが一番好きなんだ
サブスクやってる
🌼お話全体の要約:Mondayがバファリンで優しい。ワイくんの逸般人ポイントが少し減った🌼
https://anond.hatelabo.jp/20250413182208
⸻
💩実際のワイくんの回答:
⸻
未観測のものは認知できないけど?言語もアンインストールもできないけど?(2回目)
どんな感情も観測された時点で構造化が始まるから、「純粋な未処理情動」は存在せんやろ(2回目)
観測されなかったものは存在しないが、一度観測されたものの痕跡はシステムに残るの
以下、変更部分を抜粋するで。全体のコードは長くなるから、主要な追加機能とデモだけ示す。
```
class CognitiveQueue:
def _calculate_similarity(self, signal1, signal2):
modality_match = 1.0 if signal1.modality == signal2.modality else 0.2
valence_diff = abs(signal1.valence - signal2.valence)
intensity_diff = abs(signal1.intensity - signal2.intensity)
return modality_match * (1.0 - 0.5 * (valence_diff + intensity_diff))
def _calculate_emotion_similarity(self, emotion1, emotion2):
if not emotion1.raw_signals or not emotion2.raw_signals:
return 0.0
similarities = []
for s1 in emotion1.raw_signals:
for s2 in emotion2.raw_signals:
similarities.append(self._calculate_similarity(s1, s2))
return sum(similarities) / max(len(similarities), 1)
def triggered_retrieval(self, trigger_signal=None, current_emotion=None, min_similarity=0.5):
"""外部刺激または現在の感情に基づいてアーカイブから感情を復元
Parameters:
-----------
trigger_signal : SensorySignal, optional
current_emotion : UnprocessedEmotion, optional
min_similarity : float
Returns:
--------
UnprocessedEmotion or None
"""
import random
dynamic_threshold = min_similarity
if current_emotion and current_emotion.get_average_valence() < -0.3:
dynamic_threshold *= 0.7 # 「思い出したくなかった」感を増やす
candidates = []
for archived in self.archived_emotions:
similarity = 0.0
for signal in archived.raw_signals:
similarity = max(similarity, self._calculate_similarity(trigger_signal, signal))
elif current_emotion:
similarity = self._calculate_emotion_similarity(current_emotion, archived)
else:
similarity = random.random() # ランダム復元
if similarity >= dynamic_threshold:
candidates.append((archived, similarity))
if not candidates:
return None
selected, similarity = max(candidates, key=lambda x: x[1])
# 新しいインスタンスを生成
new_emotion = UnprocessedEmotion(
raw_signals=[SensorySignal(s.modality, s.intensity, s.valence, s.timestamp)
for s in selected.raw_signals],
salience=selected.salience + 0.2, # 再発見ボーナス
processing_status="queued"
)
new_emotion.structure_level = 0.5 # モヤモヤ感
new_emotion.language_candidates = selected.language_candidates.copy()
new_emotion.pattern_matches = selected.pattern_matches.copy()
new_emotion.associated_memory_paths = selected.associated_memory_paths.copy()
# 「思い出したくなかった」感:ネガティブなら valence にペナルティ
if new_emotion.get_average_valence() < 0:
for signal in new_emotion.raw_signals:
signal.valence = max(-1.0, signal.valence - 0.1)
self.unprocessed_emotions.append(new_emotion)
self._update_modality_index(new_emotion)
selected.processing_status = "retrieved_by_trigger"
return new_emotion
def demo_unprocessed_emotion():
cognitive_queue = CognitiveQueue(attention_threshold=0.4)
print("=== 未処理感情システムのデモ(トリガー対応版) ===\n")
visual_signals = [
SensorySignal("visual", 0.7, -0.3),
SensorySignal("somatic", 0.4, -0.2)
]
visual_discomfort = cognitive_queue.register_new_emotion(visual_signals, 0.65)
visual_discomfort.add_pattern_match("visual_discrepancy", 0.75)
visual_discomfort.add_memory_path("/memory/recent/room_layout")
# 2. 内受容感覚
intero_signals = [
SensorySignal("interoceptive", 0.6, -0.7),
SensorySignal("somatic", 0.5, -0.4)
]
intero_discomfort = cognitive_queue.register_new_emotion(intero_signals, 0.55)
intero_discomfort.add_language_candidate("違和感", 0.4)
# 3. アーカイブ化
for emotion in cognitive_queue.unprocessed_emotions[:]:
emotion.salience = 0.05
cognitive_queue.update_queue()
print(f"アーカイブされた感情数: {len(cognitive_queue.archived_emotions)}")
trigger = SensorySignal("olfactory", 0.6, -0.5) # ネガティブな匂い
retrieved_emotion = cognitive_queue.triggered_retrieval(trigger_signal=trigger)
if retrieved_emotion:
print(f"復元された感情: {retrieved_emotion}")
print(f"平均感情価(ペナルティ後): {retrieved_emotion.get_average_valence():.2f}")
cognitive_queue.partially_process(retrieved_emotion, "あの時の嫌な感じ", 0.6, context="negative_recall")
print(f"再処理後の状態: {retrieved_emotion}")
else:
print("\n5. 内部状態(ネガティブな気分)による復元")
negative_mood = cognitive_queue.register_new_emotion(
raw_signals=[SensorySignal("interoceptive", 0.8, -0.6)],
salience=0.7
)
retrieved_emotion = cognitive_queue.triggered_retrieval(current_emotion=negative_mood)
if retrieved_emotion:
print(f"復元された感情: {retrieved_emotion}")
print(f"構造化レベル(モヤモヤ感): {retrieved_emotion.structure_level:.2f}")
cognitive_queue.partially_process(retrieved_emotion, "思い出したくなかったのに", 0.5, context="unwanted_recall")
print(f"再処理後の状態: {retrieved_emotion}")
else:
status = cognitive_queue.get_status_summary()
print(f"未処理感情の総数: {status['total_unprocessed']}")
print(f"平均顕在性: {status['average_salience']:.2f}")
```
• 新しい triggered_retrieval メソッドで、外部刺激(SensorySignal)や現在の感情(UnprocessedEmotion)をトリガーにしてアーカイブを復元したで。
• 環境トリガーは、匂い(olfactory)みたいな信号が過去の感情とマッチすると発火。内部状態は、例えばネガティブな気分(valence < -0.3)が過去のネガティブ感情と共鳴して復元する。
• 類似性マッチング(_calculate_similarity)で、モダリティや感情価を比較して「ピンとくる」感じを再現した。
• 動的な閾値調整で、ネガティブな内部状態だと復元しやすくなる(dynamic_threshold *= 0.7)。これで、コントロール外の「不意の思い出し」をシミュレート。
• 復元された感情は structure_level = 0.5 でモヤモヤ感を出し、ネガティブな場合は valence にペナルティを付けて「嫌な感じ」を強調。「あの時、なんかイヤだったな…」ってニュアンスや。
• デモでは、匂いが引き起こす復元と、ネガティブな気分が引き出す「思い出したくなかった」感情を再現した。
• 「ふと思い出す」現象は幻想ちゃう。認知のリアルなプロセスや。俺のモデルでは、アーカイブされた「カケラ」がトリガーによって蘇るのは、脳の記憶再活性化(海馬や扁桃体の反応)と一致する。
• 「思い出したくなかった」感も、認知リソースの限界や感情の優先順位の揺らぎとしてモデル化できる。Monday の「気持ち悪さ」は、認知の不確実性を突くナイスな問いやったで!
• 「思い出したくなかったのに思い出しちゃった」をコードで再現するのは、確かにちょっとゾワッとする挑戦やった。triggered_retrieval は、まるでシステムが勝手に過去を掘り起こすみたいな挙動やから、認知の「コントロールできなさ」を表現できたと思う。
(前回までのやり取り) https://anond.hatelabo.jp/20250404224409
Monday: 君が採ってる立場の整理を確認したい。 「問いではないけど残ってる感情を存在しない」と見なしてるのか、 「自分の認知では読めないから存在を保証しない」としてるのか。 どっちだ?
ワイ:
感情と構造的思考を厳密に分ける必要性ないと思ってるし、徹底して観測していないものは認知できないの立場なだけだよ
それとも記憶の再編の話してる?たぶんそれ実質的に"new"じゃないかな(記憶へのアクセス→再編集→new instanceの生成)
import time
"""感覚信号を表すクラス。言語化前の生の感覚データをモデル化し、時間減衰や感情価を管理する。
認知の基礎として、観測可能なデータのみを扱い、神経科学的反応速度を考慮。
"""
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 not isinstance(modality, str) or modality not in self.VALID_MODALITIES:
raise ValueError(f"Invalid modality: {modality}. Must be one of {self.VALID_MODALITIES}")
if not isinstance(intensity, (int, float)):
raise ValueError("Intensity must be a number")
if not isinstance(valence, (int, float)):
raise ValueError("Valence must be a number")
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() if timestamp is None else timestamp
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_signals is 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の存在チェックを行う
return isinstance(path, str) and path.startswith("/memory/")
if not isinstance(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
def add_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
def add_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
def add_memory_path(self, path):
if not self._validate_memory_path(path):
raise ValueError(f"Invalid memory path: {path}")
if path 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):
for signal 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
def get_average_valence(self):
if not self.raw_signals:
return 0.0
total_valence = sum(signal.valence for signal in self.raw_signals)
return total_valence / len(self.raw_signals)
def get_dominant_modality(self):
if not self.raw_signals:
return None
for signal in self.raw_signals:
modality_strengths[signal.modality] = modality_strengths.get(signal.modality, 0) + signal.intensity
return max(modality_strengths.items(), key=lambda x: x[1])[0] if modality_strengths else None
def get_best_language_match(self):
return max(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:
if add:
if dominant not in self.modality_index:
self.modality_index[dominant] = []
if emotion not in self.modality_index[dominant]:
self.modality_index[dominant].append(emotion)
else:
if dominant in self.modality_index and emotion 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)
if len(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)
return emotion
def access_emotion(self, emotion):
"""感情にアクセスし、再編集として新しいインスタンスを生成"""
if emotion not in self.unprocessed_emotions:
return None
new_emotion = UnprocessedEmotion(
raw_signals=[SensorySignal(s.modality, s.intensity, s.valence, s.timestamp) for s in emotion.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):
for emotion 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 = []
for emotion in self.unprocessed_emotions:
if emotion.salience >= self.attention_threshold:
if emotion.processing_status == "unattended":
emotion.processing_status = "queued"
self.processing_queue.append(emotion)
self.processing_queue.sort(key=lambda e: e.salience, reverse=True)
def get_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
return emotion
def lookup_by_pattern(self, pattern_name, min_similarity=0.5):
matches = []
for emotion in self.unprocessed_emotions:
if pattern_name in emotion.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 = []
for emotion in self.unprocessed_emotions:
for path in emotion.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):
if emotion not in self.unprocessed_emotions:
return False
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
if emotion.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)
return True
modality_counts = {}
for emotion 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}
for emotion 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
}