私のバイブルはこれ!!これからプログラムを学ぼうと思っている人へ。
こんにちは、こんばんは。
SYOKUTSUのシステム周りを担当しております。けいすけです。
SYOKUTSUについては、こちらもご覧いただけますと幸いです。
前回の投稿から1ヶ月ほど経ちましたが、私はプログラムを独学で覚えました。
昔は飲食店とかサービス業をしていて、デジタルとは無縁とは言いませんが、システムを自分で作れるようになるなんて思っていませんでした。
簡単な自己紹介
まず、はじめましての人に簡単ですが、私という人間を説明したいと思います。
一応こちらに詳しく投稿していますので、ご興味あればどうぞ。
私は、元々飲食店で働いていました。
包丁を握り、フライパンを振ったりしていた訳です。
その前は、サービス業で接客に従事していました。
まぁデジタルとは無縁で、どちらかと言うと感覚とか経験が物を言う世界で働いてきました。
そんな私が、一念発起してプログラムを覚えようと思ったのは、単純に必要だったからです。
独立して何かするにも、ホームページが必要な時代。
簡単にホームページが作れるツールは山のようにありましたが、私は昔から変なこだわりが強く、どれを見ても気に入らなかったんです。
微妙な余白の広さが嫌
文字の大きさや色が嫌
でもこれを変えようと思うとお金はいるし、それなりの知識もいるし・・・
中途半端に知識入れて、お金払うぐらいなら、がっつり覚えてタダで1から自分で作るほうが納得できるじゃん。
ということで、覚え出したのが私のプログラムの世界の入口です。
この1冊で私は覚えました。
(このリンクはアフィリエイトリンクです)
この本で私は、PHPというプログラム言語を覚えました。
この本は架空のECサイトを作るというストーリに則り、ECサイトに必要なログイン機能や商品一覧ページ、カート機能などをわかりやすくまとめられていました。
ページ数は315ページです。
挿絵などあって読みやすい本でした。
この本は今でも私のバイブルですし、辞書です。
困ったら、この本を開いて調べたりしています。
この本は簡単に説明されているので、セキュリティの部分などは端折っていたりするんですが、所々でユーザーの事を考えると・・・みたいな説明があるんです。
面と向かって人と接し働いて来た身として、お客様目線で設計したり、プログラムを組むという部分に、何かシンパシーを感じ、今後自分で作るときもこの考え方、気持ちは忘れないで置こうと強く思いました。
ちなみに、この本はあくまでもPHPだけを説明しています。
もちろん、ホームページに出力するのでHTMLなど使っていますが、そのデザインを司るCSSには一切触れていません。
なので、この本1冊読めば、プログラムで動くホームページが出来ると言うわけではありません。
習得までの時間
私で2ヶ月ぐらいでした。
本を読みながら、プログラムを組みテストして、エラーが出て・・・を繰り返しましたが、週3日で1日5時間〜8時間ぐらいの進捗で2ヶ月なので、仕事しながらでも概ね3ヶ月〜4ヶ月ぐらいあれば習得できるんではないでしょうか?
ただ、私の場合は、HTMLとCSSについては、この前に覚えていたので、この部分も全くゼロだと仕事しながら空き時間に。と考えている場合は、HTML+CSS+PHPなので1年ぐらいはかかるかな?とは思います。
全くのゼロから進めるなら
先述通り、私はHTMLとCSSの知識があったので2ヶ月ぐらいでしたが、このHTMLもCSSの知識もない場合は、まずHTMLを覚えましょう。
これを覚えないとWEBページに「あ」という文字すら表示できません。
逆に言えば、HTMLを覚えればWEBページに好きな文字を表示できる訳です。
そして、自分が何をしたいのか?
漠然とプログラムを覚えたい!では絶対に覚えれません。
というか不可能です。
なぜなら、タグとかプロパティやら・・・覚えることというより、種類が多すぎるからです。
HTMLだけ絞り、divやarticleとかsectionなどで表すタグと言われるものが100種類あります。
ちなみに、文字の色を指定したり、大きさなどのデザインを作るCSSという言語にプロパティという命令する専用の言葉があるのですが、これがざっと3000種類あるらしいです。
で、PHPというプログラム言語を覚えて・・・
タグやプロパティだけを覚えたい。というマニアなら話は変わりますが、3000個の単語とその命令内容まで覚えるのは時間がもったいないです。
そして何より、これだけ種類あっても使うのはせいぜい30個ぐらいです。
私は、よく使うタグやプロパティはExcelや予測変換に登録しています。
さきほど数えたら20個しかありませんでした。
要するに、全体の1%以下覚えておけば、なんとかなるんです。
全体の1%覚えたら、SYOKUTSUの様なWEBサービスが作れるというわけです。
ただ、じゃあその20個だけ教えて。って言われても、それは私がこれを作りたいからこの20個で十分という結論に至っただけで、皆さんが今後何を作るかで10個いいかもしれませんし、100個必要になるかもしれません。
だから、まず自分は何を作りたいのか?を決めないといけない。
献立を考えずスーパーに行ったら、無駄な物は買うし、時間はかかるし・・・みたいな感じになっちゃいます。
これからプログラムを覚えるぞ!という方に
アドバスではありませんが、1つ助言です。
プログラムは、1+1=2以外にはなりません。
すげー要領が悪いこだわり強めの人間を相手にする気持ちで挑んでください。
会社や現場、職場で
「お前要領悪いんだから、俺の言う通りこうしたら良いだ」
「いやです。私には私のやり方があり、これはこうでなければならないんです。」
と鼻息粗くしながら、コピー1枚取るのに5時間かけるような社員で、人間で言えばポンコツ社員を相手にします。
(ちょっと問題発言ですかね?)
えっ?プログラムってすごい頭良く優秀じゃないんですか?
と思っていたなら、全く違います。
プログラムは、マジでポンコツです。
プログラムの凄いところは、命令したことを文句言わず、24時間365日人間には不可能なスピードで処理する。
ただそれだけで、命令しなければ動きませんし、命令がプログラムのルールに則っていなければ、動きません。
大文字小文字の違いで動きません。
ちょっとしたスペルミスでも動きません。
変な改行しても動きません。
現実世界では、いやいやそれは分かるやん!ということでも絶対に反応しません。
料理で言えば、お塩少々なんてプログラムは絶対に分かりません。そして分からないので動きません。
だから、料理序盤で料理を止めます。
それがプログラムです。
命令がしっかりしていれば、すごい良い相棒になりますが、この命令が雑だったり、不完全なら、ただの文字の並びでしかありません。
最後に
すごい長い文章になってしまい失礼いたしました。
これからプログラムを覚えようとしている方に少しでも参考になれば良いなと思います。
最後までお読みいただきありがとうございました。
よろしければ、弊社の「食」のまとめサイトです。
ご覧ください。
この記事が気に入ったらサポートをしてみませんか?