優秀なプログラマーがなぜNinjaと呼ばれるのですか?[閉まっている]


36

忍者プログラマーはどのように定義されていますか?それが単なる経験豊富な開発者である場合、それを説明するより良い方法は本当にありませんか?忍者は、開発者を自慢の妄想で引き付けるように設計された幼稚なマーケティング策略のように聞こえます。それとも何か不足していますか?特に、比較を有効にするプログラマーに必要な忍者の品質を知りたい(クールネスファクター以外)?

忍者の特性とアジャイル開発のいくつかの良い比較を行うこの記事を見つけました。しかし、私は忍者という言葉を雇用目的で使った人たちと、その背後にある動機について聞いてみたいと思います。

更新:議論の両側にいくつかの良い点が挙げられました。これらをブログ投稿で要約しようとしました。JBの回答を受け入れたものとして選択しました。これは、比較を行うためのすべての正当な理由を要約しているためです。


3
忍者は武道の専門家です。優秀なプログラマーはプログラミングの専門家です。

5
忍者と呼ばれたことはありません。一方、教祖またはマスター...
誰も

40
これは、ポインターを操作するときの「Ninjaメソッド」を思い出させます。機能するまで星(*)を投げるだけです。^^
ギャブリン

10
正しい用語は「キラーコーディングニンジャモンキーグルハンサムヒーローsexmachine」です。
Maxpm

2
@maxpm、できればプログラミング中に「sexmachine」ラベルが関係ないのですか?

回答:


33

私の考えでは、Ninjaと優れたプログラマーの間にはいくつかの類似点があります。

  1. 隠された武器/非正統的なスタイル-1980年代のGIジョーの漫画を見たことがあるなら、ストームシャドウのキャラクターを覚えているかもしれません。彼は剣といくつかの投げる星を持っていましたが、パンチとキックの正しいシーケンスで、エピソードで戦車を分解することができました。同様の方法で、プログラマーは、自分が持っていたとは思わなかった武器を引き出すことを必要とするいくつかの作業を行うために呼び出されます。これは、いくつかの場所で言及されている「ハッカー」ポイントに似ています。

  2. 名誉/尊敬-GIジョーやティーンエイジミュータントニンジャタートルズなどの忍者の西洋の描写でこれを見たことは確かですが、おそらく「アートオブウォー」からとられた敵を敬うという態度があったようです。優れたプログラマーは、どこかに優れたプログラマーがいることを尊重できます。これにはある意味で謙虚さもあります。

  3. 暗示的マスタリー-すべての忍者がマスターであり、そのため本当にうまく戦う方法を知るために彼らのスキルを磨いたというこの仮定があるかもしれません。優秀なプログラマーは、仕事を成し遂げるのに非常に有益ないくつかのスキルを同様に習得したかもしれません。

これらは表面的な「ああ、かっこいいね」を超えた数少ないものです。私はサムライがより正しいタイトルかもしれないことに同意しますが、一度物事が間違った形でしばらくの間出てきたら、TMNTは実際にはほとんどが忍者である秘密のmerc兵として考えられるものではないので、ここで物事を調整する必要があります技術的には。しかし、このポジティブな光の中で忍者の漫画描写で育った私たちにとっては、これが私たちのために固執するかもしれないので、ここにも懐かしさの要素があります。


19
黒い服とあまり話していないのはどうですか?:-P
JBRウィルキンソン

Ssshhh ...ステルスはそれらの隠された武器の一つです。:)
JBキング

4
「彼らの武器の中には、ステルス、隠された武器、および優れたコーディングスタイルへのほとんど狂信的な献身があります。...また、あまり話されていません...バハ!私は再び来ます...」
ティモシーボールドリッジ

あなたはサムライのことを考えています。忍者は血まみれの殺人者です。忍者には名誉はありません。
BЈовић

漫画や映画の形で「ティーンエイジミュータントニンジャタートルズ」を見たことはありますか?
JBキング

41

あなたが言うように、非常に希薄な比較をすることで、クールさとエリートを暗示しようとする試みです(頻繁にそうでない人の間で)。

個人的にこのフレーズは嫌いです(「ロックスタープログラマー」と共に人々を虐殺したいと思います-薬物癖やアルコール問題があり、少なくとも1台の車と1室のホテルを破壊した場合、ロックスタープログラマーになることができます。 )。

あなたはプログラマーです。もしあなたがプログラマーであることに問題があるなら、あなたはもっとクールだと思う何かをしたいので、それらに対処します(または、あなたがよりクールだと思う何かをやめるためにやめます)。他の人がプログラマーを見る方法が気に入らない場合は、それがあなたではなく彼らの問題であることを理解してください。

あなたは確かに、あなたが印象的であるために少し努力していると平均的な12歳の人に思わせるフレーズで彼らの心を変えるつもりはありません。

/暴言

編集:明確にするために、暴言は質問者に向けられていません...


6
@Larry-比較のほとんどは、他の分野の本当に優れた専門家にも同様に適用できますが、忍者の弁護士、忍者の医師、または忍者の売掛金スタッフ(おそらくハーバートコーンフェルドを除く)は獲得できません。プログラマがこれを行う必要性を感じるのは興味深い質問ではないでしょうか?
ジョンホプキンス

