はてなキーワード: 離散数学とは
現在、某国立大で修士課程の2年生でFPGAの研究をやってます。
就職は、東証一部のB to Bの産業計測機器メーカーに決まりました。
こんな私ですが、2年前までは理学部生物学科でピペット片手に植物を育てていました。
はじめは、学部3年の時、多くの生物学科の学生たちと同じように、生物学科で勉強をし怠惰な大学生活を送っていました。
生物系の就職がヤバイと気付いたのは、3年生の夏の合同説明会の時。
「去年には一人いた。化学の人に混じってとても優秀だったよ。」
「生物系は。。。。」
どうも回答が煮え切らない。
電機メーカーでは、あまり良い答えが聞けないし、食品メーカーでは「採用は毎年あるよ。」と言ってくれるのだが
倍率が高いことは話に聞いて良く知っていた。
そもそも、理系向け合同説明会となっていても、
少し広げて情報系と化学系ということが何度も説明会に行くうちに透けて見えてきていた。
文系就職という手もあったのだが、やはり技術職で仕事に就きたかったこともあり
ちょうど、2ちゃんで専攻ロンダ関連のスレッドが出てきていたこともあり、専攻ロンダという方法を知り
もちろん、まったく違う専攻に切り替えるということに対して不安は大きかったが
思い切ってみることにした。
3年の秋から専攻ロンダに比較的、入試科目が少ない独立研究科の大学院を中心に回った。
研究室のホームページからメールを送り、教授にアポを取り見学させてもらう。
JAISTやNAISTは他大生向けへの講義があり、専攻ロンダにやさしいらしい。
院試の問題は大学の購買でしか買うことができない場合が多く、自分の受けた大学もそうであった。
院試の勉強は3年の2月から始めて、6月の受験までに間に合わせた。
その結果、NAIST落ち、JAIST合格、旧帝大の独立研究科(情報系)合格という結果だった。
キャンパスゼミで基礎をおさらいしてマグロウヒル大学演習で応用問題を詰める。
マグロウヒル大学演習シリーズは良書で、勉強したことが無い科目でも読めばわかるようになっている。
専門科目についてであるが、離散数学はマグロウヒル大学演習で勉強する。
あともう一つの専門科目であるが、電気回路や電子回路は等価回路など一人では理解できない点が多く、パスし
そして、合格発表に番号を見つけた。
入学後は、FPGAの研究室に入り、朝から晩までコードと「VHDLによるハードウェア設計入門」の本に
向き合いコードを書く日々が続く。
最初は、学部生よりもプログラミングが分からず苦労するが3か月も必死になるうちに書けるようになってくる。
就職活動では、ハードウェア記述言語やっているというと、バイオの時とは反応が違う。
もちろん、面接では「どうして専門を変えたのか」
と聞かれるのだが、「生物について知るうちにそれを工学的に応用することに興味をもった」
で乗り切る。
不況であったが、エントリーシート20枚、面接7社ほどで内定が出た。
NAISTとか、JAISTとか、九工大の生命体工学とか、専門を最初から教えるシステムがあるらしいし
俺よりも苦労しなくて済むと思う。
もちろん、苦労はするのだが苦労が報われないピペドよりもぜんぜんマシ。
生物系の奴に限らず、数学科とか理論物理やってるやつとか数学センスはすぐれてるだろうし特にお勧めしておく。
不況なんだし、生き残りのために多くの手段を考え
手順を考えて、その手順を書くだけ。
言語もあらかじめ決められた手順に沿って解析されて実行されるから、オートマトンやBNF記法、構文木などの仕組みを一通り覚えてどういう機構でチューリングマシンが原理的に実行可能なコードへと落とされるかを理解すれば言語自体も覚えるのなんてそんなに難しくない。
手順を考えるなんて、人間が生活する上でいつもやっていること。
プログラムを走らせるためのデータ構造を考えるのに苦労するという話も聞くけど、プリミティブな要素が数値、型へのリファレンス値しかないんだから大体は離散数学で使うグラフの初歩的な知識があれば事足りる。GoFのデザインパターンなんてまさにそう。
programmingとは、「pro(前もって) + gram(理論を) + -ing(書いておく)」
UIを組んでいて、細かい動作をifの嵐で書き連ねていても事前に起こる事に対して記述をしているのだからプログラミングだし、
何かを自動で処理するソフトウェアを書いても「programの塊」なんだから、結局プログラミングになる。
そこに、勉強不足がどの程度あるかは関係がない。
それにプログラムが好きな人と言っても既存の知識だけで満足してモノをリリースし続けている人かもしれないし、
最新の離散数学の研究結果を見るだけで具体的なコーディングは殆どしない人かもしれない。
好きな様にやったらいいよ。
書いてあるし。離散数学。
数学と看做されてない?
数学でもあり計算機科学(CS)でもあるとも見做しているけど。
余談だけど世の中には専門に拘る人がいて自分と異なる専門を攻撃する人もいる。
転科を勧めたり、学際領域とか聞こえはいいけど理解がないと袋叩きに合う。
基礎体力を養う意味ではここら辺がいいと思うんですがどうでしょう。
これがわかるとCLRやJVMのインフラ部分もわかりますし、組み込み方面にも強くなります。
C++はマルチパラダイム言語であり、これをひとつやれば構造化プログラミングとオブジェクト指向プログラミングの両方がわかります。
C++はCのほぼ上位互換言語ですので(正しくはC99が制定されるまでは)、プレーンなCしかやらない理由はありません。
嫌なとこも多くある言語で(どうしてEffective C++シリーズやExceptional C++シリーズみたいな書籍が多くでてるか考えるといいよ)、メモリ管理も手動ですが(これは半分嘘。RAIIがあるから半分自動。GCがないから半分手動)、逆に細かいとこに気を配る態度を養うには最適です。
Erlangで並列プログラミングをやるのもいいかもしれません。
Common LispかSchemeで怪しい(でも美しい)世界を爆走するのもいいかもしれません。
これだけやっとけばC#やJava、軽量言語の類はあっさりと料理できるでしょう。
あくまでもプログラミング言語についてはですからね。
おいおい、そんなマイナーなFラン大学知らねーよって感じだよなwww
でも、なんかこの辺りのエントリーが面白かったので、オレも書いてみようと思う。
http://anond.hatelabo.jp/20100217113611
http://anond.hatelabo.jp/20100218180915
合格おめでとう。(本当におめでたいの?w)東京情報大学は千葉の僻地にあるFラン大学だ。学科によっては男女比率は9:1だ。青春を送りたいならチャラい系のサークルに入ることをオススメする。女子に興味がなくヲタクなら、あそこは楽園だろう。
また、あの大学はぼっちにも優しい仕様になっている。選択する講義や研究室によってはチームでの作業にもなるが問題ない。ぼっちを許可してくれる講義もあるし、どうしてもチームである必要があれば、講師が勝手に決めてくれることが多い。だから、ぼっちでも十分に攻略可能だ。真面目に講義に出て、ノートを取る能力があれば十分に卒業できる。ただし以下のアドバイスはよく読んで欲しい。
それとオレは一人暮らしの経験がないから、ここでは通学、単位と講義、教科書の買い方、昼食のとり方、サークルへの参加、留学生との距離感、研究室の住み方についてアドバイスする。
--------------------------------------------------------------------------------
①通学
大学は僻地にある。大抵のヤツは車かバスで通学することになる。千葉駅からバスに乗ると40分~1時間近くかかる。毎日が遠足だw暇をつぶせるものを用意しておくと良い。大学直通便も朝のみ運行しているから利用しろ。それとバスを利用するヤツはキャンバスライフっていう年間パスを購入しろ。「春先にしか買えない」がこれを買った方が得だ。車や原付で通学したいヤツは許可証が必要だからちゃんと取得しろよ。
単位計算は絶対にやっておけ。それと履修登録は期間が決まっていて、学内の指定されたPCからしか登録ができないから注意。卒業要件は学科、入学年度で若干違うからな。履修登録は混み合うと登録に失敗することがある。朝と夕方の時間帯を狙おう。当たり前だが登録し忘れたら半期を無駄にする。が、必修科目だけは自動で登録されるので、最悪それだけは単位取っておけ。
講義で落としやすいのは「英語」だけ。クラス分けテストで良い点数とると特別クラスに放り込まれるからなw英語はFランだけあって、中学レベルの英語力があれば難なくクリアできるが、毎年多くの学生(推薦組)が単位を落としている。単位落としても皆で落とせば怖くない。それに再履修は真面目に出席してれば、お情けで単位くれるから安心しろ。
一応、情報系の大学だからプログラミングに関連した講義が数多くある。1年次に履修することの多い「離散数学」は高校数学をやってきた人向けであって、数学嫌いの人間にとっては鬼門だ。どうしても数学やりたきゃ「プログラマの数学」を独習した方が良いw
試験も講義内容も簡単だけど、ぼっちの場合は真面目に講義出ろ。友達が居れば適当にやってても単位はちゃっかり取れる。要領よくやれよwww
③テキストの購入
1年次は糞真面目にテキストを買うヤツが多いが、この大学の講義に使われるテキストは糞が多い。名著や古典にはまず触れない。講師が執筆した書籍は「基本的」には買うな。特に哲学系の書籍だ。それは地雷だ。教科書ビジネスだからなwそれwww
中には試験に持ち込むために購入がオススメされるテキストもある。分からなけりゃ言われるままに全部買っておけ。
④昼食のとり方
学内にはデイリーヤマザキと学食がある。学外にはセブンイレブン、ローソン、ガスト、クリエイト(ドラッグストア)がある。一人飯をするなら、本館の6階、7階あたりで食べると良いだろう。人通りが少ないから気にならないし、何より便所で食うより良いだろ?クラブ棟の1階も良い。この大学は1年次からゼミに配属されるから、各ゼミ室で食べても良いだろう。教授や先輩も居るだろが、挨拶して初めて会うヤツには自己紹介すればOK、親しくなれば色々教えてもらえる。
⑤サークルへの参加
何年か前に強化指定部活というのが出来て、ガチで練習している部活もある。テニスは…どうだったかな?w
軽い気持ちでサークルに入りたければ、適当に皆で集まって遊ぶようなサークルで良いだろ。縦のつながりはゼミ室に入り浸ってれば嫌でも出来るから、他の大学ほどは気にならない。好きにしていい。基本はヲタクだらけの大学だから、自分を出せばすぐに友達はできる。ちなみに左翼、宗教のサークルはない…と思う。安心して良いぞwww
留学生がちらほら居る。だが気にしなくていい。あれらはそこに居るだけで、別に好意も無ければ害もない。ちょっと煩いのと、バスの乗り方のマナーが大陸風ってだけ。基本はスルーでいいぞw
⑦研究室の住み方
7号館のゼミ室には、毎日泊っているような変人が毎年、数名確認されている。期間限定のも居れば年中居るような主も存在する。そういう変人が居るゼミ室に1年次から配属された場合には、試しに泊ってみるといい。いい勉強になる。
研究という名目でゲームして泊っているヤツもいる。一人でゲーム作ったり、Webアプリをごりごり作ったり、ロボット動かして騒いでいるのも居る。だから話しかけてみるといい。時々、本当の変人に出会えると思う。
もっとも、どのゼミ室にも人間が快適に泊れるだけの設備があるわけでもないが、冷蔵庫と電子レンジは必ずある。エアコンも完備されているし、シャワーもクラブ棟と体育館にある。だから寝袋とダンボールがあれば、パイプ椅子を並べた簡易ベットを作って快適に過ごせる。
注意事項だが、大学に泊るにはゼミの担当官から許可を貰う必要がある。それと書類を庶務課に提出して、警備員に連絡する手間もある。大学に泊ってみたかったら、その辺りはゼミの人間に相談してみることだ。
⑧パソコンについて
学内のいたるところにLANポートがある、無線LANもとんでるからノートPCがあると便利だ。実習室も6つか7つぐらいあるので、PCには困らない。ゼミ室にはリースしたまま放置されているPCもあるので、頼めば使わせてもらえるかもしれない。それと学内にPCが捨てられていることもある。部品を集めてくれば自作も出来る。オレはそれで2台ほど作って鯖にしてた。一応、捨てられていることを確認してから拾えよ。
※大学が指定するノートPCは高いばっかりだから、自分で選んで買った方が良いぞ。ただしVineLinuxなどを自分で入れることになる。それも勉強だ。分からなければ詳しい教授に教えてもらいに行け。親しくなるチャンスだ。