サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
大阪万博
blog.sushi.money
以前より、JavaScriptなどで簡単なコードを書いて、絵やアニメーションを作る趣味がある。 たとえばオンライン画像の背景画像を作るとか。 blog.sushi.money AIと何か作る趣味もあって、デスクトップ壁紙を作ったりしている。 blog.sushi.money 2年前には変な時計を作ってもらっていた。 blog.sushi.money 壁紙を作ったら次はスクリーンセーバーだ、というのは自然な流れなので、コーディングエージェントと一緒に作った。 Xcodeで書き始める、ということはせずに、ペライチのHTMLをまずは開発して、それをスクリーンセーバーとして設定する、という流れ。 リポジトリ GitHub - hitode909/sketch-20250502-random-visual デプロイされたページ https://hitode909.github.io/sketch-2
id:masawadaさんがファミレスで肉の串を頼んだら硬かったらしい。 記憶では、そのメニューは硬い印象はなくて、肉が硬いのではなくて、相対的に、まさわださんの顎が弱っているのではないか?と心配になり、応援歌を作ってもらうことにした。 ChatGPTにお願いして作詞してもらう。 masawadaさんは顎が弱っていてお茶漬けしか食べられないそうです。顎強化を願っていろんな物を噛んでね、という歌詞を作ってください。まさわださんの自己紹介の歌としても機能させてください。シティ・ポップがいいです 何度かやり取りしたら、これが出てきた。テーマソングくらいのニュアンスで「まさわださんの自己紹介の歌」と伝えたら、サビでまさわださんが自己紹介する歌が出てきた。プロンプトに当初込めた意図は通じてないけど、新鮮で良いと思う。 タイトル:かみしめて、まさわだ (Aメロ) ひとりで向き合う 朝のキーボード 食卓
Ruby Kaigi 2日目。 技術書店が出店しているので、ちらちら覗きに行った。 昼休みに高橋さん(高橋メソッドの高橋さん)が本を紹介してくれるイベントがあると聞いて、キッチンカーに並ぶのを断念して行ってみたら、1時間にわたって延々と本を紹介されていて、尋常でない本好きな人だ、と感動した。 コードレビューの方法に関する本が紹介されてたので、買って、サインをもらった。 ふだんの仕事ではぼぼ自分で実装する時間はあまりなく、コードレビューしてたら一日が終わる、という形でコードと関わっているので、参考になりそうだし、チームメンバーたちも大量のコードをレビューし合っているので、紹介しようと思う。ぱらぱらめくったら、コードレビューのコメント欄で、クイズを出さないこと、とあって笑った。 伝わるコードレビュー 開発チームの生産性を高める「上手な伝え方」の教科書 作者:鳥井 雪,諸永 彩夏,久保 優子翔泳
きのうChatGPTにお願いして作ってもらったブログの編集画面にイルカが出てきて本文を読んでアドバイスをくれるuser.jsだけど、ずっとTampermonkeyを使っているのもいかがなものか、と思って、普通の拡張機能にしてもらった。 user.jsは1ファイルあれば動くので、ChatGPTに聞いて作ってもらうのが楽だった。手元のエディタの準備が要らなくて、ブラウザで完結する。 一方、Chrome拡張はいろんなファイルを正しく配置する必要があって、ブラウザからコピペだけではなくて、手元のファイルシステムに切り貼りして置いていくような活動が必要。 AIエージェントなら複数ファイル読み書きできるので、練習にはちょうどよさそう、と、CLINEの練習も兼ねてやってみた。 https://github.com/hitode909/chrome-extension-blog-dolphin tampe
近年では、作文した文章をいきなり人に見せず、まずチャットに見てもらって、つっこみどころがないことを確認してから公開する、という習慣ができている。 ブログを書くときには、ブログの編集画面で書いてから、ChatGPTにコピペしていたけど、その場で見てもらえたら早いと思い、以下のようなことをやってくれる拡張機能を作った。 ブログの編集画面で動いて、本文を監視する 本文に変化があれば、「日記を批評して:(以下本文)」というプロンプトでChat GPTのAPIに送る 得られた批評は、編集画面内に現れたイルカのセリフとして表示する Chrome拡張で作ったらいいかと思ったけど、この拡張時代の実装もAIにやってもらいたい、と考えると、1ファイルで完結したほうが楽だ、と思って、Tampermonkeyで動くuser.jsとして作った。 APIキーはGM_setValueして格納している。これは他のuser
GPT-4oの画像生成機能が良くなったという記事を見たので試してみた。 この画像をもとに画像生成してもらう。 家族を追加してもらう 友達が、画像生成で旅の仲間を足していて良いな、と思ったので、僕の写真にも家族を追加してもらった。 【友達生成】 一人旅の自撮り写真で“友達をAI生成”が話題に 心境は?投稿主に聞いてみた 「自分でも不思議ですが友達と一緒にいたような記憶が芽生えてきた」 「良い友達はそう簡単にはできないので粘り強く何度も試すのが大事」#アベヒル #アベマニュース@uiu______— ABEMAニュース (@News_ABEMA) 2025年3月24日 画風を指定して、ポートレート写真らしくしてもらっている。家族が沢山追加されて満足。 家族みなそっくりにしてもらったバージョン。これを今日からリモート会議の背景に使おうと思う。皆にメガネを掛けさせて、ってお願いしたけど、掛けてない
道を歩いているときに、レンタル布団…みたいな旗を見たものの、旗なので、自由な方向に回転していたのか、横向きに読んでしまって、フソ…とよみ始めて、途中で、あっレンタルだ、と気付いた。 字が反転していてどっちに向いてるかわからないものを読まされるのはおもしろいような気がする。 体験コーナー お気軽に編集してください。 道を歩いているときに、レンタル布団…みたいな旗を見たものの、旗なので、自由な方向に回転していたのか、横向きに読んでしまって、フソ…とよみ始めて、途中で、あっレンタルだ、と気付いた。 字が反転していてどっちに向いてるかわからないものを読まされるのはおもしろいような気がする。
SNSへの投稿が炎上する場合って、無邪気に書いて投稿した結果、検討していなかった軸で見ると、問題があるように見える、という形が多いと思う。 炎上させるぞ、と思って投稿しているわけではなくて、本人が想定していない読解によって、意図しないトラブルが発生している。 投稿:ふるさと納税で淡路島のホテルに来ています。ランチは淡路牛。 筆者の考え:皆に淡路島の魅力を伝えたい 炎上視点:ふるさと納税でホテルに行ける財力をアピールしていて感じが悪い 国語の授業では筆者の考えを読み解きましょう、となるけど、投稿の炎上というのは筆者の考えとは異なる、攻撃力が最大となる軸を発見し、苦言を呈する、という構造。 ベテランのインターネットユーザーなら過去の数々の炎上を体験していることだと思うけど、ベテランになってくると、その投稿まずいんじゃないですか…って身近な人につっこんでもらえにくくなる、という構造もある。 つっ
子がたびたび、塗り絵をやりたい、と言う。 塗り絵はだいたい商店街の文房具屋で買ってるのだけど、急に、こういう塗り絵をやりたい、と言われても、そんなのないよ…となることがある。 家にはプリンタがあるので、画像検索して印刷すれば塗って遊べるのだけど、ただモノクロで印刷すると、グレイスケールのもやもやした出力で、塗っても楽しくない。 できれば、線画っぽい、コントラストのぱきっとした画像を出してあげたい。 プレビュー.appで色を調整する 画像をダウンロードして、カラーを調整する。露出を上げて、コントラストをあげて、彩度を下げると、塗り絵用の線画っぽくなる。 これを毎回手でやるのはめんどう。 ImageMagickで加工する ImageMagickで自動化する。というのも考えた。ブラウザでダウンロードして、その画像をconvertコマンドで変換して、lpコマンドで印刷する。 ダウンロードしてから、
「なぜ働いていると本が読めなくなるのか」を読んだ。 本が読めなくなるかどうかより、全身全霊で打ち込むことの是非のほうが心当たりのある話だった。 自分の場合は全身全霊で打ち込んでいた環境から、育児が始まって、そうでない環境に変化した、というのが、ここ数年の出来事。 自分の身の回りのIT業界では、学生時代からコードを書くのが趣味、みたいな人物が仕事を始めて、仕事をしながらも、趣味で、仕事を効率化するプログラムを作ったり、趣味で勉強会に行ったりする、という、仕事が趣味なのか趣味が仕事なのかわからない姿勢の人が多い。 そこからライフステージが変化して、24時間仕事していていいという状況ではなくなり、家事育児の分担をしていくと、仕事に1日8時間しか捻出できない、といった状態になると、以前のほうが熱中できていたな、いまは全力で過ごせてないな、と、調子がおかしくなる。 これをあとで調べよう、と思ったり、
服や食べ物は収入によって大きな差があるけど、ソフトウェアは誰のもとにも平等、ということを突然思った。 エグゼクティブのためのOS、というものは存在しなくて、みんな同じOSを使っている。 Linuxはオープンソースなのでみんな使える、こういったブログシステムが動いているOSも、もちろんLinux…というだけでなく、MacやWindowsなど、有料のアプリケーションもみんな差なく使っている。 節約志向で未だにMS-DOSを使ってる、という人には会ったことがない。 たまに有料のIDEを使っている人もいるけど、収入が高いから生活レベルが上がって贅沢ができる、ということはなくて、こだわりのある人は使っている、という形で、コーヒーは豆からいれてます、みたいなものと近い印象。 エグゼクティブのための表計算ソフトを作ったとして、一般社員が表を開けないと意味がないので、やはりカスタマイズする意味はないような
ミーティングしていて、お疲れ様です、と言うタイミングはいつ?と考えると、 集合したとき 最初の挨拶として、お疲れ様です 終了したとき 解散の挨拶として、お疲れ様です お疲れ様です、と思ったとき きのうは大雪で大変でした→お疲れ様です と、どのタイミングでも発することができる。 ミーティング中に、ぼーっとしていると、なにかの発言に対するリアクションで、誰かがお疲れ様です、と言ったのを聞いて、解散の挨拶だと思い、思わずタブを閉じて退出してしまう、という恐れがある。 閉じたあとで、ひょっとして、さっきのお疲れ様ですは、解散の挨拶ではなくて、ただのリアクションだったのではないか?と不安になる。 途中でいきなり一人抜けるのを目撃した、残された側としては、ひょっとして、いまのお疲れ様ですで勘違いして抜けられたのでは…?ちゃんと話聞いてなかったのかな…?と気まずい気分になる。 今後のビジネスマナーとして
銭湯のサウナに行くのが趣味なのだけど、なかなか行く時間がなく、特に最近は寒くて家から出たくない。 微妙に家から遠くて、自転車で6分くらいかかる。自転車で6分というのは、育児中の人物にとってはものすごい貴重な時間。 子も3歳くらいで、そこそこ手がかかるなか、一人家をあけるのも家事の負担が偏ってしまい望ましくない。 ゆくゆくは家にテントサウナでも設置したい、と思っていたけど、一般的なサウナストーブは200Vのコンセントが必要で、あろうことか家を建てるときに発注するのを忘れていた。 なにか工務店に追加の用事があるときにお願いするか…と思っていたけど、先日、100Vで動く家庭用サウナを発見した。 これをゆくゆく買うか、と思っていたけど、なにか待ってても何も変化しないので、さっさと買ってみることにした。 revitalize.official.ec 一人用の場合、85cm四方のスペースで設置できる。
タイムラインで流れてきたポストから、Googleが作っているImageFXが作ってくれる画像のクオリティが高いように見えたので、触ってみていた。 ImageFXの作例 これが自分で撮った紅葉の写真で、 こっちが、Image FXに、京都の紅葉、50mm f1.4バブルボケ、とか伝えて作ってもらったもの。 ChatGPTに同じ入力を渡すと、こんな画像なので、仕上がりの違いがわかると思う。 どこか嘘っぽいというかメルヘンな仕上がりになりがち。 ここまでできるなら、手持ちの画像そっくりな画像を作れるのでは、と思って試してみる。 手持ちのラーメンの画像そっくりなラーメン画像を作る ChatGPTに、自分で撮影したラーメンの写真をアップロードして、この画像を作るためのプロンプトを作って、とお願いする。 この画像と同じ写真を生成AIで作りたいので、プロンプトを生成してください。内容だけでなく、レンズの
ADRは書く機会より読む機会のほうが多いのだけど、読んでいて、冗長だったり、長いと感じると、もっと小さくならないの?って聞きたくなる。 それと同時に、失礼なことをしてないかハラハラする。 これがコードだったら、文のレベルと振る舞いのレベルは切り離されているので、振る舞いを変えずにリファクタリングして小さくできることは明らか。 文章の場合は、削ると、文章が働く役割は自明でないことから、せっかく書いたんですけど、みたいな気分になるような気がする。 文章を扱うときには、問題vs私達になりにくくて、容易に人vs人になってしまう。 普段、編集提案機能のないツールでADRを書いていて、議論のコーナーを作って自然文でやり取りしているのだけど、これではツールの支援が足りなくて、めんどくさい。 レビュワーという立場でファシリテーションしに行くか、意見だけ書いて著者にファシリテーションしてもらうかなど、どの強
仕事していて、どの部分が新しくて、どの部分が過去にやったことのあることなのか、という認識を揃えておけると便利。 表にするとこんな感じだと思う。 本人から見て\他人から見て 過去にやったことがあるように見える 新たに取り組んでいるように見える 過去にやったことがあると認識している 過去のこれと同じなので、さっさと終わらせよう、という話をする 見落としている落とし穴があるかもしれないので認識を揃える 新たに取り組んでいるという認識 実はこれと同じなんじゃないの?という話をする 新しい挑戦なので応援する 認識が揃ってたらいいのだけど、認識が揃わないときには手厚く会話しておけるとよさそう。 本人は気づいていないが、他人から見ると過去にやったことがあるように見える 忘れてたら思い出せるように会話するとか、実はあれとこれは同じ、と気づいてもらえると、抽象的なものの見方ができるようになるかもしれない や
前回に出たのが2020年で、子が生まれてからは参加していなかったのだけど、声をかけてもらって、id:tkzwtks, id:akiymと出た。 この2人とは2017年にも一緒に出場して、そのときは朝からビールを飲み、惨敗していた。 準備 準備はほぼなにもしてなくて、やらなければ…とか何度かチャットに書き込んだくらいだった。 自分のブログを見返して、ああこんなのやってたな、とか眺めていた。見返すと、慌てない、とか、精神面のTRYが多い。 個人のスキルとしては、技術的には4年前から何も進歩していないけど、普段の仕事が忙しすぎるため、落ち着いて行動する、みたいなスキルは上がってきていると思う。 ISUCON の検索結果 - hitode909の日記 朝風呂 銭湯の朝風呂に行って、鴨川を眺めてからオフィスに向かった。 鴨川のすがすがしさがとてつもなくて、この気持ちよさ、合法なのか?規制したほうがよ
今年の Advent Calendar では、AIと一緒に「マサワダ」を主人公とした映画タイトルジェネレーターを作りました。このコードは、実行するたびに異なるタイトルとサブタイトルを生成します。「マサワダと影の覚醒」「ふたりはマサワダと未来の冒険」など、膨大なバリエーションをランダムに生み出せる仕組みです。 試行錯誤の中で一番工夫した点は、「マサワダ」を必ずタイトルに含めるルールを設けつつ、構成要素(前置き、中心のテーマ、結末)を柔軟に組み合わせられるようにしたことです。こうすることで、単なるパターン化に留まらない、より多彩なタイトルを生成できるようになりました。 作業の過程では、AIに何度も細かな要求を出し、「星座が画面サイズに依存しないように」「タイトル生成に多様性を持たせて」など、多岐にわたる指示を即座に反映してもらいました。この体験に慣れすぎると、コードレビューでも「星座が正確に見
アーキテクチャを理解可能にするために、同時に見るべき関心事は最大7個にしよう、という話がよかった。 よくわからない難しいコンポーネントの話をしてると、「これってこういうこと?」「それは〇〇という概念があって…」というのが延々と続いて、話が全然進まない、ということがある。 そういうときは、抽象を見つけるのに失敗していて、フラットに様々な概念を並べてしまっている、と言える。 適切に意味をまとめていって、中心概念と、それの付随する概念が最大6個となるように、六角形の花、ヘックスフラワーにプロットしよう、というアイデア。で、そのフラワーの1セルを拡大すると、さらに、中心概念と付随する概念6個、というかたちで、入れ子にしていく。 ソフトウェアの分割統治っていうと新しい話ではないけど、フラットな20個の概念に分割されても、覚えてられない。 この本では人間が一度に覚えていられるマジカルナンバーを参照して
aタグのdownload属性について2ヶ月に1回くらい喋っているので、練習用の記事を作っておく。 このリンクをクリックすると、ブラウザが、リンク先をダウンロードしようと試みる。お時間ある人はクリックしてみてください。 記事のHTMLをダウンロード 先日の夢日記のHTMLがダウンロードされるので、地下鉄とかオフラインのときに読んでください /404ページをダウンロード /404というエンドポイントは存在せず、サーバーサイドからは404 Not Foundが返り、ダウンロード失敗 <p><a href="/entry/2024/11/26/235900" download>記事のHTMLをダウンロード</a></p> <p><a href="/404" download>/404ページをダウンロード</a></p> ダウンロード失敗したとき、ブラウザのUIで、ダウンロードに失敗しました、と教え
他人と同じコンテンツを鑑賞して感想を言う、という経験の頻度が低くなると、わかり合いレベルが低くなる気がする。 同じ本を読んで、どうでしたか、とか、この文章についてはどう思いますか、みたいなことを言うと、相手の考えてることが分かり、どの部分が合意してるか、ということがわかりやすい。 同じコンテンツを鑑賞していない場合のやりとりとしては、まず相手の意見を聞いて、そしてこちらの意見を言う、というキャッチボールになるけど、立ち位置を表明するつもりが、相手への指摘みたいになって、べつに論破したいわけじゃないんだけど、みたいになる。 ということがあって、1on1などで、本を紹介したり、相手に紹介された本は、とりあえず買ってみたりしている。
ストーリーに関心が出てきたので読んだ。 人間はストーリーが好きで、人を支配できるストーリーの特徴として、現在進行系で暮らしにくっついてくる、という特性がある、というのがおもしろかった。 陰謀論は読んでいくと、最後には、現在の悪行の紹介になり、今すぐ立ち上がるんだ、みたいになる。 一方、地球温暖化については、わかりやすい悪と、今すぐこれをしよう、みたいなキャッチーさが低い。 リファクタリングガイド系の本を大量に読んでいたら、リファクタリングを繰り返すとコード行数がどんどん減っていき、最終的に0行になり、我々は何もせず、寝てるだけでお金が入ってくるんです、というストーリーを語れるようになる。あとは、ミニマリズムが好きで、選べるなら構成要素が小さい方を選ぶ。コードが減っていく、というストーリーと、個人開発がうまくいけば一発当てられる、という特性、冗長な暮らしではなく最小の物で暮らす、といったスト
ChatGPTの高度な音声を使えるようになった。 AIが喋ってる間にも割り込んで喋れるので、期待通りじゃない応答が来たら、そうじゃなくて、…って割り込めて便利。 なのだけど、こうしてAIと喋るのに慣れていくと、人間と喋ってるときにも、無礼な割り込みをすることに躊躇がなくなっていきそうで、それが怖い。 AI向けには、「これって、こういうことですよね」ってしつこく質問し続けたりするけど、人間に対して、あまりしつこく重箱の隅をつついた質問を続けると、失礼、ということがある。 新機能が出るたびに、ためしにラップしてもらっているのだけど、こちらが音声で言ったテーマをもとにラップを返してくれるし、韻を踏んでくれていたので、進化を感じる。 英語と混ぜてしゃべってもらったら、カタカナなところはカタカナ読み、アルファベットになってるところは英語っぽい読み方でラップしてもらえた。
コンテキストのwithValueって変数を引き回すためによく使われているけど、よそで使っている場所と、偶然名前が被ったらどうなるの?というのが気になっていたのだけど、そんな心配はなくて、それぞれ別の型をつけられるので衝突しない、ということだった。 Perlを書いてると、Scope::Containerに、引き回すのがめんどうな値を入れたりするけど、こっちは名前が同じなら同じ値を取り出せてしまう。名前が同じでもidが衝突しないよう管理してくれる仕組みがあったら便利な気がする。 contextってReactにもあって、親から子にデータを一足飛びに渡すのに使ったりするけど、contextという名前の概念が登場する機会が増えているような気がする。 useContextするときには、contextの中身はせっせと渡していくんじゃなくて、ファイルの上の方で定義するとか、どこかでexportしておいてi
リポジトリ丸ごとLLMに読んでもらう方法を見て、とにかくテキストファイルにまとめたら、それについて質問できるんだな、ということがわかったので、Googleが作っているNotebookLMで遊んでみた。 このブログのエクスポートをアップロードして、それに基づいて質問してみる。 NotebookLMは、こんな感じで、自分のアップロードしたファイルが横に並んでて、ソースを選びながらチャットができる、というもの。テキストとかPDFとかをアップロードできる。 論破してもらう 著者の日記での主張をとりあげて、ラップで論破してみてください。 メンタリングしてもらう 年ごとに別々のファイルにすると、2024.txtだけ選択してアドバイスをもらう、といったことができた。 2014.txtだけ参照してアドバイスをもらうと、別のことを言ってもらえる。こう見ると、10年前の日記のほうがソフトウェアの話をしていてお
先日のKyoto.なんかで、個人的に1月から続けている習慣の、AIにデスクトップ壁紙を作ってもらう話をした。 scrapbox.io デモとして、京都で開催されるIT勉強会の画像を作る例を紹介したのだけど、そのまま設定を放置していたら、手元端末では定期的に、京都で開催される勉強会の画像が生成されていて、デスクトップに唐突な勉強会画像が表示される。 「京都のIT企業で開催される、個性的なIT勉強会の様子を想像して描写してください。」とまずChat GPTに投げると、「抹茶を飲みながらコードを読んでいる」とか「舞妓がパソコンを見ている」とかそういう内容の応答が返ってくる。 応答の例 In an antique Kyoto mansion, vibrant tech enthusiasts congregate under ornate hanging lanterns, passionatel
2年前の9月に賃貸マンションを脱出しようと活動を始めて、去年の4月に土地を買って、今年の2月から工事して、家を建ててもらい、ようやく引っ越しだった。 その間にハイハイだった子は歩いて喋るようになるし、あとからマンションを探し始めた友達にどんどん追い抜かれていく。 数日間ほぼ徹夜で荷造りしたことで、搬出はなんとかなったのだけど、搬入ではややトラブルがあって、現地を見るなり、ソファと冷蔵庫が二階に上げられないかも…とおっしゃる。 営業の方には、現地調査来なくていいの?って聞いたのだけど、階段から行ってみますし、ベランダがあるなら、いざとなったらそちらからで大丈夫、みたいな話で、なんかやる気なさそうな方で、Z世代ってみんなこんな感じなのかな?しかしコロナの後遺症でめちゃめちゃ調子が悪いのかもしれない、低労力でも、抑えるべきポイントを押さえていればこんな感じでも大丈夫なのかもしれない、よくある引越
GitHub CopilotにはCLIがあるのを思い出して、コマンドの実行結果をそのままプロンプトに渡すと、文脈に沿った仕事をお願いしやすいんじゃないか、と思って、試してみた。 git stashをよく使うのだけど、一覧になっていると、何がstashされているかわからないので、stashの保存時に、内容を要約してもらう、というタスクを試してみる。 なんらかのCLIにdry-run機能をつけている途中で、git stashしたいとする。 index f1f5a2f..dd70bf5 100755 --- a/cli.js +++ b/cli.js @@ -19,6 +19,10 @@ command } else { command.help(); } + }) + .arguments(['dry-run']) + .action(async(file) => { + console.lo
この本を読んだところ、おっそれはマウンティングですね、とか言って、さっそく役立てた。相手のマウンティングを指摘する、マウンティング・マウンティングである。 マウンティングの逆の行為として、配慮のお願い、というのがあって、〇〇できない人もいるんですよ、そういう人達に対する配慮のないあなたは価値観の古い人間ですね、という論法がある。 つまり、構築→脱構築、ということであるし、エントロピーがあるところ、無秩序がある、ということである。 最低限のマウンティングとして、「私はインターネットにアクセスできますが」というのがあるかと思ったけど、笑い話ではなくて、20年くらい昔を思い出すと、インターネットにアクセスできる者たちと、そうでない者たちの格差、デジタル・ディバイド、とか言ってたと思う。 読んでて思い出したこととしては、星野源も同じことを言っていた、ということで、仕事のやる気が出ないときに、終わっ
次のページ
このページを最初にブックマークしてみませんか?
『hitode909の日記』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く