特にプログラミング言語のキャリアをさらに伸ばすために、自然言語を学習しますか?[閉まっている]


52

英語は、以前のP.SEの質問に基づいたプログラミングの主要な国際言語であることが明らかなようです(ただし、非常に賛成のコメントは、英語のサイトでそのような質問をすると結果がゆがむことを正しく指摘しています)。

しかし、ソフトウェア開発のために外国語を学ぶことには利点がありますか?たとえば、中国人は完全に異なるソフトウェアツール、言語、技術などを持っていますか?日本語、ロシア語、およびその他の非ラテン語ベースの言語はどうですか?これらの他の言語にのみ存在するソフトウェア開発言語、ツールなどの世界がありますか?

または、これらの言語を知っている人は、私たちが知っている愛するツールや言語を使用していますか?


2
+1。いい質問です。私は自分自身を知りたいです。
ニール

2
あまり一般的ではない言語には、著者の母国語で書かれた本/チュートリアルがあります。たとえば、長い間、ほとんどのRubyのものは人気が出るまでは日本語でした。
-jozefg

6
昔は、コンソールビデオゲームの開発者であれば、日本語を知っていると役に立ちました。
デビッドセルゲイ

2
英語以外のプログラミング言語に関するウィキペディアのこれに関連する興味深いページ。
アレクサンダー

1
私は中国とロシアの開発者と仕事をしており、彼らは英語で働いていたので、あなたのスキルを向上させることは常に有益ですが、難しい言語を習得する努力は(つまり、西洋のアルファベットを使用しないという意味です)おそらくごくわずかです。
熱波

回答:


44

タイトルの質問に答えます。答えはイエスですが、あなたが望んでいる理由のためではありません。IMOは、話し言葉で多言語を使用することで、アイデアを表現に使用されるものから分離するのに役立ちます。同様の理由で、1つから始めた場合、少なくとも1つの非Cベースの構文言語を学習することをお勧めします。


17
+1複数の人間の言語を知ることは、抽象的な思考に役立ちます。これは、ソフトウェア開発にしばしば適用されます。
アラン

4
+1(できればもっと)概念とそれを説明する言葉の違いを理解できなかったために、自分自身で問題を引き起こす人があまりにも多く見られました。
アントン

3
ASLなどの
手話

1
@ TruthOf42少なくとも、ASLでコメントされたコードは見つかりません。
nalply

1
@EricDong知りません。7-8歳のときにノルウェー語を学びました。私は長年にわたって人々との交流から、多くの人々が非言語的思考を定期的に自分自身にとらえないという印象を受けます。複数の話された言語を知ることは、それで大いに役立つと思います。ASLを知ることは、おそらくさらに役立つでしょう。そしてもちろん、非常に異なるデザインの学校から複数のプログラミング言語を学ぶことも非常に役立ちます。私はお粗末な詩人ですが、そのようなものだと思います。言葉のカーテンの後ろで見るほど、アイデアを表現するのに効率的です。
エリックReppen

13

いいえ。学習資料を見逃していません。
オランダ語のネイティブスピーカーとして、開発環境と参考資料のほとんどが英語で書かれていることをお約束します。別の言語で書かれたいくつかのシラバスがありますが、それらのいずれにも魔法がないことを保証できます。

ただし、API / webservices / projectsのドキュメントまたはソースコード内のコメントは、英語とは異なる言語で記述できると想像できます。そのために、スペイン語、アラビア語、中国語など、最も話されている言語をいくつか取り上げることをお勧めします。


5
ゲームのために、私は....日本人は非常に便利であるかもしれないと想像-また、これは当然のことながら選択したフィールドに依存します
時計仕掛け-ミューズ

フランス語、英語、ドイツ語の3つの異なる言語でコメントされたコードに取り組みました。
nalply

12

英語圏以外の国で開発された特定の技術に特化したい場合には、意味があります。

たとえば、SAPはドイツの会社です。通常「SAP」と呼ばれるソフトウェアの巨人であるSAP ERPには、ほとんどのユーザーソフトウェアモジュールがSAP独自のプログラミング言語ABAPで記述されています。開発者は、ABAPコードを見ることができます(多くの場合、そうしなければなりません)。

10年前、ほとんどのABAP開発はドイツで行われ、コメントと識別子を英語にする必要があるというポリシーはなかったため、レガシーABAPコードには多くのドイツ語が含まれています。

