ブックマーク / nowokay.hatenablog.com (10)

  • 時代がstaticおじさんに追いついてきた(追記あり) - きしだのHatena

    この文章みてください。 オレはもう20年以上システム業界にいるけどな、その長い経験から言うと、オブジェクト指向なんてものは、理論としては面白いけど、およそ実用的とは言い難いものだな。まぁ、例えばGUIのコンポーネントとかはオブジェクト指向に基づいて作られているようだから、そういうツールとかを作る人には必要なものなのかもしれない。しかし君たちがいずれ作ることになる業務アルゴリズムにはまったく無縁のものだと思ってもらって間違いない。どうもこの業界、オブジェクト指向でなければダメ、というような風潮がまかりとおっているけどな、オブジェクト指向なんか当に使っている人はほとんどいないよ。オレも少し勉強してみたけど、カプセル化とかポリ何とかとか、どうにも利点が理解できなかったね。実際、実業務で使ったことなどないしな…… 「またお前、オブジェクト指向の話をしてるのか」と思ったかもしれませんが、2010年

    時代がstaticおじさんに追いついてきた(追記あり) - きしだのHatena
    tattyu
    tattyu 2024/02/08
    読みやすくて保守しやすいならどっちでも良い。1人の時はstaticはたまに使うけどC/C++みたいな地獄になる事は少ない。主従関係を加味して運用してると言うのもある。そもそも今だと依存注入とか使うんじゃ無いのか。
  • コミュニティノートがTwitterを壊している - きしだのHatena

    コミュニティノート、案の定暴走している。 どんな改悪、利用制限よりも大きくTwitter*1を壊してるんじゃなかろうか。 ※ 2024/3/12追記 コミュニティノートの、「追加の背景情報が必要ない理由を説明するノート」がうまくまわって、初期に見られた正義の暴走のようなノートは表示されないようになってきています。 コミュニティノートは、多数派に有利な仕組みです。 「コミュニティノートでは、さまざまな視点を持つユーザーにとって役に立つノートが特定されます」 となっていますが、多数派であればさまざまな視点を持つユーザーが確保しやすく、逆に少数派は視点が収束する傾向があるので不利になります。 そのため、なんらかの不満をもっているけどその不満を表明して言葉にするとだいたい間違っているという層には非常に居づらくなっています。 「間違ったツイートをしなければいい」のような発言をみかけるけど、裏を返せば

    コミュニティノートがTwitterを壊している - きしだのHatena
    tattyu
    tattyu 2023/08/04
    togetterみたいな邪悪な機能。togetterもダメージ受けるし、ざまぁって感じ。悪意のあるCNに弱いし逆にデマを広める事もできるよな。多数決主義の人が使う邪悪なSNSなんていつまで使ってんのって思う。
  • Javaがパブリックスタティックヴォイドメインの呪文から解放される - きしだのHatena

    みなさん、今日もパブリックスタティックヴォイドメインしてますか? ジャバと言えばパブリックスタティックヴォイドメインですよね。 最近はIDEでmain[tab]と入力すれば補完してくれるとはいえ、コードを読むときには目に入ってきたりしますね。 そんなパブリックスタティックヴォイドメインの呪文から解放される日が近づいています。 TL; DR 9月リリースのJava 21の試用機能として void main() { System.out.println("Hello"); } をhello.javaで保存したら、java hello.javaで実行できるようになります。 (Java 21では--enable-preview --source 21が必要) Javaではプログラムを開始するときにpublicなclassなどにStringの配列を受け取るpublicでs

    Javaがパブリックスタティックヴォイドメインの呪文から解放される - きしだのHatena
    tattyu
    tattyu 2023/06/12
    JavaとかC++に慣れてたから、unity C#触った時にmainが無くて混乱したのを思い出した。
  • エンジニアのためのChatGPTプラグイン3選+1 - きしだのHatena

    前のブログでも紹介したのだけど、ChatGPTプラグインのローリングアウトが始まって使えるようになっていて、結局みんな使うのはこの3つくらいかなーとなったので、まとめておきます。 前のブログはこれ。 Bardも世の中のサービスぜんぶGoogle製と思ってるらしい - きしだのHatena 同時に使えるのは3つまでのようだけど、他のプラグインはアメリカ不動産情報など日からは使いづらかったり、作ってみたレベルだったりなので、結局この3つに落ち着くかなーという気がします。 WebPilot これは手放せなくなります。Web記事を読み込んでくれるプラグイン。 ChatGPTには「この記事を要約して」しか入力しなくなりそう。 このエントリを要約してもらっています。 大規模言語モデルの「脳波」が反応してる部分を壊すとどうなるか試した - きしだのHatena ※ 追記 15:21 ぼくのところには

    エンジニアのためのChatGPTプラグイン3選+1 - きしだのHatena
    tattyu
    tattyu 2023/05/15
    いきなりbardの優位性が崩れて草。R.I.P Google。
  • 日本語が通る大規模言語モデルCerebras-GPTを動かす - きしだのHatena

    またなんか大規模言語モデルが公開されてましたね。 ということで、Cerebrasが公開したモデルを動かしてみます。日語が通る感じ。 商用利用可能というライセンスなども含めて、一番使いやすい気がします。 https://huggingface.co/cerebras ここでいろいろやってるようだけど、モデルを動かすスクリプトはありません。 https://github.com/Cerebras/modelzoo なので、自分でモデルを動かすコードを書くということになるけど、VTS-Techさんがgistで公開しているスクリプトを使わせてもらいます。 https://gist.github.com/Veritas83/bb858a2039fe84cd35af4064c0aa44d8 -mでモデルサイズ、-cでコマンドラインモード、-pでプロンプトを指定します。 >python VTSTech

    日本語が通る大規模言語モデルCerebras-GPTを動かす - きしだのHatena
    tattyu
    tattyu 2023/03/31
    AI関連は進捗が早すぎるので来週にはStableDiffusionGUIのGPT版みたいなのが登場してそうだな。10年後どうなるか全く分からなくなってきた。
  • おうちの8GB VRAM GPUでChatRWKVと会話する - きしだのHatena

    ChatGPTが話題ですが、そういうのをおうちで動かしたいですよね。 ということで、おうちで動かしやすくて割と会話ができるChatRWKVを試してみます。 ChatGPTは実装は公開されておらず手元で動かすことはできません。けど、サービスがたまに落ちてたりするので手元で動かせるなにかがあると安心ですね。何より、こんな変な技術を手元で動かしたい。 そこで手元で動かせるLLMとしてFlexGenが話題になりましたが、それでも強力なGPUが必要です。 https://github.com/FMInference/FlexGen そして低リソースで動かせる実装としてAlpaca.cppなんかも出ましたが、そこまで賢くない感じ。 https://github.com/antimatter15/alpaca.cpp そこに現れたのがChatRWKVです。一般のご家庭の8GB VRAMのGPUで動かせつ

    おうちの8GB VRAM GPUでChatRWKVと会話する - きしだのHatena
    tattyu
    tattyu 2023/03/29
    3070ti使ってるけど、調べたらメモリ8GBしか乗って無かった。AI用に動かせるマシン組もうかな。
  • ChatGPTに負けないために大切なこと - きしだのHatena

    ChatGPT、人気ですよね。 そして、こんなに賢いAIが現れたら人間の仕事はなくなるような気がしてしまいます。 そこで、ChatGPTに負けないためにどうしたらいいか考えてみます。 ※ChatGPTに負けない必要があるのか、というのはまた別の話。 原理、原則を知る ChatGPTは膨大な知識をもっています。これを人間が対抗するのは無理です。そこで、論理などの原理、原則を知ることで知識量を補っていきます。 たとえば「カラスは暗いところで見づらい」「タイヤは暗いところで見づらい」「黒いコートは・・・」のように暗いところで見づらいものについて多くの情報を覚えておくのではなくて、「黒いものは暗いところで見づらい」という原則をしっていれば「カラスは黒い、ということは暗いところで見づらい」「タイヤは黒い、ということは・・・」「黒いコートは・・・」のように類推することができるようになります。 さらにこ

    ChatGPTに負けないために大切なこと - きしだのHatena
    tattyu
    tattyu 2023/03/11
    検索が不要になった世界でどうやってAIに学習させるかは課題だな。今でさえクソSEOでAIの記事書かせてる奴が出てくるぐらいだしこのままだと猛烈な勢いでダメなタイプの自己学習して馬鹿になってしまう可能性もある。
  • オブジェクト指向はすでに粒度が時代にあっていない - きしだのHatena

    定期的にオブジェクト指向disを書いてしまってるのだけど。 とりあえずオブジェクト指向の話をすると定義が人によって違いすぎるので、改めてここでの定義を書いておくと 、基的にはOMTの「データ構造と振る舞いが一体となったオブジェクトの集まりとしてソフトウェアを組織化すること」 に従うのですが 「1990年に流行りソフトウェア開発のすべてを飲み込み、いまとなっては人それぞれ定義が違って技術的議論に使えなくなった、主にオブジェクトを基単位としてプログラムを整理するやりかたを指すマーケティング用語」 という感じです。 ほとんどの場合で人によってオブジェクト指向の指す範囲が違いすぎて、技術的知見の共有には使えなくなっています。でも、いずれの定義にしろオブジェクトを基単位にするというのは重要ではないかと。 ソフトウェアの組織化の単位としてオブジェクトを使うというのが大事で、データの搬送に構造体代

    オブジェクト指向はすでに粒度が時代にあっていない - きしだのHatena
    tattyu
    tattyu 2021/09/25
    設計できない奴がこう言うの読んで勘違いするとマジで酷い目に会う(現在進行形)ので害悪だと思ってる。この手の話って使われる場所によりけりだろ。全部オブジェクト指向じゃなくて良いとかならまだ分かる。
  • オブジェクト指向には、カメラがやっとついたころのガラケーのイメージがある - きしだのHatena

    某所でオブジェクト指向についていろいろ書いたのでまとめておく。 問題意識としては初学者がなにかというと「オブジェクト指向できるようになりたい」のようなことを言うけどそこまでの優先順位でがんばるものではないんでは、というところです。 まず前提として、オブジェクト指向は1980-2000年くらいに流行って発達したものの、それ以降は時代にあわせた進歩はしていない20年以上前の技術ってのがあります。 そのころは今だとCPUのキャッシュにも満たないようなメモリをやりくりしてプログラムを書く必要があったので、オブジェクト指向はメモリ上のデータをコピーすることなくうまく使いまわせるようなプログラム技術になっています。 そしてオブジェクト指向にはそこから目だった更新はなく、タイトルに書いたように、カメラがやっとついたくらいのガラケーのような古い技術という感じがします。 オブジェクト指向について、アプリケー

    オブジェクト指向には、カメラがやっとついたころのガラケーのイメージがある - きしだのHatena
    tattyu
    tattyu 2021/01/21
    関数型言語だけでゲーム作ろうと思ったら、IOモナド的なの使いまくる羽目になって関数型のうまみが殆ど消えるコードになると思う。ゲームエンジンとかは関数型言語でもいいかもね。
  • プログラマの実力は経験だけであがらないことがレベル格差につながる - きしだのはてな

    プログラマというのは、道具に慣れることが、実力があがることにならないのですよね。だから、勉強せず業務経験だけだとレベルが低いままということになってしまう。 Javaを10年さわり続けて、Strutsを5年さわり続けても、それだけでは、与えられた画面を手際よく作成できるようになるだけで、たとえばStrutsすらよりよく使えるようになるわけではなかったりする。 Javaにしても、「volatileってなんですか?」という問いに、まあ知らないのはしかたないとしても、解説を見ながらですら答えられない可能性がある。 プログラムの反復生産は、プログラミング能力の向上にあまりつながらない。設定や記述に慣れるだけだ。そして、この「慣れ」というのには「難しいからそもそも実装を回避する」というようなものも含まれる。実力の向上は、作業ができるレベルで止まってしまう。 プログラマとしての実力をあげるための勉強が自

    プログラマの実力は経験だけであがらないことがレベル格差につながる - きしだのはてな
    tattyu
    tattyu 2019/05/14
    なんで7年前の記事が上がってるの?。
  • 1