<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Yu Matsuzawaさんのフィード]]></title><description><![CDATA[ZennのYu Matsuzawaさん（@ymtszw）のRSSフィードです]]></description><link>https://zenn.dev/ymtszw</link><image><url>https://lh3.googleusercontent.com/a-/AOh14GgpwzWnoaIIxlEYqKAJtbqUayicFiITLXTfM7A2=s250-c</url><title>Yu Matsuzawaさんのフィード</title><link>https://zenn.dev/ymtszw</link></image><generator>zenn.dev</generator><lastBuildDate>Fri, 14 Aug 2026 15:12:36 GMT</lastBuildDate><atom:link href="https://zenn.dev/ymtszw/feed" rel="self" type="application/rss+xml"/><language><![CDATA[ja]]></language><item><title><![CDATA[関数型言語を採用し、維持し、継続する]]></title><description><![CDATA[

 関数型言語を採用し、維持し、継続する
By 松澤 有 (ymtszw) (Siiibo証券株式会社 CTO)
@関数型まつり2025 (2025/06/14) [1]


 Siiibo証券株式会社


2019年創業、筆者はfounding engineer / CTO
↓の構成で社債専門の証券システムを作り上げてきた




 このセッションでは

実際に関数型言語を業務で採用し、維持し、継続するにあたって重視している価値観、手続き、手法などをざっくばらんに紹介します
なんとか5年はやってこれた
次の5年もやっていきたいがためのやつ



 前提

最新の開発組織規模

フルタ...]]></description><link>https://zenn.dev/siiibo_tech/articles/adopting-fp-languages</link><guid isPermaLink="true">https://zenn.dev/siiibo_tech/articles/adopting-fp-languages</guid><pubDate>Sat, 14 Jun 2025 12:53:45 GMT</pubDate><enclosure url="https://res.cloudinary.com/zenn/image/upload/s--qYdbI4oC--/c_fit%2Cg_north_west%2Cl_text:notosansjp-medium.otf_55:%25E9%2596%25A2%25E6%2595%25B0%25E5%259E%258B%25E8%25A8%2580%25E8%25AA%259E%25E3%2582%2592%25E6%258E%25A1%25E7%2594%25A8%25E3%2581%2597%25E3%2580%2581%25E7%25B6%25AD%25E6%258C%2581%25E3%2581%2597%25E3%2580%2581%25E7%25B6%2599%25E7%25B6%259A%25E3%2581%2599%25E3%2582%258B%2Cw_1010%2Cx_90%2Cy_100/g_south_west%2Cl_text:notosansjp-medium.otf_34:Yu%2520Matsuzawa%2Cx_220%2Cy_108/bo_3px_solid_rgb:d6e3ed%2Cg_south_west%2Ch_90%2Cl_fetch:aHR0cHM6Ly9zdGF0aWMuemVubi5zdHVkaW8vdXNlci11cGxvYWQvYXZhdGFyLzBmMzgxMmZkZWEuanBlZw==%2Cr_20%2Cw_90%2Cx_92%2Cy_102/co_rgb:6e7b85%2Cg_south_west%2Cl_text:notosansjp-medium.otf_30:Siiibo%25E3%2583%2586%25E3%2583%2583%25E3%2582%25AF%25E3%2583%2596%25E3%2583%25AD%25E3%2582%25B0%2Cx_220%2Cy_160/bo_4px_solid_white%2Cg_south_west%2Ch_50%2Cl_fetch:aHR0cHM6Ly9saDMuZ29vZ2xldXNlcmNvbnRlbnQuY29tL2EtL0FPaDE0R2dwd3pXbm9hSUl4bEVZcUtBSnRicVVheWljRmlJVExYVGZNN0EyPXMyNTAtYw==%2Cr_max%2Cw_50%2Cx_139%2Cy_84/v1627283836/default/og-base-w1200-v2.png?_a=BACMTiAE" length="0" type="false"/><dc:creator>Yu Matsuzawa</dc:creator></item><item><title><![CDATA[Erlang/ElixirでSendGridのWebhook署名検証する]]></title><description><![CDATA[以前書いたクライアント認証とはまた毛色が違うものの、Erlangのpublic_keyを利用するTips第２段。
https://zenn.dev/ymtszw/articles/erlang-elixir-hackney-client-auth-20210327

 SendGridのWebhook署名を検証したい
