私の勉強のやり方

私の勉強のやり方

 プログラミングの勉強を始めようとするとき、職場にその環境が無いとすればプログラミングの学校に行くか独学かということになります。

学校の場合はそこが準備するテキストとそのカリキュラムに沿って勉強することになりますので、特段問題はないと思います。

独学の場合は少し事情が異なります。一般的には最初に自分が学ぼうとする本、つまり解説書(技術書)を準備しますよね。それを読み進めながら自分のものにしていくわけです。

 これからお話ししていくことは、多くの皆さんもそうなのか、私が特殊(異常)なのかはわかりません。
とにかく私が「Microsoft ACCESS」を学んだときのやり方をお話しします。

Basicの基礎を学んだことは「私がプログラミングを始めたきっかけ」でお話ししました。

その後、仕事関連で種々の業務処理をパソコンで思いのままできないものかと漠然とながら思うようになりました。
いろいろ調べてみるうちに「データベース」そして「Accsess」の存在を知り、これが「Microsoft ACCESS」のソフト本体と関連の解説書を購入し勉強を始めるきっかけとなりました。

それまでは Basic といっても基礎中の基礎くらいの知識だけはありました。しかしデータベースとは何か、Access がどんなソフトなのか全く知りませんでした。

あるAccsess関連の解説書を購入し、その 1ページから勉強を開始しました。
購入した解説書は、
「毎月の売り上げを入力し、月末締めで顧客宛に請求書を作成する」
というモデルでACCESSを解説する内容のものでした。
本の厚さは約2.5センチほど。そこそこのボリュームのある本でした。

ところがここで大きな壁にぶつかりました。
30ページも進まないうちに、難解な言葉に遭遇し始めました。初めての分野ですから当然といえば当然かもしれませんが、次から次へと出現するわけです。
わからないまま進もうとしても前にはいけません。そこでその難解な言葉を調べようとすると、そこにもまた難解な言葉の出現です。それを調べようとすると、またも・・・

そうこうするうちに、今自分はこの本のどこをやっているのか、前後の関連性すらわからなくなる始末。こうなってはもう先にはすすめません。
一体自分は何をやっているのだろう?? 迷い子状態です。
そして・・・・  ギブアップ。

Access とはこれほど難解なのか・・
Excel に比べ Access をやる人が少ないのは当然だわな・・

勝手な理由をつけて自分のギブアップを正当化してました。

しかし業務処理をコンピューターを使って効率化したいという願望だけは強くありましたので再挑戦。されどギブアップ。少し時間をおいて再度挑戦。しかし・・・ 数回続きました。

確か 3年ほどこうしたことが続いたと思います。
テキストが悪いからだと、テキストにした本を他のものに替えること 10冊近くとなりました。

「本のせいではなくお前の能力の問題?」
と自分に落ち込むことも度々でした。

 いつまでも同じ挑戦をしたところで結果は同じではないか。何かうまくいく方法はないか。じっくり考えてみました。

そして出した結論が

1) コンピューターで効率化したい仕事について、その流れを詳しく図式化すること。
2) その流れに沿って、一つ一つを Access でプログラミングすること

Access自体を知らないのに、プログラミングそのものを知らないのに、おかしな話だと思いませんか。

そうなんです。おかしな話なんです。
しかしこうすることによって、私にとって難解だったAccess をどうにか我が物にすることができました。

 これを読まれているあなたが、車の営業マンだと仮定して考えてみてください。

まず新規のお客様に車の販売をした場合、

1)お客様の氏名・住所・電話番号等のお客様台帳への記入
2)お客様の車名・新車/中古車の区分・年式・次回車検日等の車種台帳の作成
3)50音順でのお客様検索(訪問等での利用のため)
4)車検ご案内リスト(案内葉書発送のため)

などのプログラミングしたい業務を書き出します。
そしてもう一つ、上記の各処理を行うためのメインのメニュー画面が必要になります。

こうしてこれら一つ一つをプログラミングしていくわけです。
勿論、最初はAccessについて全く知らない状態ですから「メニュー画面」だけでも、

1. このメニュー画面はAccessのどこで作るのだろう。
2. ボタンはどうやって作るのだろう。
3. 「お客様台帳記入」や「車種台帳作成」というタイトルはどうやって作るのだろう
4. ボタンを押してその各処理画面に移る方法はどうやるのだろう

こうした様々な疑問が生じます。

これらを順番に一つ一つ調べながら、実際に作っていくわけです。
実際に仕事で使うための Access データベースをこうして調べながら知識ゼロの状態から作るわけです。

そのために「Access の解説書」の該当するであろうページを開いて調べるわけですね。
つまり、解説書は最初の 1ページから読むようなことはしなくて、「辞書」として使うわけです。

ここがポイントです。

プログラミングの解説書は、「小説」のように第1章から順番に読むことはかえって混乱と挫折の招く要因となりしない方がよいと、今では断言できます。

つまりわからないところが書かれてそうなところを開いて答えを探す「辞書」としての使い方に徹するのです。
その時、難しい理論説明がある時、理解できればそれはそれでOKですが、理解できなければ、とりあえずコピペでも構わないですから、答えを見つけて希望通りの動きの実現に徹するのです。

理論説明はその時わからなくても、後日知識が増えたときに「ああ、こういうことだったのか」と理解できる日が必ずやってきます。

最初は確かに大変です。
子供に靴の右左の違いを、そして履き方、靴紐の結び方、足の動かし方、歩き方・・と一つ一つを教えるようなものですから。

この大変そうな作業も日を追うごとにスピードアップします。
なぜなら基礎の部分が理解されてくるので、疑問の数が減ってくるからです。

 ここでもう一つ大切なことがあります。

わからないことを解説書で調べるけど答えが見つからないとき、わからないまま次へと進まないことです。

他の解説書で調べてみる。
ネットでググってみる。
質問サイトに質問してみる。

あらゆる方法を使って答えを見つけるのです。

私の場合、手持ちの解説書で解決しない時は図書館を利用しました。
そのうちにインターネットの利用が大きな助けとなりました。

1日で答えが見つからないかもしれません。
4 日 5日かかるかもしれません。
それでも答えを見つけるのです。

最初のうちは、考える仕事の処理自体が基本的なこと中心になるので Access解説書でほとんどの答えが見つかります。
一定の実力が付くと欲が出はじめ、考える業務処理が次第に高度なものになってくる傾向があります。その段階では次なる勉強が求められますが、最初の頃は全く気にしなくて大丈夫です。

そうやって一つ一つの答えを見つけていくことが、プログラミングの大きなスキルアップにつながります。

そうして曲がりなりにも希望するソフトが出来上がったとき、大きな喜びを感じるはずです。

だから再度申しますが、

最初から自分のやりたいプログラミングに挑戦する。
その為にプログラミングの本は「小説」のような読み方はしない。
わからないことを調べる「辞書」としても使い方に徹する。

これがポイントです。