9
@Jom Hopkins、英国のNHSは忍者の医者でいっぱいです...あなたは確かに彼らを見ることはありません。
ケビンD

6
@Jon Hopkins:プログラミングカルチャーは、サブカルチャーレベルの絆とユーモアを促進します。多くのプログラマーは忍者をクールだと思っており、クールになりたいと思っているため、ニンジャと呼ばれるのはとても素晴らしいことです。当然、これは全面的には当てはまりませんし、そのようなことを嫌うプログラマーもいます。それは人次第です。しかし、一般的に、プログラミングは医師、弁護士などのような主流の職業に進化し、サブカルチャーの参照(ロックスター、忍者など)をもたらしました
アダムリア

3
@Adam Lear、これが「プログラミング文化」の本質的な部分であると思われるなら、そのような「文化」とは何の関係もない。私がこれまで他の開発者と経験した最も深い絆は、能力とメリットに基づいていました。
ジョナサンコンウェイ

3
@Adam-私は背景を理解しています、私は全体が少し10代だと思っています。20代と30代(およびそれ以上)になると、プログラマーは真面目なプロとして中傷します。プログラマーはプログラマーの文化を捨てるべきだと言っているわけではありませんが、XKCDとNeal Stephensonを読んだり、週末に暗号学を学ぶこと(これはオタクかもしれませんが、賢いかもしれません)と、これはほんの少し子供っぽいです。そして現実には、あなたが得ることができるほどクールではありません。
ジョンホプキンス

15

武道の専門家と優秀なプログラマーに共通する概念の1つは、その労力の節約です。武道の専門家は無駄な動きを避けます。優秀なプログラマーは不必要なコードを避けます。

不可視性の概念は、ライブラリ作成の透明性に変換されます。優れたライブラリには直感的なインターフェイスがあり、プラグインするだけで心配する必要はありません。

編集:私は最も重要なことを忘れていました:忍者と優秀なプログラマーの両方が訓練と練習の結果として非常に熟練しています。


1
1.それは武道に依存します。彼らはカンフーやカポエイラで無駄な動きを避けていますか?2.忍者やプログラマになることができますが、非常に下手です。とは

@ピエール:ありがとう。私の答えは微調整を使用できますが、質問が有効であることを実証するために何かをそこに置きたかったのです。ご覧のとおり、すでに1つの投票があります。
ラリーコールマン

15

私の理解では、すべての優秀なプログラマーがニンジャではありません。忍者は特別な品種です。忍者プログラマーは、異常な時間(例:午前3時)に現れ、普通の人が嫌がる危険なことをします(10年前の保守不能なプログラムで非常に重大なバグを修正するために16進エディターを使用するなど)実稼働サーバー上で)見えなくなります。

明らかに、忍者はそのようなスタントを定期的に実行して生き残るために優れた技術スキルを必要としますが、多くの優秀なプログラマーはその説明にまったく適合しません。適切な方法が用意されていれば、Ninjaは必要ありません。一方、不可能が発生した場合、それを持っていることは良いことです。


10

「冷静」および「エリート」要因に加えて、忍者はしばしばステルスであり、過去のセキュリティをこっそりして、してはいけない場所に侵入するなどのことを行うことが知られています。この特性はハッカーによって共有されているため、誰かが「忍者」が彼らにとって良いタイトルになると考えたと思います。IT以外の人にとって、ハッカーとプログラマーは同じものであり、「忍者」という言葉はとてもクールだと思うので、ちょっと立ち往生しています

したがって、ロジックは次のとおりです。

忍者=あるべきではない場所に過去のセキュリティを忍び込むことができるステルスな人

隠れてはいけない場所に安全を忍び込めるステルスな人=ハッカー

ハッカー=プログラマー

したがって、Ninja =プログラマー


疑わしい比較の可換性の性質によって証明された別の定理!
qualidafial

1
@qualidafial、私はあなたが推移的であることをかなり確信しています。
dan_waterworth

2

ここで人気のある感情に反論します。忍者とエンジニアをつなぐために、ロマンティック化とストレッチングがたくさん行われていると思います。忍者が入ってきて仕事をし、通常は検出されずに出て行くので、私はそれをシンプルに保ちます。私が作る唯一の飛躍は、サブカルチャーでチャック・ノリス対忍者についてのジョークを聞くことができ、明らかにすべてのプログラマーがチャック・ノリスまたはジャック・バウアーになりたいのですが、チャック・ノリスとジャック・バウアーは1人しかいないので、それぞれが(匿名)忍者。

第二に、忍者はWoWで頻繁に使用される用語であり、否定的な意味合いを持つ場合があります。さらに、伝統的な忍者は、muraと比較して名誉ではありません。だから、サムライのすべての見事な資質で、賞賛されているのが外側に知覚される資質である場合、「サムライプログラマー」をより頻繁に見ると思います。だからこそ、私は忍者の使用は神秘的なマントと短剣、卑劣なスキルを強調するためにもっとあるという考えにサブスクライブします。より積極的にスピンするために、これらはスパイ取引のストックスキルです。ならず者、インテリジェンス、および秘密エージェント。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.