SendGridを使って配信されるメールの関連イベントはWebhookで受け取ることができますが、偽イベントを受け取らないようきちんと署名検証をしたいところ。
https://docs.sendgrid.com/for-developers/tracking-events/...]]></description><link>https://zenn.dev/siiibo_tech/articles/erlang-elixir-sendgrid-signature-verify-20230812</link><guid isPermaLink="true">https://zenn.dev/siiibo_tech/articles/erlang-elixir-sendgrid-signature-verify-20230812</guid><pubDate>Fri, 11 Aug 2023 17:36:22 GMT</pubDate><enclosure url="https://res.cloudinary.com/zenn/image/upload/s--07KWzMFi--/c_fit%2Cg_north_west%2Cl_text:notosansjp-medium.otf_55:Erlang%252FElixir%25E3%2581%25A7SendGrid%25E3%2581%25AEWebhook%25E7%25BD%25B2%25E5%2590%258D%25E6%25A4%259C%25E8%25A8%25BC%25E3%2581%2599%25E3%2582%258B%2Cw_1010%2Cx_90%2Cy_100/g_south_west%2Cl_text:notosansjp-medium.otf_34:Yu%2520Matsuzawa%2Cx_220%2Cy_108/bo_3px_solid_rgb:d6e3ed%2Cg_south_west%2Ch_90%2Cl_fetch:aHR0cHM6Ly9zdGF0aWMuemVubi5zdHVkaW8vdXNlci11cGxvYWQvYXZhdGFyLzBmMzgxMmZkZWEuanBlZw==%2Cr_20%2Cw_90%2Cx_92%2Cy_102/co_rgb:6e7b85%2Cg_south_west%2Cl_text:notosansjp-medium.otf_30:Siiibo%25E3%2583%2586%25E3%2583%2583%25E3%2582%25AF%25E3%2583%2596%25E3%2583%25AD%25E3%2582%25B0%2Cx_220%2Cy_160/bo_4px_solid_white%2Cg_south_west%2Ch_50%2Cl_fetch:aHR0cHM6Ly9saDMuZ29vZ2xldXNlcmNvbnRlbnQuY29tL2EtL0FPaDE0R2dwd3pXbm9hSUl4bEVZcUtBSnRicVVheWljRmlJVExYVGZNN0EyPXMyNTAtYw==%2Cr_max%2Cw_50%2Cx_139%2Cy_84/v1627283836/default/og-base-w1200-v2.png?_a=BACMTiAE" length="0" type="false"/><dc:creator>Yu Matsuzawa</dc:creator></item><item><title><![CDATA[Elmのlintツールelm-reviewのProjectRuleSchemaを使ってボイラープレート生成する]]></title><description><![CDATA[

 Elmのlintツールelm-reviewのProjectRuleSchemaを使ってボイラープレート生成する
By ymtszw
@Elm-jp Online #3 (2023/07/22) [1]


 jfmengels/elm-review


一言でいうと「Elmでルールを書けるElmのlintツール」
Previous studies:


elm-reviewを使ってモジュールの依存関係に制限を付ける by misoton665


elm-review悪用でコード自動生成 by miyamo






 コード生成ツールとして

