タグ

MonMonMonのブックマーク (4,226)

  • Vim Boss が亡くなりました。

    2023-08-05、悲しいお知らせが入ってきました。Vim の作者 Bram Moolenaar 氏が亡くなりました。謹んでお悔やみを申し上げます。 以下は Bram Moolenaar 氏のご家族から vim_announce に送られたメッセージです。 https://groups.google.com/g/vim_announce/c/tWahca9zkt4t 親愛なる皆様へ Bram Moolenaar が 2023年8月3日に逝去したことを、謹んでお知らせいたします。 Bram はここ数週間で急速に進行した病状に苦しんでいました。 Bram は人生の大部分を Vim に捧げ、皆様が一員である Vim コミュニティを大変誇りに思っておりました。

    Vim Boss が亡くなりました。
    MonMonMon
    MonMonMon 2023/08/06
  • 徐々に高度になるリングバッファの話 - Software Transactional Memo

    リングバッファのイメージ図 1. リングバッファとは何か 機能的にはFirst In First Out (FIFO)とも呼ばれるキューの一種であるが、リング状にバッファを置いてそれの中でReadとWriteのインデックスがグルグルと回る構造をとる事によって容量に上限ができることと引き換えに高速な読み書き速度を得たものである。キューを単に実装するだけなら山ほど方法があって線形リストを使ってもいいしスタックを2つ使っても原理的には可能だ。その中でもリングバッファを用いた方法の利点はひとえに性能の高さでありメモリ確保などを行わないお陰でシステム系の様々な場所で使われている。 これの実装自体は情報系の大学生の演習レベルの難度であるが少し奥が深い。まずリングバッファのスタンダードなインタフェースと実装は以下のようなものである。 class RingBuffer { public: explicit

    徐々に高度になるリングバッファの話 - Software Transactional Memo
  • DIP(依存性逆転の原則)を守っていない話

    一昨日くらいに 「DIP してもどうせ辛くなるよね」的なことを適当にツイートしたら引用 RT や RT 後言及やエアリプで言及された上に「こいつは設計を何も理解しとらん」みたいなことを言われた。「俺は当に何も理解していないのか?」と不安になったので、自分の考えをちゃんと書いておこうと思った。先に自分の立場を言うと、なんたらアーキテクチャとか SOLID 原則は有用だし自分も使うが、それを厳守しようとは思っていないと言う立場だ。 DIP とはなんだったか DIP(依存性逆転の原則)は SOLID 原則の一つで、一言で言うと「抽象に依存させると依存関係が逆転する」といったものだ。何のことやらという風になるので例だけ挙げると、UserRepository と UserService があってこのように定義すると class UserRepository { get() { return dat

    DIP(依存性逆転の原則)を守っていない話
  • Ajaxから始まった一つの時代の終わり

    最近の流れを見ていての感想文なので、ideaとして投稿します。筆者のバックグラウンドとしては、Remixの商業記事を書いたり、App Routerの商業記事を書いたりしている人です。 さて、筆者は2022年の秋から、社内システムではありますがRemixをプロダクション運用しています。また、Next.jsのApp Routerについても、パラダイムとしてはRemixにインスパイアされた部分が多い[1]おかげで、順調にキャッチアップできています。 RemixとApp Routerは、ルーティングとデータフェッチを高度に統合しており、Progressively Enhanced SPA(PESPA)と呼ばれることもあるそうです。PESPAについては、次の記事が話題になりましたね。 このPESPAであるRemixを実運用する中で、フレームワークの手触りが近年触ってきたものと大きく違っている点があっ

    Ajaxから始まった一つの時代の終わり
    MonMonMon
    MonMonMon 2023/07/12
  • パケットキャプチャで理解する TLS1.3

    TLS は Transport Layer Security の略で、盗聴、あるいは通信相手のなりすましの可能性がある通信路において、安全に通信を行うための暗号通信プロトコルです。 書では、Go 言語を使って TLS サーバ・クライアントを用意し、その通信を Wireshark で観察しながら、TLS のプロトコルについて説明します。 書を読むことで、TLS の通信で実際にどのようなパケットが送受信されているかが確認でき、TLS の学習の助けになると思います。 また、TLS には複数のバージョンがありますが、記事では、最も広く使われており、かつ最新である TLS1.3 に焦点を当てます。

    パケットキャプチャで理解する TLS1.3
  • 2023年にエンジニアな私がマネジメントに目覚めてから読んでよかった3冊 - Lean Baseball

    タイトルそのままのエントリーです. 気がつけば現職含めて「エンジニアのマネジメント」を行う職種を6年ちょいやらせてもらっています. マネジメントをする・しないを含めてキャリアパスどうする? マネジメントをやるとして何を教科書にしたら? 今どきの開発スタンス・マネジメントってどうしたら? みたいな悩みや迷い(&やっぱコードを書くエンジニア仕事良さそうという脱マネジメントの検討*1)は常にありますが, 今年はそれに応えてくれる良著3冊に出会いました. スタッフエンジニア エンジニアのためのマネジメント入門 人が増えても速くならない 以上の3冊です. この3冊です(結論) スタッフエンジニア マネジメントを超えるリーダーシップ 作者:Will Larson日経BPAmazon エンジニアのためのマネジメント入門 作者:佐藤 大典技術評論社Amazon 人が増えても速くならない ~変化を抱擁せよ

    2023年にエンジニアな私がマネジメントに目覚めてから読んでよかった3冊 - Lean Baseball
  • SF小説好き1480名に聞いた「絶対に読んどけ」っていうSF小説ランキング - 俺だってヒーローになりてえよ

    どうも、読書中毒ブロガーの ひろたつです。一生寝てたいタイプです。 今回は界隈が大盛りあがりだった企画。 いらん前置き まだ続くいらん前置き SFが生み出す“熱” 集計の概要 40位    4票 39位    5票 38位    6票 37位    7票 36位    8票 35位    9票 34位    10票 33位    11票 32位    12票 31位  13票 30位    14票 29位    15票 28位    16票 27位    17票 26位    18票 25位    19票 24位    20票 23位    21票 22位    22票 21位    24票 20位    25票 19位    26票 18位 29票 17位    31票 16位    34票 15位    35票 14位    39票 13位    42票 12位    49票 11位 

    SF小説好き1480名に聞いた「絶対に読んどけ」っていうSF小説ランキング - 俺だってヒーローになりてえよ
  • 「高校数学の基礎が150分でわかる本」を書きました - E869120's Blog

    1. はじめに こんにちは、東京大学 3 年の米田と申します。この度は、ダイヤモンド社から『高校数学の基礎が 150 分でわかる』という書籍を出版させていただくことになりました。高校数学の基礎を図解で超わかりやすく説明したです。 【フルカラー図解】高校数学の基礎が 150 分でわかる - Amazon 発売日は 3 週間後の 2023/7/26 です。電子書籍版も同時期に出る予定です。記事では、このの内容や特徴について、簡単に紹介させていただきます。 2. このはどういう書は、主に次のような方に向けた、高校数学の「超」入門書です。 高校数学をはじめて学ぶ方 数学を学び直したい方 日ではたくさんの数学が毎週のように出版されています。しかしこの中の多くは、難しくて多数の人が挫折してしまうか、雰囲気でわかった気にはなるけど結局身に付かないかのいずれかです。 そこで書は

    「高校数学の基礎が150分でわかる本」を書きました - E869120's Blog
  • コンテナセキュリティ

    「コンテナセキュリティ - Forkwell Library#26」の資料です。 https://forkwell.connpass.com/event/287259/

    コンテナセキュリティ
  • React/Next によるアプリケーション開発のこれから

    at Encraft #4 React/Next.js 最前線 https://knowledgework.connpass.com/event/285601/

    React/Next によるアプリケーション開発のこれから
  • プログラマーのためのCPU入門 ― CPUは如何にしてソフトウェアを高速に実行するか

    紙書籍をお届けします(PDFがついてきます) PDFのみ必要な場合は、こちらからPDF単体を購入できます 通常はご注文から2~3営業日で発送します。 年末年始や大型連休など、1週間から10日程度、配送のお休みをいただく場合があります。詳しくはお知らせをご覧ください。 そのプログラム、CPUの性能を引き出せますか? Takenobu Tani 著 312ページ A5判 ISBN:978-4-908686-16-0 2023年1月25日 第1版第1刷 書の解説で利用するコード(著者によるGitHubリポジトリ) 正誤情報など ソフトウェアの価値は、ハードウェアで実行されることにより、現実のものになります。そのために不可欠なのがCPUです。したがってソフトウェアの価値は、CPUの性能、すなわち「できるだけ高速にソフトウェアを実行すること」にかかっているとも言えるでしょう。 現代のCPUの性能は

    プログラマーのためのCPU入門 ― CPUは如何にしてソフトウェアを高速に実行するか
  • Linux Storage Stack Diagram - Thomas-Krenn-Wiki-en

    The Linux Storage Stack Diagram shows the layout of the the Linux storage stack. Downloads Diagram for Linux Kernel 6.2 Linux Storage Stack Diagram v6.2 (for Linux Kernel 6.2 and 6.1): Linux I/O Stack Diagram v6.2 (20230309): ZIP (includes .drawio and .svg) PDF PNG Diagram for Linux Kernel 4.10 Linux Storage Stack Diagram v4.10 (for Linux Kernel 4.10): Linux I/O Stack Diagram v4.10 (20170310): SVG

  • Red HatがRHELソースコードの一般公開をやめて顧客限定に、自由ソフトウェアの原則を軸にしてきたLinux関係者たちから猛批判を受ける

    企業向けに「Red Hat Enterprise Linux(RHEL)」というLinuxディストリビューションを提供しているRed Hatが、これまで一般公開してきたRHELのソースコードの配布を顧客限定にすると発表しました。この発表に対して、自由ソフトウェアの理念を持つ開発者たちが批判の声を上げています。 Furthering the evolution of CentOS Stream https://www.redhat.com/en/blog/furthering-evolution-centos-stream 自由ソフトウェアとは下記の4つの「自由」を持つソフトウェアのこと。 ・どんな目的に対しても、プログラムを望むままに実行する自由 ・プログラムがどのように動作しているか研究し、必要に応じて改造する自由 ・ほかの人を助けられるよう、コピーを再配布する自由 ・改変した版を他に配

    Red HatがRHELソースコードの一般公開をやめて顧客限定に、自由ソフトウェアの原則を軸にしてきたLinux関係者たちから猛批判を受ける
  • テクニカルライティングの基本 2023年版

    テクニカルライティングの基を学べます。業務マニュアル、報告書、仕様書、技術解説書などのドキュメントを書く機会がある方向け。 サイボウズの2023年度 新入社員向け研修の資料です。 Twitter:https://twitter.com/naoh_nak 2022年版(初版):https://speakerdeck.com/naohiro_nakata/technicalwriting

    テクニカルライティングの基本 2023年版
  • Service WorkerとWasmを組み合わせてサーバー処理をブラウザーでリアルに再現する

    今回の話はWasmというよりもService Workerの話がメインになりますが、WasmとService Workerを組み合わせることで、ブラウザー上でサーバー処理をリアルに再現することができるので、このタイトルにしています。 まずは動画をご覧ください。 見ていただくと分かるように、ブラウザー上でPHPのコードを書くとその実行結果が右側に表示されています。 特に面白い点が、お問い合わせフォームのPOST後の処理までもブラウザー上だけで実行できているという点です。 これはWasmとService Workerを組み合わせて実現しています。 大体以下のようなプロセスで実現しています。 Wasmはブラウザー側でも実行可能ですが、あえてService Worker上で実行しているのは、URLへのリクエストに対してそのリクエストにインターセプト(介入)することで、POST後の処理などもブラウザ

    Service WorkerとWasmを組み合わせてサーバー処理をブラウザーでリアルに再現する
  • 最適化はCDNがやればいい

    題名に「CDN」と書きましたが、いわゆる「エッジ」のことです。オリジンありきなのであえてCDNと呼びました。とはいえ、オリジン自身がエッジにある可能性もあります。 メタフレームワークを作る Sonikというメタフレームワークを作っています。まだDevステージなんでどんなことができるか可能性を探っている最中です。 このフレームワークの特徴はとにかくエッジファーストです。 SSRしたバンドルの大きさを極力小さくする。 Islandsアーキテクチャを採用する。 DenoのFreshを参考にする。 CloudflareのBindingsを扱いやすくする。 Honoの上に乗せる。 とりあえずStreamingはサポートしない。 で、こういうのを作っていると、フレームワークは最小限にして、Core Web Vitalsのスコアを上げるために身を削る最後の部分はCDNに任せてしまった方がいいってことです

    最適化はCDNがやればいい
  • 普通の人が資産運用で 99 点をとる方法とその考え方 - hayato

    はじめに 資産運用で 99 点をとる方法とその考え方について説明します。この記事の対象はいわゆる「普通の人」です。 資産運用趣味ではない。 資産運用を始めてみたいが何をしてよいのかわからない。 資産運用をすでに行っているが毎年ころころと方針を変えてしまっている。 資産運用に無駄に時間ばかり費やしている。 今のところ資産はすべて銀行の普通口座や定期預金にいれている。このまますべて現金でおいておくのも何か損しているみたいでモヤモヤする。だけど難しいことは勉強したくないし時間も使いたくない。 といった人たちです。 記事では最初に結論、すなわち「やるべきこと」を述べます。資産運用で 99 点の投資効率を達成するためにはこの結論部分だけを実行するだけでよいです。 次に、それだけでどうして 99 点といえるのか、その裏付けとなる考え方や理論を中心に説明します。 99 点をとるにあたってこれらの知識を

    普通の人が資産運用で 99 点をとる方法とその考え方 - hayato
  • 「要件定義」のまえに、「要求定義」|しょーてぃー/ Experience & Prompt Designer

    多くのアクセスがあったので無料化しました 要求定義テンプレも記事内でDLできます。 はじめにはじめましてUX プランナーのShoty(@shoty_k2)です。 今回は「要求定義」をつかった、UX デザインについてご紹介します。 実践用テンプレートも記事内にて配布しておりますので、参考にしてください。 「要求定義」とは要求定義とは、「事業や施策によって実現したいこと」です。ユーザーにどのような状態になって欲しいのか・何をしてほしいのか、ビジネスで何が必要なのかなどを取り決めることです。 要求定義という言葉は、もともとはシステム開発の現場では頻繁に使われている単語で、非技術者の企画者がシステムに求める仕様を定義することです。 「要件定義」と「要求定義」の違い多くの方が「要件定義」という言葉を聞いたことがあるかと思いますが、「要件定義」と「要求定義」の違いについてご存知でしょうか? ★要件定義

    「要件定義」のまえに、「要求定義」|しょーてぃー/ Experience & Prompt Designer
  • 創業2年目のスタートアップが自社工場を立ち上げた話

    はじめに はじめまして。Turing株式会社で事業開発を担当している山崎です。 Turingは完全自動運転EVの実現を目指すスタートアップです。自動運転に必要な頭脳・ソフトウェアだけではなく、それと相互に連携する車体・ハードウェアの開発にも自ら取り組んでいます。 そんな当社ではこの度初の自社工場を整備し、今年6月12日に晴れて操業開始しました。2021年の創設から社歴2年にも満たないスタートアップ企業が、なんのために大規模な投資を伴う自社工場の整備に踏み切り、完全な手探り状態からどのように拠点整備を進めたのか。世間的にも結構珍しいケースではないかと思いますので、その過程の一部をご紹介します。 いつものTuringテックブログとは少し趣が異なりますが、社内の雰囲気が少しでも伝われば幸いです。 なぜ今のタイミングで工場を立ち上げたのか 今回整備した工場は、Turingの事業戦略の中で研究開発拠

    創業2年目のスタートアップが自社工場を立ち上げた話
    MonMonMon
    MonMonMon 2023/06/17
  • ソフトウェア設計のトレードオフと誤りを出版しました | フューチャー技術ブログ

    すでに多くの方々にお手に取っていただいておりますが、オライリージャパンから「ソフトウェア設計のトレードオフと誤り」の翻訳をフューチャーのメンバーと一緒に出版いたしました。好評なようで、発売一カ月ほどで増刷も決定いたしました。みなさまご購入いただき、ありがとうございます。初版をお買い求めになられたい方は今すぐ書店にダッシュ! トレードオフこそが設計である良い設計とか読みやすいコードみたいな話題はツイッターではバズりやすい話題です。 読みやすいコードの話題ではいろいろなレイヤーの話が出てくるのですが、因数分解すると、だいたいいくつかのカテゴリーに分かれるように思います。 命名規則とか書き方のルール 従うべきクラス構造、アーキテクチャ構成の導入 サービスの境界をどこに引くか、どのようなときに設計手法を選ぶか、どのアルゴリズムを選ぶか 名前や命名規則の統一とか書き方の統一とかは用語のリストを作って

    ソフトウェア設計のトレードオフと誤りを出版しました | フューチャー技術ブログ