LEKU ONA

エンジニアしたり野鳥を見たりマンガを描いたり

YAPC::Hiroshima 2024に行ってきた #yapcjapan


とてもお久しぶりに参加してきましたYAPC::Hiroshima 2024
前回はこの YAPC::Asia Tokyo 2015 なので、なんと9年ぶり。
ときが経つのははやいですね‥
back.hatenablog.com


今回は、とほほさんがキーノートと聞いて
ちょっと遠い広島だけど思い切って参加しました。
(あとカープファンの自分には聖地なので)

そしてやっぱり楽しい一日でした。
Perlだけにとどまらず、いろんな技術の話が聞けるのも楽しいし
スタッフさん含め参加している方がなんだか楽しそうなのも良い。

自分みたいに長年この世界にいる身には、居心地いい雰囲気なんですよね〜
こういう場をずっと続けてくださっていることに感謝だなあ。

聞いたトーク

経営・意思・エンジニアリング

登壇資料: 経営・意思・エンジニアリング - Speaker Deck

途中からだったので、動画公開されたら改めて全部聞きたい。
ソフトウェア的思考で組織を考えるのは見通しがよくなりそう。
こういうふうに言語化してくれるCTOさんはいいなー。

このあたりが印象に残りました

  • 事業設計とのズレが負債になる
  • 長期的であるほど技術的にも楽しい
  • 短期的な成功を求めてしまう → 抗うにはミッション・ビジョン
  • 面白いことをやり続けるには意志を持とう
  • 意志は言語化すると強くなる


 

関数型プログラミングと型システムのメンタルモデル

登壇資料: 関数型プログラミングと型システムのメンタルモデル - Speaker Deck 2023年のだけど

このあたりがすごく腑に落ちた話でした

  • 関数fは値を写す
  • 文 → 手続き型 値を書き換える
  • 式 → 値を返す 状態が遷移する

型システムについても
最近Goを触ったときにいいなと思ったところでした。

  • 型を宣言する = エンジニアが値がどの範囲であることが正しい状態か指定できる

新しい言語触るときに基礎にあんまり触れてないなと反省も含む。


Blogを作り、育み、慈しむ - Blog Hacks 2024 by Songmu

登壇資料: Blogを作り、育み、慈しむ ~ Blog Hacks 2024

すき。だからすき」好きだから続けられる という言葉はいいな。
ここ数年自分ができていない事にハッとしました。

紹介されていた IndieWeb がめちゃんこよかった。
めちゃんこよかった。

やっぱり自分のコントロール下にある自分のホームページいいよね‥と再認識
このブログもちゃんと更新していこうと思ったのでした。
自分のお砂場サーバに移行するのもいいのかもしれない



非同期な開発体制を支えるドキュメント文化 by こんぼい

登壇資料: 非同期開発体制を支えるドキュメント文化 / YAPC::Hiroshima 2024 - Speaker Deck

現職ではかなりドキュメント文化があるので、やりやすさを実感しているんですが
一歩進んで非同期な議論にドキュメントを使うのは興味深いなと聞いてました。

テンプレートがしっかりしてると情報が整理されてやりやすそう。

古いドキュメントはアーカイブ化されているとのことだったけど人力なのかな
自分のところは、古い資料が検索のノイズになることも多くて、そこらへん少し気になりました。

好きな技術《コト》で、生きていく技術 by aereal

登壇資料: 好きな技術《コト》で、 生きていく技術 / life with what you like - Speaker Deck

技術選択の難しさ。
それから、たのしさやおもしろさも忘れないように
そして「正解はない」って話だったと思います。

今のプロジェクトを Go(たのしさ)にするかRuby(現実的なやりやすさ)にするかで悩んだ末
Rubyを選択した自分には身につまされる色々がありました。

「決断した人に寄り添ってあげて」がさらに心にくる‥
手を動かしている人が一番偉い。ほんとそれ。


平成のエンジニアから令和のエンジニアへの遺言

個人的にずっと気になってる35歳定年説について、少し聞けたのがよかったです。
35歳定年は流石にないけど、20代と同じようにコード書いてても生き残っていけないなあ、
みたいなことをぼんやり考えることが多くて
でもマネージャーやスペシャリストになりたいかというとそうでもなく
この年齢でも「この先どうなりたいの?」にうまく答えられない。