今日紹介するのもコード生成ツールと...]]></description><link>https://zenn.dev/siiibo_tech/articles/elm-review-project-rule-schema</link><guid isPermaLink="true">https://zenn.dev/siiibo_tech/articles/elm-review-project-rule-schema</guid><pubDate>Sat, 22 Jul 2023 03:49:52 GMT</pubDate><enclosure url="https://res.cloudinary.com/zenn/image/upload/s--YJFoIHcN--/c_fit%2Cg_north_west%2Cl_text:notosansjp-medium.otf_55:Elm%25E3%2581%25AElint%25E3%2583%2584%25E3%2583%25BC%25E3%2583%25ABelm-review%25E3%2581%25AEProjectRuleSchema%25E3%2582%2592%25E4%25BD%25BF%25E3%2581%25A3%25E3%2581%25A6%25E3%2583%259C%25E3%2582%25A4%25E3%2583%25A9%25E3%2583%25BC%25E3%2583%2597%25E3%2583%25AC%25E3%2583%25BC%25E3%2583%2588%25E7%2594%259F%25E6%2588%2590%25E3%2581%2599%25E3%2582%258B%2Cw_1010%2Cx_90%2Cy_100/g_south_west%2Cl_text:notosansjp-medium.otf_34:Yu%2520Matsuzawa%2Cx_220%2Cy_108/bo_3px_solid_rgb:d6e3ed%2Cg_south_west%2Ch_90%2Cl_fetch:aHR0cHM6Ly9zdGF0aWMuemVubi5zdHVkaW8vdXNlci11cGxvYWQvYXZhdGFyLzBmMzgxMmZkZWEuanBlZw==%2Cr_20%2Cw_90%2Cx_92%2Cy_102/co_rgb:6e7b85%2Cg_south_west%2Cl_text:notosansjp-medium.otf_30:Siiibo%25E3%2583%2586%25E3%2583%2583%25E3%2582%25AF%25E3%2583%2596%25E3%2583%25AD%25E3%2582%25B0%2Cx_220%2Cy_160/bo_4px_solid_white%2Cg_south_west%2Ch_50%2Cl_fetch:aHR0cHM6Ly9saDMuZ29vZ2xldXNlcmNvbnRlbnQuY29tL2EtL0FPaDE0R2dwd3pXbm9hSUl4bEVZcUtBSnRicVVheWljRmlJVExYVGZNN0EyPXMyNTAtYw==%2Cr_max%2Cw_50%2Cx_139%2Cy_84/v1627283836/default/og-base-w1200-v2.png?_a=BACMTiAE" length="0" type="false"/><dc:creator>Yu Matsuzawa</dc:creator></item><item><title><![CDATA[Elm-pages in Action]]></title><description><![CDATA[

 Elm-pages in Action
...あるいは、elm-pagesの概念的ポイント解説
By ymtszw
@Elm-jp 2023 (2023/05/20) [1]


 前回？までのあらすじ

昨年、elm-pages (v2)とHeadless CMSに入門し、好印象を抱いた

せっかくなのでpersonal websiteとして成果物を整備し、その後継続的に記事更新したり、サイト改良したりしている
ソース


昨年後半のElm Meetup (online)でコミュニティ製フレームワークの一つとして紹介




 今回は…

elm-pages v2の概念的なポイン...]]></description><link>https://zenn.dev/ymtszw/articles/elm-pages-v2-in-action</link><guid isPermaLink="true">https://zenn.dev/ymtszw/articles/elm-pages-v2-in-action</guid><pubDate>Sat, 20 May 2023 04:20:40 GMT</pubDate><enclosure url="https://res.cloudinary.com/zenn/image/upload/s--pz70mK5i--/c_fit%2Cg_north_west%2Cl_text:notosansjp-medium.otf_76:Elm-pages%2520in%2520Action%2Cw_1010%2Cx_90%2Cy_100/g_south_west%2Cl_text:notosansjp-medium.otf_37:Yu%2520Matsuzawa%2Cx_203%2Cy_121/g_south_west%2Ch_90%2Cl_fetch:aHR0cHM6Ly9saDMuZ29vZ2xldXNlcmNvbnRlbnQuY29tL2EtL0FPaDE0R2dwd3pXbm9hSUl4bEVZcUtBSnRicVVheWljRmlJVExYVGZNN0EyPXMyNTAtYw==%2Cr_max%2Cw_90%2Cx_87%2Cy_95/v1627283836/default/og-base-w1200-v2.png?_a=BACMTiAE" length="0" type="false"/><dc:creator>Yu Matsuzawa</dc:creator></item><item><title><![CDATA[Diffs from Elm Meetups 2019]]></title><description><![CDATA[

 Diffs from Elm Meetups 2019
