Apache BeamでSlackのエクスポートデータをBigQueryに投入する
同じことをEmbulkでやったネタはこちらです:SlackのログをBigQueryにインポートする(手動) - 詩と創作・思索のひろばSlackワークスペースの管理者であれば、ワークスペースのデータをエクスポートできる。このデータをBigQueryに投入したら面白いかもしれないので、Apache Beamの素振りがてらやってみた。Apache...
View ArticleDELE A1に合格した
Geoguessrで強くなりたかった(最近やってないが)のと、あとラテンアメリカ文学が好きで読んでたことがあったのと、ほかにもいろいろタイミングがあって、去年からスペイン語の勉強をはじめていた。途中のマイルストーンとしてDELE...
View Articleシンプルに運用できるかっこいいスコアカード!
人間は数字が増えていくことに純粋な喜びを感じるところがあるようですが、この性質を利用して子供にやる気を出させることはできないかと、バーチャルなスコアカード(ポイントカード)を作ってみた。イメージはDuolingo的なゲーミフィケーション。実際に動いている例がこちら。https://simple-score-card.pages.dev/card/1fDirH0H8LFJs9IneHnU0oDUbsn...
View Article固有名詞をつけるとき
ソフトウェアエンジニアリングにおいて大切なのは、人間のことをのぞけば名付けだと思っている。言葉がなければ世界は混沌としたままだけど、そこに名前をもたらすことがものごとを切り分け、ひとつの秩序をもった視点をつくる。この秩序は唯一絶対のものではなくて、なんらかの意志によって導かれたものである。ソフトウェアはあくまでも現実の抽象だから、問題をどういう視点で見るか、という軸があるわけだ。そういう意味では人間...
View Article全ポケモンの名寄せデータ POKEMON_ALL.json を作った
ポケモンプログラミングしてるといくつかの有名どころのサイトからデータを収集することになる。具体的には以下のようなサイト。ポケモン徹底攻略言わずと知れた、ポケモン情報の総本山。PokéAPIポケモンのデータをRESTで提供してくれるサイト。最近はGraphQLもやってるらしい。英語。ポケモンバトルデータベースポケモンホームで閲覧できるような、ランクバトルに関する情報を閲覧できるウェブサイト。それぞれ便...
View Articlegonoouterval: 内側のスコープの値に気づかず外の値を使っていたら警告するlinter #Go
タイトルを書くのに苦労した。つまりこういうことです。たとえば例示的なコードとして、データベースへのトランザクションを発行してくれるラッパー的な関数をイメージしてもらえれば:RunTransaction(db, func (tx Execer) error { db.Exec(...) // ← 本当はtxを使うべきなのにdbを使ってしまっている!!! })...
View ArticlemacOSのVisionフレームワークでOBSの映像からテキストを抽出するWebSocketプロキシ
激安HDMIキャプチャーボードを買ってから、ときどきゲームプレイの録画・配信をしている。OBS...
View Article『関数型ドメインモデリング』はF#の本なのか?
関数型ドメインモデリング ドメイン駆動設計とF#でソフトウェアの複雑さに立ち向かおう日本語版出版に際し、訳者の猪股さんにご恵贈いただきました。ありがとうございます!すでに原著の『Domain Modeling Made...
View ArticleNISAは「ニーサ」なのか「ナイサ」なのか
[B! togetter] アメリカのVTuberさんが『日本人はカスコー(Costco)のことをコストコって言うんやで 発音かわゆす』みたいなお話をなさっていた「tを読まないんか」このブコメに「NISAも英語読みならniceのようにナイサと呼ぶべき」というものがあり、それは違うんじゃね?...
View Articleターミナルの作業中ディレクトリにOSの「ファイルを開く」からもアクセスしたい
作業中のリポジトリのファイルをブラウザやデスクトップアプリ経由でアップロードしたり触ったりするとき、OSのファイルを開くダイアログからだとそこにたどりつくのが手間。macOSならopen...
View ArticleWezTermに移行した
PCを新調したのを期に、ターミナルの環境をiTerm2+tmuxをWezTermに移行した。とくに不満はなかったのだけど、iTerm2の設定をぽちぽちする*1ことを考えるとこれ数年おきにやるのか……と思ってしまったので心機一転、設定をLuaで管理できるというWezTermを使ってみることにした。偶然以下の記事を見ていたのが大きい。設定も基本これをぱくった。Okay, I really like...
View ArticleRancher Desktopでdocker build時、巨大コンテキストの転送中に反応がなくなる問題
……に遭遇した。でかいnode_modulesを.dockerignoreもせずにいると、"=> transferring context: "が返ってこなくなるイメージ。こうなるとビルドをキャンセルしてもdockerの操作にまったく反応がなくなり、Factory...
View ArticleStorybook向けのReact propsをPlaywrightのE2Eテストから錬成する
Reactを書いていてStorybookは便利だけどargsを作るのは面倒。Reactコンポーネントのpropsの構成や型が変わるたびにこれらを更新していくのがいかにも骨が折れそうだ。それにせっかくStorybookを使うなら、propsに渡すのは人工的なものではなく実地のもの、せめてアプリケーションが作ったものであってほしい。うまくコンポーネントの設計ができてれば問題はないのだけど、現実にありえな...
View ArticleISUCON14に参戦した(カラアゲネイティブ、14,987点)
最近の感じでカラアゲネイティブチームで参加したのだけど、toriclsが参加できないことがわかっており、新メンバーとしてMOSHの村井さんに入っていただいて2024年バージョンとして挑戦。リポジトリはこちら。GitHub - motemen/isucon14: カラアゲネイティブ (2024)最終的な構成については大工事などとくになく、nginx + app*3 + db...
View Articleポケモン徹底攻略の詳細検索の条件をAIにいい感じに作ってもらう
ポケモン対戦の構築を考えるときには、ポケモン徹底攻略の詳細検索が欠かせませんね。覚える技、タイプ相性、特性など非常に複雑な組み合わせでポケモンを検索できる反面、当然のことながらフォームの入力要素も非常に多くなっているわけで、とても縦長になっている。これは大変なので、AIに生成させることにしました。ポケ徹検索くん「草・炎半減でフェアリー等倍」「特性頑丈、ステロとほえるを覚える」など、自然文を入力すると...
View Articleオレ流2025年スターターデッキ
この記事は「はてなエンジニア Advent Calendar 2024 - Hatena Developer Blog」の 42 日目の記事です。昨日は id:mangano-itoさんの「2025年、それはスクワットの時代 🏋️」でした。お題を作りました! みんなも参加してね → お題「私の2025年スターターデッキ」現環境はmacOS/Androidです。タスク管理: Google...
View ArticleAIとメールしてビジネスメール筋を鍛える
学生の頃には自堕落な生活を送り、よく知らない人とのコミュニケーションなんて勘弁だぜ、なんて思っていた人間も会社に入り社会人としての暮らしを送るうちに、気づけばだんだんと社会性を身に着けていた。20代で店に予約の電話ができるようになり、30代になってからは早起きもできるようになった。そんな男が40代求めることは……?...
View Article