それから、コミュニティの大切さも、オフラインのメリット(雑談)も頷くものばかりでした
マサカリ、懐かしい単語でしたね

キーノート とほほさん

目の前にあのとほほさんが居る。ってだけで
さいこう‥でした‥。

WWW入門ができる前の話から始まっていたのですが
すでにそこから、メモリ6KB?のパソコンを兄弟で買うとか世界の違う話が。
でもなんだか楽しそうに「暇だったから作っちゃった」ってのりで話されている様子が印象的でした。
好きだからはやっぱり強いなあ。


そのほか雑感

  • 前夜祭も参加したかったし、当日も朝から参加したかった
  • 今回は、はじめてスポンサーブースも覗いてみました(いつもは遠目で見ているだけ)
  • タイミーのぬいぐるみが可愛かった
  • IDとかは知ってるけど顔は知らない、もしくは久しぶりなので多分顔がわからないの人が何人かいたのですが、出会えなかった‥(というか分からなかった)次回対策を考えたい
  • 懇親会は立食パーティ形式だったのだけど、ごはんが豪華でびっくりした。刺身舟盛り
  • そういえばお昼のお弁当ももりもりだった

おまけ

2023年に買ってよかったもの


2024年になってしまいましたが、久々に買ってよかったまとめです。
twitterで途中まで書いていたものに追記してます


スーパーエクストラファインメリノロングスリーブ


https://store.yamap.com/products/yamap-super-extra-fine-merino-long-sleeve-womens-23fw

化繊は肌ちくちくなりがち民の自分は、冬のインナーはメリノウールや綿をよく使うんですが(ホットコットも好き)
これはメリノウール100%だしと1枚買ってみて「えっ‥いいやん」と思い、もう1枚買い足して、更に夫に一枚、
帰省の手土産としても大人買いしてしまった逸品。

手触りが "トゥルン" ってしてるのがめっちゃ好き。シルクっぽい。 もちろんウールなのでとてもあたたかい
ただし値段は全く可愛くない。



Argan Beauty AGB クレンジングオイル


https://www.amazon.co.jp/dp/B01HREIJUO/
Amazonの履歴見たら17回も買っているので、もう数年買い続けているのだけど改めて良いので。
年齢の割にはお肌がきれいと言ってもらえるのは、これのおかげだと思っているクレンジング

これのおかげでニキビとか吹き出物とかほとんど出なくなった。
化粧品成分分析のyoutuberがおすすめしているのを見て買ったのがきっかけなのだけど、
言われた通り「余分なものが入ってない感」がしてるし、洗い上がりつっぱらない。

ドクターシーラボ / VC100エッセンスローションEX


https://www.ci-labo.com/shop/item/SkinCare/Lotion/00111954.html

わたしの肌をニキビやら吹き出物から守ってくれてるヤツその2
とろとろの化粧水で付けたてはベトベトする。
初めはそれが苦手で、買ったものの使ったり使わなかったりだったのだけど
使った日のほうが明らかに朝の肌の調子がいい、と気がついてからはこれ一筋に。

MINIMALIGHTの ORDINARY PAC


minimalight.thebase.in

低山登山にも通勤にも使ってるバックパック
なんといってもめちゃめちゃ軽い。350gちょっとなのでペットボトルより軽い。

そのわりにショルダーベルトは幅もひろくて分厚いので肩に食い込んだりしないし、
サイドにポケットも付いてるし、使いやすい。
シンプルなデザインで登山の帰りに電車に乗っても「普通に仕事帰りですけど?」みたいな顔で悪目立ちしないのもいい。

HOUDINI / Power Houdi


fullmarksstore.jp

ただのアウトドア用のフリースだと思うでしょう?
ちがうんですよ。もちもちなんですよ。
もちもちに包まれる心地よさ‥ストレッチ性も高くて着ていてとても楽です。
首元までぐぐっとチャックが上がるのもよい。

反応しない練習 / 草薙龍瞬 (著)

本その1
実は2023/1/1の帰省帰りに読んだ本が2023年に読んだ本1位に輝いた。
今年一年どれだけ「反応しない‥反応しない‥」と呟いたことか。
ぐるぐる考えてる時間あればまず寝ろ!

DIE WITH ZERO  / ビル・パーキンス (著)

本その2
「ゼロでしね」「貯金を300万残して死亡したなら、年収300万の人は1年間タダ働きした。とも考えられる」という興味深い視点の本。お金は使って経済回して活かすに限るなと思ってる。

