プログラミングから学んだ6つの人生の教訓


成功した人生を生きることについて知っておくべき重要なことすべて、あなたはコンピュータープログラムから得ることができます。信じない?続きを読んでください。

この投稿はもともと掲載されていましたSweetnesseof

私が最初に幼い頃にプログラミングを始めたとき、それはコンピューターの雑誌から外来のような言葉やシンボルをコピーするだけで、兄弟と私は古いフランクリン64をデュアルフロッピードライブでかわいい小さなデジタルチューンでプレイできるようにすることになりました私たちに。当時、その不可解なテキストから識別するための人生の教訓はあまりありませんでした。数年後、高校のパスカルクラスでは、物事が違って見え始めました。声明とループのための哲学的シナプスのつながりを刺激し始めたかどうかを学び、ウォルト・ホイットマンとロバート・フロストが誇りに思っていたであろうものです。さて、私は少し誇張しますが、それでも洞察はかなりクールでした。

はい、私は知っています、それは言うべき非常にオタクなことです - しかし、真実は多くの知恵があるということですコード。実際、私が一般的に人生の管理について学んだ多くのことは、さまざまなプログラミング言語の研究から直接来ました。

フローチャートはすべてを簡素化します

多くのプログラマーは、単一のコードの作成を開始するずっと前にフローチャートを使用しています。この理由は、特にプログラムがかなり複雑なタスクを達成する場合、プログラム全体を一度に書き込もうとすることは、時々本当に圧倒的に感じることができるからです。

プログラマーは、その大きくて巨大なソフトウェアプロジェクトを採用し、それらをより適切に管理できる小さなコンポーネントに分解します。これは、最初に必要な各コンポーネントを構築することで、それらをすべて組み立てる前に車を構築するようなものです。各コンポーネントは、入力値またはアクションの特定のセットを取り入れ、いくつかの出力タスクを達成するコードのブロック(または複数のブロック)です。そのコンポーネント内で、プログラマーはフローチャートを使用して入力から出力までロジックを追跡します。

フローチャートは、テキストで書き留めようとする場合よりもはるかに理解しやすい視覚形式でロジックに従うのに役立ちます。プログラマーがこのように「オンザフライ」という論理を理解しない理由は、後に来るロジックは、プログラムの以前のロジックを処理する方法についての決定に大きく依存することが多いためです。早期に間違ったことを決定すると、自分自身を行き止まりにプログラムできます。

同じことが人生にも当てはまります。あなたがどのように進むかについて決断しているとき借金を返済する家を買う、または他の複雑な生活状況を処理する方法、またはする方法さえプロジェクトを管理します仕事で。一見克服できないタスクはすべて、最初に座って、ペンを紙に入れて、よりよく管理することができます。クリエイティブフローチャートを引き出しますプロセスまたは決定のすべてのステップの。これにより、可能なすべての選択肢を決定したり、各段階ですべての可能性を予測したり、さまざまなシナリオをトレースしたりします。同じようにプログラミング、早期の選択が後で結果にどのように影響するかを理解することは、早い段階ではるかに優れた教育を受けた決定を下すのに役立ちます。

すべてにその場所があります

スクリプトまたはプログラムの作成を開始するたびに、最初のステップは常に変数を作成することです。プログラミングには、さまざまなタイプの変数があります。テキストを保持する文字列、非科学的数字、二重またはバリエーションを保持するための整数があり、より大きな数字を処理するため、配列、構造などがあります。アイデアは、手元のタスクに適した変数を定義することです。たとえば、関数の出力が人の名前である場合、文字列変数はあなたが望むものです。

あなたがあなたの家であろうとあなたのオフィスであろうと、あなたがあなたの人生を組織しているときも同じことが言えます。保存する必要があるものに基づいて、コンテナのサイズを選択します。ドライグッズ用の小さな透明なプラスチックビン、またはよく描かれた容器のようなラックスパイス用スペースを節約する。オフィスでは、デスクの引き出しに毎日の作業文書を保管したいのですが、ロックされたキャビネットに敏感なビジネスドキュメントを保存します。すべてに適した容器、そしてすべてが正しい場所にあります。それは、よく組織された生活のためのモットーです。

プログラムモジュールを再利用して時間を節約します

優れたプログラマーは、最終的には、「関数」と呼ばれる特定のコードブロックを複数のプログラムで再利用できることを学びます。たとえば、華氏から摂氏に変換する1つの関数は、作成しているあらゆるプログラムで使用できます。この関数は、華氏で温度をとって摂氏に戻すモジュールです。関数には一定の数のコードが含まれる場合がありますが、プログラム「モジュール」として一度保存してから、そのモジュールを任意に挿入できる場合、書くすべてのプログラムのコード行を再作成するのはなぜですかそれを必要とする将来のプログラム?

ヘンリー・フォードかつて彼の有名なモデルTについて言った、「どんな顧客も、黒い限り、彼が望む色をどんな色に塗ってもらうことができます」。フォードは、新しい車が作られるたびにプロセスを再現することなく、同じ機器(および同じカラーペイント)を再利用できる場合、車を組み立ててドアからより速くドアから出す方法を見つけました。これにより、組み立てラインが生まれ、自動車産業に革命をもたらしました。同様に、同じタスクを何度も行っている人生のあらゆる分野でこの原則を使用できます。自動化は成功の鍵です。したがって、仕事でタスクを繰り返し自動化する方法を見つけることができれば、一日をより効率的にして時間を節約できます。

