umai_bowのブックマーク (5,879)

  • 継承はなんでダメ? - まめめも

    「オブジェクト指向の継承を使うな」という主張が広まっているようです。なんでダメになったんでしょうか。 インターネットで見かけた「継承はダメ」という主張をいくつか眺めて、友人と議論しつつ、考えてみました。 「コードが読みにくくなる」 継承があると、メソッド呼び出しが実際にどのメソッド定義を呼び出すのか字面でわからない。 デバッガを使って、親クラスのメソッドに飛んだり、子クラスに飛んだりするのを追いかけないと行けない。 つらい。という主張。 めっちゃわかる。わかるんですが、これは「高度に共通化されたコードは読みにくい」という一般的な側面がかなり大きいような。 たとえば継承の代わりに高階関数を使うと、関数呼び出しがどのクロージャに飛ぶか字面でわからなくなる。 ひどいとコールバック地獄になって何が何やらになります。 継承がことさらにまずい理由を想像すると、すべてのメソッド呼び出しがポリモーフィック

    継承はなんでダメ? - まめめも
    umai_bow
    umai_bow 2024/02/10
    継承がと言うかオーバーライドが悪い
  • レイヤードアーキテクチャでデータを作成・編集するときの設計が分からん

    定期的に DDD やクリーンアーキテクチャなどを題材にした記事が盛り上がっているのを見ていると、いま長年の疑問を書けば誰か答えてくれるのではと思って書いてみる。 何に困っているかというと、 いわゆるレポジトリ層が持つ create/update 関数の引数は Entity で待ち受けるべきか、プレーンなオブジェクトで待ち受けるべきか分からない ユーザーから POST Body されたデータにはビジネスルールを適用させるべきか(= 一度 Entity を作るべきか)分からない だ。 Entity を作らない場合、いわゆるトランザクションスクリプトと呼ばれているものに近づく。 そしてトランザクションスクリプトには結構否定的な意見も見られる。 しかし、自分は Entity を作ることが必ず正解とは思えず、レイヤードな設計とトランザクションスクリプトを組み合わせる設計の余地もあると思っていて、トラ

    レイヤードアーキテクチャでデータを作成・編集するときの設計が分からん
    umai_bow
    umai_bow 2024/02/09
    CQRSでは
  • Flashほど一時代を築いた割りに本気で使えなくなった技術ないだろ

    コボラーだったワイが、 「いつまでもCOBOLってのもな……最近はWeb開発が流行っとるらしいしそっちに転向や!」 つって当時は最先端だったFlashを必死で覚えてデザイナースクールにも通ったのに、 今、再びCOBOLで金融系システムの保守業務に携わっている。 なんでワイはFlashじゃなくてJava Servlet方面に行かんかったんや…… そっちやったらフレームワークとかにも対応して行けたやろうに、 FlashとHTMLに特化してしまったばっかりに。 adobe絶対に許さない。

    Flashほど一時代を築いた割りに本気で使えなくなった技術ないだろ
    umai_bow
    umai_bow 2024/02/08
    オーサリングツールとしてのFlash(Animate)、未だに比類するものがない。今似たようなの作れば教育用にSketchを駆逐できると思う
  • ”車=ブーブー”などの幼児語を覚えさせるのは非効率的では?という意見に数多くの体験談&研究成果が集まる→言葉が難しいと幼児は独自の幼児語を発明するらしい

    Physalia*💯 @Pandoras_eous 幼児語、まじで嫌い 子供に後で恥をかかせるために大人がグルになって一般的でない言葉を覚えさせてるとしか思えない、悪質すぎる 百害あって一利ないだろ 2024-02-06 22:45:44 Physalia*💯 @Pandoras_eous 小学校低学年のころ友達とか大人との会話で自分の喋った言葉に変な反応される度に「ちっ、これも幼児語かよ」って語彙を改めていく手間、まじでなんだったんだ 2024-02-06 22:48:18 Physalia*💯 @Pandoras_eous 段階的にと言ってもね 例えば幼児に「くるま」が言えず「くーま」のようになってしまうとして、そこを「ブーブー」で代用していたら「くるま」の習得は遅れるばかりでしょ 「くるま」と言えるまでは、初めから別の言葉にするんじゃなくて、「くーま」からの連続的な変化を促すべ

    ”車=ブーブー”などの幼児語を覚えさせるのは非効率的では?という意見に数多くの体験談&研究成果が集まる→言葉が難しいと幼児は独自の幼児語を発明するらしい
    umai_bow
    umai_bow 2024/02/08
    非効率とかで子育てできんから
  • 時代がstaticおじさんに追いついてきた(追記あり) - きしだのHatena

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

    時代がstaticおじさんに追いついてきた(追記あり) - きしだのHatena
    umai_bow
    umai_bow 2024/02/08
  • Intl.Segmenterはどうやって単語分割しているのか

    Intl.Segmenter についておさらい JavaScript には Intl と呼ばれる国際化 API があり、日時や数値のフォーマットを始めとする国際化に便利な機能が揃っています。Intl.Segmenter はこの Intl の一機能で、文字・単語・文章単位での文字列分割を可能にします。 文字単位での分割では複数のコードユニットやコードポイントを持った文字を考慮し、正確に見た目上の1文字(書記素)で分割できるので、絵文字を含んだ文字数のカウントなどに便利です。 const segmenter = new Intl.Segmenter("ja", { granularity: "grapheme" }); console.log("🇯🇵👨🏻‍💻".length); // ❌ 11 console.log([..."🇯🇵👨🏻‍💻"].length); // ❌

    Intl.Segmenterはどうやって単語分割しているのか
    umai_bow
    umai_bow 2024/02/07
  • 男性はネタバレをしがちなのか?

    前提として、 「偏見の塊&お前の周りの男がそうなだけだろ」だと思います。実際そう。 ネタバレをしない男性の方々当に申し訳ありません。 それを踏まえて「男性はネタバレをする人間」という話をする。 自分はネタバレが嫌いだし、新しい作品に触れるときは情報を出来る限り遮断して真っ新な状態で触れるのが好きだ。 ネタバレにも色々有り、話の核に触れる部分(キャラが死ぬ、犯人、世界の仕組み、結末)は嫌な人が多いだろう。 自分は、タイトル以外の情報は当に知りたく無いタイプ。公式サイトも見ない。匂わせも嫌。 これは正直だいぶ面倒くさいし人が寄り付かないタイプのネタバレ嫌いだと思う。 しかし周りの人間、特に男どもが何かしらネタバレをしてくる。 何度やめてくれと言っても、 「ここ覚えておいて」 「あー…次あの回か」 「あのキャラ出た?」 「あっ…察し」 「ちなみにこのキャラは◯◯っていう裏設定があって〜」 「

    男性はネタバレをしがちなのか?
    umai_bow
    umai_bow 2024/02/07
    教科書通りのマンスプやん
  • Indie Web という言葉 - ゆーすけべー日記

    過去にPodcast「Rebuild」へ出演したことがあるってことで、当のmiyagawaさんから「Rebuild Meetup 2015」のお誘いが来た。YAPC::Asiaの直前なんで〜とか言いながらたぶん行く。自分もRebuildに影響されてPodcastを始めた手前、リアルイベントとの融合的なチャレンジは何より興味がある。 そういえば、miyagawaさん、TAKESAKOさんと3人で 2014年の「通称デブサミ」にて「Webの現在過去未来」というセッション で色々と「ダベった」のを思い出す。当初、主催である翔泳社のとある方からお声掛けしてもらって、実はこのセッション、会期2日目のキーノート的な立ち位置だったんでビビったw で、僕が Webの技術的なことも面白いけど、それを利用する環境として、モバイルアプリとか出てきてプラットフォーム化している現象が興味深いよね。以前はBlogのム

    Indie Web という言葉 - ゆーすけべー日記
    umai_bow
    umai_bow 2024/02/04
  • 発達障害かどうかってのは多分関係ない。いわゆる健常者だってそういう言..

    発達障害かどうかってのは多分関係ない。いわゆる健常者だってそういう言動をすることはよくある。自分の欠点を、自分の意志の欠如の結果ではなく、単なる現象として説明する言説を手に入れると、人はどうしてもそれを使ってしまう。なにせ責任を取る必要がないわけだから。 意志と責任はセットの概念で、自分の意志で行ったのだからこそその責任を取らなければならない、というのがこの社会のルールになっている。でもまあそんなのフィクションなわけだ。人間はただの物理現象で、原子分子がエネルギーポテンシャルの坂道を転がった結果でしかない。とはいえ、人間は意志というフィクションを共有することで互いに関係することができている、というのも事実である。もちろん、人間は皆ただの物理現象であって自由意志なんてない、ということを合意することで回る社会というのもありうると思うが、少なくとも現状そうなっていない。個人が意志を持って行動し、

    発達障害かどうかってのは多分関係ない。いわゆる健常者だってそういう言..
    umai_bow
    umai_bow 2024/02/04
    名文じゃん
  • シングルバイナリで動くERBのテンプレートプロセッサーを作った - so what

    github.com 体は ERB.new().result を呼ぶだけで、それをmrubyでdarwin/linuxのx86_64/aarch64向けにビルドした。 以下のようにシングルバイナリプログラムを通してテンプレートファイルを処理できる。 <%- to = ENV["MAIL_TO"] priorities = ENV["PRIORITIES"].split(",").map(&:strip) -%> From: James <james@example.com> To: <%= to %> Subject: Addressing Needs <%= to[/\w+/] %>: Just wanted to send a quick note assuring that your needs are being addressed. I want you to know tha

    シングルバイナリで動くERBのテンプレートプロセッサーを作った - so what
    umai_bow
    umai_bow 2024/02/04
  • 「英語習得への近道が開かれた」AI革命の到来…ChatGPTで英語学習を10倍効率化する方法 | ゴールドオンライン

    英語習得に近道はないと言われていましたが、AIの進化とChatGPTの登場により、近道が開かれました。なぜChatGPTを利用すると、効率よく英語学習を進めることができるようになるのでしょうか。ChatGPTの活用方法について、著書『AI英語革命 -ChatGPT英語学習を10倍効率化-』(リチェンジ)より、谷口恵子氏が解説します。 ChatGPTが人々に与えた衝撃 「AI革命」の始まり―それは、2022年11月30日のChatGPT登場でした。 それまでのAIにはできなかった自然言語での対話。そして、その返答の賢さに、使ってみた全ての人が驚愕しました。そして、映画などで見たAIと共生する未来が、近い将来、現実になることを予感するようになりました。 特にこれまで「AI」というものに関心がなかった人の間でも、仕事教育現場において、無視できないレベルの変化が起きそうだ、と感じる人が多く出て

    「英語習得への近道が開かれた」AI革命の到来…ChatGPTで英語学習を10倍効率化する方法 | ゴールドオンライン
    umai_bow
    umai_bow 2024/02/04
    学習する意味なくない?
  • 「なんでアクセルとブレーキの踏み間違いなんて起きるんだろう」と思っていたが、70代で免許を返納した知り合いの話がリアルだった「間違えたペダル踏んでるのに気づけないんだよ」

    MT(TRUE COLORS Japan運営、C&F協会の人) @Mocherin アクセルとブレーキの踏み間違い、ってなんであんな事が起きるんだろう…と思っていたのだが、免許を返納した70代の知り合いの人が言ってたのだが「例えば、スマホ画面を見ないで文字入力してて、指がずれてて文字がうまく入らない時あるだろ?”た”を押そうとして横の”な”を押しててるみたいな時。そんな時に間違えてるの分からず数文字入力してやっと気づくのと同じで、間違えた方のペダルを踏んでるのに気づけないんだよ。私の場合は自宅で車出す時になぜか発進しない。気づいたらブレーキを間違えて踏んでたんだよ。それに気づいた次の瞬間にエンジン切って、次の日に免許返納したよ」とのことだった。 ちなみに、なんで次の日だったかというと「その日はもうバスはうごいてない時間だったから」だそうです。 これから、自分も含めて高齢者が増えていく訳で、

    「なんでアクセルとブレーキの踏み間違いなんて起きるんだろう」と思っていたが、70代で免許を返納した知り合いの話がリアルだった「間違えたペダル踏んでるのに気づけないんだよ」
    umai_bow
    umai_bow 2024/02/03
    バックで踏み間違えたことある。正直バックはクリープのみにしてアクセル無効にしてもいいのではないか(非常用のスイッチはあると思うけど)
  • ジャンプの漫画のアニメ化は外れがない

    るろうに剣心「せやろか」 封神演義「甚だ遺憾である」

    ジャンプの漫画のアニメ化は外れがない
    umai_bow
    umai_bow 2024/02/03
    はてのさん完璧すぎる
  • 恋愛サイコホラー『ドキドキ文芸部プラス!』PC版、2月9日無料配布へ。Epic Gamesストアにて - AUTOMATON

    Epic Gamesストアにて2月2日、『Doors: Paradox』の無料配布が開始された。配布期間は2月9日午前1時まで。同時刻から開始される次回の無料配布タイトルも公開されており、『ドキドキ文芸部プラス!』と『ロストキャッスル』の二立てとなる予定だ。なお無料配布タイトルは期間内にEpic Gamesストアのライブラリに追加することで、配布期間終了後も保有しプレイ可能となっている。 『Doors: Paradox』 『Doors: Paradox』は癒し系脱出ゲームと標榜されている作品だ。舞台となるのは「扉」が配置された3Dジオラマ風のさまざまなステージ。ステージごとに異なるギミックが用意されており、周囲を観察したり、謎を解いたりしながら“脱出”を目指す。Steamユーザーレビューでは644件中93%が好評とする「非常に好評」ステータスを得ている高評価作品だ。 同作の配布期間は2月

    恋愛サイコホラー『ドキドキ文芸部プラス!』PC版、2月9日無料配布へ。Epic Gamesストアにて - AUTOMATON
    umai_bow
    umai_bow 2024/02/03
    新作はいつ出るのだろう
  • 効率的なGo

    書は、Goアプリケーションの効率やスケーリングに関する疑問に対して、実用的な答えを与えてくれる書籍です。 レイテンシー、CPU、メモリ資源についての知識、またOSやGoがそれらを抽象化している方法について、またソフトウェアの効率に関わるデータ駆動な意思決定を行う事の意味や、計算量解析の手法、最適化状況の例など、実用的なソフトウェアを開発する中での「効率」に関する知識を紹介します。 Goやその他のモダンな言語で書かれたプログラムを設計、作成、変更するソフトウェア開発者、また誰かが書いたソフトウェアを主に運用するDevOpsエンジニア、SRE、シスアド、プラットフォームチームなどの読者が、いつ、どのように効率最適化を適用するかという問いに答えるための知識を身に付けることができるでしょう。 関連ファイル 原著者による書のサンプルリポジトリ 正誤表 ここで紹介する正誤表には、書籍発行後に気づい

    効率的なGo
    umai_bow
    umai_bow 2024/01/31
    せめて効果的では
  • SameSite属性とCSRFとHSTS - Cookieの基礎知識からブラウザごとのエッジケースまでおさらいする - Flatt Security Blog

    こんにちは、 @okazu_dm です。 この記事は、CookieのSameSite属性についての解説と、その中でも例外的な挙動についての解説記事です。 サードパーティCookieやCSRF対策の文脈でCookieのSameSite属性に関してはご存知の方も多いと思います。記事でCookieの基礎から最近のブラウザ上でのSameSite属性の扱いについて触れつつ、最終的にHSTS(HTTP Strict Transport Security)のような注意点を含めて振り返るのに役立てていただければと思います。 前提条件 Cookieについて Cookieの属性について SameSite属性について SameSite属性に関する落とし穴 SameSite属性を指定しなかった場合の挙動 SameSite: Strictでも攻撃が成功するケース 例1: スキームだけ違うケース 例2: サブドメイ

    SameSite属性とCSRFとHSTS - Cookieの基礎知識からブラウザごとのエッジケースまでおさらいする - Flatt Security Blog
    umai_bow
    umai_bow 2024/01/31
  • Japanese Version - 100 Go Mistakes and How to Avoid Them

    Go Mistakes Book Details Go言語でありがちな間違い このページは『100 Go Mistakes』の内容をまとめたものです。一方で、コミュニティに開かれたページでもあります。「ありがちな間違い」が新たに追加されるべきだとお考えでしたら community mistake issue を作成してください。 Jobs Is your company hiring? Sponsor the Japanese version of this repository and let a significant audience of Go developers (~1k unique visitors per week) know about your opportunities in this section. 注意 現在、大幅に多くのコンテンツを追加して強化している新しい

    Japanese Version - 100 Go Mistakes and How to Avoid Them
    umai_bow
    umai_bow 2024/01/31
  • ガイドラインが必要では?と問われた森川ジョージさんが回答「すでにある。原作者が【絶対】」…赤松健さんの「業界団体で検討する組織体を作るべき」も

    森川ジョージ @WANPOWANWAN とんでもなく残念なニュースを目にした。 同業者の嘆きの経緯は眺めていたがこんなことになるとは。 気持ちがわかるだけに胸が痛い。 業界では幾度も繰り返されてきたことではあるが今回の件はもう取り返しがつかない。 とにかく残念だ。 2024-01-29 19:09:45 違う? / junya. @1tame23BC @WANPOWANWAN 率直に残念です。 原作者が亡くなった……だけで終わらせて欲しくない。これは漫画作品実写化への問題提起となる出来事だと思いますし、二度とこんなことは起きて欲しくない。なにか一定のガイドラインが必要では無いでしょうか。 2024-01-29 23:47:10 森川ジョージ @WANPOWANWAN 失礼ながら引用させていただきます。 このような意見が散見されますがすでにガイドラインはあります。 日では原作者が【絶対】で

    ガイドラインが必要では?と問われた森川ジョージさんが回答「すでにある。原作者が【絶対】」…赤松健さんの「業界団体で検討する組織体を作るべき」も
    umai_bow
    umai_bow 2024/01/30
    今回の件は残念に思うが「原作者が絶対」ぐらいしか回答がない時点でなあなあな感じでやってるんだなあと
  • Apple によるブラウザエンジン規制の緩和 | blog.jxck.io

    Intro 以前から騒がれていた Apple によるサイドローディング周りの緩和について、正式な情報公開があった。 Apple announces changes to iOS, Safari, and the App Store in the European Union - Apple https://www.apple.com/newsroom/2024/01/apple-announces-changes-to-ios-safari-and-the-app-store-in-the-european-union/ ストアやペイメントの緩和もあるが、ここでは WebKit に関する部分だけを抜粋し、どのような条件があるのかをまとめておく。 筆者が公開情報を読んで解釈したものなので、内容は保証しない。 前提 iOS/iPadOS に入れられるブラウザには、 WebKit を用いる必要が

    Apple によるブラウザエンジン規制の緩和 | blog.jxck.io
    umai_bow
    umai_bow 2024/01/29
  • イベントハンドラの関数名についての雑記 - Qiita

    今日のXでは、イベントハンドラの関数名についての話題を見ました。元の投稿はこちらです。要するに、次のhandleClickのようなhandleイベント名という命名は良くないということです。 const handleClick = () => { ... }; <button type="button" onClick={handleClick} /> これについて少し考えたので、せっかくなのでアウトプットしておくことにしました。 この記事の目的 考えたことを頭の中に残しておくのがもったいないので、文章の形にしておく。 色々な意見が出る問題であり、ベストな答えは無いので各々好きにすれば良いということを、読者に理解してもらう。 とはいえ、筆者の考えに納得して同じ考えの人が多いと嬉しいので、なるべく納得してもらう。 筆者の考え 自分の考えとしては、むしろhandleClickいいじゃん! どんど

    イベントハンドラの関数名についての雑記 - Qiita
    umai_bow
    umai_bow 2024/01/27
    onClick には onClick 渡す派だ。