ABAP開発者として、SAPが作成したレガシーコードを頻繁にデバッグする必要があります。私はドイツ語を母国語としていますので、常にドイツ語と英語を精神的に切り替えるのはちょっと面倒ですが、ドイツ語を話せず、ソースコードでドイツ語でコメントされていることに突然気づきます。

古いAPIにはドイツ語もあります。たとえば、現在の時刻はグローバル変数にありますSY-UZEIT。「Uzeit」は「Uhrzeit」の略語で、「時間帯」のドイツ語です。customerIDはKUNNR( "Kundennummer")、自国通貨の金額はBETRH( "Betrag-Hauswährung")などです。

ABAPの参考書の隣にドイツ語の辞書を持っている、ドイツ人でないABAPの貧しいプログラマーの逸話を聞いたことがあります。


TYPO3での作業でも同様の経験がありました。
リオリ

9

中国のように自立した市場でキャリアを計画しない限り、英語だけで十分だと思います。愛好家は他の言語を使用するかもしれませんが、私が英語の周りで見たすべての有料作品では、必須言語でした。実用的な理由もあります。

一方、より多くの言語を知ることは、衛星活動でのキャリアに役立ちます。多くのプログラムはローカライズされており、翻訳とテストの両方で対象言語を知っている必要があります。それは貴重な「スキル」です。あなたがこれに親近感を持っているのであれば、先に進み、学んでください。


1
IMOは一般に、ターゲット言語を話すように育てられていない翻訳者を雇うのは間違いです。多くのアメリカ人は外国語を英語に翻訳するのに非常に有能かもしれませんが、英語を他の言語に翻訳するのに有能な人はほとんどいません。
ケビンクライン

2
必ず、プログラマはあまりにも翻訳者として無駄だろう-しかし、彼はローカライゼーションに関連する問題を見つけることができれば、それは良いことだ
バログパル

8

はい、別の言語を学ぶことはあなたのプログラミングのキャリアを促進します。私の意見では、別の言語を学ぶことはあらゆるキャリアを促進するからです。

これにはいくつかの理由があり、そのうちのいくつかはすでに上記で触れました:

  • 別の言語を学習すると、視野が広がります。それは必然的にあなたを別の文化や考え方の側面にさらし、これをあなた自身の思考にマッピングする経験を与えます。明らかに、これはプログラミングと類似していますが、対人コミュニケーションに一般的に役立つスキルでもあります。
  • 別の言語(特に2番目の言語)を学ぶと、新しい言語の文法がどのように機能し、それを自分の言語の文法にどのようにマッピングするかを分析することを余儀なくされるため、自分の言語の仕組みを理解するのに役立ちます。それがそうです」。キャリアで母国語のみを使用している場合でも、母国語をよりよく理解すれば、より効果的にコミュニケーションをとることができます。
  • 別の言語の知識が少しでもあると、見栄えがよくなります。小規模な企業を除くすべての企業は、外国のサプライヤーまたは顧客に対処する必要があります。どちらも英語でビジネスを行っている場合でも、母国語の人々と小さな歓喜(例:挨拶)を交換できることは良い印象を与えます。その良い印象を作成するために利用可能であることはあなたの会社であなたの地位を高めます。
  • 別の言語を知っていると、母国語を使用している場合でも、その言語のネイティブスピーカーとより効果的に通信できます。これは、外国語で一般的な構造体を使用しようとする試みを見つけて、たとえ自分で明確ではない場合でも、それらから意味を取得できるためです。同様に、それはあなたが現れるかもしれない偽の友人を見つけて理解するのに役立ちます。
  • 言語をよく知ることは、その言語が話されている国で働く可能性を開きます。これにより、利用可能な潜在的な仕事のプールが広がり、順番にあなたのキャリアを促進するより多くの機会があることを意味します。

それで、あなたの質問に直接答えるために:外国語を学ぶことは、プログラミング言語と学習リソースの驚くべき新しい範囲を開くでしょうか?いいえ。それはあなたをより良いソフトウェアエンジニアにしますか?おそらく直接ではありません。しかし、それはあなたをより良く、より丸みを帯びた、より雇用可能な人にし、あなたのキャリアを向上させるのに役立ちますか?絶対に。


