X



【IT】PythonがJavaに迫る勢い - 7月の開発言語ランキング [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
0001ノチラ ★
垢版 |
2017/07/09(日) 10:03:54.81ID:CAP_USER
2017年7月の「PYPL PopularitY of Programming Language」が公開された。PYPLはGoogle検索エンジンにおいてプログラミング言語のチュートリアルが検索された回数から、対象となるプログラミング言語がどれだけ話題になっているかをインデックス化したもの。チュートリアルの検索回数を人気度と位置づけてランキングしている。

2017年7月におけるインデックスは次のとおり。
順位 プログラミング言語 インデックス値 推移
1 Java 22.6% ↓
2 Python 16.4% ↑
3 PHP 9.1% ↓
4 C# 8.2% ↓
5 Javascript 8.0% ↑
6 C++ 6.6% ↓
7 C 6.5% ↓
8 R 3.7% ↑
9 Objective-C 3.6% ↓
10 Swift 2.8% ↓
11 Matlab 2.5% ↓
12 Ruby 1.8% ↓
13 VBA 1.4% ↓
14 VisualBasic 1.3% ↓
15 Scala 1.2% ↑
16 TypeScript 1.2% ↑
17 Perl 0.8% ↓
18 Go 0.5% ↑
19 lua 0.4% ↓
20 Kotlin 0.4% ↑
21 Delphi 0.3% ↓
22 Rust 0.3% =
23 Haskell 0.3% =
http://n.mynv.jp/news/2017/07/07/053/images/002l.jpg
http://n.mynv.jp/news/2017/07/07/053/images/003l.jpg

長期に渡ってJavaが第1位を維持しているが、シェアは徐々に下がってきている。ほかのプログラミング言語ランキングでも同様の傾向を示している。PYPLプログラミング言語ランキングではPythonが高いポイントを獲得しており、そのポイントは徐々にJavaに迫ってきている。Pythonは採用されるシーンを増やしており、このままの傾向が続いた場合はPythonがJavaを超える可能性がある。
http://news.mynavi.jp/news/2017/07/07/053/
0407名刺は切らしておりまして
垢版 |
2017/07/12(水) 23:32:33.93ID:hJ46XiQ+
>>400

> は、多分、前者を先に覚えると、他の言語の不自由さに絶句して覚える気が無くなる。んだと思う。
> C言語は、所詮便利なアセンブラだから、アセンブラ覚えるよりは遥かにマシ、だと思うことからはじめれば、多少は苦痛が和らぐかも。

教育というのは杓子定規な理論が通じるものではない
確かに苦痛を和らげるという考え方は良い着眼点だと思う

>>405
>(実際、引用された転職サイトのPython Developerの応募者のうち2%しか博士号をもたず、54%が高卒以下)

ハッカーであれば高卒であってもアメリカのIT企業なら問題なく入れる
しかしリサーチャーにはどう逆立ちしてもなれないから、なりたいなら40〜50歳代でも大学・大学院に入り直すのがアメリカ流
0409名刺は切らしておりまして
垢版 |
2017/07/12(水) 23:51:32.76ID:tdDnSCbt
>>394
すごく久々に Lisp を読んでみたけど、とてもわかりにくい。

それに、速度が出なさそう。
http://keens.github.io/blog/2016/02/04/common_lispdekousokugyouretsuenzan/
速度を出すのは、多分、Lisp原理主義に反してるんだろうね。
結局、一次元のものを、1個1個丁寧に処理するのがLispであって、型とかが自由とかなのは問題じゃないんだろう。

Java VM のマシンコード見てるような見にくさ。
もしくは、Forth か。
Forth もスタックに積んでどうにかする、という一種の原理主義的なところがあったけども。

大昔のCPUで、メモリもちょっとレジスタも数個というような物で動かすには、時流が合ってたとは思うけども。
Lisp は、一次元のものがメモリに格納されていることを暗に前提にしているよね。
その格納物をレジスタに取り出して、何かして、またメモリに戻すというような、いつもメモリの相手をしないといけない状況が。

C言語でも関数呼び出しの際にスタックに積んでどうにかする方式なんだけども、普通の人の思考に沿った形で表現されていて、剥き出しの状態ではない。
それに、ここから先はアセンブラで書くことにする、というようないい加減さがあって、自由度が高いのかもしれない。
あと、Cの場合は時流に乗って、レジスタがいっぱいあるCPUならレジスタに変数割り当ててしまえ、というような現実的なところがある。

http://d.hatena.ne.jp/masatoi/20160229/1456679056

今でも Lisp でがんばってる人には頭が下がる。
0411名刺は切らしておりまして
垢版 |
2017/07/13(木) 00:19:24.11ID:1sn9Z6GA
>>401
最新版を追いかけると、そうなるね。

なので、仕事に使うには、バージョンアップせずに、バグだけ直してくれるようなのも求められている。
オープンソースでも全員がボランティアでやってるわけじゃなくて、速度が速い版で金取るとか、セキュリティ直すので金取るとかも必要。
例えば、phpの場合、今メンテナンスされているシリーズで古いのは、5.x系だけども、5.0.0 が出たのは、18 Mar 2004だね。
使い物になったのが、例えば、2005年だとして、10年以上メンテナンスされている。
php 5.x というくくりだと、Red Hat Enterprise Linux 7がサポート終了になるまでメンテナンスされるだろうから、30 June 2024までは使える。
最新機能が使えないのは置いといて。
一旦、php 5.x で作り始めたら、20年は使えますよ、という感じになってるね。それ以上に長く使いたければ、どこかで、php7に移行するなりして、
全部のソースコードをメンテナンスしましょうね。ということでしょう。
ちなみに、phpのコア部分を作ってる(作ってた?)連中は、Zend Technologiesという会社を作って、php関連で金の取れる仕事をやってる。

https://ja.wikipedia.org/wiki/%E3%82%BC%E3%83%B3%E3%83%89%E3%83%BB%E3%83%86%E3%82%AF%E3%83%8E%E3%83%AD%E3%82%B8%E3%83%BC%E3%82%BA
ゼンド・テクノロジーズの創業者はアンディ・ガトマンズとゼーブ・スラスキーで、彼らはイスラエル工科大学を卒業後、ラスマス・ラードフが生み出したPHPを仲間と共に拡張したことでよく知られている。
1997年、ゼーブとアンディはラスマス・ラードフのPHP-FIのパーサを書きかえ、その成果を PHP 3 としてリリース。1998年、パーサを完全に再設計し、これを Zend Engine と名づけた。PHP 4 はこの Zend Engine を使った最初のバージョンで、大きな成功を収めた。

こういう仕組みが無いと、そうそうオープンソースで安いからと手を出せない。

ちなみに、Zend が最初にやったので金になったのは、phpを一旦実行する前に軽くコンパイルするんだけども、そのコンパイル結果を破棄せずに、メモリーに保持しておくというもの。だったかな。
これで速度が3倍くらいになった。なので、多数のサーバーを使ってた所は、台数節約の代わりに、プラグインを買うメリットがあった。
商用版のプラグインと同じことをするオープンソースのプラグインが登場するんだけども、phpのマイナーバージョンアップ毎に、プラグインもバージョンアップしないといけないから、
Zendが儲けられ続ける仕組みはあった。

今は、
Zend Server - 企業向けWebアプリケーションサーバ。
Zend Studio - PHP用の商用(プロプライエタリ)統合開発環境 (IDE)。
Zend Guard - PHPスクリプトの覗き見を防ぐことができる。
というのをやっているようだね。phpが普及して、彼らも儲かる、その儲けを元に、古いphpを使いたい企業向けにメンテナンスをする。
そして、企業は古いphpを Zend Server で動かす、というようなエコシステムがあるんだと思うよ。
0412名刺は切らしておりまして
垢版 |
2017/07/13(木) 00:31:39.47ID:1sn9Z6GA
>>402
なるほどね。認知バイアスか。
プログラム書いて食べて行こうと思ったら、毎年1個とは言わないが、数年に1個新しい言語を覚えるくらいの人じゃないと難しいかもね。
高給取りになりたければ、他の人が覚えるとか、学校で教え始めるよりも前に覚えないとね。
0414名刺は切らしておりまして
垢版 |
2017/07/13(木) 02:41:07.37ID:26anDASq
python2系のときは日本語の扱いがむずかったが、
3系になって使いやすくなった。

それプラス機械学習ブーム
0416名刺は切らしておりまして
垢版 |
2017/07/13(木) 14:06:58.00ID:uzw3kOmA
>>412
一度複数言語覚えたら、その後の言語を覚えるのはだいぶ楽だと思う。

俺はCとJavaとVBを同時期にいっぺんに勉強して、お互いに移植したりしたから多言語使うのには慣れた
0417名刺は切らしておりまして
垢版 |
2017/07/13(木) 17:56:31.90ID:1sn9Z6GA
>>416
まあ、そうだね。
ただ、CとJAVAはほぼ同じ言語構造。
VBも同じ感じだね。BASICも元をたどるとFORTRAN。

次は、R に挑戦してみてください。
0419名刺は切らしておりまして
垢版 |
2017/07/13(木) 19:09:04.85ID:yPFzcW8q
>>412
>なるほどね。認知バイアスか。

自身の合理主義を過信する傾向が強く、認知バイアスにハマってることを理解しない人間も少数はいるとは思うが
大半は理解してるが、多忙のために修正不可な状況にあるのだろう

> 毎年1個とは言わないが、数年に1個新しい言語を覚えるくらいの人じゃないと難しいかもね。

複数の言語だとアメリカでは厳しい
専門性を一言でまとめるという意味ではなく
一つの言語で行う事を一通りできないとソフトウェア技術者としての要件を満たさないからだ

例えばJavaだけでも習得したと言えるレベルにいくには短期間では難しい

https://www.quora.com/What-are-the-technologies-a-Java-developer-must-know

1. JSF, Playframework, Struts, Spring MVC
2. Hibernate / JPA
3. Dependency Injection (@Resource)
4. SOAP/JAX-WS
5. Ant, Maven, その他
6. JUnit、その他
7. Git(Javaとは関係ないが必須なスキルではある)
8. JSTL
9. WebSphere, Tomcat, JBoss, その他
10. AJAX(Javascriptではなく、Javaサーバー側との連携という意味と理解)

これを一通り理解したら他の言語にいくようにすべきで、単なるJavaの文法だけを学ぶだけではソフトウェア技術者にはなれない
0421名刺は切らしておりまして
垢版 |
2017/07/13(木) 19:24:12.33ID:Y37S0Yq5
COBOLほど単価高くないのがねー
VBの状況に近いかな
0422名刺は切らしておりまして
垢版 |
2017/07/13(木) 19:26:47.52ID:yPFzcW8q
JavaFX、Scala等の異論はあるだろうが、アメリカも新しもの好きばかりではなく、レガシーシステムは普通にある

それと技術や業種にも山と谷、峠はある

本当に珍しい技術で利益を上げている業種では、パブリックな年収要件とは比較にならない高額になることはある

バブル気味の会社の技術者に年収を聞くと(賞与・SOを含めたかまでは聞いていない)5000〜6000万円と回答した技術リード(優秀で経験はあるが傑出してはない)
もいて当時は疑ったが、実際その業界のその時期では複数の人間から普通だと昔話しを聞かされたので、本当だったとは思う

誰にもでも来るチャンスではないから、その水準を想定すると幻滅するだろうが、日本と比べると公開されたものより高い報酬の仕事があるのは逆のトレンドなので興味深い

そういう技術を身につけるには、何らかの技術に特化は必要であり、一年毎に言語を切り替える環境では厳しい
0423名刺は切らしておりまして
垢版 |
2017/07/13(木) 19:28:42.55ID:yPFzcW8q
>>420

今観測してる高報酬の求人で純粋の関数型言語をメインにしたものは無いが
0426名刺は切らしておりまして
垢版 |
2017/07/13(木) 19:38:27.72ID:yPFzcW8q
>>425
>今は関数型言語が熱い

>関数型言語というより、関数型言語由来の技術だな。それぐらいは知ってて聞いてると思うけど。

具体的に何の言語・技術か教えてもらえないか?
0427名刺は切らしておりまして
垢版 |
2017/07/13(木) 19:46:28.01ID:TUazWWI2
0059 名刺は切らしておりまして 2017/07/09 11:34:08
ジャップってUMLツールでプログラミングして爽やかな汗をかきながら触ったこともリファも見たことない言語(rustとかlisp)で熱い激論を繰り広げてそう
0428名刺は切らしておりまして
垢版 |
2017/07/13(木) 19:49:31.20ID:Ho+lX2Uz
流行ってるというよりダウンロードして
pythonインスコせんとディープラーニング試されへんからな(´・ω・`)
0429名刺は切らしておりまして
垢版 |
2017/07/13(木) 19:50:02.92ID:uaaGbF4O
>>426
関数型言語の基本というかそのもののラムダ、クロージャ、MLから来ている型推論、副作用を無くすlet(val)、Optionalなどなど
0430名刺は切らしておりまして
垢版 |
2017/07/13(木) 19:58:23.41ID:aAqD9U/X
>>24
最近、アウトソーシングが多いやろ。
クライアントが貸すPCのセキュリティが高過ぎて、officeとメモ帳くらいしか使えないって場所が多いんや。
そんな場所で業務ツール作るにはVBAしか選択肢がない。
HTML.css.javascriptをメモ帳で書くより効率的でもある…
ワイが知る必然的にVBAが入り込む理由(*´-`)
0431名刺は切らしておりまして
垢版 |
2017/07/13(木) 20:01:31.86ID:aAqD9U/X
>>399
SQLチューニング出来るスキルは需要あるよ

下手くそなSQLならクエリ、BQY使えばアホでも出来るからな…
0432名刺は切らしておりまして
垢版 |
2017/07/13(木) 20:02:01.83ID:8HGDAG/e
使われてる順位じゃなくて
検索された順位だからな

C言語なんて検索することないだろ
0433名刺は切らしておりまして
垢版 |
2017/07/13(木) 20:07:54.43ID:LMv+z4KV
瑕疵担保責任(かしたんぽせきにん)

納品されたシステム、プログラムに不具合があった場合、10年後でも無償で修理してもらうことが可能になった。

民法改正で事実上期限が「無制限」になった
不具合を指摘されたらすぐに行動をとるべし 納品物に不具合があれば損害賠償を請求される可能性もある

http://www.atmarkit.co.jp/ait/articles/1706/26/news014.html
http://itpro.nikkeibp.co.jp/atcl/news/17/052601508/?rt=nocnt

改正法では欠陥に気付いてから1年以内にITベンダーに通知すれば、通知後5年以内は修正や報酬の減額などを求められるとしている

全ベンダーが泣いた民法改正案を解説しよう その1
http://www.atmarkit.co.jp/ait/articles/1609/14/news009.html
http://www.atmarkit.co.jp/ait/articles/1609/14/news009_2.html
http://www.atmarkit.co.jp/ait/articles/1609/14/news009_3.html

ポイント1:修補や損害賠償、契約解除の期限がなくなる

従来あった「瑕疵担保期間は引き渡しから1年」という考えはなくなる。
条文にある通り、注文者は成果物が契約の目的に適合しないことを発見したら、
その「発見したときから1年以内」ならさまざまな請求ができる。発見が10年後なら、11年後まで請求可能なのだ。

もっとも、現実のユーザーとベンダーの関係でも、たとえ契約書に「瑕疵担保責任期間は納品から1年と」明記されていても、
「2年目以降は不具合の修正に対応しない」と主張するベンダーはまれだ。多くの場合は、納品から何年たっても、
バグが見つかればユーザーのところに飛んで行き、無償で改修するだろう。

重大な脆弱性が現バージョンから発見されました。こちらでアップデートしたところ、起動ができなくなりました。
至急弊社に来て修正作業をお願いします。なおお金は払わない。また営業に損失が出たので損害請求もする。
0434名刺は切らしておりまして
垢版 |
2017/07/13(木) 20:08:47.96ID:LMv+z4KV
366 :nobodyさん 2017/05/29(月) 16:07:39.16 ID:6v4UcGhE
今回の民法改正、ソフトウェア受託開発の場合、(検収後ではなく)バグ発見後1年瑕疵担保責任があるということで、地獄かよ、と思ったが、
元々問題が起きがちな受託案件がビジネス的に成立しなくなることで強制的に業界再編につながるなら良いことかもと思うようになった。
一部で地獄を見ても。
https://twitter.com/yukihiro_matz/status/869061879389343744

367 :nobodyさん 2017/05/29(月) 16:28:06.55 ID:6v4UcGhE
ニュース - 改正民法が成立、「瑕疵担保責任」などシステム開発契約に影響大:ITpro
http://b.hatena.ne.jp/entry/itpro.nikkeibp.co.jp/atcl/news/17/052601508/

372 :nobodyさん2017/05/29(月) 19:10:37.12 ID:???
Railsでシステム作って納品する

Railsはマイナー、メジャーのアップデートが半年以内に必ずある

客がアップデートする。アップデートによるエラーやバグ、動作の不具合に気づく

気づいてから1年以内に通知すれば、5年間無料保証ゲット

つまりRailsがアップデートするたびに、無償の修正作業を発生するということかな

376 :nobodyさん2017/05/30(火) 09:20:20.09 ID:L5po86sS
>>378>>379>>375
客が瑕疵担保責任法の法改正を知ってくると思うから、今後5年無償保証をお願いされるだろう
営業がそれでも仕事を取ってこれるか?たぶん無理だろう。無限に直していたら赤字になる。
こういう保守に弱い言語、ころころ仕様が変わる言語は仕事として発生しなくなってくる。
これは変わり目だ。お前らも早く逃げたほうがいいぞ。RubyやPHPなど動的言語は確実に廃れる。
保守に強い言語のみ生き残れる。
0435名刺は切らしておりまして
垢版 |
2017/07/13(木) 20:11:58.70ID:yPFzcW8q
>>429

>関数型言語の基本というかそのもののラムダ、クロージャ、MLから来ている型推論、副作用を無くすlet(val)、Optionalなどなど

最新のC++/Java/C#で実装されていない機能を言ってみて欲しいんだが↓の発言からも知りたい

>>420
>JavaはもはやCOBOLに近い

市場で必須とされてるのは、一昔であれば分散化、直近では並列化の実装力だと理解しているが
シリコンバレーの大企業のバックエンド・機械学習の職種の大半がC/C++/Javaという点からも、同じ世界をみているとは思えないんだが
0437名刺は切らしておりまして
垢版 |
2017/07/13(木) 20:16:47.45ID:uaaGbF4O
>>435
だから既存のオブジェクト指向言語が
関数型言語由来の技術をいち早く取り入れて延命してきたってこと
関数型言語を勉強した者からすると今更感が否めないw
0438名刺は切らしておりまして
垢版 |
2017/07/13(木) 20:23:05.65ID:uaaGbF4O
関数型言語は並列化に強い
副作用が無いから
letなどが積極的に使われると明らかになってくるよ
今後に乞うご期待
0439名刺は切らしておりまして
垢版 |
2017/07/13(木) 20:47:14.23ID:yPFzcW8q
>>436

日本の人月商売は知らないが、海外では今更感はあるのではないか

関数型の基本機能は古くからある言語でも使えるようになっており、純粋な関数型だと過去のコード資産が無駄になるという議論はあったようだ
だが新たに導入された関数型にデザインを変更するプロジェクトは一巡しており、アドバンテージではなく基本教養という印象だ

>>437-438

> 今後に乞うご期待

言うほど、そんなに新しい技術ではない

> 関数型言語は並列化に強い

教科書はそういうだろうが最近は様相が異なる

ブロックチェーン、IoT、自然言語処理、自動運転、機械学習のコアライブラリーもWeb配信のバックエンドもC/C++/Javaが大半な状況

並列化にしてもASIC/FPGA/GPUのメインのインターフェースはVHDL/Cのはずだが、そもそも仕事の総量が多くないし
企業が想定するレベルにある技術者が足りていない、もし山をとりたいなら今はC/C++かVHDL

過去のトレンドからも、その言語がバックエンドに使われてない限りは報酬がスカイロケット化するのは無さそうに見える

ARであればC/Java/Scala/KotlinかSwiftだろうし、C#にもチャンスはあるが、今直ぐに市場を席巻するほどの需要に力強さはないように見える
0440名刺は切らしておりまして
垢版 |
2017/07/13(木) 20:53:05.32ID:uaaGbF4O
>>439
まあ取り入れてはいるが結局は極端に言えばC言語でもオブジェクト指向プログラムができますよという中途半端なレベルだから色々問題が起きている気がするな。非同期処理地獄はその典型な気がする。せっかく状態管理で副作用をなくしてもその先で落ちるとか。
0441名刺は切らしておりまして
垢版 |
2017/07/13(木) 20:57:27.72ID:uaaGbF4O
いくら関数型言語の機能を取り入れてもその意味がわかっていなければ何もならない。COBOLと同じ年代の古い技術でも使わなければ意味がないということ。参照透明性ぐらいは覚えて損はないよ。
0442名刺は切らしておりまして
垢版 |
2017/07/13(木) 21:10:57.32ID:K3ozs42i
むしろCOBOLて関数型というか、OOP通り越して非構造化レベルの命令型言語な認識なんだが
0443名刺は切らしておりまして
垢版 |
2017/07/13(木) 21:15:20.32ID:fOdh9lKT
>>424
6も怪しい
0444名刺は切らしておりまして
垢版 |
2017/07/13(木) 21:25:30.53ID:Y37S0Yq5
>>439
どんな言語を使うかなんてわりとどうでもいい。
機械学習やりたければ機械学習の勉強するしかないし、
ARやりたければARの勉強するしか無い。

それらはいくら言語を勉強しても身につけることができないスキルなんで。
0445名刺は切らしておりまして
垢版 |
2017/07/13(木) 21:43:24.20ID:uaaGbF4O
人工知能で使われる言語はPythonが多いらしい。それを動かすコア部分が
いくらCで書かれていようがPythonの知識無しで作れるわけがない。ChromeブラウザのJavaScriptエンジンはJavaScriptを知らない人間には作
れない。ただそういう人間が、何万人も必要かと言えば、全く必要ない。むしろPythonやnode.jsを知っている方が仕事に就ける確率が高いという
だけの話。
0446名刺は切らしておりまして
垢版 |
2017/07/13(木) 21:56:43.71ID:Y37S0Yq5
>>445
pythonの知識なんて、一ヶ月勉強すれば十分な内容だよ。
用意された人工知能のライブラリ使うだけなら数日勉強するだけでも良い。
0447名刺は切らしておりまして
垢版 |
2017/07/13(木) 22:02:59.99ID:yPFzcW8q
>>444

企業が要求する機械学習もARも大した知識が必要だと聞いたことは無いが
適切なバックグラウンドがあれば半年でキャッチアップできるものという認識

リサーチャーになりたいなら、論文を有名学会で採択されてからでないと厳しいし狭き門
0449名刺は切らしておりまして
垢版 |
2017/07/13(木) 22:06:15.90ID:yPFzcW8q
>>446
>pythonの知識なんて、一ヶ月勉強すれば十分な内容だよ。

そういうこと。知識をつけても、一般エンジニア諸氏がそれの仕事にありつけるかは別の話


https://deepmind.com/careers/469511

Research Engineer

Working knowledge of C/C++
Working knowledge of Tensorflow or similar frameworks
Experience with multi-threaded design and parallel/distributed computing
Experience with implementing numerical methods and data visualisation
Interest in neuroscience

https://deepmind.com/careers/469519

Software Engineer

Minimum qualifications:

Bachelor's degree in Computer Science or a related technical field, or equivalent practical experience.
Strong software engineer experienced with large-scale software systems
Programming experience in C++ or Python with a desire to learn new programming languages
Experience working with two or more from the following: web application development, open source operating environments, distributed/parallel computing systems, data visualisation, information retrieval and/or networking
Good understanding of maths

https://deepmind.com/careers/470168

TensorFlow Developer

C++ and python
Strong software engineer
Good communication skills
Experience with high performance computing
Experience with distributed software architecture
Experience with machine learning frameworks
Deep curiosity to learn about AI and ML

https://deepmind.com/careers/644354

Rendering Engineer

AAA games engineer
Fluent in C++
Strong on maths
Deep experience with shader languages (HLSL/GLSL/Cg)
Expertise in modern rendering engine architectures
Experience with a wide range of graphics technologies
Knowledge of profiling, performance optimisation and distributed software architecture
Experience mentoring others or leading a small team will be a bonus
UE4 / Unity experience (nice to have)
0451名刺は切らしておりまして
垢版 |
2017/07/13(木) 22:09:30.57ID:yPFzcW8q
YoutubeはC/C++で作った配信ソフトウェア
https://careers.google.com/jobs#!t=jo&;jid=/youtube/software-engineer-mobile-youtube-1600-amphitheatre-pkwy-mountain-view-ca-7340002&
https://www.quora.com/Is-YouTube-still-written-in-PHP

2010: YouTube is a Java-based application that uses Guice.
2015: C++ and C are used in the video processing and transcoders. the database is Google's Datastore.

PHP => Java(自前フレームワーク) => C/C++

TwitterはRubyOnRailsからScala(+Java)に移植済み、一部はC++(本番環境かは確認とれず)
https://www.quora.com/What-programming-languages-are-used-at-Twitter

FacebookはC/C++/Java
https://www.quora.com/What-programming-languages-are-used-at-Facebook

フロントエンドに限ればPHPは今でも使われている(ただLAMPではない)
FacebookはフロントエンドはPHPだが、Hack等といったPHP系の新言語を使っている

バックエンドプロセス(画像や通信、C++/Java)やチャット(最近ErlangからC++に移植)と使い分けているが動かしているのはC/C++とJava

https://github.com/facebook?page=1
https://www.quora.com/When-did-Facebook-switch-away-from-using-Erlang-for-Facebook-Chat

PHP/Java/C++/Erlang(引退)を繋げる役割がThrift

AmazonはC++/Java

誰もが知るウェブサイトでLAMPをいまだに使ってるのはYahooとWikipediaのみとのこと

DropboxのPythonはWebのデスクトップクライアントであって、サーバーサイドはRust/Go/C++/Java

Instagramは少なくとも最近まではPython/Django/Nginx/PostgreSQL/AWSとされてるが、2012年にFacebookに買収されてから
システムに関する公開情報が古いニュースの使い回しになっている

GoogleもYoutubeをPHPからC++に移行するまで5年以上かけてるから、最新のサーバーサイド基盤はPythonではなくFacebookに近いものになってるか
現在移植中だろう
0452蓮家瑠流
垢版 |
2017/07/13(木) 22:16:38.20ID:L6c9JwA6
純粋関数型がええ
0454名刺は切らしておりまして
垢版 |
2017/07/13(木) 22:22:43.22ID:yPFzcW8q
ニコ動・ドワンゴも最近調べたら、PHP技術者は探してないようだ

プログラマーなら1ヶ月もあれば習得できるPythonや深層学習フレームワークだけしかできないエンジニアだとかなり厳しい印象だな

https://progres05.jposting.net/pgdwango/u/job.phtml?job_code

機械学習が特殊みたいな事をいうが、理系大学院も含めて修士クラスなら大量に毎年供給されてるから珍しいスキルではない
0456名刺は切らしておりまして
垢版 |
2017/07/13(木) 22:27:56.18ID:kg5n+Ra5
 
PHPプログラマー(キリッ!! (笑)
0459名刺は切らしておりまして
垢版 |
2017/07/13(木) 22:45:48.09ID:6IUyWRJG
>>457
Bootstrapまで使えれば一定のニーズはある 。更にLive2D SDKまで使えると人工知能のフロントエンドとか意外なニーズがある。
0461名刺は切らしておりまして
垢版 |
2017/07/13(木) 23:04:47.41ID:uaaGbF4O
非同期プログラミングは人間には分かりにくすぎる
これを解決したものが今後生き残る気がする
0462名刺は切らしておりまして
垢版 |
2017/07/13(木) 23:17:51.33ID:5hH5/kzq
>>461
そんなもんシーケンス図と状態遷移図がかければ設計できるだろ
あとはメッセージング機構とマルチスレッドを実装すればいいだけじゃん
0464名刺は切らしておりまして
垢版 |
2017/07/13(木) 23:25:06.91ID:0pcLM9Kd
>>457
jqueryは使えて当たり前って扱いのところが多いけどね。
0465名刺は切らしておりまして
垢版 |
2017/07/13(木) 23:27:26.40ID:0pcLM9Kd
>>463
いや、マルチプロセスだろうが機器間の通信だろうが表現してるけど。
0467名刺は切らしておりまして
垢版 |
2017/07/13(木) 23:33:41.01ID:5hH5/kzq
>>463
シーケンス図は代表的なものを書くんだよ
場合分けして何枚も書くけどな

包括的には状態遷移図で抑える
状態遷移図さえちゃんとしてれば、シーケンス図はオマケみたいなものだけど
動作を把握しやすいから書くけどな
0470名刺は切らしておりまして
垢版 |
2017/07/13(木) 23:55:44.30ID:yPFzcW8q
Googleはスタートアップ時点でJava
GoogleがC/C++に移行したのはエリック・シュミット(前会長)が構文解析プログラムをC++で書き換えたのが原因らしい

AmazonのスタートアップでのメインはC言語で、一部Perlだった(今はJava/C/C++)と聞いている
(Perlはベゾスがプリンストン卒業後に出来た言語)
Amazonは在庫管理システムが初めから巨大だったためC言語とUnixが適していた

聞くところによるとPerlはAmazon内で今でも使われてるらしいが、本当かは知らない

フロントエンドはGoogleもAmazonもJavascriptなので、JS系の技術者の需要は常にある

Pythonはこのスレで誰かが言っていたが、全てを繋ぎ合わせるツール的な使われ方で、知っていて当然の言語であり
プログラマーなら数週間〜数ヶ月を使って使いこなせるようにしておいたほうが良い
0473名刺は切らしておりまして
垢版 |
2017/07/14(金) 00:03:42.95ID:TKKwnW1q
>>471
node.jsは非同期機構を利用する側

node.jsそのものを実装する話
非同期機構の基盤を実装する話
非同期機構を利用させる側の話
0475名刺は切らしておりまして
垢版 |
2017/07/14(金) 00:07:12.25ID:SLff5qq8
 
プログラミング言語なんて、全部使えるのがプログラマーだしwww
0477名刺は切らしておりまして
垢版 |
2017/07/14(金) 00:09:39.15ID:uQtYe8tz
>>474
面倒なだけだろ。難しくはない。
0482名刺は切らしておりまして
垢版 |
2017/07/14(金) 00:15:20.09ID:uQtYe8tz
>>478
あーあれはjsが悪い。
0483名刺は切らしておりまして
垢版 |
2017/07/14(金) 00:16:31.14ID:uQtYe8tz
>>481
むしろCで書いたほうが楽じゃね?
0487名刺は切らしておりまして
垢版 |
2017/07/14(金) 00:21:09.48ID:uQtYe8tz
>>484
面倒見たくないんならCで組めばいいなんて言わなきゃいいのに。
0488名刺は切らしておりまして
垢版 |
2017/07/14(金) 00:22:09.21ID:uQtYe8tz
>>486
じゃぁ苦労しなくて済むね。
0489名刺は切らしておりまして
垢版 |
2017/07/14(金) 00:22:45.42ID:98DpUg6j
シュミット参加前からC/C++がメイン
ソースはThe Anatomy of a Large-Scale Hyoertextual Web Serch Engine
むしろシュミットが以前SunでJavaやってた人
0496名刺は切らしておりまして
垢版 |
2017/07/14(金) 00:37:00.27ID:i81H25+Y
>>489
> シュミット参加前からC/C++がメイン

なるほどな。

Most of Google is implemented in C or C++ for efficiency and can run in
either Solaris or Linux.

しかし1997年の時点ではJavaになっている。

この論文は1998年と書いてあるが、出版された時期は違うようだ

1.1 Web Search Engines -- Scaling Up: 1994 - 2000

> むしろシュミットが以前SunでJavaやってた人

「Javaやってた」という表現には語弊がある
シュミットはLexの開発者でもある
0497名刺は切らしておりまして
垢版 |
2017/07/14(金) 00:37:29.30ID:enDaTGR9
非同期処理ってカーネル層だと大体解決してるイメージ何だけどjsとかだと苦労してるの?
0498名刺は切らしておりまして
垢版 |
2017/07/14(金) 00:41:30.77ID:i81H25+Y
>>489

Deposited On: 25 Feb 2000 16:00
Last Modified: 29 Dec 2008 09:52

ソースは1998, Aprilにも関わらず未来の2000年の話を過去として記述している
そして2008年に改変している

オリジナルのソースが欲しいところだな
0499名刺は切らしておりまして
垢版 |
2017/07/14(金) 00:42:36.88ID:EGnj6qt9
>>497
Javaサーブレットでは同期処理がほとんどだったが、
最近出てきたサーバーサイドJavaScript(Node.js)で
非同期処理がメインになってきたから
0501名刺は切らしておりまして
垢版 |
2017/07/14(金) 00:45:35.75ID:TKKwnW1q
ちなみにnode.jsはシングルスレッドでてきてる
libevent系のシステムコール使って擬似的にマルチスレッドみたいな動作にみせかけてるけど
実際はタスクシステムみたいなもの
0502名刺は切らしておりまして
垢版 |
2017/07/14(金) 00:48:37.46ID:enDaTGR9
>>499
カーネル層はもう何十年も前から非同期処理メインじゃない?

>>500
シングルスレッドのjsには限界があるってこと?
0503名刺は切らしておりまして
垢版 |
2017/07/14(金) 00:51:02.35ID:EGnj6qt9
普通の手続き型しか知らないと
非同期のイベントドリブン形の動きがイメージしにくいと思う
アセンブラのインターラプトとか知ってるとすぐに分かるけどw
0504名刺は切らしておりまして
垢版 |
2017/07/14(金) 00:52:23.06ID:TKKwnW1q
>>502
ちゃんと設計すればnode.jsだろうがマルチスレッドだろうが限界はない
どちらも状態遷移表というものに抽象化されていれば非同期機構がなんであれ関係ない
ちなみに性能的にはマルチスレッドより、シングルスレッドによる擬似的マルチスレッドの方が速い
0505名刺は切らしておりまして
垢版 |
2017/07/14(金) 01:02:10.71ID:enDaTGR9
>>504
それもそうか
所詮は状態遷移の結果か

疑似マルチの方が性能良いってのは切り替えコストと処理コストとの比じゃない?
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況