未経験ITエンジニア必見!ITエンジニアがコンピュータサイエンスを学ぶ必要性

しゅういち
どうも、フリーランスエンジニアのしゅういちです

最近、プログラミングを学ぶスクールが充実してきています。そして、2020年から、プログラミングが小学生の義務教育に追加されることが決定しています。
参考URL:文部科学省 教育の情報化の推進

個人的には、プログラミングを教えることを義務化するのは賛成です。

しかし、学ぶ人たちが従来の教育のように、点数をとることが目的になってしまう可能性は十分にありうると思っています。

ここでお話ししたいのは、そう言うことではなくて、ITエンジニアがなぜコンピュータサイエンスを学ぶ必要があるのか?を書いていきたいなと思います。

ん?コンピュータサイエンス?コンピュータの仕組みとか、理論とかそう言うのはいいよ!

って思ったそこのあなた!コンピュータサイエンスって、実はそう言うことではないんです。

簡単に言うと、世の中の情報を、適切な手段で活用するために学ぶべき学問であると言えます。

以下で詳しくお話ししますね!

そもそも、コンピュータサイエンスとは何か?

最初にお話しした通り、コンピュータサイエンスは、世の中の情報を、適切な手段で活用するために学ぶべき学問であると言いました。

海外では、infomatics(インフォマティクス)と呼ばれ、インフォマティクスの亜種としてコンピュータサイエンスが定義されています。
(このブログでは「情報工学=コンピュータサイエンス」として捕らえています。)

インフォマティクスは情報工学の一分野です。それは情報処理の実践と情報システムのエンジニアリングを含み、学問分野として適用される情報科学の形態である。この分野では、人間と情報の相互作用を、インタフェース、組織、技術、システムの構築とともに考慮しています。したがって、情報科学の分野は、コンピュータサイエンス、情報システム、情報技術、統計の分野を含む多くの亜種を網羅しています。(日本語に翻訳)
出典:infomatics(Wikipedia)

コンピュータサイエンスはいつ頃定義されたのか?

1956年、ドイツのコンピュータ科学者Karl Steinbuchは、Informatik:Automatische Informationsverarbeitungという論文を出版してInformatikという言葉を作り出しました(「情報学:自動情報処理」)。インフォマティクスという英語の用語は、時にはコンピュータサイエンスと同じ意味を持つと理解される。ドイツ語のInformatikは、通常、コンピュータサイエンスとして英語に翻訳されています。

スタートアップが年500も立ち上がっているドイツでは、(多くの州では大学を含む)公教育が学費無料だったり、コワーキングスペースが充実していたりと、エンジニアに対して非常に魅力的な国となっています。

ベルリンは年に500のスタートアップが生まれ、その成長指数は世界一、コワーキングスペースの保有率で世界3位の都市です。世界の投資家を唸らせ、一気に世界を駆け巡るソーシャルアプリの数々は、世界中から集まる起業家たちによって生み出されます。
出典:なぜベルリンがスタートアップの聖地になったのか?(ダイヤモンドオンライン)

やばい、なんかかっこいいな!って持ったのは僕だけではないはず。過去色々な人を見てきましたが、何かを志す人は非常に輝いて見える。

そんな人たちがぞろぞろいるなんで、考えただけでもワクワクしますし、恐ろしいですね笑

情報を活用するためにコンピュータを使うと言う素晴らしさ

私がなんでコンピュータサイエンスを今回の記事にテーマとしてあげたかと言うと、あなたが目にしている物理的なものは全て情報である、と言うことなんです。

この情報を扱うすべを身につければ、色々な可能性が見えてくると思いませんか?

例えば、Webを使って集客をするとします。これも根本的には、「コンピュータを使ってWeb上でニーズ(という名の情報)を集めるためにコンピュータを活用する」と定義ができます。目的を達成するために必要な物理的な意味でのコンピュータがサーバやパソコンです。

情報を人が便利に生活するために使うのか、まだ誰も知らない自然界の法則を見つけ出すために使うのか、はたまた、世の中の謎を見つけ出すために使うのかは、人次第ですが。

私は、より便利で、充実した生活を提供するために、コンピュータサイエンスはITエンジニア全員が学ぶ必要があると考えています。コンピュータサイエンスをベースに他の人たちの生活が豊かになっていくのを実感できたら・・・きっと非常に嬉しいんだろうなって、想像するだけでワクワクしています。

30代からITエンジニアを目指す人も、コンピュータサイエンスを学ぶ必要性について、考えてもらえたら幸いです。

まとめ

将来はドイツに行って仕事をして見たいと思っていますが、そもそもITに関わるエンジニアとして、持っている情報をどういう風に使うのか?というテーマは、IT業界にいる限り考え続ける必要があるテーマだと思っているので、情報を生かす研究者であるとともに、お客様のニーズを満たし続けるエンジニアでもありたいと思います。