後輩へのメッセージ

2005年度「プログラミング・同演習」と「データ構造とアルゴリズム論・同演習」を履修した学生の講義・演習に関する感想と、次年度以降の受講生へのアドバイスを以下にまとめました。受講に際しての参考にして下さい。

1.講義・演習はどんな風に進むの?

  1. このプログラミングの講義は、毎回講義が始まるとプリントを配られ、その内容についての説明を先生からうけ、それを踏まえたうえで自分たちでプリントを読み進めながらプログラムを作っていきます。
  2. 講義内容は教科書やプリントの内容に沿っていて、先生の説明を10分前後聞いてあとは課題をこなしていく感じです。
  3.  講義内容は、前期は基礎的なプログラミングの仕方、後期はそれを応用したアルゴリズムの作成です。演習の進め方は、前期ではほとんどテキストに沿って自分で読み、理解し作成するのが主でしたが、後期ではその週ごとに課題が与えられて、それについての重要な部分は森田先生が解説してくれました。
  4. 「プログラミング・同演習」および「データ構造とアルゴリズム論・同演習」は、講義のはじめに先生がその日の講義の内容をパワーポイントで説明してくれるのを聞きながら、自分で教科書をよく読んで内容を理解して課題をやらなければならない講義だったと思います。
  5. データ構造とアルゴリズム論の講義内容については前期のプログラミングとそれほど変わりはありません。与えられた課題をSAやTAに助けられながらやっていくというスタイルです。ただ、アルゴリズム論は授業毎にプリントが配られるのでその日の到達目標が明確なので次に課題を残さないようにしましょう。

2.1年間受講した感想は?

  1. この講義の感想は、最初の頃プログラミングが自分で出来ると妙に嬉しく感じました。しかし講義が進むにつれてどんどん内容が複雑になっていき、SAに教えてもらってもなかなか出来ないものもありました。それでもすごく自分の力になったと思うし、もっと難しいものもやってみたいという気持ちになりました。この気持ちを大事にこれからのことにも取り組んでいきたいと思います。
  2. この授業はプログラムを作って完成した時に達成感を味わえると思います。だから、何かを作ってみたいと思う人にはお勧めかもしれません。約1年やってきて、自分ではどのくらい理解しているかわかりませんが、楽しく授業を過ごせたと思います。それにソースなどが完成してきちんと実行できた時はうれしかったです。約1年間お世話になりました。
  3. 自分としては、今年身に付けたものを今後も生かせるように、プログラミング系の講義を受けたり、SAなど教える側に参加したりしたいと思っています。SAといえば、この講義はSAの人にとてもお世話になったので、自分もそんな風に教えられるようにしたいです。
  4. 僕は、2年生のときに「プログラミング・同演習」は受講したのですが、「データ構造とアルゴリズム論・同演習」は受講していませんでした。1年ぶりにJavaを使うので、忘れていることも多く最初はとても戸惑っていました。しかし、この講義は教科書とプリントを丁寧に読んでいくことによってほとんどの問題を解けるのでとてもやりやすかったように感じます。どうしても自分では解決できない問題があってもTA、SAの方に教えていただけたので理解することができました。たぶん、少しのやる気があればとても面白い講義だと思います。
  5. データ構造とアルゴリズム論・同演習」を受け、プリントとよく読み説明をよく聞かないと理解できない授業だと思った。それに毎時間出される課題をその日にやっておかないと次の時間とても大変になり、困る。でもこの授業のいいところは、わからないところがあればSAがとても親切に教えてくれ、助けてくれることだ。また、応用課題を解くと成績にプラスされることだ。このことによりテストの点数が悪くても、応用課題を解けばカバーできることだ。  全体的にこの授業は自分がどれだけ理解しているかだと思った。
  6. この講義は、結構楽しかったです。自分でプログラミングをしてそれが実行できたとき、達成感がありました。
  7. 私がデータ構造とアルゴリズム論・同演習を受けての感想は、単純に「おもしろい」これに尽きます。私は、プログラミングとアルゴリズムを同じ学年で履修しなかったため、講義の始まりはプログラムの作成の仕方を思い出せずにてんてこまいでした。次第に作成方法も思い出すことができ、講義を楽しめるようになりました。講義はプログラミング同様、プログラムの作成もあるのですが、プログラムを論理的に学ぶほうが多かった気がします。プログラミングを好きだった人は簡単に単位取得できると思います。講義の進め方としては、きちんとプリントを読んでから課題作成に取り組んだほうがいいでしょう。そうしないと理解しかねる面も多々あると思うので。
  8. 私が1年間講義を受けて感じたことはこの講義をうけてもまじめに理解しようとする気がないと受けていても難しいだけで退屈な講義だということです。でも、その逆を言えば理解する気があるのならば奥が深いという部分で講義を受けていて楽しい講義になったと思います。私は最初まじめに受ける気がなかったのですが。途中からやばいと思うようになってまじめに講義を受け、家でも予習をするようになりました。家出の予習をしておけば講義のときにスムーズに先生の話を理解できるしプログラムの作成もスムーズになります。今となってはこの講義をとってよかったと思っています。

