YAPC::Fukuoka 2025 に行きました

id:taiseiueです。11/14〜15に九州は福岡工業大学で開催されていた「YAPC::Fukuoka 2025」に参加しました。

yapcjapan.org

参加にあたっては、学生旅費支援で宿泊費と旅費を支援していただきました。 このような機会をくださった運営の方々に感謝しています。

blog.yapcjapan.org

以下は懇親会で楽しそうなid:taiseiue と仲間達です。

インフルでした

帰って早々インフルになっていました。ブログを書くのがだいぶ遅れたのはこれです..

トーク&踊り場

ここからは、聴講させていただいたトークや参加した踊り場の感想を書いていきます。

2025年秋のPerl by charsbar

speakerdeck.com

今ドキの最新Perlの話でした。all/any演算子が入って便利に使えそう。use feature 'all'ではなくてuse feature 'keyword_all'と書くのは全機能を有効化してしまいそうな感じがするからでしょうか。あと、:readerと:writerが個人的便利そう。

大規模OSSに一人で立ち向かうには by Sosuke Suzuki

speakerdeck.com

いい話でした。何かに莫大な情熱を持っている人をエミュレートするには、「時間を可能な限り捻出して、可能な限り集中して使うこと」。この点が言語化されて実感が持てました。他にも、「手を動かしてメンタルモデルを得ること」、「教科書を読むこと」は日常生活の中でも役立ちそうです。

とりあえず散歩に行きます。

「バイブス静的解析」でレガシーコードを分析・改善しよう by hitode909

speakerdeck.com

id:hitode909 さんの発表には特有の凄みがあると思います。何か自然に場の空気を支配される感じ。 今まで画面越しに見ていたそれを生でみられてよかったです。

静的解析をLLMに助けてもらう、確かにVibeCodingよりも相当安心感がありますね。うちのプロジェクトもデッドコードを削除するところからやってもらおうかな。

Perl ブートキャンプ by Takafumi ONAKA

speakerdeck.com

Perlって何??となったので。manみたいにperldocが整備されているの、当たり前に思ってるけど良いですね。 「非常に高い後方互換性」について、確かに互換性を失なった先は狂気ではあるけどバグとの兼ね合いが難しすぎる...という気持ちになっていました。 私もしがないプログラミング言語をメンテナンスしているので、ここは気持ちがわかる気がします。

これは何度も言っているのですが、データにパッケージを紐付けてオブジェクトとするの、原野的な感じがしてすごくいい(語彙力)。

SREのためのテレメトリー技術の探究 — モニタリングSaaS開発からAIOps・AIインフラまで by yuuk1

speakerdeck.com

時系列基盤モデル、初めて聞いた概念だったのですがなかなか便利そう。MackerelでChatOpsから入って、AIOpsへと時代とともに要求が難しくなっていく のにはヒエエとなりました。基盤モデルを作ろうにもデータセットを得るのが難しい、そりゃそうやなとなりました。

OSS開発者なら学生たくさん連れてこれる説 by id:moznion

つれてこられました。尊敬する OSS 開発者の皆さんが横に並んでいて迫力がありました。 OSSコントリビュートするノウハウや継続するコツなど、様々な話が聞けてよかったです。

教科書では知れない令和最新 Perl ワード解説バトル by id:rokuokun

バトルですね。激闘でした。

slidoで素朴なPerlの疑問を賢者の方々に投げかけれるのかなりよかったです。 CPAN Testersが有志でCI(のようなもの)を周してくれている様子には迫力がありました。 Mojoliciousが最近は良いと聞いたので、何かつくるときに使ってみます。

id:rokuokun は司会おつかれさまです!

キーノート by P山

speakerdeck.com

スライドが良かったです。章立てされていて、セクションごとに画像は入っている感じは洋書に近いものを感じました。

"Hacker"であり続けるために、継続的に、よく考えつづける必要があると思いました。精進します。

牛すき鍋御膳を食べた

今宮通を北大路から堀川まで歩いた。行き先は堀川今宮のすき家に行くためだ。 例年この時期のすき家は牛すき鍋御膳を販売してくれる。平たく言えばすき焼き鍋セットである。

このシーンはちょうど2年前の今頃にもあった。あの頃は確か大学入試の願書だったかをギリギリまで書いていて、提出先の大学の配送担当の北郵便局に持って行ったのを覚えている。あの頃から無計画性はあまり変わらないようだ。