すべてを文書化します

時には、プログラマーが単一のことを文書化することなく、書くコードを飛ぶだけで非常に魅力的です。それは魅力的です。なぜなら、プログラムに何をしたいのか、どのようにやりたいかを正確に知っている瞬間はいつでも。プログラムの文書化には時間がかかります。各ステップをどのように、そしてなぜやっているのかを説明する必要があります。当時は無意味に思えますが、数ヶ月後に別の目的のためにそのコードを再利用するか変更することを決めたとき、それはあなたが各コードで何をしていたかを思い出そうとすることによって苦労することの違いを意味するか、またはすぐに得ることの違いを意味しますロジックの背後にある意図全体でスピードアップに戻ります。

この細心のドキュメントは、誕生日や記念日を追跡することから、毎日のビジネストランザクションのログを維持し、なぜそれを作ったのか、人生のあらゆる分野で役立ちます。日常生活は、通り過ぎる日々のぼやけになる可能性があります。あなたが特定の会議に出席した理由や特定の購入をした理由を覚えておくために、あなたの記憶のみを信頼することは素朴で非効率的です。 aデイリージャーナルまたはログより重要なことのためにあなたの心を解放するのに大いに役立つことができます。

常に自分自身に脱出ルートを残してください

アマチュアプログラマーの最も一般的な間違いの1つは、無限のループです。それは、ループから抜け出すために必要な状態が実際には決して起こらない状況であるため、プログラムはそのループにとどまり、終了することはありません。プロセス。

アマチュアプログラマーが学ぶ必要があるレッスンは、多くのCPUパワーを噛む何らかのタスクを実行するためにループを作成するときはいつでも、ある種のリリースバルブを導入することが重要であるということです。言い換えれば、計算が特定の値を超えるかどうか(場合によっては決して到達しないかもしれない)に基づいて、しばらくループする代わりに、非常に基本的なループカウントを導入し、次に二次条件を追加することをお勧めします。ループが特定のとんでもない数のループを超えている場合、すべてが正常に機能している場合に実際に到達することはないはずです。

これは実際の生活にどのように当てはまるでしょうか?すべてが完全に計画されていると思っても、物事がうまくいかないことを示しています。 1つの例は、最も美しくリラックスした熱帯の楽園で1週間にわたる家族の休暇を計画することです。人生における「脱出ルート」のアイデアは、「最悪のケース」シナリオ、そして、それが実現した場合、その状況を避けるか、それを最大限に活用するかを理解します。

人生は必ずしも予測可能ではありません。そして、何も間違っていないと思うと、最高の計画のいくつかは簡単に解くことができます。最悪の偶発性を計画することで、あなたが実際に実現することを期待していなかったイベントが実現したときに、あなたが水中で死んでしないようにすることができます。

完了したらメモリを解放します

プログラミングから出てくる最終的な人生のレッスンは、あなた自身の後に掃除することです。プログラムでは、出力ファイルにストリームを開き、データポイントで満たされた大きな配列や、コンピューターのメモリやリソースを消費するその他のものを作成する必要があります。クリーンプログラムとは、プログラムが完了したら、それらの出力ストリームを閉じたり、それらの配列を空にしたりするプログラムです。ここでのアイデアは、メモリリークとして知られる不十分に書かれたアプリケーションの一般的な問題を回避することです。

たとえば、単純なVBアプリでは、次のような配列をクリアします。

Arraydinを消去します

または、次のようなファイルストリームを閉じます:

fileclose(1)

あなたが若い頃に母親が言うのを聞いたことのように聞こえますよね?あなたの部屋をきれいにします。あなたの服を片付けてください。あなたの料理をしてください。ただし、さらに一歩進んで、現在使用しているツールを手元にあるツールを片付けておくだけでなく、あなたの家また、ワークスペースの整頓、次のプロジェクトをより迅速に達成するための十分なスペースが残ります。物事をぶらぶらしているままにしておくと、スペースを無駄にし、後で必要なものが見つからないときの時間を無駄にします。

結論

真実は、プログラミングの技術から学ぶことができる人生の教訓は6つだけではありません。組織、計画、戦略の計画、リソースの保存に関しては、コンピュータープログラマーがそれを理解しました。時間をかけることから学ぶべきことがたくさんありますプログラミング言語を学びます、それ自体をプログラミングするだけではありません。実際、これが理由ですすべての子供学校で少なくとも1つのプログラミング言語を学ぶ必要があります。貿易のトリックに気付いたら、人生の他の多くの部分でそれらの同じトリックを使用できることが明らかになることが明らかになります。

プログラミングが今日あなたに教えることができる6つの人生の習慣|むしろ買い物をする


Ryan Dubeは、フリーランスライターであり、電気エンジニアであり、SEOの専門家です。彼の執筆は、科学と技術の調査に焦点を当てています。で彼を訪ねてくださいtopsecretwriters.comまたはオンGoogle Plus

ライフハッカーであなたの仕事を見たいですか?メールテッサ