3.内容は難しい?初心者でも大丈夫? 

  1. プログラミング・同演習およびデータ構造とアルゴリズム論・同演習の授業を受けて、授業内容は実に解りやすくできていたと思います。私はプログラミングの授業をはじめて受けてみたけれど最初はよく理解しようとしないでただ、プログラムを打つという作業を繰り返していたが、途中からそれだけでは解けない問題が出てきてプログラムを理解しようとしました。実際テキストを見ればすべてが書いてあり、悩むところがないくらいじっくりかかれてありました。プリントも実にわかりやすかったです。
    この授業は休まずにちゃんとこれば間違いなく単位が習得でき、プログラミングの知識もつきます。SAの教え方も丁寧で解らなかったら解るまできっちり教えてくれたので、やる気さえあれば、この授業は楽しみながらできます。 最初はつまらないかもしれませんが、根気よくやっていれば必ず実力もつく授業です。
  2. プログラム作成というと難しいイメージがあると思います。この講義を受けることによって、そのイメージが変わると思います。講義を教える先生の分かりやすい説明、プリントにはプログラム作成を簡単にできるように説明とやり方が用意されていて、少しでも興味のある人には是非この講義を受けることをおすすめします。わかりにくくなったらSAやTAが詳しく教えてくれるので、プログラムに対する理解度が向上していくことは間違いなしだと思います。プログラム作成をしたことがある人でも初心を忘れないための講義としておすすめいたします。「プログラミング・同演習」では初心、初歩的なことを叩き込まれ、「データ構造とアルゴリズム論・同演習」ではその応用を自ら考えながらやることによって、その後に自分で学習する後押しをしてくれる講義であると感じました。
  3. この講義は最初、単位を取れないものだと覚悟した。それは、最初の講義で早くも難しいという先入観を抱いたからです。しかしそれは、講義を受けていくうちに消え去っていきます。なぜなら、先生の話+プリントをよく読んで取り組んでいけばすぐに解けていくからです。難しいと思う先入観はそれまで自分が聞いたことのない難しそうな単語、難解そうなプログラムを見ることによって生まれ出てくるもので、それを説明している先生やプリントの文章に目を向ければどんどん自分の中からこの講義への恐怖感が中和されていくのを感じるはずです。新しいものを経験する時は、誰でも最初は怖いものです。でもその恐怖は、本当はそこにはなく、勇気を出して前に進めば簡単に越えてけるのです。プラモデルを組み立てるとき、組み立て説明書があるのとないのでは、進み具合がとても違ってきますよね。講義もこれと同じで、単に難しそうな単語はその単語の説明が書かれたプリントを読めば、その単語の意味が分かって難しいと感じることもなくなるし、プログラムだって出来上がるまでの経緯を先生やプリントの説明に目を向ければ、全然簡単なものなのだと実感できるはずです。このことを頭に入れてこれからも新しいものにどんどんトライしていって欲しいです。
  4. 最初、この講義のテキストをもらった時は一見難しくて、履修しなきゃ良かったと思いました。でも、先生がスクリーンでわかりやすくゆっくり説明してくれるし、テキストにも詳しく進め方が載っていて思っていたより理解する事ができました。SAの方もわかるまでしっかり教えてくれるので、課題がわからなくても途中で投げ出さないで落ち着いてテキストを読めば大丈夫だと思いました。何よりも講義を休まないことが大事です!
  5. この講義は先生の話をよく聞いてプリントをよく読めば決して難しくない授業だと思います。特に基礎課題はプリントどおりにやればほとんど簡単に出来ると思います。応用課題も大体は基礎課題を理解すればその名のとおり応用なので数学などと同じように基礎の部分をうまく使えば問題なく出来ると思います。
  6. 私はこの講義を通じて初めてプログラミングおよびアルゴリズムというものを学びました。当たり前のことだと思うが、最初のころはまだ誰にでもできるような内容でした、しかし、2年次に履修したアルゴリズムの内容になると大変なものでした。プログラミングの内容を理解していることがアルゴリズムを履修する際に大前提となると思いました。ただ講義中に配布されるプリントを適当にやっているようでは、本当に理解したことにはならないので、私の経験からしてしっかりと内容を理解しなければ本当の意味で理解できず、テストのときなどに困ることになるのでそこらへんは注意しといたほうがいいと思います。しっかりとこつこつやっていればなんの苦もなく課題やテストをこなせると思います。
     この講義は大変な分プログラムが完成したときは、達成感でいっぱいです!俺・・・プログラムしてるよ〜みたいな気分です。せっかく社会情報学部にはいったのですから、ぜひこの講義を履修することをおすすめします!
  7. この講義は私としてはとてもやりがいがあり、充実した時間であったと私は感じました。時には難しい問題もありますが、友達と相談したり、SAなどに聞くことをしておけばわからないことはないと思います。 
  8. この講義の内容は教科書やプリントに書いてあることに沿って演習課題をこなしていきます。やることは大体教科書の内容を読めば理解できるようになっています。
     最初の段階では難しいかも知れませんが回数を重ねてしだいにわかっていくと思うのであせらずじっくりやればそんなに難しくはないと思います。それでもわからないときはSAさんやTAさんに聞くなりすればわからない箇所でもわかりやすく教えてくれると思うのでしっかり聞いていれば理解できると思います。
  9. プログラミング・データ構造とアルゴリズム論は、基本的には、授業で配布されるテキストやプリントに載っている説明文や図をしっかり読み、理解することが出来れば基礎課題は問題なく解くことが出来ると思います。テストに出題される問題も基礎課題を少し変えた様な問題がほとんどなので苦労はしないと思います。応用課題は難しい問題が多いですが困ったときはSAの人が助けてくれるので大丈夫です。ちゃんと努力をするひとならばAかBはとることが出来る授業です。
  10. この講義は、配られる教科書やプリントを読めば必ず自分で理解できるようになっています。最初のうちは、単語を打つのが面倒だったり色々な定義の意味がわからなくて混乱するかもしれません。しかし、どんどん課題を進めるうちにどうすればいいのか自分でわかってきます。 普段自分たちが使っている、Webページやアプリケーションが全てプログラミングで出来ていることも実感できるでしょう。

