トーク (40分)

手続き型プログラミングの手法によるクリーンアーキテクチャへの取り組み

ytnobody わいとん

このトークでは、私が実務でイチからバックエンドアプリケーションを開発する際に実践している手法について紹介します。

近頃私はTypeScriptでバックエンドAPIを開発していますが、今回はPerlで簡単な事例を作って解説する予定です。
決して真新しい内容ではないでしょうが、この技術選択をした背景と理由を交えたトークにします。

対象者 中級者~上級者向け

  • クリーンアーキテクチャの実践例を見たい方
  • 手続き型プログラミングの手法が気になる方
  • アプリケーション設計にの知見を深めたい方

話すこと

  • 技術選択の背景と目的
  • コンポーネント構成と依存関係
  • 純粋関数とビジネスロジック
  • 目的別のテスト
  • 利点と試行錯誤している箇所

深く話さないこと

  • クリーンアーキテクチャとDDDの定義
  • ビジネスロジックの定義
  • 細かいプログラミングのテクニック
トーク (40分)

PerlでつくるフルスクラッチWebAuthn/パスキー認証

mackee_w macopy

いま私がイチオシする技術、WebAuthn/パスキーについて紹介するトークです。

しかしただ紹介するのではつまらないので、WebAuthnの仕組みを解説しながらライブコーディングを行っていきます。現代のPerlで書くので今どきのPerlの書き方もわかって一石二鳥ですね!

注意点

  • WebAuthn/パスキーの簡単な概略だけ最初に解説します
  • WebAuthnのサーバー実装を主に解説します
  • 時間の短縮のため、いわゆる「作り置き」スニペットを使用するかもしれません
  • Perlの書き方の説明は私が解説したいときにだけします
  • フルスクラッチと言っても細かい技術要素はCPANモジュールを活用します
    • 例: 署名検証, CBORのパーサーなど

対象者

  • WebAuthnを本質的に理解したい方
  • 今どきのPerlを書いている人を観察したい方
トーク (20分)

ドキュメンテーションで繋ぐ非同期な開発体制

Konboi こんぼい

Launchable, inc.というアメリカの会社に所属し日本から開発を行っています。日本とUSの双方にメンバーがいるため、時差の問題や言語の問題でリアルタイムにコミュニケーションをとって開発を進める事は簡単ではありません。
そのためLaunchableでは非同期で開発が進めれるよう工夫しています。
その一つがドキュメンテーションです。ひとえにドキュメンテーションといっても、ただ闇雲に文章を書いているだけではありません。状況に応じてドキュメントのフォーマットや運用方法が異なります。
本発表ではLaunchableがドキュメンテーションを大事にしている理由に始まり、具体例やナレッジなどを紹介しながら、我々のドキュメンテーションについて紹介できればと思います。本発表がドキュメンテーションについて考える機会になればと思っています。

トーク (40分)

Webアプリケーションのキャッシュ戦略とそのパターン

onk Takafumi ONAKA
onk

サブタイトル:「キャッシュは麻薬」という標語からの脱却

詳細はあとで書く

トーク (40分)

What You Like May Not Be for Someone オープンソースとアクセシビリティ

24motz nishimotz

アクセシビリティ(障害を持つ人や高齢者など多様なユーザーにとっての「利用しやすさ」)に関するオープンソースプロジェクト、NVDA(Windows用のスクリーンリーダー)の開発と日本のコミュニティ運営に、私は2010年頃から関与しています。特にWebアクセシビリティにおいて、NVDAは視覚障害者だけでなく検証者にも広く採用されています。オルタナティブな視点や興味がなければ、この分野には足を踏み入れることもなく、継続もしなかったでしょう。そんな自分自身の経験を振り返りつつ、情報アクセシビリティの世界をご紹介します。

トーク (20分)

まずは一歩踏み出すCI/CDパイプライン

satoshi256kbyte 兼安 聡

概要

Dev(Sec)Opsの実現において、CI/CDパイプラインは重要な役割を果たします。
しかし、現実の現場においては、その適用は容易ではありません。
本発表では、まずは一歩踏み出すことに価値があると言う考えの基、CI/CDパイプラインの各ステップでのできることとそのメリット、そしてその構築方法を紹介します。

