NCC夏合宿write upその1(自慢日記になってしまった)

色々書きたいことがあるけど、とりあえず総評?ということでその1。

画像は後から追加して行きます。

すべての人へ

NCCとはNakano_Computer_ClubのことでFMSの学生がメインで構成されている大雑把に言えばプログラミングサークルのことです。
これは、NCCで行われたonsen-2018-summerのwrite upです。

NCCでは夏合宿のことをonsen-summerと呼んでいます。
slackのChannelの名前に日本語を使いたくないというのと毎年合宿では温泉に行ってゆるゆるとコーディングするからでしょう。

おんやど恵

もし、あなたが関東近郊にお住いのプログラミング界隈の方でしたら、即刻「おんやど恵 開発合宿プラン」とGoogle検索することをお勧めします。

おんやど恵は湯河原にある旅館です。
開発合宿プランでは、お得に、最高の宿・最高のご飯・最高の温泉と足湯とともに会議室を借りてプログラミングできます。
詳しくは調べてみてください。いますぐに。。

onsen-2018-summer

去年に引き続き、この「おんやど恵」さんで夏合宿を行いました。
去年の夏合宿では1泊2日でハッカソンを行いました。ですが、案の定、デスマーチになるわけです。徹夜です徹夜。せっかく良い宿に来たのに、まともにねれず次の日の美味しい朝ごはんを迎える。せっかくの贅沢がちょっと半減です、、。
ということで今年は2泊3日で合宿を行いました。
端的に感想を言えば最高of最高でした。

ここまで書いて思いました

ほんとはこの記事で、
・自分のやった講義の話
・自分のやったワークショップを基にしたメディアートの話
・CTFで自分と解いた問題を自分なりに解説する
とかしようと思ってたのですが、それは他の記事にするとして、
外部の方々にNCC楽しいぞ!ということを自慢する日記にします。

Mikiが普段どんなに楽しいことをしているかを共有する場にします。

すたーっとっ!

ご飯が美味しかった

いやまあまず、ご飯がめっちゃうまいんですよ。
開発合宿プランは、値段を抑えるために、料理は高級食材を無くしています。と書かれていますが、それでも流石に美味しすぎる。というか、一個人としてはこれ高級すぎ〜でしょっ??!?となるくらいにはやばく幸せな訳で、最高なわけで、美味しいんです。そして安い。はい、いく決定。

足湯は最高だぞ

皆さんはコーディングをしていて疲れたらどうしますか?コーヒー入れますか?散歩しますか?寝っ転がりますか????

いいえ、足湯をして仲間と駄弁りましょう。

おんやど恵では、24時間足湯に入れます。

エラーが出てつまずいた時、リフレッシュしたい時、足湯ができます。

これ、すなはち、さいこう。

炎上しそうな講義をした

せっかく夏合宿です。何か普段できないことをみんなに話したいなあと思ったので、「プログラミング言語」について講義をすることにしました。

普段それなりにしっかりとした技術書を読むには、それなりにしっかりしたプログラミングに関する語彙が必要になります。

例えばWikipediaでSwiftについて調べてみると、特徴が以下のように書かれています。

アップルはSwiftの発表に際して「モダン、安全、高速、インタラクティブ」を大きな特徴として挙げた。
モダン
クロージャやタプル、ジェネリックプログラミング、Optional型の採用などが挙げられる。
安全
静的な型チェック、変数の初期化の強制、数値型のオーバーフローの検査、自動参照カウントによるメモリ管理などが挙げられる。
また、if文のブレースの省略禁止、switch-case文は明示的に指定されない限りフォールスルーしないなど、既存のプログラミング言語において記述ミスによるバグが発生しやすかった部分を文法的に解決している。
インタラクティブ
Swiftはコンパイラ言語でありながら、インタプリタとしてスクリプトを実行することも可能で、対話実行環境(REPL)も用意されている。
Swiftと同時に発表されたXcodeバージョン6では、コードの実行結果をグラフィカルに確認しながら開発できるPlaygroundsが実装された。

せっかく特徴が書いてあるのに、その一文一文or単語単語でつまずいてしまったら、なかなか読破するのには時間がかかってしまいます。

というところで、モダンな文法についての説明まではできないけど、プログラミング言語について「基本的なマニアックなこと」をさらってみたいなと思ったのです。。。

が、思ったより量が多かった。
詳しくは他の記事に改めて書きますが、「変数と型の話」に1時間半くらい使ってしまった。みんなお疲れの中聞いてくれてありがとう。
またしっかり解説するね。そして先にも進もう。

先輩たちがCTFを企画してくれた

2日目の夕方から3日目にかけてOnsen-CTF(OCTF)を行いました。
最高に楽しかったです。

先輩方3名が企画してくれました。本当にありがたい、、。

私の所属するFMSという学科では、授業では基本的にProcessingを扱って動くものを作ります。なので、CやJaca、Pythonなどを使って競技プログラミングのような問題を解くのはあまり得意じゃないのです、、が
なんとOCTFではProcessingを使って解ける問題が多数出題されています。

そんなこともあり、楽しくわいわい解くことができました。有難や。。。

3日目、びっくりしたのはラストがエクストリームCTFだったこと。

最後解いたQRコードには新宿駅のコインロッカーの位置が書かれていました。

湯河原から新宿までダッシュしました。やばい。

私の解いた問題の自分なりの解説(別解集)は、他の記事にあげます。

冬は本当のモブプロしたい

そういえばそういえば、2日目の前半にもワークショップを行ったのです。

本当はモブプログラミングをしたかったのですが、プログラミングを始めてまだ5ヶ月くらいの初心者から、バリバリのプログラマもいます。

とりあえずみんなの知識を一定まであげたかったので、午前中はコードリーディングを行いました。
1班3人に分かれてもらって、簡単なメディアアート作品を作れるコードを、班全員が理解するまで話し合ってコードを読んでもらう。わからないところは3人でしらみつぶししてもらう。という企画です
どんなコードを読んでもらおうかは、とても迷ったのですが、短いコードでいい感じのものを作りたかったので、ritocoさんのブログの記事を読みました。
今から、使いました!ありがとう!と言いに行きます。
短いコードで綺麗な作品が作れるすべを学べたのとおもう!

午後は2時間くらいでなんか簡単な絵をProcessingで作ってみようとハッカソンとモブプロの間っぽいことをしようとは思ったのですが、ちょっと難しかった。
昼ごはんのテーブルでの「各班にジブリの映画割り振って、それにあった何かを作ってもらおうよ」という一言でそうなった。
もう、その瞬間、モブプロの説明をしているほど余裕はなくなってしまったた。各班自由に作った。とってもとっても楽しかった。

謝辞

参加してくれた1年生のみんな
CTFの企画・夏合宿運営グループにリマインドを送ってくれた先輩方
宿を予約したり事務的な作業をしていただいた2年のみなさん

おんやど恵の方、20人を超える大所帯で3日間お世話になりました。
みなさん最高にお疲れ様でした。
また冬か春にやりましょう。