読んだときの感想
https://twitter.com/backgroundcolor/status/1628018954995384321


PS5 と Detroit: Become Human

www.playstation.com
ゲームさんぽという実況Youtubeでやっていたのを見て
自分でもやりたいと思わずPS5も含めて買ってしまったもの。

年末ー年始にかけてじっくりプレイしましたが、良かったです。
美しい映像と、考えさせられるストーリー。
「まずは前情報入れずにやれ」と言われているようなので
都度迫られる選択肢に悩みながらも、攻略見ずに進めました。

おかげでめちゃくちゃ感情移入してプレイしました。
カーラのエンディングで涙が滲んでしまった。

あとコナーが都度都度お間抜けで愛おしい‥。




年始から大変なことが色々ありますが、まずは自分の体調しっかり管理しつつ
募金して経済回してできることをやっていこうと思います。


買ってよかった2023

コミックエッセイ講座に行ってきた

twitterでよく見るコミックエッセイの先生が講座開講のお知らせをされており、
面白そうだったので行ってきました。


このツイートをみて決めた。




6万のメガネ買った。


物心ついたときから絵を描いていて
趣味で同人誌出したり、こうやってブログに漫画っぽいものを載せたりしていますが
改めてそれを誰かに添削してもらったり、アドバイスしてもらうことはありませんでした。

去年から今年にかけてコンフォートゾーンを出るぜ!と密かに目標と立てており
転職したり、島旅行したりしてますが
このコミックエッセイ講座もピンときたから行ってみよう!と挑戦してみたのでした。

講座では座学あり実践ありで楽しいです。
(先生の話がまず楽しい)

自分の一例。

読みやすくなってる〜〜!!
(面白さとかはおいといて・・)


今まで、なんとなく描きたいものをなんとなく原稿にしちゃってましたが
全体を見て、バランス調整して、丁寧にテキスト直すだけでも
だいぶん読みやすくなるんだなーと実感しました。

おもしろいと思ったものをちゃんと丁寧にパッケージングして読んでくれる人にお届けできるようになりたいなー。
またのんびり描いていこうと思います。



そして、他の受講者の方のネームがすごい面白くて毎回楽しみです。
めちゃめちゃおもしろいのでずっとニヤニヤしてます。
(世の中には面白いことがたくさんあるんだな)

他の方のネームを見る機会なんてめったにないから勉強になるし
これだけでも来てよかった!と思ってます。



ちなみに来週講座の最終回があるのに
全く原稿らしきものはできていません‥これ描いてたから‥描きたくなっちゃったから‥。

移住体験に行ってきた

最近、フルリモート・居住地フリーの会社に転職しました。
おかげでどこでも暮らしていけるようになったので
もともと考えていた、自然の多いところへの移住を本格的に進めることにしました。

まずは移住体験に行ってきたので、その記録です。


地方自治体では、移住体験を通じて都市や地方の魅力を体験できます。地域の文化や暮らしを実際に経験しながら、移住の可能性や地域の魅力を感じていただけます。地域活性化や人口増加を図る取り組みとして、移住体験プログラムを提供しています。
(chatGPTさんに聞いた)

移住体験の申し込み方

基本的に自治体のホームページに詳細が用意されています。
申込用紙をメールか郵送で送るパターンが多いようす。
移住前提なので、移住に関する事前説明を受けることもあります。

移住体験どうだったか


環境、めちゃめちゃ良かったです!
まわりが田んぼだらけで車もめったに通らないところなので
一日中静か。自然がたくさん。
朝は田んぼを散歩して、夜はカエルの声を聞きながら寝ました。
最高。

体験用に用意されてる家も新しくて木のいい匂いがしたり、断熱バッチリで過ごしやすかったのも良かったです。
(雪が多いところは家の機能が重要なんだなあ‥)

今まで名古屋〜大阪〜関東と都市でしか暮らしたことがなかったので
自然の多いところでの生活って大丈夫かな‥?と不安もあったのですが
大丈夫、やっていけそうと感じました。

あとは基本車移動になるので、練習しておかないとと思ったり(ペーパードライバー)

困ったこと

事前にWiFiの有無のみ確認して速度まで気にしていなかったのが敗因です。
一応持っていったレンタルWiFiもあまり速度が出るエリアじゃなかったようで、厳しいネット環境でした‥。

