勉強する上での心構え
・プログラミングは、スポーツを同じ。何度も繰り返すことが必要
・スポーツと同じと考えれば、挫折を防げる
・反射的にできるようになるには、数カ月かかる
・しっくりこなくてもプログラミングに向いていないわけではない
私は、プログラミングを大学生のときにかじりました。
私の出身大学にタイミングよくパソコン関連の学部ができました。そこで、プログラミング言語の講座が開かれていました。FORTRAN、COBOL、Cなどを少しずつ勉強しました。
卒業論文では、LISPという人工知能系の言語でプログラムを書きました。人工知能と言ってもデータを集めて、三段論法をする程度の言語です。私が作ったプログラムは、分数の計算と解の公式に関するものでした。専門的に学習したわけではないので、結局かじったのみに終わってしまいました。
学ぶ上で最も大切なこと
・質問できる環境で学ぶこと
・プログラミングは、つまると全く進めなくなる
・一人で悩んでいる時間はムダ
・スクールに通うか、教えてもらえる人をお金を払ってでも探す
・身近になければ、自分で勉強しつつ、聞ける人を探す
・スクールを選ぶときも一方通行ではなく、いつでも聞けるスクールを選ぶ
私は、一人でコンピュータ言語を学びました。今もそうですが、昔も一人でした。
私が学んでいた30年前は、インターネットのない時代です。学べるものは、本しかありません。本で学んでも、動かすパソコンと言語のプラットフォームがありません。
大学には、マッキントッシュが入っていました。しかし、言語環境は整っていません。自分で購入したパソコンX68000のX-BASICを使ってプログラムするのが、できることの精一杯でした。
大学自体に切磋琢磨できる友達がいたら、違っていたと思います。
必要な学習時間
・稼げるレベルになる最低学習時間は、600時間~1000時間
・独学でやっていたら、1000時間以上かかる
・最速で稼げるようになるためには、全てプログラミングに時間を使うようにする
・一緒に勉強する友達を見つけるのがオススメ
私は、時間をかけて勉強してきませんでした。
プログラミングの勉強といっても、雑誌に載っているプログラムをそのまま打ち込むだけです。その当時は、パソコンで動くゲームが珍しく、BASICでゲームが動くことに感動していました。
パソコンには、ハードディスクすらついておらず、フロッピーディスクです。しかも、3.5インチの固いフロッピーではなく、5インチのペラペラのフロッピーでした。アクセス音が大きくて、よくダメになりました。
プログラミング環境がダウンロードすればすぐに整い、インターネットで学習できる今がうらやましいです。いや、よい時代になったと思います。
どのように勉強を進めるか
・プログラミング言語は、迷ったらRuby
①Rubyで簡単なプログラムを書く
②HTML・CSSでWebページを作る
③RailsでWebアプリケーションを作る
・最初の100時間で、①~③を一気に学ぶ
全部覚えようとしない
・残りの時間でサービスを2つ作る
①有名なサービスのコピー ~ 公開してはダメ
②完全オリジナルのサービス ~ デザインは独創しない
・大事なこと
①やらざるを得ない環境(学習量)
②質問できる環境(学習効率)
私がX-BASICで作ったプログラムで覚えているのは、オセロゲームです。
マウス対応で、コンピュータとの対戦もできるものでした。コンピュータの思考ルーチンは、メチャクチャおバカでしたが。
今もプログラミングは、少しは行っています。一番多いのは、Excelマクロです。仕事でExcelは必ず使うので、Visual Basicは覚えて損はありません。YouTubeでも学習動画は上がっているし、インターネット上にたくさん使えるマクロもあります。自分ができないことも検索して、コピペするだけで使えてしまいます。私も「パワポのスライドをランダムに並べ替えるマクロ」をコピペして使いました。
最近始めたのは、Google Apps Script(GAS)です。仕事でGoogleがプラットフォームになり、クロームブックを使うことが増えてきました。プログラミングは、1つ学習していると他の言語に移っても「こんなことはできそう」という予想を立てられます。できそうなことは、ググれば出てきます。あとは、組み合わせるだけです。
仕事の自動化は、職場で大きな武器になります。
今日のアクションプラン
・GASの勉強を続けて、新しいプログラムを組む
今日のアクションチェック
Google Apps Scriptの活用動画を観ました。
一番興味深かったのは、プロジェクトのトリガーを設定し、時間が来たら自動実行することです。Twitterに自動的にツイートしたり、決まった時間にデータ収集ができます。
仕事に活用できそうです。
コメント