By ymtszw
@Elm Meeetup (第1回オンライン開催) (2022/11/19) [1]


 前回のElm-jp Meetupは…

2019年 (both @六本木, Fringe81 (現Unipos))

Elm Meetup in Summer
Elm P1


その後コロナ禍となり、技術系イベント開催は減少・縮小…


elm japan 2020中止😭
小規模ハンズオンや勉強会・もくもく会などオンラインで



今回オンラインながらmeetup再開、ということで…


 2019年後半以来のdif...]]></description><link>https://zenn.dev/siiibo_tech/articles/elm-meetup-202211</link><guid isPermaLink="true">https://zenn.dev/siiibo_tech/articles/elm-meetup-202211</guid><pubDate>Sat, 19 Nov 2022 04:46:14 GMT</pubDate><enclosure url="https://res.cloudinary.com/zenn/image/upload/s--q6jYDo4n--/c_fit%2Cg_north_west%2Cl_text:notosansjp-medium.otf_72:Diffs%2520from%2520Elm%2520Meetups%25202019%2Cw_1010%2Cx_90%2Cy_100/g_south_west%2Cl_text:notosansjp-medium.otf_34:Yu%2520Matsuzawa%2Cx_220%2Cy_108/bo_3px_solid_rgb:d6e3ed%2Cg_south_west%2Ch_90%2Cl_fetch:aHR0cHM6Ly9zdGF0aWMuemVubi5zdHVkaW8vdXNlci11cGxvYWQvYXZhdGFyLzBmMzgxMmZkZWEuanBlZw==%2Cr_20%2Cw_90%2Cx_92%2Cy_102/co_rgb:6e7b85%2Cg_south_west%2Cl_text:notosansjp-medium.otf_30:Siiibo%25E3%2583%2586%25E3%2583%2583%25E3%2582%25AF%25E3%2583%2596%25E3%2583%25AD%25E3%2582%25B0%2Cx_220%2Cy_160/bo_4px_solid_white%2Cg_south_west%2Ch_50%2Cl_fetch:aHR0cHM6Ly9saDMuZ29vZ2xldXNlcmNvbnRlbnQuY29tL2EtL0FPaDE0R2dwd3pXbm9hSUl4bEVZcUtBSnRicVVheWljRmlJVExYVGZNN0EyPXMyNTAtYw==%2Cr_max%2Cw_50%2Cx_139%2Cy_84/v1627283836/default/og-base-w1200-v2.png?_a=BACMTiAE" length="0" type="false"/><dc:creator>Yu Matsuzawa</dc:creator></item><item><title><![CDATA[NimbleParsecの解説とちょっとした利用例]]></title><description><![CDATA[

 NimbleParsecとちょっとした利用例
By ymtszw @ tokyo.ex#21 (2022/11/05) [1]


 NimbleParsecとは

dashbitco/nimble_parsec
元々Plataformatec（Joséの所属していたRuby/Elixir開発コンサル。Nubankに買収された）で開発され、新会社のDashbitに移管されたパーサーコンビネータライブラリ
"Nimble"シリーズライブラリの一つ


