プログラマー-期待と現実

まえがき



この出版物は普遍的な真実を装うものではなく、個人的な経験、観察、同僚の経験に過ぎません。 プログラミングの興味深い世界の瀬戸際にいる新参者は、物事の実際の状態を冷静に見るべきであり、錯覚が背景に素早く消えるほど、開発をより速く楽しむことができます(そしてそれだけでなく)。



初心者のための神話



神話1: 「C#(C ++、アセンブラーなど)を学び、本物のプログラマーになる」

悲しいかな、練習が示すように、言語を知ることに加えて、あなたは多くの関連分野を知る必要があります。 たとえば、非常に多くの場合、あらゆる種類の会計に関する知識が必要です。 プログラマーが必要なのは、コーディングがうまくできていること、顧客がタスクを解決するためにお金を払うこと、そして小さくないこともあるからです。美しいアルゴリズムではありません。



神話2: 「真のプログラマーは数日間プログラムを書く」

実践が示すように、プログラマーは最良の場合projectプロジェクトの時間をプログラムし、残りの時間はタスクの設定、顧客とのコミュニケーション、およびこの時間の他の殺害に費やされます。 いいえ、もちろん、たとえばSAPのように、プログラマーが数日間正確にコーディングする環境があります。 しかし、SAPでは、最低賃金のポジションがエンコーダーであり、指定された参照条件に従って厳密に書き込みます。 撮影、右へのステップ、左へのステップ。 それでも、企業を自動化する会社は、従業員の膨大なスタッフを維持します。



神話3: 「今、どのように簿記を行い、誰もがそれを購入し始めるのか」

残念なことに、多くの人がこの神話に夢中になっています(そして、私はずっと前に素朴でした)。 同様に、今は同じ1Cよりも速くて便利なプログラムを作成し、誰もがそれを必要とします。 しかし、最初の作業を行った後、ユーザーは合理的な質問をします。「1Cは私のために働きます。すべての人を満足させ、法律の変更をほぼ完全にサポートします。 報告して、なぜあなたのプログラムは誰にも知られていませんか?」



神話4: 「自分の製品のコピーを2、3売るだけで間違いなく踏みにじる」

さて、知り合いに影響を与える人がいて、この製品の購入を開始するとします。 これはよく起こります(明白な理由で特定の企業に名前を付けません)。 そして、製品をサポートする必要があります。そうすれば、競合他社は見て、en望し、それを購入したいのです。 そして、ここで不快なことが始まります-開発者は燃え尽きて、たくさんのお金を要求し始めます。あなたはそれを食べたいので、クライアントは真剣に考えて、アップデートが無料またはシェアウェアである1Cを購入します。



神話5: 「私はスペシャリストになり、ビル・ゲイツとして金持ちになる」

これは、他のすべての最も悲しい神話です。 まず、ビル・ゲイツは元々マネージャーであり、プログラマーではありません。 彼は常に、コードをより良く作成する方法ではなく、より収益性の高い販売方法を考えていました。 したがって、さらなる教育(たとえば、経済的および経済的)がなければ、IT部門またはプロジェクトマネージャーの長を超えることはできません。



神話6: 「面白いプログラムを作成します」

しかし、違います。 顧客が結果を必要とする場合にのみ、彼らは仕事のためにお金を支払います、そしてそれが市場で判明したように、非常に退屈な会計システムまたはそのような何かが必要です。 人生の夢がゲームを作成することだった場合、問題に対する退屈な解決策も何ヶ月もあります。



職場では、私も好きではないことをします。主なことは、顧客がそれを望んでいるということです。しかし、自宅では、夕方に、魂のための私のお気に入りのTASMとプログラムを立ち上げます。 絶対に不必要なプログラムは、心から、そしてあなた自身の満足のために作成されます。



個人的な経験または初心者にしない方法



プロジェクトの1つでは、プログラミングの学位を持つ大学を卒業したばかりの若い従業員を採用しました。 そして、ある若い労働者がなんとか驚くべきことを発見しました:「大学から知識を落とし、再び勉強しなければならないとは思っていなかったでしょう。」 何が彼を正確に襲ったのかわかりませんが、彼はすべてにおいて正しいです。 クールな並べ替え方法を勉強します。顧客は、いつ、どこでお金を使うか、いつ、どのくらい、新しい橋を建設するか、一般的にはプログラマーのスキル以外は何でも見るだけです。 そのため、多くのプログラマーは、企業で彼が最初の人から遠く離れており、会計士でさえ彼に人生を教えていることを知って失望しています。



