「第6回 プログラマのための数学勉強会」を開催しました!今回も 渋谷 dots. の会場をお借りして、5つの 30 分セッションと9つの LT をお届けしました。今回は「ブログまとめ枠」で3名の方に記事を書いて頂いたので是非そちらも御覧ください!
1. 「心地よさと数字」矢崎 裕一
デザイナ 矢崎裕一さんのセッションです。「データビジュアライゼーション」の考え方や効果について、ご自身の仕事を取り上げつつ紹介してくれました。紹介された作品は見ているだけでも楽しく、またその背後でどういう考え方があるのかを知ることができました。
同じデータでも、表に数字がズラッと並んでいるのと、視覚的に分かりやすく動きが見えるのとでは受け取られ方は全然変わります。テクノロジーの力でデータや式が「見える」ようになるということは、もっと初等教育でも取り入れられるべきだと思います。またデザインにおける「すでに完成していると思われているものを疑う」という姿勢は、数学の心にも通じるんじゃないかと感じました。
[ 資料 ]
2. 「数学がデジタルアートに!高速なシェーダで可視化する数学の世界」@h_doxas
webgl.org や WebGL総本山 を運営し、WebGL / GLSL の講師として活動されている @h_doxas さん。前半で WebGL の基礎を説明し、後半はご自身で開発された GLSL editor を使って GLSL ライブコーディングを披露してくれました。会場の参加者も一緒にコードを書いて、簡単なベクトルの演算や三角関数を組み合わせて見る見る不思議な映像が作れていくのは面白かったですね!
@h_doxas さんが昨年末開いていた GLSL短期スクール に僕が生徒として参加したことがキッカケで今回ご登壇いただきました。5月から WebGL 基礎スクール も開催されるそうなので、興味のある方は是非ご覧ください!
[ 資料 ]
3. 「6-3. Wolfram Language コトハジメ 〜 Wolfram Alpha って聞いたことあります?」若林 登
株式会社ヒューリンクス 執行役員の若林 登さんのセッションです。前回に続き今回もフードスポンサーをして頂き、製品紹介も兼ねて Wolfram Alpha や Mathematica に関する発表をして頂きました!
Wolfram Alpha は検索サイトのような UI でありながら、内部で Mathematica を動かして「計算結果」を返してくれます。数式を描画するだけでなく「ボーイング747には野球ボールがいくつ入るか?」といった問いにも答えてくれます。Mathematica は膨大な数の関数が備わっている数式処理ソフトで、「ノートブック」として計算結果と共に思考過程を記述していくことができるのが特長です。
Stephen Wolfram 自身の TED Talk 「万物の理論を研究する」もとても面白いので興味のある方は是非!
[ 資料 ]
4. 「暗号文のままで計算しよう 〜 準同型暗号入門」 光成 滋生
「クラウドを支えるこれからの暗号技術」の著者、サイボウズラボの光成滋生さんのセッションです。
前半では「楕円ElGamal暗号」を紹介。トーラスには加法群の構造が入り、暗号がトーラス上の点と対応するように定めると暗号文のままで足し算ができてしまうのです。デモ でクライアント・サーバ間の通信を一画面内で表示し、サーバ側で「足した」値をクライアント側に戻して復号すると、ちゃんとクライアント側で足し算されていることを実演されました(会場から感動の拍手!)後半ではさらに足し算だけでなく掛け算もできる「完全準同型暗号」を紹介。足し算と掛け算ができれば、原理的にはコンピュータが行う演算を全て暗号のまま行えることになります。現状では 1bit のデータでも 1GB ほどに膨らんでしまうんだとか…!
僕はこの発表を聞いて「カッコイイ!」と感じました。復号されない限り何の意味も持たなかった暗号文がそれ自体として「代数的構造」という生命を持つようになり、人間に分かる平文と分からない暗号の間でパラレルな関係が成り立つようになるのは、なんとも男心(?)を燃えさせるものがあります!この先まだまだ研究が進んで行くんだろうと思うとワクワクします。
[ 資料 ]
5. 「圏論とHaskellは仲良し」 大森 健児
3月に法政大学教授を退官されたばかりの大森健児先生のセッションです。ブログ bitterharvest's diary で圏論と Haskell について親切に解説をされていたので(法政大学の教授とはつゆ知らず)登壇のお願いをしてご快諾を頂きました。
圏論と Haskell …それは数学とプログラミングにおいて最も難しいものとして恐れられています。圏論は「抽象的な数学の中でも最も抽象的なもの」「異なる分野で異なる言葉として話される同じような概念を抜き出して共通化したもの」です。その圏論をベースに作られたプログラミング言語が Haskell です。Haskell は「純粋関数型言語」と呼ばれる言語で、プログラミングで当たり前と思われるような a = a + 1
のような再代入が一切できません。そんな難解な圏論と Haskell ですが、大森先生はにこやかに楽しそうに親しみやすい喩えを交えながら紹介してくれました。
大森先生が圏論を学び始めたのは68歳だそうです…「何ごとも学び始めるのに遅すぎることはない」というメッセージには胸が高鳴りました。
[ 資料 ]
Lightening Talk
1. 「√2 をつくる」 @taketo1024
[ 資料 ]
2. 「実践Scalaでペアノの公理」 @busterdayo
[ 資料 ]
3. 「せいほうけい育成日記」 @nekonenene
[ 資料 ]
4. 「packing にまつわるアレコレ」 @simizut22
[ 資料 ]
5. 「Introducing PONS」 @dankogai
[ 資料 ]
6. 「すべての図形を分類した男」 @matsumoring
[ 資料 ]
7. 「かんたんベジェ曲線」 @butchi_y
[ 資料 ]
8. 「ベータ分布の謎に迫る」 @kenmatsu4
[ 資料 ]
9. 「始代数とCatamorphism」 Ryo Mikami
[ 資料 ]
まとめ
今回も実に盛りだくさんでしたね…!セッションの前半は見て楽しめる数学、後半は難しいが分かると面白い数学、そして LT は数学好きが暴れまわるという感じでバランスが取れていたんじゃないかと思います(笑) HULINKS さん、今回もフードスポンサーありがとうございます!写真は今回も 馬場彩 さんに撮って頂きました!