2
+1!もっと大まかに言うと、これは、何かを学ぶこと(あらゆる価値のほとんどについて)がキャリアを促進するからです。しかし、それだけではありません。より教育を受けた人間は、単により良い生活を送っています。
インゴ

APIが技術的な数学やビジネスに焦点を合わせていない場合、英語以外の人は英語の弱点を認識します。言語で考え、別の言語で(異なる規則、構文、文法で)翻訳するには、創造性、想像力、ユーモアが必要です。
cl-r

7

英語が母国語である場合、外国語を学習してもプログラミングキャリアに直接役立つことはおそらくないでしょう。個人的には、外国語を知ることはあなたの視野を広げる非常に良い一般的な運動であると思います(「Wie viele Sprachen du sprichst、sooftmal bist du Mensch」)、しかし、あなたが即座の利益だけを見ているなら、それはおそらく大騒ぎの価値はありません。

自己実現は別として、純粋に実用的な理由で外国語を知っていることであなたが恩恵を受けることができると思ういくつかの状況があります:

  • 海外のパートナーまたは顧客との協力。コミュニケーションに十分な言語を知らない場合でも、いくつかの基本を知ることで、コミュニケーションで発生する可能性のある問題や、外国語のユーザーが製品に関して抱えている問題を認識できる場合があります。
  • 国際化が必要な製品に取り組んでいます。いくつかの外国語の基本を知らなくても、すべての複雑なi18nライブラリが何のためにあるのか疑問に思うかもしれません(メッセージ "%d new messages"が%dの値に応じて同じ言語への複数の異なる翻訳を必要とする理由など) 。
  • 適切なUnicode処理の複雑さを理解するのに役立ちます。

ただし、前述のように、多くの場合、すぐに得られる利益だけを見れば、メリットは努力する価値はありません。


6

英語は、EU / USだけでなく、この分野で支配的な言語です。

中国語のネイティブスピーカーとして、同じOS、プログラミング言語、ツールのセットを使用している人々を知っています。それらのいくつかは中国語に翻訳され、残りは英語の小説ほど難しくはありません。中国語のキーワードを含む「中国語のプログラミング言語」がいくつかありますが、それらは広く使用されておらず、深刻なものとさえ見なされていません。

現在、私は日本に住んでいますが、ここにも似たようなものがあります。少なくとも、中国語や日本語、その他の神秘的な自然言語を知っていれば、かけがえのないリソースへのアクセスが許可されるとは思いません。

一方、セマンティクスの(言語指定ではない)理論の恩恵を受けました。自然言語とプログラミング言語の両方で、コードレビューと同様の方法で式を区別し、洗練するのに役立ちました。


5

異なる言語を学習することの直接的な利点は、国際化に関する問題をよりよく理解することです。つまり、日付形式と同様に、文法にはさまざまなルールがあり、文字列のプレースホルダーを追加するだけではローカライズを行えません。

プログラミングキャリアを向上させたいだけの場合、既存のスキルを磨く、または異なるパラダイムからできれば別のプログラミング言語を学習するなど、時間をより効果的に使用できます。

そうは言っても、特にあなたが単一言語である場合、異なる言語を学ぶことには多くの有益な直接的および副作用があります。多言語の人々に明らかなように思われる多くのことは、異なる言語にさらされていない場合、実際にはそれほど明白ではありません。例えば、私は多くの単一言語の人々が言語依存のジョーク(しゃれとして)翻訳されたときにまったく動作しません。これは、あなたが鈍感な失策を起こすのを防ぐのに役立ちます。私のお気に入りの例は、ペプシの「生きている」広告が中国語で「死んだ先祖を生かす」と誤訳されているという隠語話です。この余分な感度を持つことは、どんなキャリアにおいても役立ちます。

結論として、新しい言語を学ぶことには大きな利点があると思います。それがあなたの時間の効率的な使用であるかどうか私はちょうど質問します。


私は英語があなたの母親だと思います。
Tulainsコルドバ

@ user61852どうやってそれを手に入れるかはわかりませんが、間違っています。
コンガスボン

3

英語は問題解決の言語です。

この短いビデオをご覧ください。

「あなたの母国語はあなたの人生ですが、英語を使うと、気候変動や貧困などの世界的な問題についての幅広い会話、グローバルな会話の一部になります...数学は科学の言語、音楽は感情の言語、そして今や英語問題解決の言語になりつつあります。」

