高専からmastに編入してみて
この記事は mast Advent Calendar 2017 の 19日目の記事として書かれています.
こんばんは.はじめまして.おひさしぶりです.
mast15に三年次編入した @chigichan24 です.
ほかのアドベントカレンダーはこんなのとかこんなのを書いてます.暇な人は見てみてください.
今日は,高専から筑波大学の情報学群 情報メディア創成学類に編入してみて感じたこと,高専との比較とかそういう観点でエントリを書いていきたいと思います.
対象はmastに興味がある人,特に来年から編入でmastな人,mastに編入してみたい人,編入生って何考えてんの?と思っている人とかです.
そもそもお前は何者?
🐷🍜で有名な高専をなんとか5年間で卒業しました.
高専の時は制御情報工学科という,簡単に言うとロボットを作れるようになりましょうみたいな学科で,機械・電気電子・制御・情報 みたいな4軸を中心に勉強してました.
高専の時からプログラミングは人並みにはやっていて,いろいろ作ったり,作ったり,作ったりしてました.
mastに編入してからは,機室の隅っこでコミュ障しながら授業聞いてます.
mastってなに?
情報メディア創成学類は、情報通信技術の基礎教育の上に、ネットワーク上を流通するコンテンツを生み出し・活用する技術(コンテンツ・テクノロジー)や、コンテンツの蓄積や流通を支える技術(ネットメディア・テクノロジー)を学ぶために創設された学類です。コンテンツそのもので勝負するクリエータを養成する学類ではなく、技術力で社会にインパクトを与えるエンジニアを養成する学類です。
公式のサイト にそう書いてあります.こうらしいです.
まずどうやって編入するの?
受験をします.
合格すると入れます(それはそう)
そこら辺の入試科目とかは過去のエントリを読んで下さい.
単位はどうなるの??
これはリアルで大事な問題です.
編入のオリエンテーションみたいなので説明されますが,単位変換という一大イベントを行わなければなりません.
単位変換は高専や他大学で取得した単位を筑波大学の(主に)1,2年次の単位に変換するための申請です.
この単位変換,普通に候補を出すだけでも厳しいのですが,追い打ちをかけるように 期限が凄い短くて一週間後に出せ.みたいな超短いスパンで支援係の人 と連絡するので大学の支援係とまず仲良くなれす.
変換の方法としては,1 対 1 に対応する科目ってなかなか少ないので,多 対 1 ,多 対 多 で変換していきます.しかし,注意点として多 対 1とか 多 対 多 をする時は結構渋られる上にちゃんとシラバスの内容が見られるので,変なノリで変換しているとつっこまれます.
また,一応制約としては高専4,5年生の単位のみ可能と言われていますが,そんなん守ってたらプログラミングなんて高専1年生でやったわとか,線形代数なんて高専2,3年生でやったわ💢💢💢みたいな気持ちになり,変換できなくなるのでそこら辺は容赦なく変換に入れても大丈夫です.
あとこれはmastに限った話かもしれませんが,見る先生によって単位認定のゆるさが違う(?) ので根気よくチャレンジするのが大事です.
周りに聞いてみた所,高専出身者だと70前半から70後半位変換されてました.
大学からの編入の人でも70近く変換されていたので,大学からだからつらいみたいなのはあんまり無いんじゃないかなと思います.
変換で大事なのはなるべく必修を変換することと,卒研や実験の単位はワイルドカードになりやすいので適切に使うことです.
無理な変換をして卒研を一単位添えるみたいなテクがあったりします.
また,四年生になるための条件として,
100単位以上取得する.かつ,3年次の実験の単位を取得する.
というのがあります.
つまり,70単位認定されるとあとは残りの30単位を3年生で取得する必要があります.
これくらいなら多分大丈夫です.
mastの雰囲気は?
まず高専との大きな違いは女の子がたくさんいることです.
これはそもそも大学に入ったときに思ったのですが,世界の男女比は本当に1:1なんだなぁと実感しました.
高専のときは40人のクラスに対して2人と男子校みたいな感じでしたが,mast15は20人くらいなんですかね(?)まあ体感多いです.
でも人の慣れというのは怖いもので,編入学した当初は
「やべぇ.女子おおい.ウケる.」
みたいな感じでしたが最近はこれに慣れてきました.良くないですね(?)
クラスのひとたちはみんな編入生に優しいです.他の大学とくらべて受入人数が多いからかなんなのかわかりませんが,とにかく排除される感じは少なくとも私自身は感じていません.普通にクラスの飲み会とかに誘ってくれます.優しい!!!!!
あとはみんなクリエイティブです.DNGにAREとして入っている人とかの影響や学類そのものの特性からか,ものづくりをしてアウトプットしている人が多い印象を受けます.
3年生の最初の段階でpublicationが大量にあって国際学会何本か通してますみたいな人もいたり,そうでなくてもこういう作品作ってきましたみたいな人もいてびびります.
このものづくり精神というか,何かをアウトプットするという考えは非常に高専に似ているなぁと思います.
情報科学類(coins)と情報メディア創成学類(mast)
編入をする上で筑波で情報系な学類に行こうと思うとこの2つの選択肢で悩むと思います.
個人的な見解はコンピュータサイエンス,基礎理論を固めるぜ👊みたいな人はcoins
プログラミングはあくまでツールでそれを使ってどう表現するか?みたいな人はmast
がいいのかなぁと思ってます.まあもちろんcoinsでmast っぽいことはできると思うし,逆もまたしかりです.
具体例を挙げるなら,例えばデータベースシステムみたいな科目があったとします.
coinsではデータベースの構造(B Treeで〜〜)みたいな話とか,第二正規形が...みたいな話とかが中心だと思われます.
一方mastでは,もちろん上のような話もありますが,それを踏まえた上で,実際にデータベース設計してついでにwebアプリケーションを作ってみよう!!みたいな流れになります.これが決定的な差だなぁと思います.
勉強内容以外の違いは,ワイワイしてるというか横のつながりが強そうのはmastの方な気がしてcoinsなんか横のつながりがうすそう(偏見),それもまた高専の雰囲気に近いなぁと思ったりしてます.
大学の授業スタイルと高専の授業スタイル
大学の授業は基本的にスライドベースで進んでいきます.資料は適当なサービスの上で公開されるので各自ダウンロードするなり,印刷するなり適当にします.
出席も高専みたいに名前呼ばれるわけではなく,PIN式なので楽です.
また,PCを普通に開いて許されるので適当にググりながら授業聞いたり,気になった部分をプログラム書いたりメモったり,Twitterで授業を実況したりできます.プログラミングをする内職がはかどります.
大学に入ると授業がつらいと編入する前は聞いたこともありましたが,特にそうつらいと思った科目は今のところ無いです.ただ,mastはものを作ってアウトプットすることそのものが課題になることも多いので,そういう時は計算機室に深夜2時とかでも人がたくさんいることもあります.
レポートも高専のときのように理不尽に手書きを強要されることは無いので楽です.TeXつかえるので字が汚い私は非常にありがたいです.もちろん4bitCPUの回路図を手書きさせられたり,百数十点もある実験データを手でプロットさせられ,それを結ぶ曲線を自在定規で引いたり,A0用紙に手書きで設計図をドラフターで書かされたりすることは無いです.
全部適切なツールを使ってよしなにすれば大丈夫です.
mastのうーんって思う点
扱っている範囲が広すぎてめちゃくちゃコンピュータサイエンスを究めたいみたいな人にとってはつらいかもしれません.coinsのほうが良いと思います.
最近の私
最近はもっぱら同じ三年次編入のたお くんを一方的にライバル視しながら,頑張っています.
彼は,mastらしい感じでいろいろ考え,実績を残しています(ついでにイケメンでずるい).
私はあんまり見た目のインパクトがあるような実績とか活動をできていないですが,
- とにかくプログラムを書く.
- インターンで技術を磨く(LINE,Fringe81,リブセンス,コロプラ) 記事
- コンテストに参加する(ISUCON,ICPC,MashUp Award) 記事 記事
- 高専のときの卒論が英訳されどっかの学会に行く(らしい)
また,最近は友人とAndroidアプリを作りました.よかったら入れてみてください.
みたいな地味な方向性で頑張っています.今後も私らしく私らしい戦い方をしてmastでいろんなことを学んで行きたいな!!と思ってます.
これからもみなさんよろしくお願いします.
まとめ
学びたいことがあるなら編入したほうが楽しい!!
ISUCON7-finalに参加しました
こんばんは.chigichan24です.
この前の土曜日,ISUCON7の本選に参加してきました.
チームはもちろん予選のときと変わらず,k5342 と euglena1215 です.
予選のエントリは,
前日
チームの人と5,6限の授業おなじだったので授業後にちょっとだけ話しました.まあぶっちゃけ,予選から何もしてなかった(別のことで忙しかったという言い訳)のでやばいねという話や.とりあえずredisでオンメモリ(笑)みたいなのはやめようとか,レギュレーションきちんと読もう(予選で帯域制限のことを考えられなかった)とかそこら辺を話しました.
土曜日の集合は朝早く,どう考えても起床でfailしそうだったので,ホテル( @tanishi345 宅)に泊まりました.
当日
インターンシップ以来のミライナタワー.一ヶ月新宿生活してたので,駅で迷うこともなく流れるようにオフィスへ行けました(天才)
久しぶりに来た(ISUCON本戦) (@ LINE株式会社 新宿オフィス in 新宿区, 東京都) https://t.co/D3i8bh0S7K
— 無能なので優しくしてください (@chigichan24) 2017年11月25日
去年同様,スーパーかっこいいカードが配られました.スーパーかっこいい.
壊さないようにしていきたい #isucon pic.twitter.com/vc8mPoTj5p
— k5342 (@k5342) 2017年11月25日
問題
(設定が)社長だったか,取締役だったか誰だったか忘れたけどまあ8時間後にリリースするから(笑)適当に高速化してくれ,みたいなおもしろ動画が流れた後詳細の説明がありました.
クッキークリッカーを複数人でやるみたいなゲームの高速化でした.その複数人でできるルームは複数個作られるといった感じでした.
コードもなにも読んでいないときの印象はwebsocket周りの高速化ゲーなのかなぁと思ったりしてました.
サーバーは4台構成でした.
やったこと
なにもできなかった......
というと,あれなんですが取り敢えずDBの設定見たりnginxの設定を見ても明らかに問題のある箇所が少ない.というか,DBとか複数カラムでPrimaryKeyになってて他のカラムはほぼinsert時にしか使わないみたいな感じになってるお陰でindexも貼れないし,nginxも一応静的コンテンツをキャッシュしたりしたけど,なにも変わらなくてなるほど,これはアプリケーションの改変ゲーか!?!?みたいになりました.インフラの仕事ほぼゼロやんけ....
インフラの仕事が無くなると k5342 パワーが使えないので悲しい事になりました.それでも途中までは彼にいい感じにチューニングしてもらって,スコアが7000前後に安定するようにしてもらいました.
一方私はいろいろ眺めていたら,m_itemsなるtableがDBに置いとく必要もなさそうだったので,全部オンメモリ上に吐けそうと気がついたので,euglena に投げました.
なんやかんやしていたら(まじで記憶がない),m_itemsの移植に失敗してつらそうだったので,取り敢えず放置して,一番重そうな calc_status
を倒そうと話し出しました.
こいつは total_milli_isu
と total_power
という2つの値を計算しているのですが,差分で計算できそうなのにいちいちはじめの状態から再計算していて頭が悪そうだったので差分で計算できるようにしようと話しました. 0.5[sec]ごとに処理が走るくせに,こんな激重っぽいやつが動いていたら出るスコアも出ねぇよ(名推理)みたいな気持ちでした.これをeuglenaに投げました.
一方私は,1000[ms]先の状態をシミュレートして未来の状態のタイムスタンプを生やしてjsonをぶん投げるという部分が,1msごとにイベントが起きるか判定して,このjsonを作っていたのですが,これは明らかに頭が悪くて,イベントごとに処理できるように書き換えるのをやりました.
まあ,ところがこいつらを改変しようとするといろんなところの依存がすごすぎて回収不可能(死亡)みたいになりました.
最後の30分くらいでk5がサクッとdiff_baseで一部を移植していたので,早いとこ彼に投げればよかったとなりました.
最後は例のごとく再起動テストをしてみたり,変な落ち方をしないか確認したりしてました.
で,最後の数分はスコアガチャをしてました.スコアが全然上がらなくて4000点くらいを叩き出していて,これは初期実装投げるほうがスコアが高いやんけという悲しい気持ちになりながら,ガチャガチャしてましたがタイムアップ,maxは9800くらいだったのに,最終スコア4000位でフィニッシュしました.
完全にお通夜状態でした.終了直後のみんなのツイート
はい.壊れた #isucon
— 無能なので優しくしてください (@chigichan24) 2017年11月25日
何もしちょらんのに壊れたとかいうふざけたチーム名でやってたんですが,本当に何もしてないのにスコアが地底に落ちたので報告します. #isucon
— k5342 (@k5342) 2017年11月25日
弁当おいしかった #isucon
— てっぺー (@euglena1215) 2017年11月25日
解説 & 懇親会
作問の方からの講評を聞きました.「最初のステップとしてルームをポートで分けて処理を分散するこれは皆さんやりましたよね?」とか言っていて完全にお気持ちになりました.なにそれ...このステップを越えると私達が戦っていたcalc_state
をどうにかする話になり,さらに進むとBigInt
との戦いになったらしい.やべぇ何もできてない.
懇親会は,あんまり他のチームと喋れなかったのですが,インターンシップで一緒だった人を発見して適当にお話したり,優勝チームが何やったか聞いたり,作問の方が他の人と喋っているのを聞いてはぇええとなったり,W社の方と少しお話したりしました.
そうこうしていると,全チームのスコアが出ました.下から自分のチームの名前を探しているとなかなか見つからないので,あれっってなっていたら,19位にいました.普通に惨敗なんですが,ビリだと思っていたのでなんか嬉しかったです.救われた気分でした.
全体だと19位,学生だと8位みたいです.
予選だと全体29位,学生11位だったので若干上がっている..
反省
反省点は大量にあります.実装担当だったはずなのに何もできなかったのがただただ悔しいです.プログラミングやってますと公言できるように精進します.しばらくはプログラミングやったことありませんって言うか....
感謝
何はともあれ,まずチームを組んでくれた k5342 君と euglena1215 君ありがとう!!!二人のやっていることをタダぼーっと椅子に座ってたらいつの間にか本選まで行けてました.
そして,作問をしてくださったKLabさん,サーバー提供のさくらインターネットさん,会場提供のLINEさんありがとうございました.とってもとっても楽しいISUCON7でした.
流石に去年よりはまともになったので,次はもっとまともになってISUCON8に臨む(あわよくばまた二人とチームを組みたいね)
最後に
今回のおもしろPR
ってだいたいchigichan24がふざけてるだけやんけ.....