プログラミングは覚えることが多くていつになっても難しい

スポンサーリンク
Pocket
LINEで送る

プログラミングって難しい。

プログラミングを覚えてから数年たったし、職業プログラマなんですが、いまだに難しいと思っています。

 

プログラミングの覚えはじめの心境

「プログラマーってすげーなあ」

プログラミングを覚えるまでは、プログラマーはすべての関数を覚えていてアプリやWebサービス、あらゆるソフトウェアを作ることができるものだと思っていました。

当時は関数の存在は知りません。そもそもどうやってプログラムが動くかもわかりませんでした。

ただ、なんか英語の文字をカタカタターーンで魔法のように思い通りのコンピュータが動いてくれるものだと思っていました。

 

プログラミングを覚えたい

「プログラミング覚えたい!まずは、本で勉強しよう!」

とりあえず、プログラミング入門書を購入。

 

「本の通りやってんのに動かないんだけど!?」

プログラミングの入門書ってのは、当たり前ですが専門用語の解説の文章に専門用語が混じっていて読み進めるのが大変です。

サンプル通りの環境構築を行っても正しく動いてくれず、サンプルコードも動かない場合がありなかなか覚えるのが大変です。

 

やはり覚えるにはひたすらコードを書くことが大事です。

コードを書くとエラーが出る、そのエラーをぐぐって解決する。

それを繰り返してくとだんだんエラーのパターンがわかってきます。

最初は何がなんだかわからないエラー文もコードを書いてエラーを吐き、

それを調べ解決する行為を繰りかえしていくと、ある時そのエラー文が何なのかわかるようになってきます。

 

初心者にとっては、本なんかより、ドットインストールの方がおすすめ。

本より、動画で動きを見ながら一緒にやっていった方がわかりやすいです。

 

 

何か作りたい

「よっしゃ、プログラミング大体わかってきたしなんか作るか!」

プログラミングの勉強はじめ、だんだん”プログラミング”がわかってくると何か作りたくなります。

Webサービスを作ろうと考えるのですが、環境構築で詰みます。

 

Webサービスを作るには環境を用意しなければなりません。

せっかく覚えたRuby on Railsもrubyとrailsをインストールして動くようにしなければスタートできません。

 

「へーyumってのでインストールするんだー」

スポンサーリンク

「rbenvってのが便利なんだな、でも何がいいんだ?」

「Pathを通すってなんやねん」

「インストールしたけど、ファイルどこいった?」

こんな感じで、すべてが謎です。黒い画面のおかげでより一層難しさが増す気がします。

「プログラミングの学習だけでも精一杯なのにサーバーも覚えないといけないのかあ」

 

サーバーのセットアップも覚えないといけない

プログラミングも覚えないと

SQLインジェクション?XSS?セキュリティの知識も必要だな

プログラマーって覚えること多いなあ

 

今になってわかったこと

関数は覚えてない

プログラマーとしてわかったことは、おそらく、関数をすべて覚えているプログラマはあまりいないんじゃないかな?

というか覚えられないくらい関数が多いです。

 

PHPであればforeach()とかdate()とか、Rubyであれば、eachとかstrftimeとかよく使うのは覚えているけど滅多に使わない関数はぶっちゃけ覚えていない。

こんなのあったなってのだけ覚えていて実際に使うときはググってリファレンスみて使います。

 

 

特化した強みを持つべき

プログラミングって幅が広いんですよね。

いろんなソフトがどんどん出てきますし。

どちらもできるに越したことはありませんが、

フロントもサーバーサイドもサーバーもデータベースも完璧にって考えると多分かなり難しいんじゃないかな?

だから僕は一応一人でアプリケーションは作れるけどフロントエンドを重点的に勉強するようにしてます。

 

言語を一個覚えれば後は応用

プログラミング言語っていっぱいあります、ですが、仕組みは似ているので一個わかれば他の言語も覚えやすいです。

ですが、その言語を完璧に習得するのは簡単ではない。

 

まとめ

こんな感じでプログラミングについて自分が思っていたことを書きました。

僕にとってプログラミングが簡単になる日はきっと訪れないでしょう。

 

ちなみに、個人で運営しているサービスの紹介

BitPumpkin

エンジニア向けの記事ストックサービスです。

プログラミングの勉強中に見た記事をストックしておけば後で見返せるので探す手間が省けます。

関数とか覚えなくてもBitPumpkinでストックしとけばいつでもサクッと見つけられます。

BitPumpkin