提供を待っていると、あのころ歩きながら聴いていた曲が有線から流れてきたのには驚いた。驚いただけで何の関連もない。

beautiful glider

beautiful glider

セットが来た。 自分なりのおすすめの食べ方は、まず伸びる前早々にうどんを小皿へと退避させ、煮切れそうになったらコップの水を入れて冷ます。こうすることで長いこと楽しめる。ああ、卵はふたつ頼んでおくといい。猫舌に鍋は熱すぎるから。

前回ここに来た頃からするといくらか美味しくなった気がする。それは多分体感の問題だ。あの頃は(当時の自分からすると)失意の地底から上がってきてすぐだったから。 次来たときはもっと美味しく感じられるといいなあ。

食後、調子に乗ってSukiシェイクも頼んでしまった。バニラ味。この手のものはバニラ味が一番、牧歌的で美味しい。

今、まだシェイクをすすりながらこれを書いている。

そんな私です。

MacBookを初期化した

今日、手元のMacBookを初期化した。2024年の春から使っていて、ちょうど1年半。 それなりに思い入れや愛着も湧いてきていたが、HomebrewやMacPortsなど、様々なパッケージマネージャーを試したり、種々のドライバ、ソフトウェアをインストールしてきたことで、ジャンクファイルでいっぱいになり挙動も怪しくなったからだ。

ついでにOSも最新のmacOS Tahoeにアップデートしておいた。 この過程で、当然macOSのセットアップを行ったわけだが、ここにこそコンピューターと向き合うことの"楽しさ"があることを思い出した。 コンピューターを手にして、それを自分好みにカスタマイズすること、これからコンピューターを使ってできる無限の可能性が、セットアップという手順に凝縮されている。

これから私は、また (愚かにも) このマシンを使い倒し、様々なソフトウェアをインストールし、環境を肥大化させていくだろう。 しかし、それはそれでよかろう。なぜなら、私はそうやってコンピューターと一体化していくことが好きだからだ。 使えば使うほど、コンピューターは自分の行動に即した提案をしてくれ(時に行動を補完することすらあるが)、今に自分自身の思考に最も近くなる。

先日、情報学を学んではいるが、コンピューターと仲良くなれない、という友人と話す機会があった。 できれば私のように、コンピューターと一体化していく体験をしてほしいと思う。

Git Hooksでmainへのコミットを防止するアレと付き合っていく

Git Hooksでmainへのコミットを防止するアレとの上手い付き合い方を思いしついたのでメモ。

GitHubの無料Organizationだとprivateリポジトリに対してBranch protection rulesが設定できないので、運用でカバーするしかなかった。そこで、GitHooksを使って、コミット前にmainっぽいリポジトリへのコミットを防ぐように設定したけど、リポジトリごとにGitHooksを書いて周るのはやや面倒なので、グローバルにhooksを設定するようにした。

ところが、ブランチを切って作業するほどでもないリポジトリでもコミットが弾かれてやや面倒。そこで、git config --local pre-commit.allow-mainpushがtrueなら確認せずにコミットを通すようにした。これで、「俺がここにmainにpushしても止めてくれるな!!」という場合にも対応できる。

「これでmainにpushしちゃった」事故は根絶できるだろう。

実際のコード↓ github.com

Pythonのbytes型に対するインデックスアクセスはintを返す

M5StackでBLE通信をしようとMicroPythonを書いてたところ気付いたのでメモ。

str型みたいにインデックスアクセスすると、長さ1のbytesが返ってくると思ったらintが返ってきた。

text = "Hello"
data = text.encode()

print(type(text))  # 当然str
print(type(data))  # もちろんbytes

print(type(text[0])) # <class 'str'>
print(type(data[0])) # <class 'int'>

そういえばPython多倍長整数でもint型になるし、整数->int、浮動小数点数->floatという区別しかないので、1バイトがintになってもいいかと思った。 (とはいえ1バイトでも多倍長整数でも同じ型になるのは内部でどう扱ってるんだろう)

【SxPARK】 万博に出展していました

id:taiseiueです。7/19-20に関西万博で開催されていたイベント「デジタル学園祭」に出展していました。

何を出展していたかというと、細々と開発しているプログラミング言語のAliceScriptです。

docs.wsoft.ws

きっかけ

参加のきっかけはこんなツイートでした。

x.com

おっ募集してるじゃん〜とりあえず出すだけ出しとくか〜で応募しました。その後しばらく経って、USJの待ち列の中で審査通過の連絡をいただきました。ありがたい。

