はじめに
こーんにーちはーーー!1
錦鯉、M-1優勝2おめでとうございます!nikkieです。
この記事は、Uzabase Advent Calendar 2021の20日目の記事です。
12/18(土)に沖縄で開催されたテックイベント「Tech BASE Okinawa」をレポートします!
目次
イベントの概要
Tech BASE Okinawaは、新しい技術の学びを体験できる、沖縄最大級のエンジニア向けTechイベントです。
12/18(土)に沖縄コンベンションセンターで開催されました。
このイベントの参加費は無料です。
#TechBASEOkinawa
— nikkie 東ト-14b C99金曜 (トウマのト、そして14!) (@ftnext) 2021年12月18日
テーマは「気づき」
新しい気づきもあれば、温故知新のような再発見も
twadaさんキーノート始まりました
なんで行ったの?
twadaさんはじめ、ユーザベースのFellow3のトークが聞けるということで、「実質無料でしょ!」と沖縄行きを決めました。
技術好きには垂涎のイベント と感じたということです。
弊社も共催で関わっている「新しい技術の学びを体験できる、沖縄最大級のエンジニア向けTechイベント」のお知らせです。沖縄や沖縄に行けるエンジニアの皆さん、是非どうぞー!
— nikkie 東ト-14b C99金曜 (トウマのト、そして14!) (@ftnext) 2021年11月22日
twadaさん基調講演を生で聴けるなら、最近沖縄気になっているので、これは行っちゃおうかな✈️ https://t.co/WvHUUcznjF
最近沖縄気になってるの詳細ですが、
— nikkie 東ト-14b C99金曜 (トウマのト、そして14!) (@ftnext) 2021年11月22日
・ちゅらデータさんのPyCon JP 2021振り返り会がとてもよかった
のと
・白い砂のアクアトープの聖地(うみきれい)
ってことで「いつか行ってみたい」→これはもう12/18行っては!?
という気持ちです
Pythonコミュニティで慣れ親しんだ「テックイベント遠征するなら爪痕残したいじゃん」の考えで、参加者LTにもエントリー!(これは別に書く予定です)
どんなイベントだったの?
会場入りすると、メインホールにはタイマーによるカウントダウンが。
カウントダウンが0になると、かっこいいオープニングムービーが流れ、テンション上がる!
「Tech BASE Okinawa」
— Tech BASE Okinawa (@TechBASEOkinawa) 2021年12月18日
オープニングムービーをチラ見せ📽#techbaseokinawa#TBO
今日の【気づき】【学び】をTwitterでアウトプットしよう🐤 pic.twitter.com/6acd1ewkyP
オープニングの後は、twadaさんによる90分のキーノート!
基調講演Keynoteでは、テスト駆動開発(TDD)の第一人者である和田卓人さんが登壇!
— Tech BASE Okinawa (@TechBASEOkinawa) 2021年12月18日
今回は、コードの内側から質を上げていくお話が聴けるとか!#TeceBASEOkinawa#TDD#和田卓人氏 pic.twitter.com/zusAQ5MI1b
その後、ランチタイム!
ゴーヤチャンプル美味しかったです(全然苦くなかったような・・)
なんと、今回のイベントでは
— Tech BASE Okinawa (@TechBASEOkinawa) 2021年12月18日
お弁当も配布しております🍱
ネームプレートの色でランチ場所を区分しています!
感染症対策をしっかり行いながら、
ご満足いただけるイベントになればと思います✨
午後も張り切っていきましょう💪
#techbaseokinawa pic.twitter.com/PrUD3MP2II
午後のセッションは 4トラック 並列の3コマ!
興味のあるセッションを聞いたり、LTの準備をしたりしながら過ごしました。
B棟More Techルームでは、session3「プログラミング言語とシステムデザイン -Clojure, Java, DDD, Clean Architecture」スタート✨
— Tech BASE Okinawa (@TechBASEOkinawa) 2021年12月18日
ユーザベース社 矢野 勉さんがご登壇です🎤
かなりの熱量で皆さんご参加いただいてます🤩#TechBASEOkinawa#テックベースオキナワ#TBO pic.twitter.com/Liof0WDOv1
LTは全部で3名。
沖縄 -> 東京(私) -> 北海道と北上する発表順でした。
リアルでやるLTは2年近くぶり、かつ、沖縄はアウェーということで、「久々の空気感を楽しもう」と臨みましたー。
LT大会ご参加いただいた皆さま、ありがとうございました!
— Tech BASE Okinawa (@TechBASEOkinawa) 2021年12月18日
東京、、北海道旭川からも⁉️
濃い5分間!
さらに話を聴いてみたい方は懇親会へぜひ👣#LT大会 #TechBASEOkinawa#テックベースオキナワ#TBO pic.twitter.com/CML26WtYtU
その後はパネルディスカッション「沖縄テックの未来シナリオを考えよう!」。
パネルディスカッションスタートしました✨
— Tech BASE Okinawa (@TechBASEOkinawa) 2021年12月18日
どんなお話が聴けるのかワクワクしますね!#TechBASEOkinawa#テックベースオキナワ#TBO pic.twitter.com/860qGQTT9h
- 多様化するエンジニアの働き方
- これから活躍するエンジニアに求められること
- 沖縄の未来をどう描いていく?
フリー質問タイムには、Slidoにたくさんの質問が集まり、沖縄のエンジニアの熱を感じる 時間でした。
クロージングの後は、懇親会!!
これを読んでいる皆さん、リアルの懇親会ですよ! リ ア ル の 懇 親 会 !!
/
— Tech BASE Okinawa (@TechBASEOkinawa) 2021年12月18日
懇親会🍻
\#TechBASEOkinawa
いよいよイベントも終盤
懇親会タイムです✨
林さんの乾杯からはじまりました〜!! pic.twitter.com/Svxpgiam8h
これはめちゃくちゃ楽しかったですねー。
タイムボックスは1時間なのですが大いに盛り上がり、なかなか閉まりませんでした(笑)
紅いもの天ぷら?があって、「甘い!美味しい!」って言っていたら、紅いものお土産情報も教えていただけました。
こんな感じで、たくさんインプットし、技術について語り合った1日となりました!
どんなトーク聞いたの?
聞いたトークの感想を手短にまとめます。
消化途中の部分もあり、帰りの飛行機などで原著を読み進めています。
過去に読んだ時より理解できる感覚があって楽しいんですよ、これが。
「ある程度消化したら別で記事を書きたいなー」と思っています。
堅牢なコードを書く - 例外、表明、契約による設計
twadaさんによるキーノートです。
(テスト駆動開発(TDD)とペアとなる) 設計 で、コードの内側から質を上げていくという発表でした。
- 自分以外は信頼しない防御的プログラミングより、予防的プログラミング
- 中途半端に実行するより処理を失敗させる:攻撃的プログラミング
assert
で書いて 暗黙の前提 を明示する(後述)
- 契約プログラミング(Design by Contract: DbC)
- 失敗にはバグと例外がある
- 失敗がバグか例外か切り分けられるようにする
区間の表現
開区間・閉区間が自明でなくて分かりづらいというコードの問題点から始め、区間を表す型を作って、さらに簡単に使えるように実装するというのはお見事でした👏
日付とその日付を含むかの2属性を持った型をまず作り、そのインスタンス2つから、区間を表す型をインスタンス化するという設計アイデアは、私は一人では浮かばなかったと思うので、この場で学べてよかったです。
また、「正しい使い方を簡単に、誤った使い方を困難に」4という考え方を知り、この一年くらいうっすら感じていた伸びしろがはっきりしたと思っています。
PyCon JPのスタッフ活動で実装したスクリプト群、私としてはみんな使って楽をするのが正しいと思うんですけど、なかなか使われないんですよ。
これは簡単になってないからなんだなと気づきました。
例外と表明をどう使い分ける?
- 例外:起こるかもしれない(発生が予想できる)
- 表明は起こり得ないことをチェック(誰も間違えない前提の表明=ありえない)
これが知られたのも収穫です。
キーノートで多く引かれたのは、以下の本です。
- 『プログラマが知るべき97のこと』
- 『達人プログラマー 第2版』(第4章)
twadaさんの発表は資料を後追いすることが多かったのですが、実際に発表を聞くと"行間"が分かって、非常に学びがありました。
ほんと、行ってよかったです。
プログラミング言語とシステムデザイン - Clojure, Java, DDD, Clean Architecture
Fellowの矢野さんによるトークです。
システム設計の話 で、DDDやClean ArchitectureがClojureと掛け合わせるとどう意味が変わってくるかという発表でした。
- Clean Architectureのあの図5の中央にあるUseCaseもEntityも、Clojureでは関数
- 言語が変わったら消えてしまった
- 👉 言語を超えて有効なものこそがシステムの基礎となるアーキテクチャ理論になる
- 言語を超えて有効なものは、あの図ではなく、SOLID原則
私は過去あの図の箇所を中心に読んでいたのですが、矢野さんのトークをもとに『Clean Architecture』第Ⅲ部「設計の原則」(SOLID原則を扱うパート)を読み返すと、気付きがあってめちゃくちゃ面白いです。
国内におけるAIの最先端事例紹介 〜2022年のトレンド予想を添えて〜
ちゅらデータの真嘉比さんによるトークです。
最先端事例は追いきれていない感覚があった私としては、最先端の動きが掴めるトークでした。
#TechBASEOkinawa 真嘉比さんのトークで気になったKRISP(知識を活用して質問に答える事例)、https://t.co/2RlS6T6KST に見つけました。
— nikkie 東ト-14b C99金曜 (トウマのト、そして14!) (@ftnext) 2021年12月18日
実装覗けそうです
arXivの論文へのリンクもあり、Knowledge Reasoning with Implicit and Symbolic rePresentationsからの命名と分かりました
「PyCon JP 2021やちゅらデータさん開催の振り返りではありがとうございました!」と対面でご挨拶もできました😃
終わりに
あっという間の1日でした!
会場からバスで帰る際はこのイベントで出会った方と話しながら帰ったんですが、縁によるこういう経験も2年ぶり(PyCon Singapore 2019以来)でめちゃくちゃ楽しかったです。
会食ありイベントなので準備はとても大変だったのではないかと想像しますが、参加者としてはオンサイト開催イベントのよさを満喫しました!
2022年もある予定とのことですので、興味持った方、来年一緒に遠征しましょう!
イベント終了致しました!
— Tech BASE Okinawa (@TechBASEOkinawa) 2021年12月18日
総勢200名近くの方が参加されました!
登壇していただいたゲストの方々、
ご参加された皆様、誠にありがとうございました!🙌
また来年も開催予定?です!
また会う日まで〜👋#TechBASEOkinawa pic.twitter.com/7N66tsGiib
イベントで出会った皆さま、にふぇーでーびたん!
2022/01/04追記:資料公開されてます!
聞いたトークの復習や、聞けなかったトークの後追いができますね。
-
公開した時間的に「こんばんは、だよ!」が聞こえてきそうです😂
↩🏆M-1グランプリ2021🏆#錦鯉 本戦ネタ動画公開!
— M-1グランプリ (@M1GRANDPRIX) 2021年12月19日
🔻公式動画サイト M1M🔻https://t.co/kTHhFN3OKn#M1 #M1グランプリ#M1GP2021 #M1グランプリ決勝戦 pic.twitter.com/O0PayXaGEH -
↩🏆M-1グランプリ2021王者🏆
— M-1グランプリ (@M1GRANDPRIX) 2021年12月19日
17代目チャンピオンは…
👑 #錦鯉 👑https://t.co/tUeUNIjjt3#M1 #M1グランプリ #M1GP2021#M1グランプリ決勝戦 pic.twitter.com/9nrSEayylE -
ユーザベース、エンジニア組織において「Fellow(フェロー)」を新設(SPEEDA、INITIAL、FORCAS) | ユーザベース↩
-
Clean Coder Blog にあるカラフルな円の図のことです↩