回線速度の重要性とひしひしと感じました。


今後

今回体験したことでいくつか見えたこともあり
すぐ移住!というよりは、
色んな場所も検討して1〜2年以内には引っ越ししたいと思ってます。

(おまけ)移住体験を調べていて思ったこと

移住体験を行っている自治体のサイトを見ていると
どこも以下の点が推しポイントのようでした。

  • 子供を育てるのにいい環境
  • 地元に仕事がある

我が家のように、子供がいるわけではなく
仕事も現在の仕事を継続する‥というような場合
どこに移住するかの判断が難しいなあと思いました。
(フルリモート向け!みたいなのがあるといいんだけど)

同じような家族構成で移住した人は
何が決め手だったのかなあ‥。

AWS Certified Developer Associateの再認定受かった

お久しぶりです。
AWS Certified Developer Associate(以降DVA)の再認定試験を受けて
無事に取得しました。ぺたり。

AWS Certified Developer Associateの再認定

3年前に「AWS Certified Developer Associate」を取得しました。
back.hatenablog.com


AWSによる認定は、取得した日から3年間有効となります。
つまり3年経ったら、再認定としてもう一度試験を受けないといけないんです。
(なんだってー)


本当はこの3年の間に
AWS Certified Solutions Architect – Associate か、
AWS Certified DevOps Engineer - Professional を
取っておこうと思っていたのですが
あっというまに時間は過ぎて‥。
このままだと、せっかく取得したのが消えちゃう。ということで
腹をくくって再認定を受ける準備をはじめました。

DVA再認定を受ける準備

基本的には前回と同じ勉強をしました。
普段使っているサービスは大丈夫なんですが、
使ってないサービスはすっかり忘れており‥。

前回の試験で作ったAWSの各サービスをまとめた虎の巻が大変役に立ちました。
これから試験を受けるかたは、3年後の自分に向け
自分なりのまとめを残しておくといいです。

以下利用したサイト。

AWS WEB問題集で学習しよう

https://aws.koiwaclub.com/
AWS認定資格試験の学習サイト。
有料会員登録が必要です。
実際の試験に近い内容(少しやさしめ)の問題がたくさんあります。
解説もわかりやすく、AWSの各サービスの基礎知識がある人にはとっても良いかと。
わたしは2周ほどして、間違った問題を勉強し直したりしました。

Udemy

AWS 認定デベロッパー アソシエイト模擬試験問題集(5回分325問)
https://www.udemy.com/course/aws-31955/

実際の試験内容よりだいぶ難しいです。
これがらくらく解けたなら試験に合格するんじゃないかなあ。
わたしはひととおり解きましたがあんまり正解率は良くなかったです‥。

AWS認定模擬試験

前回のときは有料だったのですが、いまは無料で受けられるようです。
こちらが詳しいです。
https://dev.classmethod.jp/articles/new-aws-official-practice-questions/dev.classmethod.jp

やっぱりこれは公式なので受けておくべき。

結果

前回より勝手がわかったからか
3週間ほどの準備で受かることができました!

引き続き、実践で活用していきましょう。

スマホで録った音源からテキスト化に挑戦

結果を先にいうと、求める精度ではなかったのだけど
もったいないので試した経緯だけ残しておきます。

音声ファイルを用意する

  • iPhoneの「ボイスメモ」で録った音声(1時間ぐらい)をAirDropMacに送る
  • m4a から wav に変換する
afconvert -f WAVE -d LEI16 -c 1  XXXXX.m4a XXXXX.wav
  • 実際の音声のはじめ部分
A: よろしくおねがいします
B: よろしくおねがいします
A: といってもどうやりましょうね


Google Speech-to-Text を試す

$export GOOGLE_APPLICATION_CREDENTIALS = XXXXX.json
  • 音声ファイルをGCSにあげておく
$ gsutil cp XXXXX.wav gs://bucketsXXX/XXXXX.wav
  • サンプルコードを手元に落とす
$ git clone https://github.com/googleapis/python-speech.git
  • 仮想環境作成し必要なモジュール入れる
$ virtualenv env
$ source env/bin/activate
$ pip install -r requirements.txt
  • サンプルコードに手を加え
-        sample_rate_hertz=16000,
-        language_code="en-US",
-        model=model,
+        sample_rate_hertz=48000,
+        language_code="ja-JP",
+        #model=model,
  • GCS上の音声ファイルをテキスト化してみる