そういうわけでAliceScriptを展示しました。

当日まで

大学の先生に展示計画を相談させていただき、ディスプレイやPCなどの展示機材をお借りしていきました。

f:id:taiseiue:20250726220411j:image

重そうですね。

セットアップが素早く終わって我が家の金魚を見せびらかしたり。

x.com

この日はいい感じのマジックアワーと夜景が撮れたので満足していたら、終電を逃してしまってカラオケ泊していました。

f:id:taiseiue:20250726220927j:image
f:id:taiseiue:20250726220949j:image

展示期間

展示期間中は様々な方とお話しさせていただきました。エンジニア職の方、プログラミング言語を過去に自作されていた方、文学や芸術に造詣のある方など様々で、万博だなー(薄)という感じでした。もう少し長く言うと、普段エンジニア志向のイベントなどで会う方とは違った属性の方と沢山話せて楽しかったです。

あとは、小学校低学年くらいの子にカラーコードと16進数を教える活動をしていました。いつか覚えてくれてたらいいな。

展示の様子はこんな感じです。

f:id:taiseiue:20250726222048j:image
f:id:taiseiue:20250726225856j:image

展示で大活躍したミャクミャク

展示で使用したAliceScript WebRunnerは、今もブラウザからお試しいただけます。ぜひどうぞ。

try.alice.wsoft.ws

ソースコードはここにあるのでよかったら見ていってください。(完全VibeCodingなので気をつけて)

github.com

 

また、自分の展示もしながら他の方の展示も見にいっていました。いくつか面白かったものをあげます。

PIXFORGE

p5.jsを使ったデジタルアート作品。ポリゴンで出来た猫がいかにもカッコイイ。マウスや指の動きで画面の中にインタラクションできる部分が、他の動画作品にない要素でした。

www.pixforge.jp

Because of my stuttering

吃音症を体験できるソフトウェアとハードウェアのセット。ボタンを押すと吃音の強さが変えられて、それぞれの場合でディスプレイに映し出された相手のAIと会話できる。会話中の相手の動きが実際の吃音症をもつ方のそれを再現しているなど、細かいこだわりがあってすごかった。あと個人的にタイトルが好きです。

OZLYR

英数字を音階にして再生できるアプリ。MMLと違って、アルファベットと音階の対応を長調短調、ヨナ抜き音階などに変えられる。高校1年生で8万円以上も資金調達してて本当にすごい。

x.com

表彰

翌7/21には、グランフロント大阪でSxPARK内の優秀作品の表彰がありました。残念ながら表彰には及びませんでしたが、表彰のポイントなども聞けて、ブースでの展示態度やコミュニケーションなど、そういう評価軸もあるのかと勉強になりました。

まとめ

自分以外の展示では技術の社会実装のような作品が多かったと思います。私は技術大好きっ子なので、目新しい考えに沢山触れられてよかったです。

万博での展示で、普段話さないような属性の方といろいろな話ができて楽しかったです!貴重な経験になりました!出展の機会をくださったSxPARK事務局の方をはじめとして、WSOFTのブースにお越しいただいたみなさん、ブースにお邪魔して話させていただいたみなさん、本当にありがとうございました!締めに、特に何にも使わなかった記念撮影の画像を載せておきます。次の万博は誰か一緒に出ましょう。

1人で記念撮影に写るtaiseiue



Kyoto.cs#4 を開催しました

id:taiseiueです。7/2(水)の夜にKyoto.cs#4を開催しました。

いつもは土曜日の昼から開催しているのですが、仕事帰りの方に寄って頂こうと今回は平日夜に開催した格好です。

会場はマネーフォワード様の京都開発拠点をお借りして開催できました。感謝です。

団欒の様子

今回の内容は↓こちらからどうぞ!

scrapbox.io

そういえば3月のキックオフから数えて5回記念となります。ここまで5回とも会場提供&アドバイスをくださったid:luccafortさんに大感謝です。

これから

Kyoto.cs#5も8月中の開催をメドに準備中です。ぜひご参加ください!

kyotocs.connpass.com

開催に関する情報などは、@taiseiueのX でも流すのでご確認ください。

これからKyoto.csでやりたいことは、Kyoto.cs 計画 · GitHubに並べています。これからこんなことするんかな〜くらいの気持ちで見てみてください。

Kyoto.csでは、開催場所を提供してくださる方や、運営を手伝っていただける方を募集しています。Xやtaiseiue<at>wsnet.jpにご連絡ください!