新人エンジニアにコンピューター基礎が必要な理由
こんにちは。はるまきです。私は今、エンジニア3年目です。私が新人のころ(今もまだまだ新人ですが…)に知っておきたかったことを振り返るシリーズ第一弾です。
今回は「コンピューター基礎」です。コンピューター基礎がエンジニアライフにおいてどのように役に立つのか、どのように勉強すればいいのかを述べます。
このシリーズの読み手のペルソナイメージは過去の自分です!笑 それでは早速参ります。
なぜコンピューターへの理解が必要なのか?
1, あらゆることへの「学び」が深まる。
競輪選手は自転車の構造を知らなくても走ることができます。ミュージシャンはその楽器の構造を知らなくても音を奏でることができます。しかし競輪選手にとって自転車の構造を理解することはより速く走るために重要ですし、ミュージシャンにとってその楽器を理解することはより良い音を奏でるために大切なことです。システムエンジニアにとってのコンピューターもそれと似ている関係だと思います。 コンピューターのことを理解していなくてもシステム開発は可能です。ですが、理解していた方がよりよいシステムを創ることができます。
システム開発ではあらゆる側面にコンピューターは存在します。何をするにもコンピューターが欠かせません。コンピューターがどのように動いているのか、どのように処理を行なっているのかをある程度理解することで、あらゆる「学び」が深まり、吸収しやすくなります。ただ、完璧にコンピューターのことを理解する必要はないと思います。おそらくIT業界でも完璧に理解している人は一握りです。大切なのはざっくりでいいので、自分なりに処理の流れや構造をイメージできるようになることだと思います。
2, もしコンピューターへの「苦手意識」があるなら、それを払拭することができる。
コンピューターを使うのは得意ですか?苦手ですか?もし苦手なのであればコンピューターを理解することで「苦手意識」も払拭できると思います。小学校で算数に対しての苦手意識があると、その先の数学の全てが嫌になりますよね?それと似ていると思います。これからシステム開発に携わるときに、コンピューターそのものに対して苦手意識があると、勿体ないです。
どのような時に役立つのか?
1, トラブル対処が早くなる
システム開発を行うにあたり、トラブルが起こります。そのトラブルは多種多様です。例えば、「アプリが起動しない。」「文字が入力できない。」「ネットワークに繋がらない」などです。そのような時に、コンピューターへの理解があれば、どこに原因があるのかをおおまかに予想することができます。素早くトラブル解消ができるようになり、素早く仕事をこなせるようになります。
2, 学習しやすくなる
プログラミングをはじめとするシステム開発に必要な知識を学習する中で、必ず何かしらに躓きます。そのような時にコンピューターへの基礎があれば、より学びやすくなります。繰り返しになりますが、競輪選手やミュージシャンが自転車や楽器を理解するくらいのものです。理解していた方がその学びがより効率的になります。
どのように学ぶか?
1, 書籍を読む
ここでは一般的な学習方法についての記載はしませんが、無難に簡単な入門書を読むのがいいかと私は思います。コンピューター基礎については、基本情報技術者試験のコンピューター基礎編を学べば十分だと思っています。
2, 自分でPCを分解してみる
実際にコンピューターの中身を自分の目で確認することは割と大切なことだと思っています。「百聞は一見に如かず」。ハード部分については「へ〜こんな感じか。。」と認知するだけでも、少しは学びのヒントになると思います。実際に執筆者は古いコンピューターを入手して分解したことがあります。思い返すと少しは学びの手助けになったのかなと思います。
まとめ
今回はコンピューター基礎について振り返りました。まだまだコンピューター基礎についての理解は足りないですが、これからも学習を続けていく所存です。
最後までありがとうございました。