NimbleParsec is a simple and fast library for text-based parser com...]]></description><link>https://zenn.dev/siiibo_tech/articles/nimble-parsec</link><guid isPermaLink="true">https://zenn.dev/siiibo_tech/articles/nimble-parsec</guid><pubDate>Sat, 05 Nov 2022 03:48:46 GMT</pubDate><enclosure url="https://res.cloudinary.com/zenn/image/upload/s--k_dVisn8--/c_fit%2Cg_north_west%2Cl_text:notosansjp-medium.otf_55:NimbleParsec%25E3%2581%25AE%25E8%25A7%25A3%25E8%25AA%25AC%25E3%2581%25A8%25E3%2581%25A1%25E3%2582%2587%25E3%2581%25A3%25E3%2581%25A8%25E3%2581%2597%25E3%2581%259F%25E5%2588%25A9%25E7%2594%25A8%25E4%25BE%258B%2Cw_1010%2Cx_90%2Cy_100/g_south_west%2Cl_text:notosansjp-medium.otf_34:Yu%2520Matsuzawa%2Cx_220%2Cy_108/bo_3px_solid_rgb:d6e3ed%2Cg_south_west%2Ch_90%2Cl_fetch:aHR0cHM6Ly9zdGF0aWMuemVubi5zdHVkaW8vdXNlci11cGxvYWQvYXZhdGFyLzBmMzgxMmZkZWEuanBlZw==%2Cr_20%2Cw_90%2Cx_92%2Cy_102/co_rgb:6e7b85%2Cg_south_west%2Cl_text:notosansjp-medium.otf_30:Siiibo%25E3%2583%2586%25E3%2583%2583%25E3%2582%25AF%25E3%2583%2596%25E3%2583%25AD%25E3%2582%25B0%2Cx_220%2Cy_160/bo_4px_solid_white%2Cg_south_west%2Ch_50%2Cl_fetch:aHR0cHM6Ly9saDMuZ29vZ2xldXNlcmNvbnRlbnQuY29tL2EtL0FPaDE0R2dwd3pXbm9hSUl4bEVZcUtBSnRicVVheWljRmlJVExYVGZNN0EyPXMyNTAtYw==%2Cr_max%2Cw_50%2Cx_139%2Cy_84/v1627283836/default/og-base-w1200-v2.png?_a=BACMTiAE" length="0" type="false"/><dc:creator>Yu Matsuzawa</dc:creator></item><item><title><![CDATA[Erlang/ElixirでTLSクライアント認証する]]></title><description><![CDATA[TLSクライアント認証は使われる場面が少なく、これをErlang/Elixirで行っている日本語の解説記事となるともっと少ないので少し難儀した。やる機会があったのでここに書き残す。
TLSはまだしも、そこで行われるクライアント認証の仕組みのほうは普段あまり把握していないことが多いと思うので、自己完結した記事になるよう、その説明も合わせて書いておく。
この記事では、各種証明書を対象主体に対して発行・管理するための枠組みであるPKIやCAについては扱わない。

 【前提】HTTPS（HTTP over TLS）
サーバ証明書だけを使う片方向のTLSは大体わかっているなら、この節をスキップして...]]></description><link>https://zenn.dev/ymtszw/articles/erlang-elixir-hackney-client-auth-20210327</link><guid isPermaLink="true">https://zenn.dev/ymtszw/articles/erlang-elixir-hackney-client-auth-20210327</guid><pubDate>Sun, 28 Mar 2021 11:21:27 GMT</pubDate><enclosure url="https://res.cloudinary.com/zenn/image/upload/s--uhb32YkR--/c_fit%2Cg_north_west%2Cl_text:notosansjp-medium.otf_55:Erlang%252FElixir%25E3%2581%25A7TLS%25E3%2582%25AF%25E3%2583%25A9%25E3%2582%25A4%25E3%2582%25A2%25E3%2583%25B3%25E3%2583%2588%25E8%25AA%258D%25E8%25A8%25BC%25E3%2581%2599%25E3%2582%258B%2Cw_1010%2Cx_90%2Cy_100/g_south_west%2Cl_text:notosansjp-medium.otf_37:Yu%2520Matsuzawa%2Cx_203%2Cy_121/g_south_west%2Ch_90%2Cl_fetch:aHR0cHM6Ly9saDMuZ29vZ2xldXNlcmNvbnRlbnQuY29tL2EtL0FPaDE0R2dwd3pXbm9hSUl4bEVZcUtBSnRicVVheWljRmlJVExYVGZNN0EyPXMyNTAtYw==%2Cr_max%2Cw_90%2Cx_87%2Cy_95/v1627283836/default/og-base-w1200-v2.png?_a=BACMTiAE" length="0" type="false"/><dc:creator>Yu Matsuzawa</dc:creator></item></channel></rss>