Rubyについて(アンチ専用) Part005
なかったので オブジェクト指向スクリプト言語Rubyが嫌いな人のためのスレッドです。 他言語の一方的なあげ足取りが好きな最強厨御用達言語Rubyについて。 1. 他の言語で満足している人を「楽しさ」「美しさ」とか主観的な基準で煽る 2. Ruby より機能が絞られている言語に対しては「不足」「楽しさが(ry」「快適さがない」「こんな機能がないなんて」 3. Ruby より機能が豊富な言語に対しては「大きすぎる」「美しくない」「そんな機能不要」 うっとおしいRuby厨やRails厨の迷惑や気持ち悪い主観の押しつけ、腐れ言語や不安定ライブリについて語り合いましょう。 ■関連スレ Rubyについて Part 36 http://pc12.2ch.net/test/read.cgi/tech/1246174168/ ■前スレ Rubyについて(アンチ専用) Part001 http://pc11.2ch.net/test/read.cgi/tech/1190559748/ Rubyについて(アンチ専用) Part002 http://pc11.2ch.net/test/read.cgi/tech/1200210768/ Rubyについて(アンチ専用) Part003 http://pc12.2ch.net/test/read.cgi/tech/1207233348/ Rubyについて(アンチ専用) https://mevius.5ch.net/test/read.cgi/tech/1249737531/ 欧米で発売されたNintendo Switchゲームが突然配信停止。原因はプログラミング言語「Ruby」に関するイースターエッグ https://automaton-media.com/articles/newsjp/20190501-91055/ パブリッシャーのCIRCLE Entertainmentは4月12日、『A Dark Room』のNintendo Switch版を 欧米で発売した。本作は、Michael Townsend氏が手がけた同名のテキストアドベンチャーゲームの 移植版だ。デベロッパーのAmir Rajan氏はiOS/Android版にて成功を収めたのち、Ryan Gordon氏と 共にNintendo Switchへの移植をおこなった。しかし、本作は配信開始から程なくして、任天堂に よりニンテンドーeショップから取り下げられてしまった。その原因は、本作に隠されたイースター エッグにあったという。 Nintendo Switch版『A Dark Room』の発売からおよそ2週間が経った4月25日、Amir Rajan氏は “クレイジーな発表がある“と自身のMastodonアカウントを通じて投稿。その内容は、本作には イースターエッグとして、オープンソース・プログラミング言語「Ruby」のインタプリタと コードエディタが仕込まれているというものだった。本作を起動し、Nintendo Switch本体に USBキーボードを接続して「〜(チルダ)」キーを押すと、その機能が有効になりRubyの コードを実行できるようになるという。Rajan氏は、家庭用のNintendo Switchを事実上の Rubyマシンに変えることができると誇らしげに語り、実際に動作させる映像も投稿している。 『A Dark Room』にRubyのコードエディタが仕込まれていることは、販売元のCIRCLE Entertainmentは 騒ぎになって初めて知ったそうだが、こうした状況により販売停止となったことで同じく謝罪する 声明を出している。本作の今後については任天堂と協議中とのことで、販売再開を目指すのかを 含め具体的な計画はまだ示していない。本作は英語と日本語に対応しており、数週間後には 日本でも発売予定となっていたが、そちらも不透明な状況だ。もし国内発売されても、この イースターエッグは削除されることになるだろう。 Nintendo Switch 上で動く、Ruby の実装を作ったのか? すごい! こういう、crazy な香具師が、天才なんだろう! >>5 こういう独善的なキチガイが多いよなRuby信者ってw 損害賠償請求されますように。 アホみたいに「型なし」、「オブジェクト指向」にこだわった結果。 TypeScriptみたいにモダンな型システムは必要 悪い言語じゃないけど Delphiみたいに趣味用になるだろうね 個人で小規模なもの作るには「楽しい」のかもしれないけど 大人数で大規模な物作るにはあまり楽しそうに思えない まつもとゆきひろさん「Ruby3の目指す未来 -The Year of Concurrency-」〜RubyKaigi 2019 1日目 基調講演 https://gihyo.jp/news/report/01/rubykaigi2019/0001 Rubyと同様のスクリプト言語(インタープリタ型言語)であるPython,PHP,Perlでは静的型を導入しており, Rubyも型を導入するべきでは,と長年言われてきました。しかしまつもとさんは 「Rubyに型を取り入れたくない(DRYではないから)」,「型宣言することはコンピュータに使われているような気になる」と述べ, Rubyでは静的型は導入しない方針を示しました。 まつもとさんは「マルチコアの時代を予想できず,Rubyにスレッドを入れたことは後悔している」, 「Ruby2で導入したキーワード引数には問題点が多く,Ruby3では非互換の変更を予定している」など, これまでの選択で失敗だったと思うことがたくさんあると語りました。 時代遅れの言語となりつつある上に 過去の遺産資産を放棄する 地獄を見そう Class obj=Class.new で、クラス名が2回出てくるからやろ。 そんな問題は、C#もPerl6もとっくに解決してるっていうのにね。 むしろ、変数宣言が嫌なんやろ。 個人的にはスコープ不明瞭の一因になってるから、宣言必須にはよしろ、と思ってるが。 JavaScript には、var の他に新しく、let, const が出来た 変数宣言は初登場の場所かどうか、わかるだけだから、 効果が小さいから、作るのがイヤなのだろう redmine使うから試して言われたからやってんだが何なのこのクソな環境は。 何がGemfileだよクソかしか詰まってねえ こんなの掘り下げなきゃならんのか プラグインの紹介も馬鹿みたいにただただ羅列してるだけだし、言語がクソならそれで書かれたcmsもクソかよ なにがrailsだよ死ねカス 今時変数宣言がないのはきついねえ pythonも同じだが 代入が宣言を兼ねるのは流石にやばい シェルと変わらん >>31 大規模プログラムになると管理しきれなくなる 変数の数が100個ぐらいになるとどの変数がなんだったか すぐに確認できた方がいい と主張する人たちがいる 1000行以下のプログラミングには最適だと思うよ それ以上の大きさになると、実はどの言語を使っても うまくいかないけど まあそもそも超大規模開発についてはNode.jsに軍配が上がりそうだし...... matzはマルチコア時代を予測できなかったというけど むしろその方向は言語が担保するより コンテナレベルで担保する時代なってきたんだよな 言語のスレッドよりコンテナを並行処理の単位と考えた方が筋が良いと思う だから言語に余計な並行性はいらない シングルスレッドの性能を限界まで使い切るNodeの設計こそ現代的だよ Nodeも依存モジュール重すぎ問題でシングルバイナリでデプロイ簡単なGoに客奪われてますが。 >>37 Goはコンテナとの相性が最高だけど余計な並行性を入れたのが間違い そこだけ外せばさらに速くなったのに GCの問題もなかったはず やっぱり、Elixir みたいな、パイプラインもどきの小プロセスが良い 10万プロセスも余裕 >>38 は?GCの問題と並行性の問題は全く別物だろ。 コンテナと相性いいとかもなんか本当にわかってるの? スクリプト言語なんか、マルチスレッドに対応しないならしないでもいいんだけどな。 そんなことよりも、ブロックとか変数とかが非常識なほうが困る。 >>43 いやいや。w バージョンアップに平気で破壊的変更を混ぜられるんだから、なんだってやる気になりゃあできるんだよ。 >>44 1.9の時に大反発があったからもうやらないんじゃね Ruby自体の存在価値がなくなってきてるから 今使ってる人たちに苦労を強いる変更はやらないだろう 一気にRuby離れが加速する 現状が気に入らないから 新しい言語が次々にできるわけで 結局、スティーブ・ジョブズの尻尾みたいな奴の パッケージング(要はパクリ)とマーケティング(要は印象操作)の妙()とやらで 無知な信者がその気になっちゃって単に扇動されていたってだけの話? Rubyに飛び付いたのは素人 判ってる人は他の言語使う それだけのこと 「他の言語」が何かを言わないのは、 「○○言語に飛びついたのは素人」と 反撃をくらわないようにするためだろうなw Rubyを否定したいだけ >>50 擁護するってことはRubyの何かを気に入っているんだよね? ぜひとも教えてください! まあAI人材育成という名目があるからな Python以外ないだろう 逆になぜRubyが採用されると思ったのか謎 自分が好きで造りたくて創っただけ 他の人が勝手に使い始めた ↓ 使ってくれなきゃヤダヤダ←いまここ Rubyが採用されてたらコミュニティが変なマウント取りまくることが予想されるし Pythonで本当に良かった Pythonは教育用としてWindowsストアアプリ版を作り Win10 バージョン1903にpython.exeを標準搭載させた Who put Python in the Windows 10 May 2019 Update? https://devblogs.microsoft.com/python/python-in-the-windows-10-may-2019-update/ 一方Rubyは開発メンバーが得意げな顔でWindowsもGitHubも絶対触らないと騒いでおきながら 「われわれがマイクロソフトを嫌っていたのではない、マイクロソフトがわれわれを嫌っていたのだ」などと意味不明な供述をした https://www.itmedia.co.jp/news/articles/1606/08/news138.html https://k0kubun.hatenablog.com/entry/ruby-core-2019 >>62 1903インストールしたで 'python.exe' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。 なんだ。標準搭載ってうそやんか 単にストアからインストールできるってだけやんか 自分で入れてるpython.exeをwin10のアプデごときに上書きされたら阿鼻叫喚なんだが コマンドプロンプトで、 where python 情報: 与えられたパターンのファイルが見つかりませんでした 型定義ファイルつくるのに プログラム本体には型をつけないのか 謎のこだわり TS用にJSライブラリの型定義ファイル作るみたいな話か? 辛いだけでは…。 Rubyの設計がオープンクラスなのが根本的な原因だろう。 クラスを定義する場所が決まってないから、 別の場所で定義しなければいけなくなっている。 関数の情報をその関数とは別の場所に書く場合、 その2つの関数をつなぐ情報が必要になる。 関数の情報と、つなぐための情報。 つまりそれはDRYではなくなる。 オープンクラスであることと定義する場所うんぬんは関係ない。次。 ソースと同じ場所に同じファイル名でrbiファイルを作る感じなのかね マジで面倒すぎて絶対流行らなそう .jsと.d.tsの両方をメンテする、みたいな感じになるのか Rubyのパーサはカオス過ぎるから、ソースコード内に(コメント以外で) 型を書けるように拡張したらバグりまくりそう >>75 これを機にパーサを書き直すのもアリだと思うが bisonは捨てるべき ↑【D○C】2019/8/5(月) (バカそうな名前)×(バカそうな名前)×(バカそうな名前)【虎○門ニュース】 というタイトルの動画でした。気になる人、見なくていいよ 【DHC】2019/8/5(月) 田北真樹子×原英史×居島一平【○ノ門ニュース】 なるほど。この単語がNGになってるのかw Ruby on Rails 6 では、GitHub 中心で、 複数データベース(レプリカ)接続の大規模サービスなど、別次元へ行ってしまった! モジュールバンドラーも、Webpack になりました! >>82 将来性のないプログラミング言語5選として「Ruby」が挙がり話題に https://it.srad.jp/story/19/08/09/185229/ スラドのコメントは結構厳しいな ruby3も perl6 みたいなオワコン言語になるのかな? >>84 Perl6はオワコンじゃねえ! まだ始まってないだけだ! まあ、始まらんだろうな。。。 興味はあったからインストールして試してみたものの、クセがすごい。 Perl6 は名前を変えてほしかった(Camel とか) 他の言語も最近はそんなもんだな。もう名前変えろよと思うことが多い。c++とかな。 perl6は難産過ぎて産まれる前にミイラ化した あきらめろ Ruby の新しい本が、一杯出てる。 独習シリーズも、Rails 本に参入した WEB+DB でも、RubyVM の作者、Cookpad の笹田耕一の連載が始まった WEB+DB Vol.111 号では、Rails 6・Julia の特集 科学技術計算用のJulia は、Ruby に似てる。 Python から、Julia に流れそう >>40 え、そうなの? 「将来性のないプログラミング言語5選」の内容に各所からツッコミ https://internet.watch.impress.co.jp/docs/yajiuma/1200/475/index.html > 海外はともかく日本から見るとやや違和感のある内容ということで、Twitterでは主に日本からのツッコミが入りまくっている。 > 記事が公開されたのは先月末で、海外ではRedditを除けばそこまで注目されていなかったにもかかわらず、思わぬところで火の手が上がった格好だ。 海外からしたら日本なんて知ったことかよwww まるで韓国みたいな反応www 「世界中の国が日本の輸出規制を非難している!」 → 韓国が騒いでるだけ。世界は異常な反日パフォーマンスにドン引きw 「各所からツッコミ!」 → 日本のみに生息するRubyキチガイどもが難癖つけてるだけでしたwww Python のDjango の本は、掌田の1冊だけ。 新しい本が出ない 一方、Rails の新しい本は、10冊ぐらい出てる。 やっぱり日本では、Rails のシェアが断トツ! 多くのRuby コミッターを抱える、Ruby開発も、大阪でも社員を募集してる 入門本初心者本が10冊以上も必要な難解なツールがRailsです rubyなんて元々マイナー言語だったのが、 railsバブルで世界的に持ち上げられてしまって、 逆に困ってるだろ。 早く島根の田舎に戻って欲しい そうでもないだろ。 matzは結構プライド高いし。 十年ぐらいRubyを使っていたけれど、Windowsで使う必要が生じてrdbiをやってみたら ODBCドライバがコンパイルすら通らない 一方で試しにpythonを使ったら、あっさりと接続可能 Windows周りは pythonを使うしかないのか・・ 何度も言われてるが ruby + windows は最悪コンビ ODBCの代わりにJDBCを使えば、接続はできるものの、 今度はjrubyのほうのselenium, regexp周りのデバッグ地獄 これはもうpythonか・・ >>103 そうだぬ プログラマーが本当に支持するプログラミング言語がわかる「人気の高いプログラミング言語2019」が 発表 2019年09月10日 21時00分 https://gigazine.net/news/20190910-top-programming-languages-2019/ Ruby「Visual Basicに同スコアで勝ったぞ!」 sheet.insert_row(row) sheet.insert_row(row + 1) sheet.insert_row(row + 2) (0..17).each{|j| sheet[row][j].change_border(:bottom, 'none') sheet[row + 1][j].change_border(:top, 'none') } sheet[row + 1][0].change_border(:bottom, 'none') sheet[row + 2][0].change_border(:top, 'none') for col in 1..16 do line_draw(sheet,col,col, row, (row + 1)) end end なんやこれ window.setTable = (gridTitles, tableData) -> $('#stock_confilm_grid *').remove() $('#stock_confilm_grid').append $('<tr>').append $("<th rowspan='3'>#{gridTitles[0]}</th><th colspan='9'>#{gridTitles[1]}</th><th rowspan='2' colspan='3'>#{gridTitles[2]}</th><th rowspan='2' colspan='3'>#{gridTitles[3]}</th>") window.setTable ↑ これ使ってる人いるの?? 雑食系エンジニア・KENTA の新着動画が来たー! Javaの方がRubyよりも求人が多いという勘違いについて Javaはもう死んだの? Part.2 https://mevius.5ch.net/test/read.cgi/tech/1566040070/110 このひとうbyでぃsってるわりにるbyだいすきだよね そら美しくないという部分さえ無視できれば、pythonで用が足りちゃうもん その代わり self self self だけれど 明示的で美しい… カッコ省略できるようにしてdef関数が変数に代入できなくなった先見性のない行き当たりばったりのクソ言語とは違うな。 KENTA は、Ruby は終わった。 これからは、すべてPython ! みたいに、他のサイトを鵜呑みにしてきたけど、 実際に、Ruby会議などに参加して、その熱気に、否定できなくなってきた!w 他のサイトの情報と、現実が食い違ってきてる! 実地調査をすると、どうしても食い違う点が出てくる 他のサイトのアンケートは、元々偏ってる。 選挙の出口調査みたいに、ランダムじゃない だから、実地調査の重要性と、 アンケート調査の量ではなく、質が重要! 視聴率と同じ。 数字・量ではなく、一人一人がどういう人物・質なのかが重要! 何事でも、だまされないためには、量ではなく、質が重要! そのKENTAという人もこんなザコ糖質に威を借られて迷惑しきりだろwww さすが俺達のRuby 広く使われているコードを勝手に消す程度の事は余裕だぜ 政治的問題のためRuby GemsとGitHubからChef関連の諸々が消えた件について https://blog.tpdn.kim/entry/delete-chef-extension-code-protest-ice/ Rubyに引き寄せられるプログラマーはこんなやつばかり。 韓国を小バカにする記事を配信したメディアがRailsを使っていたら? 韓国贔屓のRubyプログラマなら広く使われてそうな自身作成のGemがあれば抗議のためにリポジトリから削除するかもしれないね。 Ruby信者の観念的・主観的・宗教的性質はビジネスの観点からはリスクでしかない。 chon國が関わってそうなgemはインスコしなければ良いだけ 例えって知ってる?w chonにだけ気を付けていればいいわけじゃないんだよ。 作者の思想心情によって容易にgemが人質・取引材料にされるということ。 >>117 なぜ香港とか日本と韓国の話を出すかねー ruby意外だとnode.jsで似たような話を聴いたな rubyとnode.jsには基地外が居るってことだな 他の言語は民度が高い 死に行く4つのプログラミング言語 2019 4:24 辺りに我らがruby 登場 Top 4 Dying Programming Languages of 2019 | by Clever Programmer https://www.youtube.com/watch?v=H9Ht27r7ROk 漏れもRubyはオワコンだと思うし 動画で言われてることも まあそうだろうねとは思うが 細かく話を聴くとこの人本質判ってないなって思った わりと当たり障りのないというか、そらそうだってところを無難に抑えた批判という感じ。 養成読本シリーズのムック本が出た! Software Design plusシリーズ Ruby on Rails 6 エンジニア養成読本、2019/10/26 著者は、すがわらまさのり,前島真一 最近は、GitHub 主導で、大規模用に改修されてきたから、大企業でも増えてそう。 Node.js, Webpack の採用で、Vue.js, React も使える 基本、サーバー側はRubyで、クライアント側はJavaScript で作る ruby3で型アノテーションを別ファイルにする話を聞いて こいつら全然時流を読めてないな、と残念な気持ちになった テック系youtuberは煽るだけの動画出してるだけで イマイチ中身あることしてないよな ライブコーディングしろって思う >>136 全くその通りでテック系というよりも単なる情報商材屋とか コンサルみたいなのとやってることが同じじゃんってやつが多いよな テック系名乗るならテック要素まず出せよって思う Appleみたいに奪っておいて後から与えて賞賛される神もどうかと思うが(escキーの話ね…) Matzみたいに大した考えもなしに与えておいて後から屁理屈こねて奪う神も残酷だわぁ… 怠惰な神を信仰した信者が馬鹿を見ただけと言えばそれまでだが、これはすごく気の毒 http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-core/95829 リバートまじかぁ・・・ .:演算子は2.7で一番期待してただけに残念だわ ずっと前にたのしいRubyを読んだのだが プログラミング初心者に対してあまりにスパルタな構成(他言語の概念がどんどん出てくる)の本だったのに 初心者向けとして絶賛されてたからRuby業界の異質さみたいなのを感じて距離を置いた いまは本当のプログラミング初心者向けのRuby本って出てるの? >>126 これはなかなかおもしろい視点だな 読むコストが高いからこそ初心者向けとされてた本があの有様だったのか 書いてるほうが読むコストの高さに負けたということかな >>141 立ち読みしたりAmazonの評価見ればわかると思うんだけど たのしいRubyはプログラミング初心者向けじゃないし、特にいい本でもない 紙で入手できて日本語で書いてるリファレンス的な本 ガチのプログラミング初学者向けはChris Pineの「初めてのプログラミング」 >>141 そもそも完全な初心者がいきなりRubyを理解できるとは思えん Pythonをやれ >>143 >>144 読んだのはかなり昔で、当時は間違いなくプログラミング初心者が読めるRubyの本として紹介されてた ろくな書籍がなかったってのもあるかもしれないが、だからって初心者向きではないのは間違いない そのときから一種の宗教的な熱気があったのだと思う >>145 Rubyの本は今でも微妙なのしかない気がする 自分に合ったまともな本を選ぶ能力ってのも重要なスキルの一つなんだよね それを身につける努力をしないと 256倍シリーズは好きだった 書いてる人が楽しんでるのは伝わってきた 言語自体が楽しいをキーワードに推してくるのは宗教感強い 揺れ戻って型に厳しい言語が受けてるけど Ruby がそれ目指しちゃダメだろうに スッキリわかる Java入門 第2版、2014 たのしいRuby 第6版、2019/3/19 この2冊は、オブジェクト指向を学ぶ、もっとも簡単な定番の本! だから、ベストセラー これらよりも簡単な本は、例えば、3日で何とかなど、 文法・プログラミングとしての知識が少なすぎて、ツールが何も作れない if などの制御構造を教えておしまい だから、どうした? これを教わってどうなるの? って言うレベル 実用的なツールが作れない 極端に言えば、Enumerable, Enumerator, Array のメソッドが使えればよい Enumerable https://docs.ruby-lang.org/ja/latest/class/Enumerable.html ここを見て、どういう事ができるのか、理解できればよい。 これは本質で、すべての言語で同じだから、Ruby で学んだことが、全言語で使える! こういう全言語の実力を伸ばす仕掛けがあるから、プロは、Rubyを初心者に勧めるわけ YouTube に動画を上げている、雑食系エンジニアのKENTA も、初心者にはRubyと言ってる! Python は、おすすめしませんとハッキリ言ってる! Python には、Web系の仕事が、Rubyの1/10 しかないから、 初心者が勉強しても、仕事を取れない お金を稼ぎながら、転職しながら、サーバー側でキャリアを成長させる道筋がない。 Rubyから始めないと、まず就職できないから! Ruby → JavaScript, Go, Kotlin, Elixir, Julia こういうサーバー側のキャリアパス Rubyは日曜大工用の工具セットって感じ 仕事で家具や内装を作るならPythonやPHPみたいな現実路線の言語がいいし 家を建てるならJavaやGoくらいしっかりしてたほうがいいし ビルを建てるのはそもそも無理、Rubyでは杭打ちとかできない > Rubyは日曜大工用の工具セットって感じ > ビルを建てるのはそもそも無理、Rubyでは杭打ちとかできない 根拠は?言ってみただけ? >>154 RubyはおろかPythonもPHPもGoも知らないの丸出しですやん なんだよ?即レスしてやったのになんの根拠も言えないのかよ。雑魚だな。 プログラミング初心者向けの本としてChris Pineが出てくる時点で、Rubyは根本的に初心者向きじゃないと白状してるようなものだよ 短文に慣れてしまって長文が読めず、画像で情報を把握するような今どきの若者に画像のない長文本は勧められない ここまでのこの文章ですら長いと言われるくらいだし 初心者向けの本は基本的に文章を極力減らして例示とマンガで説明してる Cも初心者向きじゃないと言われているし まずはPascalをやれと、師匠は言っていた 古いわ。w 当時からして、Pascalがそんなにいいとは思わなかったが。 今ならC#やな。 間違いなく。 CはPascalより文法を緩くした実用(手抜き)言語のイメージ CやってからPascalやるよりも PascalやってからCやる方が スムーズに学習出来るのは確かだが 今からそれをやる意味はあるかは微妙 今ならPythonをお薦めする Rubyはダメ絶対 Pythonは嫌いだがRubyよりはマシ Rubyなんて今からやっても負債にしか 今Webアプリ作るならなにがいいんだろうな サーバーサイドは相当迷うよ 『表紙に著者の顔写真が載っている本には手を出さない』これだけで驚くほどQOLが上がる…という意見に様々な感想「著者が腕組みしてる本も手を出さない」 https://togetter.com/li/1443255 rubyはperlの悪いとこばっかマネして無理に全部オブジェクト扱いしようとしたくそ言語だよ。 Perlをさんざん罵ったヤツなのに、Perlのせいにすんな! Rubyがダメだとしたら、ただただ純粋にRubyがダメだから! JavaやPerlやPHPをクソミソに言ったツケが来てるな PHP も型に厳しい方向になってて もう別言語でやって感ある 大規模開発も大事だけど 既存のコードが一番大事 $とか@ってシェルスクリプトが起源だからさ PerlとかRubyはしれっと盗まないでくれないか? @_ なんかにコンテキストで意味変わるようなものをドカドカ詰め込んだのは perlが最初だぞ。もちろん最悪のやり方だと思うが。 Rubyも同じようなの導入しようとして 失敗してるしな > 「愚者は経験から学び賢者は歴史から学ぶ」。 > 結論から言うと、これは誤訳である。 ワロタw 歴史=他人の起こした出来事って意味がわからんやついるんだな 読解力がなさすぎるか日本人じゃないか だからその「歴史」が誤訳なんだがな。もともとは歴史なんて言ってない すみません、初学者で苦労してまして・・ Rubyxlでエクセルのテンプレートを編集したく そこで、特定のセルをコピーして特定のセルに貼り付ける 操作を行いたいのですが、ネットで検索しても全くヒットせず 有識者のかたいらっしゃれば、ご教授いただけましたら幸いです。。 5ch では、マルチポストは禁止です! 同じ質問を、複数のスレに書き込んではいけません! ここで質問せず「Ruby 初心者スレッド Part 65」の方を使ってください! >>183 ,184 ビスマルクとは知らなかった、あのビスマルクの言葉だったとは…これは勉強になりましたね、 rubyXLでエクセルいじってるが 印刷範囲を設定したいときは、どのようにすればよいのでしょうか? いろいろ探しても見当たらず・・ まつもとはtraitの仕様を入れたけど そもそもなんのために入れたんだか忘れたって後から言ってる まつもとのバグはrubyのバグと言っても良い 特定の独裁者が仕切る開発はもう時代にあってないよね 言語の与える影響があまりに大きくなりすぎた そう言えば、GuidoとかRMSは生前退位したんだっけ >>200 独裁は必要。 でないと、決めればいいところが決まらん。 いつかLinusもしんどくなって生前退位する日が来るのだろうか >>203 FSFの前に、Emacsは先に人に任せてなかったけ。あれもなんで降りたのかは忘れたけど >>205 何年か前に、暴言きっかけかなんかで、しばらく休んでたやん? 来るべき引退に向けての予行演習でもあったんでは。 >>207 あー、あったなあ…たしかに意図したかどうか予行演習になったなあ 右代入が酷い 俺の記憶が正しければ 末尾に追記することで変数への代入ができるのが右代入だったよな 1+2=>x がエラーになるんだがコレ何の意味があるんだ? >>196 taintのこと? >>211 Rubyの構文解析器の気持ちになればわかるよ! 君のコンピュータに近づこう コンピュータはルール通りのことを間違いなくやる そのルールに人間が合わせればいいんだよ! Ruby の使い過ぎで凋落なのかな? 2020.06.08 06:10 クックパッドの凋落、利用者1千万人減で赤字転落…人気のクラシルと真逆の方向 https://biz-journal.jp/2020/06/post_161220.html?utm_source=rss20& ;utm_medium=rss 坊主憎けりゃ袈裟までで中身は無いな これに関係なくRubyはオワコンコースだと思ってるけどな 作者のふるまいを気にするなら、Linuxもダメだな。 Linusは暴言家だからな。 Guidoもなんかなかったっけ? Larryはいい人そうだ。 なお、ワイもMatzはキライ。 昔、C++とPerlに言いがかりをつけていたことは忘れん。 Windows も dis ってたよ 漏れも Windows 嫌いだから良いけど 採用や仕事でRubyは嫌いだ使いたくないという人がいて 技術的理由説明しないで作者の政治思想が 嫌いだからとか言い出したら帰ってもらうのは 間違いない キリスト教の事を言い出したら、米国人は皆、キチガイじゃん 誰も進化論を信じていない。 人間は元から、猿じゃなかった。人間の姿のままだった 地動説も信じているかどうか、怪しい 中絶・同性婚を認めてはならない 結局PythonとJavaScriptの二強になってしまったな 次点でGoか この3つの流行に食い込むのはもう無理そう Ruby3の型ヒント実装あんなのエコシステムとして成立するのか? ローカル変数がちゃんと使いたいので、 Rubyからnode.jsに乗り換えようと努力している最中だったが、 node.jsはファイル関連が分かりにくい。 Rubyだとstdoutとファイルが対象になっていて、 print を fp.print に変えてやれば、ほぼそっくりそのまま動作してしまうが、 node.jsだと複雑そうだ。 あと、ファイル操作が基本的に非同期推奨なのも辛いし、非同期と同期の二系統あるので混乱が生じ易い。 複数ファイルのコピーもRubyは簡単に出来るが、node.jsだとncpという モジュールでやるが、これも非同期なので、promiseでthenやawaitを使った待機が必要になる。 しかし、それをしだすと、すべてがasync,await,thenなどを前提に書くことが必要になり、 非常に複雑になる。 >>226 誤: Rubyだとstdoutとファイルが対象になっていて、 正: Rubyだとstdoutとファイルが対称になっていて、 >>226 その辺がサーバーサイドでは使いにくい理由だよね 従来のシステムコールとはかけ離れてる ファイルを非同期で読み取りたいケースなんてほとんどないし あともう一つ、Ruby だと list の要素に対する繰り返しは以下の様に簡潔に書ける。 for elem in list do elem に対する処理; end しかし、Node.js だと、 list.forEach( function(elem) { elem に対する処理; }); か list.forEach( elem => { elem に対する処理; }); としか書けないらしく、なんだか見にくい。 list.each{elem| elemに対する処理} 似たようなもんやで >>226 streamが標準出力にもファイルにも使えるでしょ。 consoleオブジェクトに出力してる事自体がイレギュラーかと。 async awaitを使えば、thenは必要ないと思うが、混同してないか? Promise.allでコピー処理を待てば、複数ファイルでもたいしてかわらんかと。 >>229 for(let elem of list)で充足できない理由は? for elem in list do elem に対する処理; end が簡潔で、 list.forEach(elem => {elem に対する処理;}); や for (let elem of list) { elem に対する処理; } が見にくいの?w 老眼では?ww Rubyでforループ使うか普通? 特殊なポリシー持ってるか全然使ってないのでは >>232 ほんの些細な違いだろうという指摘は理解したいけど、楽しく書ける(= 思考を妨げない)ことをポリシーとしている Ruby に慣れ親しんでいると、そんなことも気になってしまうんだよなぁ xs.each { |x| # スコープを作る(関数型スタイル) x に対する処理 } または for x in xs # スコープを作らない(手続き型スタイル) x に対する処理 end それが JavaScript になると: ・なぜ丸カッコと波カッコを入れ子にしなきゃいけないのかなぁ どちらか一つでいいはずだし面倒くさいよね? xs.forEach ({ x => # スコープを作る(関数型スタイル) x に対する処理 }) ・なぜ変な予約語 let が必要なのかなぁ、あってもいいけど蛇足だよね?(>>231 ) for (x in xs) { # スコープを作らない(手続き型スタイル、従来からある構文) x に対する処理 } または for (let x of xs) { # スコープを作る(一見関数型に見えるが、手続き型スタイル) x に対する処理 } もちろん JavaScript が「後方互換性の維持」を厳守しつつ、機能(構文と意味)を発展させてきた成果は大いに評価している とはいえ、「老眼では?ww」という批判は、ちょいと低俗で低レベルな発言ではないかと思われ もっとも客観的には >>229 の注文が高尚すぎて(w、他言語ユーザーにはあまりにも厳しすぎるだろ、とは感じてる >>234 あとfor inをプロトタイプ汚染されたオブジェクトに対して回すと恐ろしいことが起きるから基本的に非推奨だよ 書き方多過ぎるしアロー関数のthisの違いなど もはや罠が多過ぎて初心者に勧められる言語ではないと思う 好き好きとしか。 個人的には、C#とかC++(最近版)とかの論理的整合性のほうがはるかに。 Rubyも、えらそうなわりに、細かいところでいいかげんなところがちょくちょくあるんだよなあ。 えらそうでなければあまり気にならなかったのにな。 そういう文法の癖をあげつらう方向なら Rubyも出てくると思うぞ >>234 > 一見関数型に見えるが、 どこが?また半可通か。forで関数型とかあり得ないだろマヌケ。知らないなら黙ってろよww >>235 >あとfor inをプロトタイプ汚染されたオブジェクトに対して回すと恐ろしいことが起きるから基本的に非推奨だよ あえて触れなかったのですが、こう書くべきでしたね for (x in xs) { if (xs.hasOwnProperty(x)) { x に対する処理 } } 以下より引用:JavaScript: The Good Parts - 良いパーツによるベストプラクティス, C.10 for in 文, p140 >>236 >細かいところでいいかげんなところがちょくちょくある 同感ですね、自分もちょくちょくあります そういった事柄はこちらで遠慮せずに発言されてはいかがでしょうか? Rubyはバグりやすい言語だよ。 ・型安全でない ・前後の文脈を見ないとその部分単体ではローカル変数とメソッド呼び出しの見分けがつかない書き方ができ、しかもその書き方(メソッド呼び出しに()付けない)のほうが主流 ・reduce/inject、map/collectのように同じことするメソッドの単なる別名と、Array#delete_if/Array#reject!のようにほとんど同じなくせして削除失敗時だけ挙動が異なるみたいなべつものメソッドが入り乱れててカオス ・Procオブジェクト(手続きオブジェクト)を作る方法が多すぎ。しかも作り方で挙動が異なる。Rubyの書籍を書いた人でさえ頭を抱える始末 ・簡単に「見せかける」ために省略記法を行き当たりばったりで導入しまくった副作用で、直感的な記述が逆にエラーとなることが多い(例: p {foo: 1, bar: 2}はエラーwブロックとして解釈されるため) まだまだあるよ Rubyは最も一般的な方法で定義した関数(関数じゃないw)が値として取り回せない(第一級関数でない)クソ言語wwwww def add(a, b) a + b end def opTwo(a, b, func) func(a, b) end p opTwo(1, 2, add) => Line 9:in `add': wrong number of arguments (0 for 2) (ArgumentError) from t.rb:9 プギャーm9(^Д^ ) ちなみにPython: def add(a, b): return a + b def opTwo(a, b, func): return func(a, b) print(opTwo(1, 2, add)) => 3 ちなみにJavascript: function add(a, b) { return a + b; } function opTwo(a, b, func) { return func(a, b); } console.log(opTwo(1, 2, add)) => 3 >>241 まあそこは言語の特徴だから そういう用途にはブロックを使えってこと 関数呼び出しに()が必要じゃないのはDSLを書くためには優れた仕様 他の言語で言語内DSLは実質不可能 明らかに他の言語どころかRubyの理解も 怪しいのがわかる >>233 自分はすっかり関数型プログラミングに慣れてしまったので、近頃だと for/while 文を 使うのは、古い Pascal や Perl のコードを Ruby へ写経(移植?)する時くらいですかね ちなみに Ruby のブロック構文ですが、副作用がなければ波カッコ { … } で、 副作用(破壊的代入やI/O処理)があれば do … end と使い分けています 以下は定石(パターン化した)コードの雛形(スケルトン)です result = xs.select { |x| … }.map { |x| … }.inject( … ) { |acc, x| … } xs.select { |x| … }.map { |x| … }.inject( … ) { |acc, x| … }.each do |x| … # 副作用(破壊的代入やI/O処理)を含む処理 end 具体的なコード例はこちらへ:https://ideone.com/PKMUhx また、関数型プログラミングに興味がある方は以下をお読みください ・Rubyによる関数型プログラミング http://xtmlab.com/misc/FPwithRuby.html ブロックとProc.newとprocとlambdaと->があるRubyはやり過ぎ rubyの可読性は高くない。 pythonの「書きにくく読みやすい」と比較して「書きやすく読みにくい」と言われる。 そうなってしまう理由はたくさんあるが、ひとつのことをするのにやり方がたくさんあるというperlとかいう糞言語の信条をそのままパクってしまってることがひとつ。 またよくも悪くも設計が完全なオブジェクト指向にこだわっており、 javascriptなら関数ひとつで実現できることがblock、proc、lambdaと酷い有り様になっている。defで簡単に定義できまーすとかまさに初心者騙しもいいとこ。 また、流行り機能の無節操な取り込みが酷い。記号が足りなくなり、例えばオプショナルチェーンは他言語が?.のところrubyでは&.である。phpで文字列結合が"foo"+"bar"ではなく"foo"."bar"であるようなキモさ。 あとpythonと比べ多分野の優れたライブラリがない。あってもメンテされてない。作ってるやつが実用主義ではなく趣味だから。rubyでもできる!って言いたいだけ。よくも悪くもweb分野、しかもrails使うというやつ以外にはおすすめしない。 事実上rails専用言語。railsのDSLとして以外に存在価値はない。 初心者に勧めるなんてとんでもない。 >>231 >streamが標準出力にもファイルにも使えるでしょ。 どうやればいいの? 出来ないと思うけど。 Rubyは簡単に出来るのに node.jsは単独でディレクトリのコピーすら出来ない。 行うためには、 1. copySync()を使うためにはfs-extraモジュールのインストールが必要だが npm install -g fs-extraででインストールしても環境変数NODE_PATHに パスが通ってないため最初は使えず混乱する。 じぶんのためだけならいいが、作ったjsプログラムを初心者に使ってもらう のはこれだけでも不可能となり、一般人への自作プログラムの配布は絶望的となる。 2. copy、xcopy、robocopyなどの外部コマンドを呼び出せればコピーできるが、 RubyならC言語の伝統的なsysytem()関数をより強力で便利にした関数をサポートしている が、node.jsはしておらず、非常に使いにくいexec()やspawn()関数を非同期で使わなく てはならない。 以上により、node.jsは自分用としては使えるが、一般人に作ったプログラムを 配布して使ってもらうのは絶望的といえる。 >>234 eachがどう関数型なのか知りたいんだが。 mapならわかるけど。 ただのイテレータだろ。 その中括弧要らないよ。なんか勘違いしてない? >>252 node.jsで、streamを使ってstdoutへの出力をする方法を具体的に書いてみてください。 なお、書き込む関数もファイルと全く同じ関数群が使えなくてはいけません。 >>252 どこの知識不足なのか具体的に書いてください。 Rubyは、ディレクトリコピー、sysytemや外部コマンドの実行でネット検索すれば それぞれすぐに答えが出てきます。 node.jsは英語で検索しても埒の明かない答えばかりで、現実にはまともに 対応できてないものと思われます。 リンク見たら普通にlsとpipeの例書いてあるやん >>255 パイプではなく、自分のプログラム、例えば、Hello Worldのプログラムで node.jsにおいてstreamを標準出力に書き込むための手段として使う方法を聞いています。 もちろん、元祖C言語ではFILE系のstreamはstdoutに当然対応していますが、 node.jsでは不明確です。 ファイルをオープンする際のファイル名に何かを指定すれば出来るかも知れませんが。 C言語のstdoutに相当するものがどこにあるのか不明です。 番号の0や1なのでしょうか。 つーか何言いたいんだ? お前のやりたいことが 直感的に言語XでRubyと同様にできないからと言って だからどうしたという話なんだが Rubyアンチスレがモダン言語アンチスレになってきたな process.stdout.fd が fd の int 整数の「1」になっていて、 これを fs.writeSync()の第一引数に渡せば標準出力に 出力できることが分かりました。 しかし、ドキュメントが不十分でめちゃくちゃ分かりにくいです。 Rubyのドキュメントは非常に分かり易いです。 node.jsは、自慢で立派そうなnpmコマンドがあっても、NODE_PATHという 基本中の基本の環境変数すら設定されません。 これでfs-extraモジュールを追加インストールしなければ同期コピーすら出来ないのに。 同期的な外部コマンド実行も同様だと予想されます。 サーバーサイドの裏方として用いるならともかく、これをデスクトップマシンの BATファイルの代わりやスクリプト言語として、一般人向けに配布することは この段階で不可能となります。 その分野では現段階ではRubyが一番適切です。 >>240 >・型安全でない 型付けに関しては、話が長くなるからまた後で >・前後の文脈を見ないとその部分単体ではローカル変数とメソッド呼び出しの見分けがつかない … (後略) これは同意ですね、だから自分はメソッド呼び出しであれば self.hoge みたいに self を省略せずに書きます >・reduce/inject、map/collectのように同じことするメソッドの単なる別名と、 Lisp 文化と Smalltalk 文化の融合ですが、そもそも Ruby は最初から手続き型/関数型/オブジェクト志向を融合した マルチパラダイム言語として設計されていますし、コミュニティも多文化共存共栄(多神教?)みたいな空気がありますね 他の言語、たとえば手続き型原理主義(一神教?)で「聖典こそ真実であり、否定するものは異教徒」みたいな信者からすれば 違和感があるのかもしれませんね >Array#delete_if/Array#reject!のようにほとんど同じなくせして削除失敗時だけ挙動が異なるみたいな … (後略) 関数型プログラミンングだと mutable な操作は使わないのでよう分からんですが、一度に全てを理解しようとせず、 必要になった時に必要なメソッドを使うよう思考を単純化したほうがよろしいのではないかと >・Procオブジェクト(手続きオブジェクト)を作る方法が多すぎ。しかも作り方で挙動が異なる。 … (後略) これも同意、自分は基本がブロック構文、もし稀に明示的なProcオブジェクト(いわゆるクロージャ)が必要になった時には 組み込み関数の lambda を使うくらいですね 前段でもお話したように、他の「作る方法」は(今のところ)必要がないので気になりません >・簡単に「見せかける」ために省略記法を行き当たりばったりで導入しまくった副作用で、 >直感的な記述が逆にエラーとなることが多い(例: p {foo: 1, bar: 2}はエラーwブロックとして解釈されるため) 波カッコを使うブロック構文とハッシュ構文を誤読する問題は、少なくとも自分が Ruby を触り始めた 1.6 の時代から 存在しますから、「行き当たりばったりで導入」した例としては不適切です 「直感的な記述が逆にエラーとなることが “多い”」のであれば、別の例を挙げるべきでしょう 後、変数someの展開を文字列の中で行いたい場合 Ruby: "some=#{some}" JS: `some=${some}` の書き方もRubyの方が便利。 逆引用符は入れにくいし 他が普通の二重引用符なのに一部だけ逆引用符なのは 分かりにくくなりやすい。 それから、\ からエスケープシーケンスの働きをなくして単なる文字として扱うのが Rubyだと一重引用符を使って 'aaa\bbb\ccc' のように書けるが Node.jsだと String.raw`aaa\bbb\ccc` としか書けなくてとても不便。 後、変数someの展開を文字列の中で行いたい場合 Ruby: "some=#{some}" JS: `some=${some}` の書き方もRubyの方が便利。 逆引用符は入れにくいし 他が普通の二重引用符なのに一部だけ逆引用符なのは 分かりにくくなりやすい。 それから、\ からエスケープシーケンスの働きをなくして単なる文字として扱うのが Rubyだと一重引用符を使って 'aaa\bbb\ccc' のように書けるが Node.jsだと String.raw`aaa\bbb\ccc` としか書けなくてとても不便。 >>262 まあそれは後方互換維持のための苦肉の策ですし使い勝手は悪いですね Rubyのは全言語の中でも1番便利ですね 関数呼び出しも展開してくれるし まつもと:それから「Backquotes」の地上げも考えていたんですけども、Backquotesをするとシェルで実行して結果を文字列で返すってやつですね。 (参加者から「いける、いける」の声) まつもと:なんかあの辺で「いける、いける」って言ってる人がいますけど、信じない(笑)。なので、これももうちょっと先で、もう1回くるかもしれませんが、少なくとも3.0では死なないということです。 https://logmi.jp/tech/articles/321308 バージョンによって使えてたクォートが使えなくなったりするクソ言語 >>253 書いてあるでしょ、リンク先に。 ファイルと同じ関数群使えます。 nodejsもググればprocessモジュールに行き着くかと。 外部コマンドは普通はあんまりつかわんけど。 環境依存させたくないので。 基本的にクロスプラットフォームな物を叩くけど、そういうのはそもそもnodeだったりする。 ディレクトリコピーも、cpxあたりだとサッと行くと思うかと。 まぁコピーぐらいは中でやるもんだけど。 >>260 環境変数なんか必要ないんよ。 というかグローバルインストールしてそうなってる?もしかして。 >>269 ローカルにインストールするなんて馬鹿。 ストレージの無駄使い。 差分バックアップが流行ってるかも知れんけど 一箇所でも壊れるとそれ以前(または以後)の全てのバージョンが再現できなくな るのでディスクの故障に対して無力で、バックアップの意味が無い。 不具合があったとき以前のバージョンとWinDiffなどで比較すると原因箇所の 絞込みが出来るが、差分バックアップではそれがやりにくい。 比較ツールがその差分ツールの俺々ツールに限定されてしまうし。 ruby界隈のしょうもないシンタックスへのこだわりとか オブジェクト思考の過剰な押し付け感はやっぱ嫌いだわ。 >>270 アホか。 dll hell起こしたいのか? イマドキなんでもサイドバイサイドだろ。 dedupの効くファイルシステム使えばよかろう。 そういう所ついていけてないから、NODE_PATHがどうとか言っちゃうんだよ。 嫌なら、一つ上のフォルダでnpm i しておけ。 Ruby界隈はこういう物知らずの馬鹿の相手も増えるから 面倒くさいわ 同期への異様な拘りの時点で何でnode始めたの?ってレベルだし もう細かいことはいいんでないの >>275 なぜ馬鹿と言われたのかわからんのだが、一つ上のディレクトリでローカルインストールしたらどうなるか理解できんのだろうか。 ちょっと冷静に話ししてみて。 正直に言って、stdoutのfdが整数値1って所が理解できてないのもわからんのだよ。 もともとstdoutってそうじゃん? むしろ、ファイルディスクリプタが1のすでに開いてあるファイルを標準出力と読んで、コンソールはそれを表示してるだけじゃんよ? >>271 差分バックアップの意味がわからん。 node_modulesの中身バックアップしてるとしたら頭おかしいぞ。 >>277 >正直に言って、stdoutのfdが整数値1って所が理解できてないのもわからんのだよ。 >もともとstdoutってそうじゃん? >むしろ、ファイルディスクリプタが1のすでに開いてあるファイルを標準出力と読んで、コンソールはそれを表示してるだけじゃんよ? あなたはアスペ。 stdoutのfdは、OSれべるでは1なのは誰でも知ってる基礎知識。 しかし、JSのような高級言語でその整数値をそのまま使う例は非常に少ないのに Node.jsでは使っているのにそれをほとんど説明して無いからnode.js 初心者が分かるわけ無い。 そりゃ普通はprocess.stdout.writeだからな そもそものコンセプトを無視して同期に固執するからそうなる rubyが糞だと思う理由 プログラム本体よりもテストコードの方が大きくなる >>279 初心者なんか相手にされてないだけやろ。 しゃあない。 Rubyが嫌いというよりは、無関係なスレでコピペを貼り付けるの人が嫌い。 >>279 アスペだかなんだか知らんが。 整数値をそのまま使うというか、fdまで見たらそうなるに決まってるじゃん。 fs.write...Syncを使いたがるからそうなるんであって、普通にstreamをpipeすれば全部隠蔽されるよ。 jsのような高級言語ではね。 説明してるけど。 ドキュメント読んだ? ドキュメントがしっかりしてるから、初心者向けの解説サイトが無いんだぞ? rubyが何故解説サイトばっかかわかる? ドキュメントがクソだからだぞ。 ググればわかるって目茶苦茶レベル低いこと自覚しろよ。 ttps://logmi.jp/tech/articles/321280 >プロジェクトが大きくなるに従って、テストがだんだん苦痛になってくるんですね。 >テストのサイズが大きくなったりとか、あるいはテストの実行時間が長くなったりとかして、 >だんだんだんだん苦痛になってくることが多いですね。 > >告白すると、私はテストが嫌いなんです。 良く判っていらっしゃる ttps://logmi.jp/tech/articles/321308 正直言うとみなさんはいいですよ。Rubyが無くなってもPythonでもJavaScriptでもいったらいいと思うんですけど。 私や一部のコアコミッターは職業なので、Rubyが無くなったら本当に困るんですよ。 それで、みなさんの困るの程度はともかくとして、Rubyは生き残ったほうがいいと思うんですよ。 https://logmi.jp/tech/articles/321280 > 思い出していただきたいのは、Twitterはずっと1.8を使い続けていたんですね。「パフォーマンス遅い、遅い」って文句言ってるわりには、ずっと1.8を使い続けて、あろうことか1.8を改造して「kiji」という独自のバージョンを作りかけてやめちゃったことがあります。 そりゃマイナーバージョンにひとつで前動いてたコードが動かなくなるクソ開発ポリシークソ体制だからだろww 互換性という点でまったく信頼されてない。 JavaScriptほどとは言わんがせめてPHP程度には互換性保つ努力しろカスw 独自バージョンにやめたのもやってみたら箸にも棒にもかからない糞だと明らかになったからだろカスwww 以下は、表紙にサイの絵が描かれた、2冊のサイ本 JavaScript 第6版、2012、David Flanagan 初めてのJavaScript 第3版 ――ES2015以降の最新ウェブ開発、オライリー、2017 これらを読むだけでも、数年は掛かる。 それぐらい、JavaScript には罠が多い Google などの技術者の机には、必ず置いてあるけど、10年経っても捨てられない 一方、Ruby では「たのしいRuby 第6版」を読むだけ。 3回ぐらい読んだら、本を捨てても、検索しながらプログラミングできる https://logmi.jp/tech/articles/321280 > 思い出していただきたいのは、Twitterはずっと1.8を使い続けていたんですね。「パフォーマンス遅い、遅い」って文句言ってるわりには、ずっと1.8を使い続けて、あろうことか1.8を改造して「kiji」という独自のバージョンを作りかけてやめちゃったことがあります。 そりゃマイナーバージョンひとつで前動いてたコードが動かなくなるクソ開発ポリシークソ体制だからだろww 互換性という点でまったく信頼されてない。 JavaScriptほどとは言わんがせめてPHP程度には互換性保つ努力しろカスw 独自バージョンやめたのもやってみたら箸にも棒にもかからない糞だと明らかになったからだろカスwww >>287 ホンマ、論理のすり替えもええとこやな。w 後続バージョンなら速いのに、と言ったって、Twitterにはそれでも全然足りてないやろ。 言語仕様的に速くできそうもないから、すっぱり見限られたとは思わんのか。 でも、2回も書き込まんでええで。w >>286 コミッタとか言う潰しの効かないことを仕事にしてる時点でダメでしょ 自己責任だわ クックパッドとかfreeは囲い込んでるらしいけど 他の言語への移行の妨げにしかならんから早く首を切るべき もしくは普通の仕事に配置転換するか >本当はテストを書きたくないんですよ。 >というのもDRYじゃないですよね。 >私たちはプログラムを書きたいんであって、テストを書きたいわけではないわけですよ。 >ただ、人類はまだプログラムを書くだけで、正しいプログラムを作る方法を知らないので、仕方がないのでテストを書いているのが現状だと思います。 この辺の話聞いてるとやっぱrubyあかんわと思うわ。。そりゃクソコードも量産されるわな。 > 型宣言嫌いなんですよね。 > なんでかというと、DRYじゃないからなんですよ。 静的型付けや型推論のちゃんとある言語使った経験からするとと意味不明 復唱確認って嫌いなんですよね。DRYじゃない。 と例えればわかる 同じことを言うことで確認を行ってるんだよ 人間がミスをしないなら、そりゃ一回言うだけでいいだろうさ こういう話も2010年ごろにしてるならまだわかるけど2019年時点でしてるんだぜ。。 テストとDRYって関係あるんか? そもそもDRYすらもう死語な気がするのだが >>294 int *p=new int(0); で、型を2回書いてるとかそういう話やろ。 じゃあ、1回ですませられるように auto *p=new int(0); でも、 int *p=new(0); でも、そういうことを考えるのが言語仕様策定ってもんなのにな。 「型は嫌ー」て、もうええわ。 逃げてるままで何回言うんや。 できるけど思想があってやらない(という合理的な判断) ではなく、 できないから屁理屈こねて不合理でミジメな言い訳 だからな。 >>297 型推論があれば a = 1 と書くだけでaは整数と認識して(整数にも色々ある話は省略)処理され 型を書く必要も無い DRYじゃないとは何指してんだか Ruby界のアノ人は「DRYじゃない」と言うことが口癖になってるんだと思う 深く考えないでいってる ほう ttps://melborne.github.io/2013/09/27/auto-attr-set-in-ruby/ 最近Rubyで混乱したのがfilter_map なんじゃこりゃ意味がさっぱり分からんって意味論的にも stepが%で書けるようになったらしいけど、絶対こういうの3年後くらいに非推奨になるやつだろ 断言しとくわ rubyを使うにはMatzという人間の理解から始めなければ良いコードは書けないでしょう 自爆Hashスイッチを押してValue大学を爆破室町ねね暗殺 その後トヨタケーラム弟に帰ることになります by室原案件色彩空間 めちゃくちゃ好きな言語なんだけど今の時代は流行らないよなー。ユースケースが限定されてるし。 vanilla node.jsでプログラミングするよりはマシだけど 時代で流行らないというより、 jsみたいにブラウザに標準搭載されないのが何よりきつい この世からjsという概念を消し去ればあるいは 3.0でモダンな言語の機能を取り入れようとしたけど 根本の設計と噛み合わないので中途半端な延命策という印象 過去のしがらみあるのはしょうがないけど 新規プロジェクトにはもう無いな 監視盗聴つきまといをしておきながら説明責任を果たさなかった日本テレビとテレビ朝日とフジテレビとテレビ東京とTBS本社に爆発物を仕掛けました ゼロ高等学院にも爆発物を仕掛けました バレンタインデーの深夜に爆発します あと松本人志と松本てらと堀江貴文と井口理の家族全員とキングヌーのドラマーとおぎやはぎの小木博明と矢作兼とハマオカモトと武井壮トンカチで顔面グシャグシャにしてぶっ殺します メンタリストダイゴ様がついてるんで僕は逮捕されませーん 松本てらだけは執拗にナイフで滅多刺しにして殺します。人を殺す。まともな人間に会うために。普通だったら爆破予告は一か月で逮捕される。再三の予告で逮捕されなかった事情を白痴どもは考えてろ。 てか、きみらが通報しないから逮捕されないんだよね(^_^;) 監視盗聴つきまといをしておきながら説明責任を果たさなかった吉本興業の学校NSC東京本社に爆発物を仕掛けました バレンタインデーの深夜に爆発します。ちなみにプペルは西野が監視盗聴でパクった作品でーす vcxznm/,v,m/n.,/z,_xc/ あわしろ氏がRubyはオワコンだと言ってたけどな。 いまさらRubyにしがみついてる奴とは縁を切れって。 助成金を吸い取ったり、助成金にありつけなかったら悪徳教材屋・セミナー屋になったり、ひでえもんだからな GitHub における大規模なモノリポのパフォーマンスの向上 https://github.blog/jp/2021-03-19-improving-large-monorepo-performance-on-github/ > GitHub の有名な Ruby モノリスを解体し、GitHub のすべてのユーザーのためにリポジトリのパフォーマンスを向上させる新しいマイクロサービスを Go で作成しています。 パフォーマンスが悪いのはRubyのせいだったとはっきり認めてるねwww >>215 RUBYと共に消えていくのか、、、 【ゆっくり解説】クックパッドの消滅する利用者数!ドロドロ経営で倒産不可避の理由について https://www.youtube.com/watch?v=opNuPo-lj84 >>223 >誰も進化論を信じていない。 >人間は元から、猿じゃなかった。人間の姿のままだった といって、今の正統的進化論にも私は疑問を感じますよ 地球ができた時を時刻 0 年としたとき、「たった 5 億年で」原始生命が発生し、それから「たった5億年で」細菌の中に細菌が共生する「ミトコンドリア・葉緑素の共生」が発生したとか、無理があるでしょう 多細胞生物が 30億年目、そこから脊椎動物が現れるのが 40 億年目と 10 億年かかったというのに、精密な遺伝子システム=デオキシリボ核酸による情報伝達システムが 5 億年で完成するとか、主張が変だとおもいますね >>320 でも結局最終的にはRustになってそう 次のステップ 先に述べたように、プッシュの失敗はほぼゼロになりました。これらの失敗のうちのい くつかは、インターネットネットワークのランダムな問題が原因で、私たちの手に負え ないものです。残りの失敗については、可能な限り悩ましい失敗をなくし、GitHub を より速くする方法を検討しています。 Git システムの世界では、ストレージのハードウェアを刷新して高速化を図っています。 また、GitHub の有名な Ruby モノリスを解体し、GitHub のすべてのユーザーのために リポジトリのパフォーマンスを向上させる新しいマイクロサービスを Go で作成して います。 アンチスレも過疎ってるのか もうダメだなこの言語 みんなよそいっちまったよ 2022年、GitHub上で最も使われたプログラミング言語 2位は「Python」 1位は? https://www.itmedia.co.jp/news/articles/2211/18/news120.html Rubyは10位。なかなか圏外にならないな。 まつもとさんはオワコンと言われ続けてるが なかなかオワコンにならないと講演で 笑いを取ってるらしいが 凋落傾向なのは変わらないな あとからだと何とでも言えるし これを指摘するのも手垢つきまくってるだろうけど やっぱブロックは失敗やったな 受け渡しの書き方もprocとの関係も全部ミスってると思う rustだとそれらは単にクロージャなんで 一個だけじゃなく複数受け取れるし 引数の「最後」に「一個だけ」(..., &block)と「&つけて」書くとかいう縛りがない 単なる変数のひとつとして何個でもどこにでも受け取れる let x = Some("foo"); assert_eq!(x.map_or(42, |v| v.len()), 3); let x = Some("foo"); assert_eq!(x.map_or_else(|| 2 * k, |v| v.len()), 3); これすごいスッキリしてると思う rubyもこのクロージャ形式で手続きをパラメータ化できればよかったのにな そやねえ いっけん嬉しいんだけど あれで色々苦しんでるんやろな言語仕様的に 拡張が苦しいと聞いた youtubeの転職チャンネルとかいうやつで 自分はRubyができるから年収600万円で雇えというのがあったんですが Rubyってそんなにすごい言語なんですか? >>336 Ruby の米国年収は、Go/Rust/Elixir の3大言語を超えた! 一方、PHP は生活保護レベルw Ruby, Elixir : 9.3 万ドル Go : 8.9 Rust : 8.7 多くの言語 : 6.5〜7 PHP : 5 Dart : 4.4 Ruby on Rails, AWS Solution Architect は13万ドルとか! YouTube で有名な雑食系エンジニア・KENTA は、 初心者のキャリアパスは、Rails → Go だけと言ってる 一方、Scala, PHPをオワコン認定した。 使っているのは、Twitter, Facebook ぐらい。 日本はZOZO とか、PHPを使う老人が多い ガーシーのサロンで使っていたMastodon も、 PHPから、Rails 6 へ変わった read.cgi ver 07.5.1 2024/04/28 Walang Kapalit ★ | Donguri System Team 5ちゃんねる