$ python transcribe_model_selection.py gs://bucketsXXX/XXXXX.wav > interview.txt
  • 結果
Waiting for operation to complete...
--------------------
First alternative of result 0
Transcript: お願いします
--------------------
First alternative of result 1
Transcript: 言ってももうやりましょうね
--------------------
・・・・・


Google Speech API を試す

  • 非同期で処理
$ gcloud ml speech recognize-long-running 'gs://bucketsXXX/XXXXX.wav' --language-code='ja-JP' --sample-rate=48000 --async

Check operation [operations/XXXXXXXXXXXXX] for status.
{
  "name": "XXXXXXXXXXXXX"
}
  • 下記コマンドで処理状況を確認。
    終わっていれば progressPercent が100になりresponseにテキストが返る
$ gcloud ml speech operations describe XXXXXXXXXXXXX


{
  "done": true,
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.speech.v1.LongRunningRecognizeMetadata",
    "lastUpdateTime": "2021-09-XXT09:15:37.404790Z",
    "progressPercent": 100,
    "startTime": "2021-09-XXT08:59:39.288851Z",
    "uri": "gs://bucketsXXX/XXXXX.wav"
  },
  "name": "XXXXXXXXXXXXX",
  "response": {
    "@type": "type.googleapis.com/google.cloud.speech.v1.LongRunningRecognizeResponse",
    "results": [
      {
        "alternatives": [
          {
            "confidence": 0.8462801,
            "transcript": "お願いします"
          }
        ]
      },
      {
        "alternatives": [
          {
            "confidence": 0.9102794,
            "transcript": "言ってももうやりましょうね"
          }
        ]
      },
・・・・・
}
  • 結果は同じである


Amazon Transcribeを試す

f:id:background-color:20210905110837j:plain:w400

  • こちらのチュートリアルに沿って画面からアップロードするだけなので簡単
    処理完了後、結果はjsonでダウンロードできる

aws.amazon.com

  • 結果
{"jobName":"sample-transcription-job","accountId":"XXXXXXXXXX","results":{"transcripts":[{"transcript":"よろしくお願いしますふーんって・・・・・}


Googleドキュメントの音声入力を試す

  • ググるとよく出てきた方法
    Virtual Audio Cableなど仮想オーディオで入力を出力に回して、音声ファイルを再生しながら音声入力する方法
  • 結果
言ってももうやりましょうね こっちこそ・・・・・
  • 途中で止まるので無理だった


結果

テキスト化したものは精度的に使えず、手打ちしたのであった‥


精度原因を探る

  • インタビュー形式の2名の音声だったのだが、1名の音声のほうが大きく入っており、そちらばかりテキスト化されていた
    • 一人だけの音声なら、もっと精度が良かったのでは
  • ずっと話し続けていて区切りのない音声だった
    • 区切りが明確な発表形式だったら精度が違ったかもしれない

スマートホーム化 その3

f:id:background-color:20210207095848j:plain
スマートホーム化最終回です。

今までの
back.hatenablog.com
back.hatenablog.com


スマートプラグ

f:id:background-color:20210206150514j:plain
これは、コンセントの間につないで
アプリで設定するだけでOKでした。
簡単すぎてびっくりする。


Amazon Echoに連携

f:id:background-color:20210206151822j:plain:w300
いままで準備したものをすべてAmazon Echoから音声で操作できるようにして、一通り完了です。
これもアプリから操作するだけで設定が終わってしまう。


f:id:background-color:20210206151859j:plain:w300
そして、最後にアクションを設定していきます。
特定の言葉を話したら、指定した複数の処理をしてくれるというもの。

「おやすみ」と言ったら、電気を消して30分後に電気毛布の電源も落とすようにしたり
「おはよう」と言ったら、カーテン開けて今日の天気を教えてくれるように設定してみました。
よい。

人感センサー、温度湿度センサー関連は
配置をちゃんと決めてから設定してみるつもり。

総括

正直めっちゃ便利になったー!という程ではないのですが
(自分の手でやったほうが早いなあ、という時もある)
面白さがありますし
ゴロゴロ寝っ転がりながら一言発するだけで操作できるのは
なかなか良いです。

今後も拡張していきたい。

問題点…?

f:id:background-color:20210207095920j:plain:w500
みんなどうしているんだろう…。