タグ

ブックマーク / blog.3qe.us (12)

  • htmxをCloudflare Workers + Honoで動かして入門した - Lambdaカクテル

    htmxについてちょっと遊んでおきたかったので遊んだ。Cloudflare Workersの上でHonoを動かして、TSXでHTMLを返しつつ、その中にhtmxをのっけた、みたいな構成。𝑹𝒆𝒂𝒍 𝑾𝒐𝒓𝒍𝒅 𝑩𝒖𝒔𝒊𝒏𝒆𝒔𝒔...でも使えるかな? https://wild-meadow-79c7.windymelt.workers.dev/ なんか一瞬でできた。 やったこと pnpm create cloudflare@latestしてHello, Worldプロジェクトを作成してそのままデプロイ(この時点で https://wild-meadow-79c7.windymelt.workers.dev/ が生える。すげ〜) ディレクトリができるのでそこに入ってpnpm i honoする tsconfig.jsonのcompilerOptionsのjsxまわ

    htmxをCloudflare Workers + Honoで動かして入門した - Lambdaカクテル
  • 『データ指向プログラミング』読んだ / OOP以前とDOPとの対比と差分などについて - Lambdaカクテル

    先々月あたりに邦訳が出た『データ指向プログラミング』を読んだ。めちゃくちゃざっくり言うとオブジェクト指向における「データと振舞いの一体化」というドグマを手放させるもので、めちゃくちゃざっくり見るとC言語的な構造化プログラミングの世界に回帰するようにも見えることから、世間的には色々な評価があるらしい。 イミュータビリティが良い、みたいな話は重々承知なので適宜飛ばしながら読んだ。また、lodashまわりの話は単なるライブラリ紹介であり、特筆することがないので飛ばした。 こういう感じで言及されている zenn.dev slides.com 自分なりに読んで思ったことをまとめる。面白いだったし、自分の思想にも近しいものがある。僕は普段ScalaやTSを書いているので、その観点からの感想が多いです。OOPの歴史に詳しいわけではないので、不足があったらすみません。 OOP以前の世界との差異 イミュー

    『データ指向プログラミング』読んだ / OOP以前とDOPとの対比と差分などについて - Lambdaカクテル
  • OpenAIのAudio Transcription APIで遊んだ - Lambdaカクテル

    最近OpenAIがオーディオ系のAPIをいくつか出していた。といってもけっこう前の話だ。 そんな中、最近OpenAIが色々なサービスを展開している。自分も触って習熟しておいたほうが、面白いアイデアを思い付いたときにすぐにプロダクトを作れて役に立つはずだ。そういうわけで色々APIを見ていたところ、その中でも面白そうだった書き起こしAPIを使うことにした。自分が喋った内容を書き起こしてもらいたい。上手くいくだろうか?ボソボソ喋るオタクボイスでも? openai.itshinan.jp このAPIを使うと、オーディオ音声(wavとかflacとか色々な入力形式を使える)から各言語の書き起こしをやってくれる。イクゾー 素材音声 小銭を払う Scalaから呼び出す 所見 まとめ 素材音声 今回用意した自分の音声はこれ。過去の自分の記事の内容の一部をボソボソ読み上げている。お世辞にも上手ではないし、AP

    OpenAIのAudio Transcription APIで遊んだ - Lambdaカクテル
  • これだけ読めばOK!Scalaの環境構築2023 - Lambdaカクテル

    自分は、仕事Scalaを数年間・プライベートな経験を含めると10年弱のScalaの経験がある、そこそこの熟練Scalaエンジニアだ。チームにメンバーが入ってきたり他人に勧めるたびにScalaの環境構築を教えている一方、最新の知見を反映した記事が無くて他人に勧めづらかったので、自分が書くことにした。 現在ある記事 けっこう古びている 覚えながら書かれていることが多いのでやや曖昧な箇所がある(でもありがとう!) 最新のツールが利用できておらず無駄が多い 網羅的でない 今回目指す内容 最新の知見を活用して最短距離を目指す 何もない状況から一通りのツールが揃う所を目指す Scalaの環境構築は年を追うごとに簡単になってきているので、大多数の読者は引っかからずに進めるようになっているはず。 Scalaは基的にJVMで動作する言語だ。このため環境構築にはJVMのセットアップも含まれるのだが、それに

    これだけ読めばOK!Scalaの環境構築2023 - Lambdaカクテル
  • ActivityPubで投稿を表示できるようにした - Lambdaカクテル

    これは雑な日記。 blog.3qe.us blog.3qe.us こういうことをやっていた。HTTP Signatureの仕様がバラけていたり、フィールド名の内容をなぜか勘違いしてい(publishedフィールドにはその投稿を作成した時刻が入るのだが、なぜか投稿のURLを入れてしまっていた。このためうまく認識されていなかっ)たりした。 github.com なんとかちびちび実装できている。フォローできるようにする機能の実装もあらかたできて、Akkaのアクターの機能をそこそこに活用できている(かも)。フォローがうまくいくようになったら(それがいつになるかは不明だ)、次は投稿を自由にできるようにして、その次はいよいよPersistenceなどをやるかもしれない。プロフィール表示もできたい。 blog.3qe.us

    ActivityPubで投稿を表示できるようにした - Lambdaカクテル
  • ActivityPubサーバを実装したかったのでまとめWikiを作ったら人々が集いつつある - Lambdaカクテル

    最近のTwitterの荒れ具合と、Fediverseへの流入がいちじるしい。そんな中自分は、Fediverseという愉快な電網の共通語であるActivityPubの上で、botを動かそうと練習を重ねている。 blog.3qe.us この情報を自分のアカウントで発信していると、ActivityPubの実装をしたり、知見を持っている人がちらほら現れだして、互いに繋がるようになった。知らなかった実装の名前を知ったり、既存の実装の特徴を教えてもらったりした。 一方、そういった人々の知見は個々の実装の内側に閉じてしまっているように感じていた。自分はActivityPubの初心者だが、日語で書かれた情報を探すのにも苦労しているし、英語の情報を選別するのも負担に感じていた。日語のActivityPubの実装に関する「知の高速道路」が無いという課題感があった。 そこで、Scrapboxにまとめサイトを

    ActivityPubサーバを実装したかったのでまとめWikiを作ったら人々が集いつつある - Lambdaカクテル
  • Twitterが直球の言論統制を開始しつつある件に関して 兼 避難所アカウントのお知らせ - Lambdaカクテル

    3行で Twitterが特定アカウントのツイートをRTできなくした。一線を踏み越えたと考えている これは言論の統制であるし、このまま加速度的に濫用されると考えている 悪いことは言わないから今すぐ別のSNS、マストドンとかにアカウントを作りなさい 統制 今日ごろから、Substackという 記者クラブ/ 通信社的性格の ジャーナリスト多めの(追記1)コンテンツプラットフォーム 組織(noteみたいな感じ?)のツイートがRTできなくなっているたが、現在はできるように戻された(追記3)。 A statement from our founders: Any platform that benefits from writers’ and creators’ work but doesn’t give them control over their relationships will inevi

    Twitterが直球の言論統制を開始しつつある件に関して 兼 避難所アカウントのお知らせ - Lambdaカクテル
  • 自分のはてなブックマークをChatGPTにつないだ - Lambdaカクテル

    scrapbox.io から派生して、 blog.sushi.money こういうことが可能だとわかった。 はてなブックマークはAtom形式でのエクスポートが可能なので、 はてブにAtomを吐き出させる AtomをJSONに変換する あとは同じ というプロセスで、自分のはてブのコメントを知っている状態のChatGPTのモデルを作ってみた。 コード 一番元々の記事ではPythonで書かれていたコードが、 id:hitode909 のコードではRubyになり、自分のコードだとScala3になっていて面白い。 #!/usr/bin/env -S scala-cli shebang -S 3 // usage: batom2json.scala.sc ~/Downloads/Windymelt.bookmarks.atom > from_bookmark/Windymelt.json // You

    自分のはてなブックマークをChatGPTにつないだ - Lambdaカクテル
  • 淡々と暮らす - Lambdaカクテル

    天皇誕生日ということで祝日である。自分のような平民にも休みが与えられてありがたい話だが、だからといって何かをやるというわけでもないので寝ていたら、注文していた荷物が午前に到着してしまったので中途半端なタイミングで起きてしまった。朝にも昼にも似つかわしくない時分に目が覚めてしまい、しかもやや眠い。注文していたのは自動で動くゴミ箱なのだが、その話はまたそのうちすると思う。 先日、爲末大 氏のツイートを見た(強調は筆者による)。 私の父親は道がんで亡くなったのですがステージ4と告知された時母親はかなり動揺しました。あのタイミングっていろんな人が声をかけてくれるみたいで、その中には宗教的なやつもあれば、トンデモ医療みたいなのものから誘われたりするのですが、母は「そんなわけがない」と標準治療を選びました。 後から聞いてみると、同じ状況で親族が〇〇にハマって、〇〇に傾倒して、という話をたくさん聞

    淡々と暮らす - Lambdaカクテル
  • CloudflareのMastodon互換ソフトウェア「Wildebeest」を立ててみたメモ - Lambdaカクテル

    あまり調子が良くないので、2023年7月現在おすすめしません。なにか他の実装を選ぶことをおすすめします rinsuki.hatenablog.jp 先日Cloudflareから面白いアナウンスがあった。Cloudflareの基盤で動作する、Mastodon(おおむね)互換のソフトウェアWildebeest*1(ワイルドビースト、ウィルドビーストみたいな発音っぽい)がリリースされたのだ。 blog.cloudflare.com 自分はけっこう前から@windymelt@mstdn.takuya-a.netというMastodonアカウントを保有していて、最終的にオドアケルによってイーロン帝が廃位されてTwitterが滅亡してもネット知り合いとのつながりを保てるようにしている。 mstdn.takuya-a.net 今回新たに作成したWildebeestのアカウントは@windymelt@ap.

    CloudflareのMastodon互換ソフトウェア「Wildebeest」を立ててみたメモ - Lambdaカクテル
  • マストドンのシェアボタンを自作した(追記あり)(今日から使えます) - Lambdaカクテル

    自分でマストドンのシェアボタンを作ってみた。 <a href="#" class="js-mstdn-share-button">Share: {title} {}</a> <script defer src="https://github.com/windymelt/mastodon-share-button-scalajs/releases/latest/download/mstdn-share.js"></script> このコードを貼り付けるとテンプレートが展開されてシェアボタンになる。Share: {title} {}としている箇所は文言のテンプレートで、{}がURLで、{title}がタイトルで置換される。 初めてクリックするとポップアップが出てきて、自分のインスタンスがどこなのか教える必要があるけれど、一度使ったらLocalStorageに覚えてもらうようにした。一度設定した

    マストドンのシェアボタンを自作した(追記あり)(今日から使えます) - Lambdaカクテル
  • 朝日新聞社の長文要約生成APIを使ってブログの要約を自動生成する仕組みを構築した - Lambdaカクテル

    先日朝日新聞社によって長文要約APIがリリースされました。要約をAPIで取得できるという点が面白いと感じたので、このブログ(blog.3qe.us)の記事を閲覧したときに自動的に要約を見られるような仕組みを作ってみようと思い、1週間ちょっとかかってしまいましたが動くものができたので紹介します。 www.itmedia.co.jp 記事冒頭に要約コーナーを出現させる この仕組みによって、記事の冒頭に要約コーナーが勝手に出現して要約を表示します。 こんな感じで要約が表示されます いくつかの記事では既に生成ができていますが、API自体は1日に20回までの制限があるので、全ての記事にはまだ行き渡っていません。 まだ要約が生成されていない記事にはpreparing abstractという文言が表示されます。 キューに入った状態 句読点の問題かちょっと要約が怪しいところもありますが、おおむね正しい要約

    朝日新聞社の長文要約生成APIを使ってブログの要約を自動生成する仕組みを構築した - Lambdaカクテル
    yuki_2021
    yuki_2021 2022/06/30
    僕が今やろうとしているのはこれだけど、バックエンドはサボってさくらインターネットにMySQLでやってるw
  • 1