nikkie-ftnextの日記

イベントレポートや読書メモを発信

Sphinx、お前、python -m sphinx なんてできたのか!

自作のSphinx拡張 sphinx-new-tab-link にいただいたissueに対応する中で知った小ネタです。 目次 目次 Read the Docsのログを見ていて ソースコードを確認 python -m sphinx sphinx-buildコマンド 終わりに Read the Docsのログを見ていて :bug: extension …

pip installとpython -m pip install、pytestとpython -m pytestは何が違う? python -mとsys.pathの秘密

はじめに Act-4、最高だった... 余韻の真っ只中のnikkieです。 表題の件について、違いを知ったので記します。 鍵を握るのはsys.pathです 目次 はじめに 目次 pytestのドキュメントより sys.pathのドキュメント 結論:pytestとpython -m pytestはここが違う…

Sphinxのテーマを素振り 〜強調した文字の色を変えてみる篇〜

はじめに エミリーちゃんのことますます すきすきになりました、nikkieです ドキュメンテーションツールSphinx1にはテーマという機能がありますが2、自作できると知り手を動かしました。 目次 はじめに 目次 Sphinxのテーマを作る 強調箇所の色を変えるテー…

ミリオンおさんぽツアー in みなとみらい ネタバレ感想(📣2/29までです。お見逃しなく!)

はじめに Day 0 最高だった... nikkieです。 アイドルマスター ミリオンライブ!10周年ライブツアー Act-4と連動して、みなとみらいコラボが展開されています! 今回はその中からミリオンおさんぽツアーのログを残します。 ※これはネタバレ感想ですので、「…

わたしの #ミリアニ 3幕応援上映道 〜色に込めし想い〜

はじめに Act-4が控えているので今日は祝日です。nikkieです。 明日明後日とみなとみらいはお祭り騒ぎです。 その1つが、ミリアニ3幕リバイバル応援上映1! 私はもう3幕が非常に好きで、毎週のように豊洲に通いました。 久しぶりの応援上映ということで、感…

nikkieと「ほげ言語」のパラドックス 〜"Pythonで考えていた"からインターフェースの理解が難しかった説〜

はじめに にゃんにゃんにゃ〜ん!nikkieです。 先日のPHPカンファレンスで「ほげ言語」のパラドックスを知りました。 自分の経験が「ほげ言語」のパラドックスと呼べるものだったんじゃないかと気づき、その思考ログを記事に残します。 目次 はじめに 目次 …

ツライ時に聞きたくなる「たとえ夢をなくしたとしても未来がなくなるわけじゃない」

今日は現実の厳しさに打ちのめされており、いつもとテイストが違います 目次 目次 ツライ そんな時に思い出す『白い砂のアクアトープ』11話 現実を生き抜け P.S. ツライ Act-4 Day-2の現地チケットが、取れませんでした。 泣いた pic.twitter.com/Q5y5A37hpe…

続・Ryeのworkspaceで複数のパッケージを同時に開発している時に、workspaceのルートでmypyを流す(strictモードで流すための対応案)

はじめに START THE DREAM nikkieです。 先日のRyeのworkspaceとmypy(pytest)の記事のアップデートをお届けします。 mypyをstrictモードで流すために対処せねばならぬ点がありました。 目次 はじめに 目次 前回までの、Ryeのworkspaceのルートで流すシリー…

Ryeのworkspaceで複数のパッケージを同時に開発している時に、workspaceのルートでpytestを流す(ModuleNotFoundErrorを--import-mode importlibで解消)

