• 編集プロダクション・リブロワークスのWebサイト

    今回の社員ブログは「ITを学ぶ際、何が大切か?」について考えてみようと思います。

    一口にITと言っても、プログラミング言語をはじめ、サーバーやネットワーク、データベース、クラウド……のように、実にさまざまな分野があります。

    分野ごとに「これは覚えておくべき!」というポイントは異なりますが、分野に関わらず、ITを勉強する際に大切なことはいろいろあります。ざっと挙げるだけでも、次のものが考えられます。

    • プログラミングやネットワーク構築などを、実際に自分でやってみること
    • トライ&エラーを繰り返すこと
    • わからないことがあったら、ひとまず自分で調べてみること
    • その技術のメリットとデメリットを理解すること
    • その技術の目的を理解すること

    その中でも今回は、個人的に一番重要だと思っている「その技術の目的を理解すること」について焦点を当ててみます。

    というのも、自分がシステムエンジニアだった時に遭遇したある会話を、思い出したからです。

    むかし遭遇した会話その1

    ある開発現場での話です。その当時、毎日夕方に開発環境へアプリケーションのデプロイを行うという運用がありました。デプロイとは、アプリケーションを実際に利用できるようにするための一連の作業のことです。当時はまだCI/CD(継続的インテグレーション)という言葉が浸透していなかったため、デプロイの手順が資料にまとめられていて、その手順書通りに操作してデプロイを行う、という運用でした。

    なお、デプロイは、おおまかに以下の手順でした。

    1. その日のバグ対応がFIXしたかをメンバーに確認する
    2. 問題がなければ、ソースリポジトリから最新のソースを取得する
    3. ビルドして実行可能形式ファイルを作成する
    4. 実行可能形式ファイルを、開発環境に反映する
    5. 疎通確認する

    そのデプロイを毎日行うことになった人(仮に、うさぎちゃんとしましょう)と、先輩(仮に、くま先輩としましょう)との会話です。

    手順に沿って作業する際、1つ1つの操作が何をしているかの理解が、どうしても後回しになりがちです。それを理解しないと応用力がつかないので、くま先輩は助言したのでしょう。

    むかし遭遇した会話その2

    もう1つ思い出した会話があります。

    それは、単体テストの期間に、その日摘出したバグを、バグ管理ツールに起票して管理するという運用をしていたときのことです。

    このケースも「品質を上げること」という目的を理解しておけば、バグを登録する際に記述する内容が変わってくるので、くま先輩は指摘したのでしょう。

    このくま先輩はやたら厳しい気もしますが、自分はこの2つのシーンに遭遇し「応用力をつけるためにも、ITを理解するには目的をきちんと理解することが大事」なことを認識しました。

    まとめ

    近ごろ、ITはさまざまな技術、アプリケーションがどんどん登場していて、それらが何を目的としたものなのかが見えにくくなっています。

    ある1つの目的のために作られたアプリケーションに、追加でさまざまな機能が搭載されていくので、もともとのコアな機能がわかりにくくなっている、というのもあるかもしれません。

    ただし、その技術やアプリケーションがどういった目的で作られたのかを、推測することはできます。

    これからも、自分がITを勉強していく際には、そのことを忘れないようにしたいと思います。