はてなキーワード: scalaとは
中で働いてるけど表面上の会計を良くするために人件費等を削りまくってる。
今年の出来事なんだけど、開発部の評価を一律で下げた件に主力開発商品のモビエージェントのリードエンジニアであるO氏が怒って人事と喧嘩した挙げ句退職してしまった事件があった。
それ以外に給与が上がらないので主力級のエンジニアがボロボロやめしまっているという現状がある。
さらにモビルスはそもそもScalaで開発していたが、元々いたScalaエンジニアやめる&Scalaエンジニアが採用できない、
しかも元社内にいたエンジニアが開発したxitrumという謎のマイナーフレームワークでほとんどの商品が開発されていた。もちろんその社員ももちろん退職している。
なので、プログラムのメンテがどんどんできなくなってしまっている。
じゃあ、他の言語で書き直せばいいんじゃない?って思うかもしれないがいまさら、大規模なリプレースはできないだろ。
そんだけ開発費を出したり、開発を止める余裕はないだろう。
SREをやろうとしてエンジニア、Goが好きなフルスタックエンジニア、アルメニアから女だてらに日本が好きだから働きに来てた人、QAのベトナム人達、皆やめてしまった。
ダイバーシティみたいなことを名乗っているが外国人比率はどんどん下がっている。
元々は外国人のほうが給与が安いみたいな理由で雇っていたが、今日本人のほうが安いからこうなってるんだろうな。外国人のほとんどは楽天にいったそうだ。
自分の部署も人はやめてるが補充はしない。仕事は増える一方だが給料は上がらない。
1年くらい前に上場を目指して大企業から役員や管理職が入ってきてから、いろんな事が変わってしまった。
人事はGithub禁止とか言い出すようになったし、セクショナリズムな急速に進んで、よその部署に責任をかぶせるみたいな話を聞くようになってしまった。
ベトナムとの架け橋を目指して土曜ににベトナム人に日本語を教えていたがそれもやめてしまった。
人件費が削られやめてしまったり、解雇される人がどんどん出たりするのを見てこれが会社が大きくなることなんだって思った。所詮会社は出資者と経営者、株主のものであり社員は雇われているのに過ぎない。会社の利益と社員の利益は一致しない。
これが収穫期のベンチャーって事なんだろうけど、待っているのは収益化を成し遂げたベンチャー、ドワンゴのようにずっと続く後退戦なんだろうなと思う。決して増えないリソースの元で数少ない利益を株主と経営者に還元し続けるという。
あとさらに、AIチャットボットのテック企業と銘打っているいるがその実、IBMのワトソンを利用しているだけであり内部に自然言語処理のエンジニアは一人もいない。そもそのチャットボットを開発したエンジニアももうやめてしまっている。私が博士号取得者を人事に一度紹介した事がある。なにかよくわからないので却下といわれた。リサーチマップも見ずに。
Scala や Elm と Lisp やら Haskell と OCaml に SML と関数型のプログラミング言語を勉強したけど、これらが命令型言語に劣る理由を解説しよう。
これは、SQL も同じ問題を持っているが、関数型言語は「こういうふうに動いてね」という解釈をインタープリターやコンパイラが「推測する」必要があるのだ。つまり、書いているときにパフォーマンスをプログラマーが想像できない。
それが、現実的に厳しいのだよ。マジでコンパイラ関連は金にならない領域になってきたので、関数型言語のための独自コンパイラを作る持続可能な組織が無い。確かに、LLVM を使えば x64 や arm といった最新のアーキテクチャに対応できるかもしれないけど、フロントエンドのレベルすら応対が辛い。よって、関数型言語は C言語にてチューリング完全な同等なコードだと「いくら最速に書いても」遅いのである。
例えば if と書いたら、関数型言語は else が必須ですが、命令型言語は else 無しでも動いちゃうのですね。文系の連中が数学的な背景を加味して要件定義できると思うか?違うだろ。毎回、上に else のことについて聞いたら、プログラマーの生産性は下がるだろ。関数型言語は、上が文系だとますますだが、分岐もきっちりとおさえる必要があるから、生産性は命令型言語に劣るよ。
「#駆け出しエンジニアと繋がりたい」というハッシュタグが詐欺に使われる日本に Hagex はいない。なぜなら、Hagex は殺されたからだ。
Hagex は天才だった。インターネット初期に技術を得て、しかも「ニヒルなやり方で、間違いを自覚させる」手法は天下一品だった。特に彼の「技術的なバックグラウンド」を持った上で、この手の「WordPressで一千万!」とかいう詐欺師の戯言を「テクニカルな背景と、類まれな文才」をもって否定できる人材は、令和の日本のインターネットにはいないようだ。
ひろゆきやホリエモン、山本一郎も才能はあるし、インターネットに詳しいという点では、ネットの評議者として認めてやってもよいかもしれないが、ただ「なんとなくテック業界で生きてきた」という感だけで物事を語るだけで、なんというか技術的な背景を持ってして「イケダハヤト」の理論的な矛盾点をつく、というネットの論客で Hagex を超えてきたやつはいない。
Hagex が生きていたら、きっとインフルエンサーの「WordPressでイッセンマンは堅いかなーと」という語調の裁判から逃げやすいポイントを見破って、「WordPressを編集できるエンジニアの年収は WebDesigning の統計から、だいたい400万ぐらいだけど?」とか返せたり、「SEOでイッセンマン」というマナブの主張も「2000年頃の過渡期の昔はともかく、SEOだけの専門会社があって、値段もこなれているのに頼む理由がない」現状を語れて、「Ruby の次は Scala だ」という勝又の嘘も「Scala ができるやつは SQLやTCP/IPにも精通しているから給料が高い」という合理的な説明もできちゃうだろうな、って思う。なぜ、Hagex は殺されないといけなかったのだ。
「罪を恨んで人を恨まない」と世界は言う。ただ、やっぱり代替不可能な人材はいて、Hagex という存在がいることで平成の末に「フリーランサーで年収一千万、それをプログラミングで」という【頭の弱い】ヤツが引っかかる嘘を「徹底的に茶化して」日本国に「騙されてエンジニアになる」というかわいそうなやつが消えてくれたのだ。たかだか、無料の Rails Tutorial モドキを一周して「年収一千万」になるなら、東大や東工大をでた連中が日夜 SIer で虐められて鬱になって自殺するわけ無いだろ。
頭の悪い KKO の俺だって、勝又が「ソシャゲバブルの果にグリーにいれなくなってきて、『ゆるふわエンジニア』なんて存在できないのに、Scala だ Go だ」と言って金をくすねているのは想像できる。マナブが「あの反社が多い界隈の広告業界の検索版がSEOで、タイにいないと命がヤバいくらいの主張をして、しかも間違っている」ということぐらいわかる。だけど、俺には「テクニカルに間違っていること」は理解できても、Hagex にできた「テクニカルな背景を持ってして、インフルエンサーをニヒルに否定して、バカ信者を改心する」なんていう高等スキルは持ち合わせなかった。残念なことに。
Hagex よ、令和にあなたがいないせいで、哀れな仔羊がインフルエンサーのカモにされています。人間だから、死という限界はある。だけれども、平成の末には「Hagex という抗生物質が存在」していて、しなくても良い犠牲が無かった、というのは Hagex さんの死があってはじめてわかったんだ。申し訳ない。
だから、私は匿名の「増田」でインフルエンサーを徹底的にこき下ろすと決めたのだ。この不退転の覚悟で、マナブや勝又といった、技術を間違って使う貴様らを Hagex の代わりに裁こうと私は思うのだ。金をとってカモを地獄に落とした貴様らの罪は大きい。覚悟しろよ。
⑭「html, css, javascript(jquery, express, react(next), vue(nuxt)), python, php, sql(postgre, oracle), graphql, ruby, swift, solidity, unity, c, c++ 業務レベルじゃなくていいならgo, kotlin, java, scala, dart, julia,(以下略」
おれも高校生の頃は元増田みたいにプロフィール欄に言語をいっぱい書いてたから共感性羞恥みたいになってる。
正直、たくさん言語知ってます!ってどうでもいいんだよね。いろんな言語でFizzBuzzできてすごいねー、くらい。
(年収270万で)プログラマーを引退して、医学部にきた俺が真面目に考えてやろう。
真面目に読んでいて、ちょっと気になる箇所がある。たとえば PostgreSQL を postgre とか書くヤツは現場では嫌われるぞ。少なくとも postgres と書いてくれ。お里が知れるぞ。
消えていくエンジニアの特徴だけど、叱責されたり馬鹿にされるのが嫌で VCS にコミットしないヤツ、または貪欲にコードレビューをされるのが嫌がるやつは、成長しない。
この業界は数年前には『デジタル土方』と揶揄される業界でした。ちなみに、アメリカでも「テック系はハードだから避ける」という雰囲気でした。つまり何をいいたいのかというと、ソフトウェアの開発者っていうのは「泥臭い領域」なんだよ。エリートとは程遠い場所にあるというね。
いやぁ、是非とも楽天で働くべきだよ。どうせ野村総合研究所とか NTT DATA なんて無理だと思うから。
うん、ココはまずい。基本的にフロントエンドなんて給料が安いのよ。だって、誰にやらせてもデータベースにクソなDCLを飛ばせないから。逆に、データベースを触れることができるプログラマーはリスクと責任が大きいから、給料が高いのだよ。B4 になってもそれが理解できていないようだと、この先くらいよ。
君はソフトウェア・エンジニアになりたいのだろ?世の中は分業で成り立っているのだから、全部やろうとするやつはアホだよ。
インターン生はお客さんなの。君のスキルが通用したのはすごいと思うけど、同じ感覚で仕事はできないから注意しときなよ。
なに言ってるの?そんなことは言い訳にならんよ。プログラマーになりたいのだろ?勉強をしろよ。
逆にいうと、あなたがインターンとして週3で20万円貰えていたのは、参入障壁が少ないからでしょ?強強エンジニアが生き残っているのは、それだけすごいということだよ。
いやぁ、違うと思うよ。その問題が「難しい」なら切り分けて、上に「ココが自分の能力では解決できないです」と持っていくだけなんだからさ。CS じゃないのだったら、仕事をするまで「扱わないまま」なんだよ?しかも、土日に勉強する気もないとなったらいつするのさ?
諦めなよ。ソフトウェアというものが「変化できることに価値がある」ものだから。変化する業界はストレスフルだけど、立身出世する可能性が高いでしょ?安寧なばしょではないの。
いやー、CSでない博士課程に行って、雇ってくれる企業があるかね?無いと思うけどな。
この時点で、君はコピペしかやってきてないことが理解できる。おそらく QUIC か MQTT あたりだろ?逆にいえば、それが実装できたら他社と差のつけられるプロダクトだったはずだ。つまり会社の利益の源泉であった部分をみすみす実装できないようでは、そこらへんの専門卒以下だぞ。
ムカつくというか、虫酸が走る書き方だ。箇条書きにすると、
プログラミングに年齢はないから。自分は9歳ではじめたけどね。
あー、俺も天才が高校のときにいて、マーチの情報工学と旧帝の院の学費を会社持ちという驚異的なやつがいたよ。今もブログ見てると、Android と iPhone のアプリを書いているみたいで、元気そう。
それを上手にコントロールできるプログラマは世界中にもほとんどいねぇ。むしろ、月20万でやるもんならギルドから苦情が来るぞ。オレもアビームの人に給料を答えたら、「こんなヤクザな会社はやめろ」と耳うちされたよ。
人より良い経験をしたいという願望はあるのは素晴らしいと思うよ。しかしながら、君が到達したノウハウは他人にもできることだからね。ワン・オブ・ゼムになりたくないなら、努力し続けることだな。勉強をするのをやめたら、数年で中卒に負ける世界だからな。覚悟しとけよ。
P.S. 医学部に来たのは家庭の都合だよ。それに、自己顕示しないと「場末のコーダー」で読んでもくれないだろ?年収については、自分も低いと思うよ。なぜ低かったかというと、都内私立大学多浪中退の自分にはベンチャーの皮を被った助成金搾取がメインの反社会的勢力のフロント(ベンチャー)企業ぐらいしか相手にしてくれなかったからだよ。そこの会社は外国帰りの MDMA をキメて、未成年の子女に手を出しては警察沙汰スレスレのことをしているキチガイが社長をやっていて、人工知能を作ろうと学生インターンを酷使している会社だったのだけど、「サイバーエージェントに紹介する」という嘘にひっかかって、特定派遣事業の免許がないのに客先常駐させられ、土曜は帰社日、日曜は社長の Python の勉強会に参加させられる、というブラック会社にいてピンはね率(60%)となると、まともに考えることもできず働くアリになってしまってたからだよ。
P.S. ② 年収については、初日から派遣先の会社に引き抜きのオファーをもらって、2ヶ月後に新しい会社に移動したけど、300万だったので CodeIQ というサイトで転職をする準備をしていたよ。たしか、DMM とかサイバーエージェントの面接にいこうとしてたような記憶。その後で家庭の都合で、医学部に来たけど。
P.S. ③ 医学部医学科の6年生だよー。みんなが嫌いな私立医学部だけどね。ちなみに、俺もこの大学が嫌いだ。
P.S. ④「GraphQLをわざわざ書くのは理解できるけどな。」そうだとすると、REST や SOAP も書かないとまずくない?書くのだったら「Rails と Next のデータ受け渡しにGraphQLを使った経験が」という感じだと良いと思うけど。
P.S. ⑤「野村総研とデータを挙げるあたりSI寄りの仕事してたのかな。 」ちゃうねん。オレっちは多浪したからさ、そこのエントリーシートをかけなかったのよね。まぁまぁ大学が名門でさぁ、OB が誘ってくれるけど、年齢で弾かれて辛かったねん。
P.S. ⑥「ダウト。学費をどうやって稼いだんや 」えぇ、親の金です。だから家庭の都合でと書いてるじゃろ。
P.S. ⑦「本当に医学生ならここ数年の技術についてこの指摘ができる程詳しいわけないし少なくとも10年位は業界にいないとこういう感覚は身に付かない。 」たしかにおかしいよな。Kubernetes や Terraform を弄って、CI は GitHub Actions、CD には AWS CodeDeploy を使って、ブログは Jekyll で静的サイトジェネレータを使いつつ、自前のサービスを立ち上げるために Rails, Next, React, PostgreSQL, Redis, Kafka, Elasticsearch, S3 の勉強をしつつ、スマホ環境のために Kotlin と Swift を触れているなんて変だよな。そういえば、Docker が来るまでは Vagrant で環境をつくっていたのも忘れてたよ。あと Rust を今年に学ぶ言語にするなんて、受験生にあるまじき行為だよな。うん。
P.S. ⑧ 年収については、基本給が 22万で、残業が200時間超えたらプラスだった気がする。あと、反社ベンチャーは「ポートフォリオの作成にまる一ヶ月間で拘束された、しかも無給で」という時点でヤバいのだけど、その会社にコミットしたのは「サイバーエージェントに紹介する」ということだけであって、同時期に DMM も面接に行けそうだったのよね。馬鹿なことをした。
P.S. ⑨「特にフロントエンドを見下す感じとか」オレ自身はフロントエンド出なんだよ。何を隠そう、Adobe Flash のゲームをつくっていたから。それでもって言うよ、バックエンドが一番大切だと。
P.S. ⑪「5~10年前に人売りに捕まった話とするなら、年収270万も現実味を帯びる。」特定派遣は消えてくれてよかったよ。俺のところは特定派遣すら未登録だったけど。
P.S. ⑫「いい医者になるのだよ 」うん、頑張る。「オッサン」「社会不適合者」「あるき方がキモい」「プログラミングwww」「同じ班になりたくない」「親も頭が悪い」「生きてて恥ずかしくないの?」とか言われてるけど、頑張る!
P.S. ⑬ 「フロントエンド別に給与低くないよ。」えっ、そうなの?WebDesigning を読む限りだと、400万もいかないイメージだけど。
P.S「医学部6年でまだプログラムに興味あるの不思議。」好きなんだよ、言わせるな///
P.S. 「フルタイムじゃないのでしょ?」いいえ、東京都内でフルタイム(ひどいときで、朝7から夜24)でしたよ。入った会社が「法律よりも、派遣先の評価」という会社だったからね。
P.S. サイバーエージェントさん、ときどき御社の社名を使って「弊社に恩を売ると、サイバーエージェントに紹介する」というベンチャーが跋扈しているので、どうにかしてください。わたくし、1ヶ月間もその嘘で jQuery と Django を回収させられた挙げ句、月給 2000円だったのですけど。本当に千円札2枚だったのですけど。ついでに、Android(Java) と iPhone(Objective-C)と jQuery を使ったフロントエンドシステムに、バックエンドに Rails + Postgresql のシステムで、AWS を介したサービスを作らされたのも「サイバーエージェントに紹介する」と言われたからなんですけど。いったい、何なんですか?お前ん所は、コンプライアンスどうなってんじゃ。
P.S. 「好きそうだし医学部卒業してシレッとgoogle行ったれ 」無理っすよ。オレのスキルじゃ。
P.S. 「病院は」親がクリニックを持っていたけど、潰したよ。クリニックは人に患者がついていて、アルバイトを充てがっても患者さんが不幸になっていくのをみちゃったからね。自分は責任を持って患者さんを見たいから、バイトなんて使わないよ。
P.S. 自分はコードを書きたいタイプだったから、SIer みたいな UML とか書いて下請けにコードさせるみたいなのは絶対に嫌だったのよね。だから SIer にはならなかったよ。やっぱり、現実にある計算機が解決できる問題を、より直接的に触れて解決したいと思っているから。仕事がハードでも全く問題なし。
P.S. FPGA すごいよね。ザイリンクスとアルテラが Intel と AMD に買収されて、すごいと思ったよ。2010年頃だっけ?、CPU の限界を FPGA で突破しようという話があったけど。手を出そうと思ったけど、高性能なチップが 100万ぐらいして挫折した記憶があるよ。
P.S. 「東海大の医学部・学士」は自分は大学を卒業してないから無理でした。あと、それ以上の詮索はやめてくれ...
P.S. 「MySQLそんなに嫌いなのか。」そんなこと書いたつもりはないが、あれ?確かに MySQL は PostgreSQL より嫌いたけど、それは Oracle が親元だったり、Unicode の扱いがファッキンだったり、ストレージエンジンが切り替わるときにカオスな目にあったけどさ、MySQL は好きだよ。お世話になったし。
P.S. 給料については契約後に言われたのよ。というか、もともとは「サイバーエージェントに紹介」するという理由で、ポートフォリオの作成や Django の改修を手伝ったつもりで、入社とかする気は全く無かったのよ。それが、いきなり他所の会社に面接を受けさせられて「君は明日からXXで働くから、履歴書を書いてね」と言われて、抗議したら「俺に恥ずかしい思いをさせるのか!業界に入れなくするぞ!」と大声でシャウトされて、気がついたらあっちが用意した履歴書に拇印してしまったのよね。有料職業紹介と派遣登録をしてない会社だったから、そんなかとはできないはずなんだけどね。ホームページには「年収550万」と書いてあったけど、実際はまったく違ったのだけどね。
P.S.「うーん、いらないかな。IT土方としての仕事しかないと思う。」だよな。おとなしく医者になるよ。ありがとう。
P.S. Elasticsearch は全文検索機能がほしいからやってるよ。Redis はインメモリなセッションストアとして使いたいのよ。Kafka はさ、twitter のファボをじっそうしたいけど、RDB の書き込み速度が上がらないから利用したいの。TensorFlow は全く理解できてないよ。それは、指摘されたとおり。
逆に聞くけど、以下の知識があったらどれぐらいもらえるわけ?東京23区で。
追記----------------------------------
文の拙さや僕の不甲斐なさについてはたくさんのご指摘をいただきまして,もう十分ぴえんぴえんできたので,これから読まれる方は,タイトル(本題.まじでアドバイス欲しい点)について,この若造のエピソードを見てどう思うか(僕へのアドバイスでも,一般論に汎化させたもの嬉しい.語気荒めでもいいので)のコメントをいただきたいです.
---------------------------------------
最初のいくばかを使って,自己紹介とタイトルの理由,この文章を書くに至ったエピソードを話させてください.
html, css, javascript(jquery, express, react(next), vue(nuxt)), python, php, sql(postgre, oracle), graphql, ruby, swift, solidity, unity, c, c++
業務レベルじゃなくていいならgo, kotlin, java, scala, dart, julia,後fpgaも少し.ハードウェア開発は結構苦手で回路図とか上手く書けません.
と主にチャラいところを薄く広くやってきてます.バックエンドは大体firebaseかgcpに任せているので,インフラあたりひいてはネットワークの知識が薄いです.大学もプログラミングはしますが,CSではないので受動的に学ぶ機会も特になかったです.何回かCTFにも出場しましたが,あんまりいい成績を残せなかったというか,毎回毎回超人たちのすごさを見せつけられてました...
自分の理解できる技術(not 言語)で,面白い(バズりそうなもの)をラピッドプロトタイピングすることは好き・得意で,いくつかミニバズっぽいことも経験させてもらってきました.
B3の夏くらいのタイミングで東一上場企業にインターンに行きました.(インターンとしては3社目.過去2社は知り合いに紹介してもらったスタートアップで主に簡単なweb開発か,社内ツールの開発を緩くしてました)
最初の業務は,システムの使用言語を主流のものに置き換えることでした.書き換えなので,基本的に頭を使うことはなくドキュメントを読みながら楽しくダラダラ進めました.もちろん書き換え先の言語でどうセキュアにやったらいいかなど,上司にレビューを貰いながら,増える知識も気持ちよくやれました.何より給料が良かったです.週三フルタイムで20万弱はもらってました.客観的に見てすごい待遇だと思います.分不相応とは思いませんでした.
ただ,この業務を3ヶ月ほどで終わらせて,次に振られた業務が問題でした...
ニッチすぎるし比較的新しいプロトコルで細かく言えないですが,多分このプロトコルの実装に携わってるのは日本で10人もいないはずです.
つまり難易度が急に跳ね上がった.これが辛かったです...言語はC++とJava.
ネットで実装例なんてクソの欠片も載ってないし,プロトコルの理解のために特許資料や論文をくまなく読む羽目になったのは本当に辛かったです.こういう理解であってますか?と上司に聞いて,違かったらしいが,次にその実装に伴うDB改革のタスクも振られかけてきて,僕はパンクしました.
そのプロトコルも理解しきれなかったし,こんな大規模なDB設計なんてやったことないので何からやればいいか分からない.もちろん今となっては一つひとつ順序立てて要件を解決していけばいいと分かっていますが,別件も相まって当時の僕はパンクしました.
個人的な事情(別件)はかなり精神的に僕を苦しませ,毎日の睡眠時間が3時間くらいになってました.
で,僕はインターンに行かなくなりました.個人的な事情の方が忙しいからと言い訳をして.業務は別の人に振られることはなくペンディングになってるみたいです.
追記----------------------
ぶっちしたわけではなく,普通に出勤頻度がだんだん落ちて最後に精神的な問題でほとんど来れなくなることを伝えました.業務も締め切りなかったので損失というか上司の頭を悩ませるようなことは無かったと思います(思いたい)
僕の人間性に関するご指摘が多くて結構びっくりしました(文章がダメ)が,結構人に迷惑かけたりして嫌われるのとか無理な性格なので,そこらへんは意識してない所から矢が飛んできたなぁという感想です.
----------------------------------------
そのままずるずると1年間経ったのち更新をしない旨を伝え職場を後にしました.
ここまでが前提共有で,こっからが本題です.
追記-------------------------------------
(極めて個人的な)僕のつよつよエンジニアのイメージを共有すると,小中学生からプログラミングしてたり(高校生から始めたのといくつか次元が違う気がしてる),未踏や異能などを通して予算獲得経験があったり,企業でバリバリ働いてた経験があったり,Twitterでなにやらフォロワー多めで有名CTOと顔見知りだったり,みたいな感じです.百戦錬磨の30代~のエンジニアというより,中高で未踏ジュニア通してます,まだ20代前半です,もう1000万プレイヤー行きそうです.みたいなキラキラが僕ら大学生エンジニアにとって目につきやすく年が近い分,あぁ俺は未踏ジュニア落ちたなぁという劣等感とともに目で追っちゃうんだろうなぁ.なに書きたかったか忘れました...
------------------------------------------
Twitterとかで(主につよつよエンジニア達によって)エンジニアのべき論が語られていますが,その理想像として
・ひいてはそれを苦と思わない
みたいなのがあると思うんですけど,これ無理だなって思っちゃったって話.とともに,皆さんはどうなんですか?という質問がしたいです.
インターンする前は,正直ツケ上がってたんです.同世代からしたら自主的にプログラミングしてるし(チャラいところだけ),大企業でインターンしてるし.
僕はきっとつよつよエンジニア(の卵)として(新卒でという意味ではなく近いうちに(漠然))1000万プレイヤーにエンジニアとしてなるんだろうなと思ってました(実際会社のエンジニアは結構超えてる人がいたし,インターン上がりならエスカレータ式に入社はできた).
でも,上記のことがあり挫折してしまいました.今までチャラくて気持ちいところだけやってたけど,仕事となると自分が扱ってこなかった技術を使わないといけなくて,扱ってこなかったということはつまり難しいということで.それを勉強することが,また勉強すべきだという共通理解のある分野で生きていくことが無理そうだという気持ちになりました.
このB4の夏,某カリや某INEや知り合い企業に応募する予定やお誘いを受けましたが,このことがあり全てやめましたor辞退しました.
短期なので直接的には関係ないですが,今後のキャリアを考えていく中で,盲目的にエンジニアインターンを乱発していくべきなのか悩んでいるところです.
とは言え,プログラミング以外に一般的な大学生に優っていることが特にないので,プライドの高い(人よりいい思い・待遇をしたいという欲求が強い)僕はどうしたらこのジレンマを抜け出したらいいのか分からなくなっています.
同じような悩みを持っている方や,経験して乗り越えられた方は,ぜひどうお考えなのかお聞きしたいです.
就職した先輩には,ここ仕事量少ないしオススメだよって言われたのですが,聞いた給料に少し不満があり(ここも僕のプライドが高いめんどくさい,この問題を難しくしてる点),総じてこじんまりと(言い方が難しいですが)レベルの低いところで少なめの給料で暮らしていくという選択肢は許容できません.
これも踏まえ,僕のようなクズと言われても仕方のない人材はどうしたら上手く(ストレスレスで高収入の意)生きていけるのでしょうか?
追記------------------------------
ただの深夜の殴り書きのはずが,少し反応が増えたので,文章を少し直しました.身バレ対策も兼ねて.
文章が鼻くそナメクジだったり,(技術スタックのところで)エンジニア的に記法がうざかったらすいません(ただそういう文化というか認識も,なんかやってないなぁというか苦笑いしか起きない人間です.すいません.)
あと,釣りとかイきりとかのコメント多かったのは結構心外でした(文章がダメなのはそう).
どう考えたって,あの技術スタック(なんか強そうなのが目に見えてない and 言語名しか書いて無いから各言語のレベル低そう and チャラい(と認識してる)技術しかやってない)で,イきれないのは分かり切ってるし,イきろうとするならもっとカッコつけて書くし,成果物も全部提示するし.という認識でいてました.
あと,雑魚だしクズって自認してるので,あんまり雑魚とかクズって言わないでください.病んじゃいます.あせあせ.
いくつかのアドバイスをくれた方ありがとうございます。マネージャーやITコンサルは確かになと思い、今日そういう職についた先輩に話を聞いてみました。先輩には博報堂や電通のクリエイティブチームをお勧めされました。Mまで入れるとあと3年弱あるので、そこの周辺の職を探していこうと思います。カンマピリオドについて酷評がすごくて驚きでしたが(増田初心者)、それ指定の文書を書くことが時々あるので、設定がそうなってます。読みにくくてすいませんでした。
p.s. コメントに返信はしてないので、元増田を名乗る人は偽物です。
-----------------------------------
正月に実家に帰ると、今年28歳になる9歳下の弟が会社をやめてプログラミングスクールに通うと言い出したので全力で止めた。
エンジニアになりたいのならカリキュラムは全部俺が組むし、わからないことがあったらいつでも相談にのるし、なんなら仕事の紹介だってするから、
まずは会社をやめるな、そしてスクールには金を払うな、と伝えた。
その後、転職をするのであれば適切な情報を伝えねばと考え、いろいろな会話をしたので、書いてみたいと思う。
例えばこれ。[ https://www.amazon.jobs/jp/jobs/1353081/software-development-engineer-full-time-class-of-2022 ]
プログラミング言語最低一つに"精通していること"というのがあるが、スクールレベルではそこまではいけないし、かなりの高いレベルであることを伝えた。
「オブジェクト指向デザイン、データ構造、アルゴリズムデザイン、計算量解析等に対する基礎知識」も基礎とはいえ、ある程度実務経験がないと身につかないものだとも伝えた。
そして、このポジションがAmazonの中ではかなりジュニアなレベルのポジションであり、もっと上が狙えるはずだということも伝えた。
ただ、弟はといえば、これだけできて、かつ時価総額世界一の会社に入社して、年収は740万円~というのにもやや驚いていたようだ。
スクールの営業には短期間で年収1000万円も夢じゃないというようなことを言われていたようで、期待より低かったらしい。
次に、闇を見せた。
まずIT業界の実態を説明するために「IT土方」、「新3K」といった単語を紹介して、ぐぐらせた。
そういう環境が普通に存在していて、かなりの確率で巻き込まれることになることを伝えた。
さらに、google:エンジニア 平均年収 などと検索させて、日本の平均的なIT業界の報酬の肌感覚のようなものを伝えた。
私の15年以上のIT業界での経験から、学歴や、コネ、その他の特別な才能があったりして、優良企業に運よく入社できたような場合を除き、普通の経験の浅いエンジニアの方々はおおむね200~300万円台の年収になるとも伝えた。
きついうえに、低報酬という職場がにかなりの確率でエンカウントするだろう事実は、弟には衝撃的だったようだ。
もちろん、弟に関していえば、俺がその地雷を避けるアドバイスは提供できるし、いい会社を紹介することもできる。
だけど、コネ入社のようなことはできないので、しっかりと俺が組んだカリキュラムにそって勉強してくれれば不可能ではないと思う、と伝えた。
だけど、弟はIT業界への転職はあきらめた。リスクに見合わないと判断し、今の仕事を続ける決心をしたようだ。
彼はすでに500万円近い年収を受け取っており、同年代にしては優秀な方だと思う。大学時代から付き合っている彼女もいて、結婚も考えているらしい。
今回の話をうけて、私はプログラミングスクールが極めて悪質な存在であると確信を持った。
彼らは、欲しいと言われるものを売っているだけのつもりなのだろうが、彼らが奪っているのはお金だけではない。
今回もし俺か弟かどちらかが実家に帰らず、正月に会話をする機会がなかったら、彼は多くのものを失っていた可能性がある。
もしこの読者にプログラミングスクールに通おうとされている方がいるのであれば、9分9厘やめておいた方がいい。
成功する確率は高くないし、それを隠してサービスを売るようなやつに金を落す必要はない。
まずは、知り合いのエンジニアに相談してみるといい。知り合いにいなければTwitterでもいい。
そして、もし読者の中にプログラミングスクールの運営に携わっている人がいて、もし「年収一千万も夢じゃない」とかぬかしていたんだとしたら、恥を知れ。
どんなに優れたツールや設計思想などがあっても、使う奴がダメだと全く無意味。弊社もWebアプリを作ってて、RESTだのFluxアーキテクチャだのいろいろ導入を試みたが、ほとんど無駄に終わった。
どんなクソ組織でも効果があると確信持って言えるのは上の3つだけ。1つ目は初歩的すぎると思われるかも知れないが、筆者の想定するダメな組織・ダメなプログラマというのは、このレベルの連中を含む。
静的型付け言語(サーバーサイドならJavaやC#、フロントエンドならTypeScript)を使わせれば、少なくともコンパイル時に分かるエラーは修正させられる。
というか、ダメなプログラマに動的型付けの言語は触らせてはいけない。必ずそのプロジェクトは半年後には保守できなくなる。
テストは強制的に書かせるし、テストのないクラスや、通らないテストあったらコミットできないようにする(それは容易にできる)。
もう一つの方法は、そもそも優秀なエンジニアしか参加できないようにすること。たとえば、Scala、Haskell、Erlang、Common Lispなどで書かれていれば必然的にそれが分かるエンジニアしか開発できないし、こういう言語を自主的に学習しているエンジニアは優秀である可能性が高い。
まぁ、でも多分こんな目的では?という予想はあるよ。
・Java が単一継承となり、振る舞いの規約として Interface が生まれ、具象化が不要な始祖クラスとして抽象クラスが発明された。おかげで、言語が官僚化した。
・Ruby と Scala では、Interface に振る舞いが記載できるようになって、Mix-In という方法で振る舞いを継承できるようにした。その継承に優劣をつけれるようにすることで、C++ と Java の出来なかったことを解消しようとした。
・今のところ、単一継承を行うクラスベースの継承を行う言語でこれ以上の解答を用意できた言語はない。今のはやりは Rust のような後付の継承を良しとするプロトタイプベースの継承が時代のはやりである。
こんな感じなんじゃねーの?Ruby が好きだから、Ruby 史観で書いたけど。つまり、トレイトって「振る舞い」が記載できる Interface のことだと思うよ。
ScalaのTraitは何のためにあるのか教えてくれ
たまたま知り合ったITエンジニアが、押しつけがましく「〜はクソ!」「〜はこうあるべき!」「〜は神!」とか、バカみたいな語り口調で設計熱弁してくる人で。
そういうフレーズは記事に注目してもらうために書くもんであって、口に出すことじゃねーからと思いながら聞いてたんだけど。
で、あまりに聞くに耐えないから、好きなプログラミング言語の話でも聞こうかと思って、何が好きか聞いたらPHPとScalaで、いやなんか色々もうひどすぎて関わったこと後悔した。
別にPHPもScalaも言語は悪くないと思うけど。でも、バカみたいな決めつけ口調で他人に思想押し付けてくるやつって、どこか歪んでるんだなって。あ〜もう時間返して。
プログラミング未経験者から「プログラミングを勉強してみたい、でもどのプログラミング言語をやればいいのかわからない」というような悩みを聞くことがあるので、https://redmonk.com/sogrady/2020/02/28/language-rankings-1-20/ に載っている人気の言語TOP 20について、未経験者が最初に学ぶのはどの言語が良いかという観点で簡単に解説してみます。
対象読者はプログラミング未経験者なので、なるべく難しい言葉を使わないようにしたつもりです。また、正確性よりもわかりやすさを重視しているので何かしら間違っているかもしれません。ご留意ください。
Webブラウザの上で動くプログラミング言語。元々ただの文書しかなかったインターネットの世界に、グリグリ動くページを作りたいという欲求により生まれた。JavaScriptのおかげで今のWebページはグリグリ動きまくりである。
元々HTMLをちょちょっといじる為だけのものだったが、どんどん進化を続けて今は一つの超人気プログラミング言語である。今ではブラウザ上でなくても普通に動かせる(Node.jsという)ので様々な用途で使われている。
ブラウザ上で動くプログラミング言語は基本的にJavaScriptしかないので、JavaScriptはすべてのWebプログラマが学ぶ必要があると言っても過言ではない。
ちょっとしたプログラムを書いてすぐブラウザ上で動かせるので楽しい。そういう点ではプログラミング入門に適していると言えるかもしれない。
機械学習を始めとしたデータサイエンスの分野で激烈に人気のある言語。理由としてはNumPyとかTensorFlowのようなライブラリが充実しているというのが大きく、資産がたくさんあるのでこれからも使われ続けるであろう。
言語としては、誰が書いても簡潔で読みやすいコードになる傾向にあり、小さいプログラムを書くにはいい感じである。米国ではプログラミング教育にPythonがよく使われているという話も聞くし、初心者がプログラミングを始めるのにはいいのかもしれない。
将来AIやデータサイエンスをやってみたいと思うのであればPythonから始めましょう。
ランキングでは常に一位に近い順位をつける言語。Javaができた当時は色々と革新的だったらしく、組み込み業界からWebまで流行りまくっていた。今でもその名残か使っているところは多い。過去の資産やプログラマの数が多いのが一番の理由だと思う。AndroidアプリもJavaで書く(もしくはKotlin)。
実行速度が速く、また下位互換性がしっかりしているので過去に書かれたコードが新しいマシン上でも動きやすいのが長所。短所としては、歴史ある言語で下位互換性を保っているため文法が古い感じがする。タイプ量も多くなるし、学習コストはJavaScriptやPHP, Ruby, Pythonあたりに比べると高い。
正しく使えば強力な言語だが、日本のクソSEもどきは全員(自称)JavaエンジニアであることがJavaが毛嫌いされる理由の一つになっている[要出典]。いわゆるGAFAもJavaをかなりヘビーに使っているので要は玉石混交ということである。
Androidアプリを作ってみたいというならJavaからはじめるのはアリ。
Webページを作るためだけに生み出された言語。プログラマの数が非常に多い。日本で求人が一番多いのはJavaかPHPであろう。
初心者でもとっつきやすく、すぐに動くプログラムを作れるので入門に使われることも多い。学習コストの低さはトップレベルである。しかし基本的には古くてダメな言語とみなされており、PHPで作られたWebサービスは脆弱性が多いという都市伝説もある。真実は闇の中である。
近年のバージョンアップで比較的良い方向に向かっている(と個人的には思う)ので、選択肢としては意外と悪くないかもしれない。
Microsoftが生み出した言語で、.NETというプラットフォームを使ってWebサービスを、Unityというゲームエンジンを使ってゲームを作ることができる。
最近有名なのはUnityで、今やほとんどの3Dソーシャルゲーム(の一部分)はUnityで作られている。そう考えるとC#のプログラマは結構いそうだし将来もある程度安泰かもしれない。もちろん.NETも広く使われている。
ただし.NETもUnityも触らない人にとっては基本的に縁のない言語である。
なんかゲーム作ってみたいかもなーと思う人はC#から始めてもいいんじゃないでしょうか。
C言語に色々な機能を足しまくってできた巨大な迷宮のような言語。言語仕様は複雑怪奇だが実行速度は全プログラミング言語中でも最速レベルなので、パフォーマンスが重要な開発において使われる。アプリやサービスというよりは、それらを作るためのライブラリ、プラットフォームなどを作るときに使われることが多い。Web系の会社でいうとGoogleなどは主にC++を使っている。
基本的には初心者が触る必要はない。競技プログラミングを極めたいとかならC++からはじめてもいいかもしれない。
このランキングの中で唯一、日本人によって作られた言語。作者のまつもとさんは世界的有名人である。ちなみに島根県出身、在住。
プログラミングを楽しくすることがモットーらしく、確かに書き味は良い。また作者が日本人なこともあってか日本語情報が多く、情報収集という点ではとてもやりやすい。
Ruby on RailsというWebサービスを作るためのフレームワークが世界的に大ヒットしたため、必然的にRubyの知名度も上昇した。少し前まで日本のWeb系スタートアップは猫も杓子もRuby on Railsといった様相であった。今は少し落ち着いたようだが今も人気は根強く、Web系プログラミングスクール等ではだいたいRuby on Railsを教えているとかいないとか。
Webに興味があるのならRubyから始めるのが一番無難な選択肢と言える…のか?まあ悪くはないと思う。今でも需要は多い。スクールに行きたいのであれば黙ってスクールのカリキュラムに従いRailsをやりましょう。
これは他の言語とは毛色の違う言語である。というかCSSはプログラミング言語と呼んでいいのだろうか?
CSSはHTMLを装飾するためのものである。字に色をつけたり、背景を変えたり、レイアウトやサイズを変えたりするのは基本的にCSSの役割である。
すごく大雑把にいうと、HTMLで表示する内容(文章や画像)を定義し、CSSでその見た目を整え、JavaScriptで動きをつける。というのがWebサービスの”見た目”を作るやり方である。
なので、Webに興味があるのであればある程度はCSSの知識が必要である。が、これ単独で学ぶようなものではない。Webサービスを作る時についでに調べて少しずつ覚えていけば良い。
TypeScriptは比較的新しい言語で、JavaScriptをさらに拡張したものである。Microsoftによって開発されている。
プログラムにはデータの型(Type)というものがある。例えば「1」や「2」は数値型、「あいうえお」は文字列型といった具合である。大まかに言うと、この「型」に対して厳しい言語は型チェックによりバグの混入を防ぎやすいがプログラムを書くのが大変、というかコード量が多くなる。型が緩い言語はサクサクかけるし短く書けるがバグを生みやすくプログラマの力量が問われる。ランキングの中だとJavaScript, Python, PHP, Ruby, Perlあたりは緩く、Java, C++, C, Swift, Go, Kotlinあたりは厳しい。
そんな中、世で広く使われているJavaScriptの型チェックが緩すぎるのでもっとちゃんと型をつけたい、そんな要望を叶えるのがTypeScriptである。基本的にJavaScriptを理解している人間が使うべき上級者向け言語というのが現状なので、初心者が始めるには適していない。
ただしこの先主流になっていく可能性は大いにあるので、どこかのタイミングで勉強してみても損はしないと思う。
C言語は基本的にOSを作るための言語である。OSというのはWindowsとかmacOSとかLinuxといったもので、マシンを動かすための基盤となるソフトウェアである。AndroidスマホにはAndroid(という名のOS), iPhoneにはiOSが載っている。コンピュータは基本的にOSがあって初めて動かすことができ、OSが提供する機能を使ってブラウザやスマホアプリなどを動かせるのである。
というわけで、初心者が学んで実用的なものではない。ただしC言語というのは世の中の様々なものの基盤になっており、他言語の文法もC言語から拝借しているものが多い。例えばC言語をある程度勉強していればJavaやPHPなどはなんとなく雰囲気で書けてしまったりする。
そういうわけで、コンピュータサイエンスをこれからちゃんと学んでいきたいという人(大学生とか)はC言語から始めるのもいいと思う。ちなみに筆者は初めて書いた言語はCであるが、意味が理解できるまでに2年かかった。才能がないとこうなるので注意。
SwiftはAppleによって作られたAppleのための言語である。iOSアプリ(iPhoneアプリと言い換えても良い)を作るためだけに存在している。
言語自体は他と比べて新しいため文法や機能がイケてる雰囲気があるので基本的にはいいのだが、iOSアプリ以外で使っている人は多分世界で5人くらいしかいないと思う。なのでiOSアプリに興味がない人はやめておきましょう。iOSアプリを作りたいあなたは他に選択肢はない。Swiftをやりなさい。
Swiftが生まれる前はiOSアプリを書くためにObjective-Cが必要だったため、多くの人がこの言語を使っていた。が、今はSwiftがあるので、古くからあるObjective-C製アプリをメンテナンスする時以外に使う機会はない。名前すら覚える必要がないので存在を忘れてしまって構わないが、これだけ順位が高いということは多くの企業がいまだにObjective-Cで開発し続けているということであり、ニッチな需要はこれからも残るのかもしれない。
Scalaは関数型言語と呼ばれる言語の一つ。Javaの親戚みたいなものなのでJavaとの連携が容易であり、上手く使えば性能も出るしコード量も少ないしバグも少なくて最高、な感じらしい。が、その分難易度が非常に高いので初心者が手を出すものでは絶対にない。どんなに早くても他に二つは言語を覚えてから勉強しましょう。Javaを覚えてからやるのがベター。
正直ほとんど書いたことがないのでよくわからないが、ビッグデータというワードが流行りだした頃はデータ解析用途でかなり流行っていた。その後機械学習やAIブームが来て、今でも現役で使われてはいるがPythonがどんどん勢力を拡大しているので少し目立たなくなってきた、というのが個人的な印象である。まあプログラミング初心者が最初にやるようなものではないことだけは確かである。
Go言語は比較的新しいGoogle製のプログラミング言語で、Googleのように巨大なシステムでの使用を目的に作られたものである。しかし実際には様々な企業が利用しており今一番勢いのある言語と言ってもかもしれない。
他のプログラミング言語の良い点や悪い点を参考に設計されており、実行速度の速さと生産性(プログラムの書きやすさ、読みやすさ)を両立できるような言語になっている。ただし、機能を増やすのではなく本当に重要な機能だけに絞るという思想があるようで、他の言語に慣れていると機能の少なさに不便を感じるかもしれない。
学習コストが低いという点では最初に学ぶ言語として適しているかもしれないが、GoだけでWebサービス等をサクッと作れるのかというと微妙なので、アウトプットを出しにくいというのはあるかもしれない。
シェルというのはテレビなんかでハッカー的な人間がPCを開いて謎の黒い画面に白い文字を打ち込んだりするアレである。説明としては正確ではないがまあ大体そんなもんである。何が言いたいかというと初心者が最初に学ぶとかそういうものではない。しかし実際に開発の仕事をやるとシェルの知識はあったほうがいいし、シェルに多少詳しくなるとPC上でテキスト操作をしたりファイルをいじったりというのが便利にできるようになる。ただし(通常は)極める必要はない。
Shellと言っても実際にはbash, csh, tcsh, zshなど色々あるのだがそれらをひとまとめにしてShellとなっているようだ。
PowerShellは上のShellの親戚みたいなもので、ShellがMacやLinuxで動くのに対しPowerShellはWindowsで動く。そんだけである。あと正直あまり知らない。
ランキングの中ではかなり昔からある言語で、サーバーと呼ばれるマシンには大体Perlが入っている。そのくらい市民権を得た超有名言語で、C言語やC++で書くほどでもない小さなプログラムはとりあえずPerlで書く、というくらいには広く使われていた。インターネット初期はほとんどのWebサイトはPerlで書かれていたとかいないとか。PHPなどの登場はその後である。
今でも広く使われてはいるが、RubyやPythonがPerlの後継的な位置付けであるため、初心者が新しくPerlを学ぶメリットというのはあまり思い浮かばない。何か特定の目的があるのであればいいと思う。
Kotlinは簡単に言えばBetter Javaである。Javaをもうちょっといい感じに書きたいという気持ちで作られた言語で、Scalaと同じくJavaの親戚のようなものである。
ランキングの中ではSwiftと並んでかなり新しい部類。AndroidアプリをKotlinで書けるようになったことがきっかけで人気が爆発的に上昇、今ではWebの開発にも使われていたりする。
とは言えまだまだ新参者といった感じで、ドキュメントなどの情報も他の言語に比べると物足りないので初心者には厳しいかもしれない。
言語自体はとてもいい感じなので、もう少しコミュニティが成熟してくれば最初に学ぶ言語の選択肢として有力になるかもしれない。
HaskellはScalaと同じく関数型言語である。ScalaがJava的な書き方でも動くの対し、Haskellは「純粋関数型言語」と呼ばれ、ランキング中の他の言語とは一線を画した書き方になる。どう考えても初心者にはオススメしない。少なくとも他に二つは言語をマスターしてからやりましょう。
なんとなくWebに興味がありそうならJavaScriptかRubyもしくはPHP、Androidアプリに興味があればJava、iPhoneアプリに興味があればSwift、AIやデータ分析に興味があればPython、3Dゲーム開発に興味があればC#。この辺りをやりましょう。
特に目的がないのであればフィーリングで選んで大丈夫ですが、やめておくべき言語というのはあるのでその辺だけ参考にしてもらえれば。
なお筆者はただのヘボプログラマであり、大好きな記事(http://www.mwsoft.jp/column/program_top10.html) の現代版かつより初心者向けなものを書いてみたいと思ってこの記事を書きなぐった次第である。あまり真に受けないよーに。
このプログラミング言語はMtGだと多分この色の組み合わせだろう。
みたいなのをまとめたら次のようになった(TIOBEのランキング順トップ50)。
後半は知らない言語もあって怪しいが、おおよそこのようになると思われる。
※改めて見てみると何箇所か違和感があったので最初の版からちょっとだけ修正した。
順位 | プログラミング言語 | 色の組み合わせ | 内訳 |
---|---|---|---|
1 | Java | アブザン | 白黒緑 |
2 | C | ゴルガリ | 黒緑 |
3 | Python | ティムール | 緑青赤 |
4 | C++ | ジャンド | 黒赤緑 |
5 | C# | バント | 緑白青 |
6 | Visual Basic .NET | セレズニア | 緑白 |
7 | JavaScript | ボロス | 赤白 |
8 | PHP | グルール | 赤緑 |
9 | SQL | 無色 | |
10 | Swift | 4C(緑欠色) | 白青黒赤 |
11 | Go | ゴルガリ | 黒緑 |
12 | Assembly language | 黒単 | 黒 |
13 | R | イゼット | 青赤 |
14 | D | グリクシス | 青黒赤 |
15 | Ruby | 赤単 | 赤 |
16 | MATLAB | イゼット | 青赤 |
17 | PL/SQL | 無色 | |
18 | Delphi/Object Pascal | アゾリウス | 白青 |
19 | Perl | ラクドス | 黒赤 |
20 | Objective-C | エスパー | 白青黒 |
21 | SAS | アゾリウス | 白青 |
22 | Visual Basic | 緑単 | 緑 |
23 | Dart | ジェスカイ | 青赤白 |
24 | Scratch | 白単 | 白 |
25 | Scala | 5C | 白青黒赤緑 |
26 | Groovy | ナヤ | 赤緑白 |
27 | Transact-SQL | 無色 | |
28 | F# | アゾリウス | 白青 |
29 | Rust | マルドゥ | 赤白黒 |
30 | COBOL | オルゾフ | 白黒 |
31 | ABAP | アゾリウス | 白青 |
32 | Lisp | シミック | 緑青 |
33 | Kotlin | 4C(緑欠色) | 白青黒赤 |
34 | Logo | 白単 | 白 |
35 | RPG | ディミーア | 青黒 |
36 | Lua | 緑単 | 緑 |
37 | Fortran | スゥルタイ | 黒緑青 |
38 | PowerShell | ジェスカイ | 青赤白 |
39 | Ada | ディミーア | 青黒 |
40 | LabVIEW | ディミーア | 青黒 |
41 | Erlang | 緑単 | 緑 |
42 | Julia | イゼット | 青赤 |
43 | ML | 青単 | 青 |
44 | Scheme | シミック | 緑青 |
45 | Haskell | エスパー | 白青黒 |
46 | TypeScript | ジェスカイ | 青赤白 |
47 | OpenEdge ABL | アゾリウス | 白青 |
48 | LiveCode | アゾリウス | 白青 |
49 | PostScript | 無色 | |
50 | ActionScript | ジェスカイ | 青赤白 |
見返してみるとおおよそ次のルールに従って決めているような気がした。
緑の判定があやふやな気が若干しないでもない…
色 | イメージ |
---|---|
白 | 高レイヤ、初心者向け |
青 | 浮世離れ、ベンダー |
黒 | 低レイヤ、黒魔術 |
赤 | 速い、先進的 |
緑 | 基盤、グルー |
無色 | 道具 |
C言語:
Linuxとかサーバープログラムの内部で使われることが多いけど、
C++:
実行速度が超高速なのと複雑怪奇な構文が特徴だよ!
ゲームプログラミングや動画編集ソフトといった高いパフォーマンスが
求められるシステムで使われるイメージがあるから、最初は近づかなくても良さそうだね!
C#:
Microsoft にズブズブな印象が強いのがちょっと気になっちゃうね!
Java:
Androidアプリとかサーバーアプリ作るのに使えるよ!
最初は近づかないほうが懸命だと思うよ!
Javaの強化版で、Androidアプリとかサーバーアプリ作るのに使うよ!
もしAndroidアプリを作るなら最初にこれを学ぶと良いかも???
iosアプリを作るのに使えるよ!
iosアプリ作ってる時にどうしても触らなきゃいけないときが来るんだよね...。
iosアプリを作るのに使うよ!
もしもiosアプリ作りたいんだったら実質これしか選択肢は無いから覚悟してね?
書きやすい方だから身構えなくても大丈夫だけど、Macが無いと書けないから気をつけて!
PHP:
PHPのお仕事はいっぱいあるからこれが出来ると飯が食えて嬉しいね!
Ruby:
個人的には本当に好きじゃないけど、仕事も人口も多いのが特徴だね!
JavaScript:
環境を整えたり流行を追ったりするのがちょっとだけ面倒くさいけど、
Go:
Googleで開発された言語で、書いてるとドーパミンが出るよ!
僕が大好きな言語なんだけど残念ながら仕事は少ないね、本当に残念だ。
Lua:
ほとんど見かけないのに何故かたまに書かざるを得ない事がある言語だよ!
既存のアプリケーションのプラグインを書く時に強制されたりするかな?
言語自体は単純だから、使う時が来たら覚えるぐらいでいいと思うよ!
Perl:
遥か昔に広く利用されていた言語だよ!
きっと今でもどこかの世界では使われてるんだろうけど、
令和だったら他の言語も学びやすい環境が整ってるから学ばなくて良いかもね!
(一気飲みを奨励するものではありません。お酒は20歳になってから)
パーアル パール パール フワフワ パーアル パール スクリプト
コーボル コボル コーボル フワフワ コーボル コボル コーボル 構造化
ルービイ ルビー ルービイ フワフワ ルービイ ルビー オンレイルズ
リースプ リスプ リースプ フワフワ リースプ リスプ 丸カッコ
スーカラ スカラ スーカラ フワフワ スーカラ スカラ 暗黙の
エースキュ エスキュ エースキュ エルエル エースキュ エスキュ 行ロック
ラースト ラスト ラースト フワフワ ラースト ラスト 所有権
ジャーバス ジャバス ジャーバス クリプト ジャーバス ジャバス webpack
(最初に戻る)