4.受講生へのアドバイス

総合

A.自分で考えることの大切さ

  1. なかなか理解するのに難しい問題もありますが、まずは自分で考えてやってみることが大事です。どうしてもわからない場合は友達やSAなどに答えだけではなく全体の流れや、「なぜこのようになるのか」などを納得のいくまで聞く方がいいと思います。テストは出題範囲はもちろんですが、全体を通して理解していない部分を無くし、他人に説明できるくらい理解することが大事だと思います。とにかくこの講義は欠席せずにその日の課題を提出し内容を理解できれば、間違いなく単位は取れると思います。
  2. アドバイスとしては、分からなくなってもすぐSAに聞かないで、とりあえず自分で考えてみることが大事だと思います。
  3. この講義を楽しむコツは、何でもすぐSAに聞くのではなく自分で理解して解いていくことです。
  4. 自分でプリントの内容をよく理解して取り組むことが大切です。他にも応用課題は成績にプラスになるので出来るだけ全部取り組んで見ましょう。

B.テキスト・プリントを良く読むこと

  1. 「プログラミング・同演習」および「データ構造とアルゴリズム論・同演習」を履修して思ったことは、まず最初に、教科書やプリントをよく読んでから演習に取り掛かることが大切であると思った。何も読まずにいきなり演習をやろうとしても、まったくわからないし、結局は説明分を読んでいかないと手が付けられない、という状況になってしまった。なので、演習には、教科書やプリントの説明文をきちんと読んでからでないと、問題も解けないし、理解も全然できないと実感した。そして、理解したことや答えをちゃんと教科書やプリントにメモをしたりすることも大切だと思った。きちんと理解しながら演習ができたら、テストも半分は確実にできると思う。
  2. まず自分がこの講義を受けて思ったことは、課題を早く終わらせようとして、先生の説明やプリントの内容を十分に理解せずに課題に取り組むと、理解もせずに基礎課題を終わらせることができるかもしれませんが、応用課題やテストの時にものすごく困ることになります。なので、先生の説明やプリントをゆっくり読み進めることをおすすめします。なによりこの講義は理解できると、プログラムを作るのも楽しくなりますが、理解できないと課題を終わらせることすらできないので、その点に十分注意して課題をこなしていったほうがよいです。
  3. もう少し課題以外の説明部分も読んでおくべきだったかもしれません。しかし演習課題をはやくやらなければとあせってしまい、結局いつも課題部分を中心に読むだけになってしまいました。そのせいでテストは悪い点数ばかりでした。ただ演習課題をおわらせるだけでは何も身につかず自分のためにならないと痛感しました。来年度この授業を受ける人はこのようなことがないように、プリント類は理解できるまですみからすみまでよむことをおすすめしたいです。
  4. 「プログラミング・同演習」および「データ構造とアルゴリズム論・同演習」を受講するにあたってのアドバイスは「面倒でも説明をよく読むこと!!」であると思う。あと、「「プログラミング・同演習」はまだ理解しやすかったが、「データ構造とアルゴリズム論・同演習」ではぐっとレベルが上がるので理解するのを頑張ってほしい。」ということをアドバイスしたいと思う。