ばかげているように見えるかもしれませんが、実際の生活ではゼロで割る必要があります。 これは、プログラマーとしてのキャリアの初めに出会った最も印象的な例です。 会計士は、真剣に、「まあ、ゼロで割る、つまり結果としてゼロになる...」などの概念で動作します。 私の愚かさのために、私はinし始め、人を学校に送り返し、適切な顧客を提供することを要求しましたが、この代わりに会社は私のサービスを拒否し、ゼロで割る方法を知っている人に頼りました。 今では、私の観点から見た鳥は必ずしも顧客の観点からそのようなものではないことを知っています。そして、これは単なる荒野でした。



利他主義はIT分野では歓迎されていません。 コンピュータークラブの立ち上げで優秀な人を支援することに決めた(彼らは約15年前に流行していました)が、それは完全に無料です。 はい、お金のないペニーの日で、良い人とコミュニケーションをとるためだけです。 しかし、それから彼は、「仕事のためにお金を取らないなら、彼は正直ではない」と言った理由で、私の助けを拒否しました。 そして、実践が示すように、すべてに独自の価格があります。 お金は開発者の動機付けであるだけでなく、顧客の動機付けでもあります。彼は再び長い箱の中の不要な機能を破棄し、開発者は他の誰かのクレイジーなアイデアを実装する必要がなくなります。



また、スペシャリストとしてのプログラマーの成長の最も興味深い事実に注目することもできます。 人はまだ初心者であり、it-worldの広大さを知っているだけですが、彼にはすべてを知っているようです。 経験から、プログラマーはほとんど何も知らないことを理解しています。 そして、プロフェッショナルになって初めて、開発者は彼が絶対に重要ではないことを理解し、主なことは顧客が満足することです。 もちろん、この冗談は冗談として語られますが、問題はこれが現実であるということです。



青年期の自分への提言



1.美しいコードに取り組み、標準構成、セルインベントリ、および予算編成をよりよく研究します。

2.良いユーザーは忘れてください。定義上、怠け者です。 彼らはイノベーションや困難を必要とせず、イノベーションがあれば、ユーザーは何らかの形で妨害と反抗を行います。

3.一般的に、ほとんどの主要なマネージャーは、その構造が必要な理由を知りません。 自分を謙虚にし、あなたの価値を証明しないでください。それは恩知らずであり、明らかに負けています。 あなたは故意にうなずかれ、賞賛されますが、完全に異なる人は実装されたシステムからすべての栄誉を手にします。 ところで、これはあらゆるプロジェクト活動に適用されます。

4.時間計画を学びます。 大学の後に直接練習し、プログラマーとして直接勉強する方が良いです。 これは非常に重要であり、正確にはこの知識がないため、多くのプロジェクトが最も不快な方法で失敗します。

5.お金を取ることを学ぶ。 くしゃみごとに一定量を取る。 はい、それは怖いです、はい、あなたは顧客を失う可能性がありますが、そのために夢中になったクライアントはすぐにあなたに仕事を提供します。

6.コンピューターゲームやスポーツをしないでください。 面白いです 多くは深刻な問題を抱えています。 1つ目、2つ目は生産性に強く影響します。 従業員のみがより効率的に働いている場合、多くの組織がジム、スイミングプール、フィットネスセンターに焦点を当てているのはそのためです。

7.最も重要なこと-あなたの家族を忘れないでください、あなたの家族に電話して、あなたの両親を訪問して、あなたの子供を尊重してください。 私を信じて、これらのエラーを修正することはほとんど不可能です。



C ++アルゴリズムのこれらのヒントで一般的なことは何ですか? これは珍しいことです。誰かがそのようなアドバイスを以前に私に与えていたなら、彼らははるかに少ない円錐を満たしていたでしょう。 世界のこのテキストの後に、若者によって詰め込まれたコーンが少し少なくなることを願っています。



All Articles