-- Jay Walker, american inventor and entrepreneur

ローマ帝国が崩壊していなかったら、今はラテン語で書いているでしょう。

間違いなく英語は行くべき言語です。私の母国語はスペイン語であり、スペイン語は最も広く話されている言語の1つですが、スペイン語の技術資料、ドキュメント、チュートリアル、ブログ、Q&Aサイトなどの量は、英語の膨大なリソースにも近づいていません。

また、英語には簡潔な品質があり、多くの文脈で英語を明確にしています。

その他の理由:iTunes U.


1
「英語は問題解決の言語です。」どういう意味ですか?
ypercubeᵀᴹ

:この短いビデオを参照してください@ypercube climateadaptation.tumblr.com/post/4895540259/...
Tulainsコルドバ

2

私は中国語に堪能で、時には中国のプログラマーの世界を覗きました。彼らの学習教材のほとんどは英語のものに翻訳されているので、あなたはその面で何も見逃していません。ただし、プログラミング技術の選択における文化的な違いを見るのは興味深いです。たとえば、Goは中国で他のどの国よりも人気があるようです。「golang」のGoogleトレンド検索の実行を確認できますhttp : //www.google.com/trends/explore? q=golang#q=golang&cmpt=q


2

英語は事実上のソフトウェア開発者の言語ですが、他の言語のコミュニティサイトで何度かヒントと解決策を見つけることができました。自動翻訳はそのようなページを押し出しますので、そのまま読むことができてうれしいです。

もちろん、あなたが他の言語に精通している人々と仕事をしているなら、彼らの母国語でコミュニケーションをとることができるのは、プロとしても個人的にも非常に良いことです。レベルとあなたのレベルによっては、セマンティックミスを起こしやすい言語に理解を集中させるよりも、自分の言語でいくつかの専門用語を学び、最も快適な方法で表現させる方が簡単な場合があります。


自動化された翻訳者は、「テーブル」をスペイン語の「メサ」に翻訳します。これは、データベーステーブルに関するコンテキストに関係なく、食事が提供される家具を意味します。
Tulainsコルドバ

2

それはあなたがキャリアとして理解していることによります。

あなたがあなたの国で従業員として働いていて、それをそのままにしたい場合、通常はあなたの母国語と英語以外の言語を知る必要はありません。例外は、あなたの会社の主なクライアントが外国企業であり、その会社の言語を知っている必要がある場合です。たとえば、西ポーランドの多くの企業は主にドイツの企業と協力しており、ドイツ語を知っていることは上級開発者として働くための大きな利点であり、要件でもあります(ジュニアは顧客と連絡を取りませんが、ドイツ語を話す必要はありません) )。

ただし、フリーランサーになりたい場合は、顧客の言語に堪能である必要があります。もちろん、英語圏の国のみをターゲットにできますが、たとえばドイツ語やフランスを知っていると、より多くの機会が得られ、より良い支払いの可能性のある契約が得られます。

海外働きたい場合は、状況によります。もちろん、アメリカまたはイギリスに行く場合、英語が正しい選択です。で小さな国(ヨーロッパで)ので、外国請負業者として、あなたはデンマークやオランダでは例えば、多くの英語圏の仕事を期待することができ、多くの英語圏のチームがあります。

しかし、ドイツなどの大国では、英語を話す仕事は例外であり、ドイツ語の良さを知らないと、何かを見つけるチャンスはほとんどありません。最高の有給契約を得るには、ドイツ語を流speakに話す必要がありますが、そうすれば本当に有給の仕事を得ることができます。


2

これはいい質問です。別のプログラミング言語を学習するのと同じ理由で、別の話された言語を学習することは有用であると主張します。これにより、新しい方法で物事について考えることができます。

良くも悪くも、英語はプログラマーの普遍的な言語です。ですから、英語しか話せないので見逃すことはあまりないでしょう。


1

ここのすべての人々は、プログラミングのために別の言語直接学ぶことの即時の利点がないことに同意しているようです(プログラミング言語は主に英語に基づいています、それはコンピュータサイエンスの教科書やジャーナルの言語などです)。

それにもかかわらず、外国語を知ることは多くの点で有益です。少なくとも、いくつかの外国語を学んだ私の経験が教えてくれることです。他の言語で物事を表現するさまざまな方法を学び、物事を見るための新しい方法を開きます。

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