対象者

  • 開発プロセスに改善の必要性を感じている方
  • CI/CDパイプラインに興味のある方

    アウトライン

  • CI/CDパイプラインの意義と全体像
  • 自チームの事情に合わせたソース管理ツールの選択
  • ブランチ戦略の意義と、主流なブランチ戦略の紹介
  • コードレビューを効率的に行うために
  • ビルドステップで品質チェック
  • DBに対する更新(マイグレーション)の自動化
  • デプロイの承認フローと自動化
  • そしてFour Keys Metricsに繋げる
トーク (20分)

やってこ! ぼくらの社内DX

kyokucho_1989 kyokucho1989

これからはDXの時代! なんでもかんでもデジタルにしたい! そんな波に乗っかり、私もやりたいことをやることにした。

しかしそこに立ちはだかるのは、金、人、時間の壁!
いかにわたしは社内DXをやり遂げたのか?!

実際はいまから(2023/9)やっていくので、登壇するときに詳細を話します

トーク (40分)

RubyVM を PHP で実装する〜Hello World を出力するまで〜

m3m0r7 めもり〜

YAPCのPは任意のP。みなさんは何かしらのVM(Virtual Machine)を作ったことがあるでしょうか。私自身は過去にPHPでJVM(Java Virtual Machine)を作ったことがあります。現職はRuby on Railsがメインの企業です。PHPを主にやってきた私がRubyの気持ちを理解するにはひと工夫必要だと考えました。そこで,過去にPHPでJVMを作ったことがある経験を活かし,RubyVMを自作してRubyの気持ちを理解し学習速度を加速させようという考えに至りました。本トークではPHPでどのようにVMというものを作るのか,そしてRubyVMはどのように作っていくのかを,初心者でも「ちょっとわかったかも」と思えてもらうことをゴールとして解説します。もちろんPHPで実装できるということはPerlでも実装可能です。もし興味を持たれたらぜひPerlで実装してみてください。

トーク (20分)

Perlの未定義な振る舞い100連発

__papix__ papix

概要

perldocを見ていると, 「振る舞いは未定義です」といった表現が見られることがあります. Perlには文法的には正しくて実行できるものの, その振る舞いが未定義である場合がいくつかあるのです.
このトークで改めて「Perlの未定義な振る舞い」について振り返ってみましょう. 実はこれ, 振る舞いが未定義だって知っていました?

※ タイトルは「100連発」ですが, 実際に未定義な振る舞いを100個紹介することを保証するものではありません. ご了承ください

アジェンダ

  • 「未定義な振る舞い」とは?
  • 実例の紹介
  • よくやりがちな「未定義な振る舞い」
  • 「未定義な振る舞い」を避けるには?
トーク (20分)

「お好み」の業務効率化、Slackボット開発と業務改革 〜宮島フレーバー〜

pyama86 P山

私たちの日々の業務運営におけるSlackの役割は極めて重要であり、それは情報の伝達やコミュニケーションの場として、私たちの仕事の中核に位置付けられています。

このセッションでは、Slackを組織で上手に活用するために、私がどのようにして自社のSlackボットを開発し、日々の業務に導入したかを共有します。具体的には、

  • 離席時やランチタイムのSlack代理応答
  • フリーテキストクエリをGPT-4に投げることができる機能
  • 一定のトリガーに基づきSlackから直接issueを作成
  • OpenStackの操作

などについて紹介します。
また、これらのボットを開発・導入することで得られた具体的な利益や生産性の向上、更には仕事の進め方の変革について紹介し、最終的な目標は、皆さんが自社の業務にもこれらのテクニックを用いて、業務改革を実現するためのインスピレーションを得られることです。

1
トーク (40分)

"LIKE"を実現に導くために

ariaki4dev ariaki

概要

イベントに参加して感動したり、あなたの人生を変えるような出会いを感じたことありますか?
あなたが好きだと感じたその場所が、もしも衰退し失われてしまったら悲しいですよね。
あなたは自身の"LIKE"を守るためにいつでも行動をおこすことができます。
そうして成し遂げたいと思った"LIKE"を実現に導く際には、どんな困難が待ち受けているでしょう。
このセッションでは、そんなあなたの不安を取り除きたいと考えています。
私自身が複数のイベントを運営する中で感じたことや経験を踏まえ、何かを成し遂げたり継続するために必要なマインドや行動のエッセンシャルを紐解きます。

アジェンダ

  • 初心者でもイベント運営できるよ
  • 実現にむけて何をすべきか
  • チーム運営/マネジメントのヒント
  • 経験をもとにしたTIPS
3