はじめに 郁原ゆうさん1、お誕生日おめでとうございます。nikkieです。 Ryeを使った開発をきっかけに、pytestのドキュメントに当たりました。 なぜpytestがModuleNotFoundErrorを送出するのか、少し理解が深まったように感じています(sys.pathが絡んでるん…

Ryeのworkspaceで複数のパッケージを同時に開発している時に、workspaceのルートでmypyを流す(error: Duplicate module named "..."を--explicit-package-basesで解消)

はじめに ごみけついきたい、nikkieです。 Ryeを使った開発をきっかけに、mypyのドキュメントにあたりました。 mypyにディレクトリのパスを渡した時にどう動いているか、少し理解が深まった感覚です1。 目次 はじめに 目次 Ryeのworkspace workspaceの例 リ…

Ryeで環境構築して開発中の自作Pythonライブラリを含んだDockerイメージをビルドする

はじめに ミリシタ新イベ、転天革命じゃん... nikkieです。 今回はRyeに慣れるために素振りしたクソライブラリをクソDockerイメージにしていきます! 目次 はじめに 目次 前提:Ryeに慣れるために素振りしたクソライブラリ 結論 Dockerイメージビルドのため…

sphinx-revealjs製のスライドをGitHub Pagesで公開するためのリポジトリの初期設定

はじめに ばーい!1 nikkieです。 発表資料を作るのにsphinx-revealjsを愛用しています。 年1ペースで発表資料リポジトリを作っているのですが、先日PHPカンファレンス関西2用のスライドを公開しました。 その中で実施した初期設定を未来の私に伝えるために…

YAPC::Hiroshima 2024のそーだいさんのトーク「コミュニティと共に生きる - キャリアの螺旋」がよすぎて、余韻に浸る日々です #yapcjapan

はじめに さすそー1、nikkieです。 先日のYAPC::Hiroshimaから、そーだいさんのトークを取り上げます。 現地でも聞き入ってましたし、スライド見返したりリンク先見返したりと、余韻が続いてるんですよ。 目次 はじめに 目次 コミュニティと共に生きる - キ…

YouはどんなきっかけでYAPCに? Python使いと #yapcjapan

はじめに ショコラブル♪ nikkieです。 先日YAPC::Hiroshima 2024に参加してきました。楽しかった! このエントリでは、Python使いの私が、Perlを軸とするカンファレンスYAPCに参加し始めたきっかけを記します。 Python使いはどんなきっかけでPerlのカンファ…

登壇報告 | #phpkansai #c にて「テストコードが書けるようになって『変更したけど壊してないかな』という不安を解消しませんか?」と発表しました

はじめに はーいほーーーーー!! nikkieです PHPカンファレンス関西2024、素晴らしいカンファレンスをありがとうございました! このエントリは、タイトルが全てです。 目次 はじめに 目次 テストコードが書けるようになって「変更したけど壊してないかな」…

タグ付きユニオン(Tagged Unions)をさがして

はじめに 君を退屈から救いに来たんだ♪ nikkieです。 YAPC::Hiroshima 2024で聞いた伊藤直也さんのトークから気づきを1本したためます。 タグ付きユニオン、完全に理解したと思う! 目次 はじめに 目次 (再演) 関数型プログラミングと型システムのメンタルモ…

#phpkansai のPHPerシールのQRコードの仕掛け

はじめに はーいほーーーーー!! nikkieです PHPカンファレンス関西2024に参加(登壇)してきました! めちゃめちゃ楽しかったです! 今回はPHPカンファレンスでお渡ししたPHPerシールの仕掛けを明かしちゃいます。 目次 はじめに 目次 PHPerシール QRコー…

YAPC::Hiroshima 2024 参加ブログ [速報] 頭もお腹も満たされた1日、今年もめっちゃ楽しかった! #yapcjapan

はじめに ブログを書くまでがYAPC、nikkieです。 YAPC::Hiroshima 2024に参加してきました! 参加をdoneにするにはブログが必要です。 いまブログがないのでテスト駆動開発でいうと1Redの状態なのですが、ここは一つ参加ブログを仮実装してまずはGreenにした…

そうか、シンボリックリンクを使えばコマンドのバージョンを切り替えられるのか!(phpunitを例に)

はじめに 広島のnikkieです。 めちゃ基本的なことだと思うのですが、使い方をようやく得心したことについて書いていきます。 目次 はじめに 目次 PHPUnitをPHARでインストール シンボリックリンクを使えば、PHPUnitのバージョンを簡単に切り替えられる! 終…

sphinx-quickstartコマンドを対話的に使わない(必要な引数を含めたマシマシ呪文詠唱!)

はじめに 一方通行<アクセラレータ>! nikkieです。 ドキュメンテーションツールSphinxには、ひな形となるディレクトリ構造を作ってくれるsphinx-quickstartコマンドがあり、とても便利です。 私はこれを対話的に使わないという使い方をしています。 目次 …

Pythonでsortedのkey引数にlambdaを渡すときは、代わりにoperatorモジュールのitemgetterやattrgetterを使ってみませんか?

はじめに 「頑張れ!」ってきっと 愛してるって言葉♪ nikkieです。 今回はPython標準ライブラリの中から推しライブラリの1つを取り上げます。 その名もoperator! この中からitemgetterとattrgetterをご紹介! 目次 はじめに 目次 operatorのitemgetter・att…

#phpcon2022 のトーク「実践!ユニットテスト入門」がとってもよかったです👏 テストを書き始められる5つの知識✨

はじめに 「頑張れ!」ってきっと 愛してるって言葉♪ nikkieです 2/11のPHPカンファレンス2024登壇1準備より1ネタ。 PHPカンファレンス2022にとてもよいユニットテスト入門トークがありました。 目次 はじめに 目次 「実践!ユニットテスト入門」 ここがよか…

PHPUnitのドキュメントを機にxUnit Test Patternsのサイトを確認し、Test Double・Stub・Mockを整理 〜広義のモックと狭義のモック〜

はじめに 「頑張れ!」ってきっと 愛してるって言葉♪ nikkieです 2/11のPHPカンファレンス2024登壇1準備より1ネタ。 PHPUnitのドキュメントのTest Doubleを読んだところ、モックについて気づきがありました。 目次 はじめに 目次 PHPUnitのドキュメント「6. …

OpenAIのPrompt engineeringのドキュメントから、LLMの出力をGPTに評価させるケースのプロンプト例を理解する

LLM

はじめに 「頑張れ!」ってきっと 愛してるって言葉♪ nikkieです OpenAIのドキュメントの中にはプロンプトエンジニアリングを扱ったガイドがあります。 https://platform.openai.com/docs/guides/prompt-engineering その中で「分量多いな」と避けていた部分…

nikkie v2024.01 リリースのお知らせ

はじめに きゃー!こころちゃんが地上波に! nikkieです。 月のふりかえりエントリです。 2023年は1日1エントリが常時自転車操業で、ふりかえりは後回しにしてしまいました。 その結果「2023年ってどんな年だったっけ?」というのが思い出しにくく、無理のな…

ミリシタ記:イベントではプラチナランカーを目指すようになりました

最近のミリシタについて綴ります。 目次 目次 私のスタンス:ガシャは諦め、ジュエルを割って走って2500位を目指す 走破ログ 年末上々★はぴやば ギャルPARTY↑↑ catch my feeling 逆ミステリー! 終わりに 私のスタンス:ガシャは諦め、ジュエルを割って走っ…

JSON Linesのあるキーの値を、jqコマンドで1つの配列にまとめる

目次 目次 やりたいことは jqを1回使う JSON Linesを1つの配列にまとめ、各要素からキーの値を取り出して配列生成 jqを2回使う あるキーの値を取り出してから、1つの配列にまとめる あるキーの値から配列を生成し、和を取った1つの配列にする 終わりに やり…

pipxで管理するpip-toolsを使って、プロジェクトの仮想環境に依存ライブラリをインストールする(pip-syncの--python-executable引数が必要)

はじめに ‍♂️1 nikkieです 普段Pythonで開発するときはpipのお世話になっていますが、少し前からpipxなるものの存在を耳にしていました。 どんなツールか知ろうと、今回手を動かしています 目次 はじめに 目次 pipxとは pipxのインストール(macOS) pipxでB…

Q: Pythonではパッケージ管理ツールpipを含まない仮想環境にパッケージをインストールできる。◯か☓か

答えは◯(マル) この記事では、pipを含まない仮想環境にパッケージをpip installします。 「pipを含まない仮想環境」についてはこちらをどうぞ pipコマンドがないですが、pip installします。 大丈夫ですか? ついてこれてます? 書いている私も「正気か?」…

Composerでautoloadを設定したつもりが、PHPUnitを流すと「Error: Class "..." not found」となって苦しみました(写経し損ねたnamespace)

はじめに Namespaces are one honking great idea1、nikkieです。 2/11のPHPカンファレンス2024登壇2準備より1ネタ。 autoloadの設定でハマりました。 ※この記事はハマったこととこうやったら解決できたというログを書き残すことを目的としています。 この方…