C.講義の説明をよく聞くこと

  1. 最初の講義内容はしっかりと聞いておいて方が後々ためになります。自分の演習の進め方は、とりあえず問題に取り掛かり、作成しながらやり方を読んでいって進めるという方法でやりました。
  2. 受講に際してのアドバイスは、とにかく、後期の森田先生の説明をしっかり聞くことです。そうすることで自分の理解度が上がって講義が楽しくなるし、なによりテストでいい点が取れます。後は課題をためないことかな…。
  3. この授業を受けるにあたって注意することは当たり前ですが先生の話を聞くこと、しっかり出席することが大事だと思います。自分は最初にあまり出席しなかったため後半苦労しました。やはり何事も日々のつみかせねが大事でありますね

D.毎週、着実に取り組むこと

  1. 講義を受けるに当たり、最も重要なアドバイスは「課題を溜めない」ということに尽きます。講義内容は授業の最初に説明されますが、それだけで内容を全て理解できる人はあまりいません。そこでSAやTAの人たちに積極的に質問し、分からない部分を無くしていきましょう。恥ずかしがったり面倒くさがったりでこれを怠ると、授業時間内に課題が終わらずためこむことになります。これを繰り返すことで、チェックを受けてない課題の負債がたまっていくことになってしまいます。課題をためると、プリントの書き込みや内容の理解が足りず、テストで点を取ることが難しくなるどころか、最悪単位不認定という状況になります。
    そんな訳で、これからアルゴリズム論の授業を受ける人たちはなるべく課題をためないように心がけるようにしましょう。
  2. 不用意に休まないことを勧めます。休むと休んだ分の課題と次にやる課題との板ばさみになり大変厳しい状況になりますので、気をつけてください。早めに終わりたい方は予習をしておけば、課題も遅れることもなく、楽が出来るので特にお勧めします。とにかくあきらめずにやることが、この講義の必勝法です。がんばってください!
  3. 基礎課題は課題が出た日にやってしまう方がいいと思います。出来なかった場合は家に帰ってから必ずやっておくと、次週からの新しい課題に取り組む時も楽にやっていけると思います。応用よりも、まず基礎課題を早めに終わらすことがいいのではないかと思います。応用は基礎が出来ればある程度は出来ると思います。課題をやるにあたって、やっぱりプリントや教科書をよく読むことが必要だと思います。あと、ソースのうち間違いや、括弧のつけ間違いなどのケアレスミスにも気を付けた方がいいと思います。あと、行き詰ったときや、考えてもわからない時はSAさんや、TAさん、先生や友達に聞いてみたりするのも早く解決するためには必要ではないでしょうか。

E.その他

  1. 自分は「プログラミング・同演習」、「データ構造とアルゴリズム論・同演習」どちらも履修しました。もし、来年履修する人は、自分のように、両方履修するほうが学力の向上につながると思います。この講義はどちらも、自分自身で進めていくものなので、自宅等で学習可能な人は、とてもいいペースで講義を進められると思います。自分も、若干ではあるが、そのおかげで、スムーズに進めていけたと思います。自分としては、「プログラミング・同演習」での、基礎以外の応用課題(範囲外の章の)が残って、それに手を付けられていないため、これからでもやりたいと思っているが、忙しくなったりするので、前期の講義中や、講義が終わってすぐの夏休みなどにやることを勧めます。
  2. 課題として出されるプリントは、よく読めば理解が出来るように、段階を踏んで作られています。 パッと見で諦めずに一つずつ頭を使って読み解いていってほしいです。 コツとしてはプログラミング用に頭の使い方を切り替えること。古文を現代国語の感覚で考えない方が良いのに似ています。 使っているのはパソコンの言語であって、人間の言語ではありません。しかし、その言語を作り出しのもまた人間なのですからプログラミング用の考え方にさえ切り替えることが出来れば理解できるように作られていると思います。  諦めずに粘り強く頑張ってくれれば幸いです。