今日は、プログラマーにとっての困難がどこにあるのかについて議論しましょう。アルゴリズムは難しく、プログラミングは簡単ではありませんが、プログラマーが苦しむ理由はそれだけではありません。
プログラマーなら、次のようなジョークを聞いたことがあるはずです。
ジョーク プロダクトマネージャーには3つの奇妙なキャッチフレーズがある この機能を追加する必要があります その要件を削減することはできません。 明日オンライン ボスには奇妙なキャッチフレーズが3つある これは実はとても簡単です 細かいことは気にしない しっかりつかまって 顧客には3つの奇妙なキャッチフレーズがある これは欲しくない、あれが欲しい あれは欲しくない、これが欲しい 私が望んでいるものではない 顧客は重要な瞬間まであなたを見ることができません ボスは頭から尻尾までしか見えない神秘的なドラゴンのようなものです プロダクトマネージャーは仕事を辞めるか、 あるいは、他の人が残業するのを眺める 残ったプログラマーのグループは昼夜を問わずコードを書き続けた ダダダダダ…
1. プログラマーとクライアント 顧客が「まずは開発して、それから私が要件を上げます」と言った場合 Pilot Fish (注: Pilot Fish はこの記事の主人公の名前です) は、ソフトウェア プロジェクトを受注しました。プロジェクトの要件は、サービス スケジュール、機器の追跡、エンジニアのサービス要求、およびいくつかの設計上の問題など、会社のカスタマー サービス センターが受信したさまざまなサービス要求を処理できるようにすることです。 「私はとても熱心に、ペンと紙を持って各部門の責任者と一人ずつ話し、彼らのニーズや意見を記録しようとしました」とシャオ・ユエさんは困惑しながら語った。 「彼らが私に返してくれた答えはいつも同じでした。『分かりません。試してみて、わかるでしょう。』」 Xiao Yuer は落胆せず、さまざまな部門の潜在的なユーザーを訪問して意見を求めました。しかし、この人たちは上司たちとまったく同じです。彼らはXiao Yuerにこう答えた。「大まかなアイデアを教えてください。それから私たちが提案します。」 Xiao Yuer さんは考えました。「特別な要件なしにプロジェクトを完了するにはどうすればいいでしょうか?」突然、彼の頭の中にアイデアがひらめきました。やがて、彼はすべての部門長を自分のプロジェクトのプレゼンテーションに招待し始めました。 彼は会社の社長まで招待し、社長が本当に会議室に現れたとき、シャオ・ユエは死ぬほど怖がりました。しかし、今は振り返るしかなかった。 会議室は人でいっぱいでした。Xiao Yuer はプロジェクターをオンにして、プロジェクトのデモンストレーションを始めました。プロジェクトのタイトルが大画面に表示されます。数秒後、コンピュータの CD-ROM が自動的に開き、数秒後に再び自動的に閉じました。
デモは終了しました。 「機器に何か問題がありますか?」と部門長が尋ねた。 「問題ありません」とシャオ・ユエは言った。「もう一度見ますか?」彼はプロジェクトアイコンをダブルクリックし、プロジェクトのタイトルが再び大画面に表示されました。CD-ROMが自動的に開閉しました。 「しかし、その機能はCD-ROMを開くことだけです」と機械工学部門を担当する副社長は語った。 「そうだ、そして閉めろ」とリトルフィッシュは、怒った顔でいっぱいの部屋に向かって、精一杯の笑顔で言った。 「しかし、これは我々が望んでいることではない!」と電子部門の副社長は語り、他の部門の責任者も不満を表明した。 シャオ・ユエは大きな声で言った。「誰も私に何が欲しいか言わなかったから、私は自分の考えに従って作りました。もう一度見たいですか?」 会議室は静まり返り、怒りの雰囲気が漂った。会議室の後ろに座っていたCEOが椅子から落ちるまで、静寂は破られなかった。 「死ぬほど怖かったし、私のせいで彼が心臓発作を起こしたのかと思ったけど、彼が突然笑い出した」とシャオ・ユエさんは後に語った。 「その日の終わりまでに、さまざまな部署からプロジェクトの依頼を受けました。しかし、その後数か月間、彼らは私を無視しました。」 2. プログラマーとプロジェクト 3. プログラマーとユーザー 私はかつて、プログラマーは普通の人ではなく、ある種の超能力を持った人だと言いました。しかし問題は、プログラマーが自分のこの特別な能力に気付いていないことが多いことです。次の文章を見てください。 1. 昔、ナンバープレートの末尾が 404 の車を購入したプログラマーがいましたが、後になってその車が見つからなくなりました。
2. プログラマーにとって、この世で最も遠い距離は生と死の間ではなく、自らが作り出したバグが目の前にあり、どれだけ努力しても見つけることができないのです。 。 。 3. プログラマーの間でよくあるジョーク: コメントを残さずにコードを提出すると、そのコードはコメントと同じ長さになる。 4. あるプログラマーが肉屋で 1 キロの肉を購入しました。家に帰って重さを量った後、不満げに肉屋に走って戻り、店長に「24 グラム足りません...」と言いました。
5. サーバーは、その機能に応じて、データベース サーバー、Web サーバー、キャッシュ サーバー、ダウンロード サーバーなどに分類できます。映画をダウンロードしてください...
6. 10 行のコードに 9 つの警告と 8 つのエラーがありますが、プロジェクト マネージャーは 7 日間で習得でき、6 日間ですべてを学習できるとあえて言います。このような中途半端なプロジェクト マネージャーは本当に卑劣です。 7. オンラインでチャットしているときに、相手が豚であることを伝えたい場合、ほとんどの人は「xxx you pig.」と入力しますが、プログラマーは xxx.isPig = TRUE と入力します。 8. この人はプログラマーに違いない。なぜなら、彼の推定能力が彼の身元を明らかにしているからだ。
9. プログラマーはコードを書くのに疲れたとき、よくこのように自分を励まします。 10. 女性プログラマーが良いニュースを発表する方法。 しかし、彼らの目には、彼らは普通の人々と同じように普通の人であると考えられており、プログラマーができることは、顧客やソフトウェアユーザーなどの他の人にとっても簡単にできるはずだと考えています。 しかし、実際には、ほとんどの人、つまり大多数の人(ソフトウェア開発会社の顧客やソフトウェアを購入するユーザーを含む)は、コンピュータの初心者(コンピュータの知識/コンピュータの知識/ソフトウェアの知識についてほとんど知らない人)です。 プログラマーにとっては非常に明白なソフトウェア操作でも、ユーザーが実行するとさまざまな奇妙な現象が発生します。これはプログラマーにとって非常に苦痛です。 ある時、顧客から電話があり、自分のコンピューターのデスクトップで大きな e が見つからないと言われました。私は何を言っているのか分かりませんでした。どの大きな e が欠けているのでしょうか? 顧客は、英語の大きな文字 e のようなアイコンが見つからないと説明しました。私はします。結局、デスクトップ上の IE ブラウザのアイコンが消えたという意味だと分かりました。 また別の時、ある顧客がページに検索機能を追加するようリクエストしました。私は彼に、システムにはすでに検索機能があるのに、なぜここに新しい検索機能を追加するのかと尋ねました。彼は、その検索は必要なく、このページで特定のキーワードを検索したいのだと言いました。 さらにやり取りを重ねていくうちに、彼が求めていたのはブラウザの CTRL+F ショートカット キーの機能だということが分かりました。 このようなユーザーの特性により、プログラマーが最も優れていると考えるプログラムが、顧客の手に渡ると極めて使いにくいソフトウェアとなり、田舎のトガリネズミのように苦情の電話が鳴り続けるのです。 その後、根本的な原因は、プログラマーがユーザーのソフトウェア制御能力を過大評価し、自分自身のソフトウェア作成能力を過小評価していたことであることがわかりました。その結果、次の図に示すように、プログラマーは、開発したソフトウェアを使用する際に顧客がばかげた行動をとるのを目にしました。
プログラマーの目から見ると、これはユーザーが開発したソフトウェアをどのように使用するかということである。 プログラマーが気性が荒い場合、このような状況に遭遇すると、必然的に顧客に苦情を言うことになります。また、プログラマーは一般的に気性が荒いです。したがって、プログラマーが顧客とコミュニケーションをとるときは、通常、プロジェクト マネージャーがそれに同行して、状況が悪化するのを防ぎます。 ユーザーはプログラマーに多くの問題をもたらしますが、実際にはプログラマーの栄光はすべて顧客から来ます。なぜなら、顧客が製品の使用に満足したときにのみ、プログラマーは達成感を得ることができるからです。たとえば、新しいソフトウェアを使用しているときの次の顧客の表情は、午後の北京の濃いスモッグの中でプログラマーを笑顔にするのに十分です。
新しいソフトウェアを使用するときのユーザーの様子 プログラマーは気性が荒いですが、皆自分の仕事に熱心であり、個人的な恨みはありません。ソフトウェア開発において緊急のタスクがある場合、彼らは文句を言わず残業をいとわない。リリースされたソフトウェアに大きなバグが見つかった場合、彼らは深い罪悪感を覚え、一夜にして緊急のバグ修正を急いで行う。 ユーザーが時間内に満足できない場合、食欲がなくなり、食べたくなくなり、眠りたくなくなります。短期的には完全な解決策が本当にない場合でも、ユーザーが一時的に困難を克服できるように、いくつかの不正だが効果的な解決策を考え出します。たとえば、緊急修正は次のとおりです。
ユーザーはプログラマーに配慮する必要があります。プログラマーの生活は実は非常に矛盾した状態にあります。プログラミングは、レンガを積むレンガ職人のような他の業界とは異なります。レンガを積むごとに、壁は高くなります。 しかし、プログラミングは違います。プログラマーが一日中汗をかきながらコードを書くこともありますが、開発の進捗が必ずしも改善されるわけではなく、時には後退することもあります。 ソフトウェア プログラミングは現実とフィクションが混在する世界です。コードがなぜ機能するのか理解できないこともありますが、次の図に示すように、そのようなコードで構成されたソフトウェアが実行できることに驚くこともあります。 ***、プログラマーと接する際に注意すべき点についてお話しします。プログラマーは一日中プログラミングロジックを扱っているため、原因と結果に対して特に敏感です。 あなたの言葉の因果関係が明確でなければ、相手は混乱してしまいます。あなたの言葉の因果関係が不完全であれば、相手は間違った行動を取ってしまいます。文中に「if」がある場合は、「then」を使用して文を終わらせるか、「else」を使用して選択肢を示し、主語を明確にする必要があります。明確でない場合は、次のような事故が発生します。 あなたがプログラマーであれば、私の言っている意味が分かると思います。しかし、プログラマーの「苦しみ」はこれだけではありません。
プログラマーの仕事が大変すぎると感じて転職したい場合はどうすればいいでしょうか?
|
<<: 確率的隠れ層モデルに基づくショッピングペアリングプッシュ:アリババが新しいユーザー嗜好予測モデルを提案
>>: AIがサイバーセキュリティにできること、できないこと
最近、Reddit コミュニティで機械学習の分野を批判する記事が白熱した議論を巻き起こし、3.1k ...
2009年に設立されたPercentage Pointは、間違いなく中国のビッグデータ産業の発展の...
[[386762]]ビッグデータダイジェスト制作出典: ベンチャービート編集:赤道のパンダACM ...
B2B ソフトウェアの営業およびマーケティング チームは、「人工知能 (AI)」という用語を好んで使...
人工知能 (AI) は、自然科学のさまざまな分野を網羅しており、主に特定の種類の知的な人間の活動をモ...
[[183485]] LISP 言語の歴史と、いくつかの余談や興味深い逸話は、実際に本として読む価値...
「言葉の含意は心が繋がっている」という意味で、言葉がテレパシーのような共鳴を呼び起こし、人と人の間の...
「一つの夢」から「共に未来へ」へ2つのオリンピック開催都市、北京オリンピック聖火は今冬も歓迎される...
[[341122]]この記事はWeChatの公開アカウント「Xiao Lin Coding」から転載...
自然災害が増加する中、スイス・リーは人工知能を活用して、顧客が保険金請求をより正確に予測し、手続きを...
モノのインターネットは急速に「あらゆるもののインターネット」になりつつあります。ガートナーは、202...