タグ

2023年12月3日のブックマーク (22件)

  • 間接参照を巨大仮想メモリで飲み込む - Software Transactional Memo

    この記事はデータベース・システム系 Advent Calendar 2023の3日目の記事である。昨日の記事も僕でした。 間接参照を巨大仮想メモリで飲み込む メインメモリはハードディスクやSSDより容量が小さく、この問題は当面は解決の目処が立たない。 そもそも今のDRAMより速くて安くて大きいストレージが仮に発明されてもそれがDRAMに取って代わるメインメモリの立ち位置になるだけであってその下のレイヤーには依然としてそのメインメモリより安くて大きなストレージが置かれる事になる。大局的な観点ではストレージの階層構造とは経済活動の鏡像でもある。 バッファプール さて、耳にタコができるほど繰り返しているが現代のデータベースはディスクなどの永続ストレージにデータの尊が保存され、メインメモリはそれに対する読み書きを高速化するためのデータ一時置き場としての役割を担当している。 代表的なRDBMSは3

    間接参照を巨大仮想メモリで飲み込む - Software Transactional Memo
  • LR(1)パーサジェネレータを自作して構文解析をする 第1回:かんたん構文解析入門 | わたしろぐ

    LR(1)パーサジェネレータを自作して構文解析をする 第1回:かんたん構文解析入門 2016-12-22 03:03:09 Category: dev Tag: parsing parser generator parser lexer この記事はKobe University Advent Calendar 2016の21日の記事です。また遅刻か。 なお私は当該大学の学部2年(2016年12月現在)です。 構文解析ができるプログラマはちょっとかっこいいですよね。 「構文解析?ああ、できますよ」とか言って自分のスキルを自慢できそうな印象があります。 (ほぼ)フルスクラッチでTypeScriptによるLR(1)パーサジェネレータを実装した(ついでにLALR(1)パーサも作れる)ので、これを完成させるまでの流れを紹介していこうと思います。 今回は構文解析自体の入門編となります。 自作したパーサ

  • 絵文字を支える技術について|nona

    はじめにこちらはmhidakaが建立したAdvent Calendar Day.3となります。 こんにちは、はじめまして、のなと申します。mhidakaさんのTweetを見つけて、初めてAdvent Calendarなるものを書いています。なにかお作法間違っていたら大目に見てください、よろしくお願いします。 軽く自己紹介をさせていただくと、普段はGoogleAndroidTextまわりの開発を行っており、DroidKaigiやShibuya APKで発表させていただいたりしています。最近はほぼ絵文字の話しかしてないので、絵文字おじさんと思われてそうですが、普段の仕事絵文字に限らず、Androidの文字表示の部分は大抵面倒をみています。 今回この機会をいただいたので、どんな内容を書こうか迷ったのですが、やはり皆が読んで面白い内容というと、絵文字になるのかなぁ、ということで性懲りもなく絵

    絵文字を支える技術について|nona
  • 病院にあるコンセントが「赤くて逆さま」なのは何故?→現場の知恵を使った安全対策だった

    電気屋のでっち @dimpleapartment 最近新築の市民病院出来て、入院してる親族がいるので見舞いに行ったんですが、3Pコンセントが写真みたいに全部逆さまだったんですよね🙃 病院関係は経験無くて、、、どなたか理由知ってますか? pic.twitter.com/0lftTH3Bys 2023-12-02 12:13:19

    病院にあるコンセントが「赤くて逆さま」なのは何故?→現場の知恵を使った安全対策だった
  • 変革の足を引っ張る組織に共通する10の特徴 問題解決に積極的でない人々の言い分 | 組織文化/組織開発|DIAMOND ハーバード・ビジネス・レビュー

    サマリー:会社で変革を起こそうと試みると、しばしば抵抗に直面することがある。人々は問題解決しようとする代わりに、それを進めないことを正当化する言い分を考えがちだ。稿では、リーダーが難題に対処し、素早く変化を起... もっと見るこすための戦略について述べたMove Fast and Fix Things(未訳)の共著者であるフランシス・フライとアン・モリスが、変革に抵抗している会社の10の特徴と、その抵抗への対策を紹介する。 閉じる 変化への抵抗はさまざまな形で表れる フェイスブックは、「素早く動き、破壊せよ」を非公式のモットーにしてきた。しかし、リーダーシップ論の専門家であるフランシス・フライとアン・モリスに言わせれば、このモットーには重大な欠陥がある。リーダーがこのモットーに従っていては偉大な企業を築けない、というのである。 傑出したリーダーは、「素早く動き、修正する」ことを実践してい

    変革の足を引っ張る組織に共通する10の特徴 問題解決に積極的でない人々の言い分 | 組織文化/組織開発|DIAMOND ハーバード・ビジネス・レビュー
  • C言語でWASMインタプリタを実装した話

    概要 公式のcore testが全て(UTF8, WAT, SIMD関連のものは除く)通るWASMインタプリタをC言語でフルスクラッチで実装した。自作WASMランタイムで省略されがちなValidation Stageも実装した。この記事はWebAssembly Advent Calendar 2023の三日目の記事である。 目的 このWASMランタイムを実装するにあたり、「できるだけ仕様に従って実装する」ことを心掛けた。WASMの仕様書は以下のissueが立つほど読みにくいものとなっているが、ランタイムをどのように実装すべきかが詳しく書いてあり、一応仕様書を頑張って読めばランタイムが作れるようになっている。 この自作WASMランタイムの目的は、できるだけ仕様に従った実装を与えることで、仕様の理解を助けることである。早さや効率性よりも分かりやすさを優先しているため、実用には向かない。仕様書を

    C言語でWASMインタプリタを実装した話
  • フロー効率を重視した開発のすすめ - KAKEHASHI Tech Blog

    こんにちは。 AI在庫管理というプロダクトでフロントエンドの開発を担当している大村です。 AI在庫管理開発チームでは、顧客に素早く価値を提供するためにフロー効率を重視した開発を行っています。 記事では、なぜフロー効率を高めようとしているのかと、どのような取り組みによってフロー効率を高めているかについて紹介します。 リソース効率とフロー効率 生産性の効率の考え方として「リソース効率」と「フロー効率」があります。 複数人の開発者がチームでソフトウェアを開発するシーンを想定し、リソース効率とフロー効率それぞれを重視した場合の仕事の流れを単純なモデルとして表現してみました。(ここでは仕事の1つ1つをタスクと呼ぶことにします) これだけ見ると、リソース効率重視の方がムダなくタスクを消化しているように思います。 しかし、ソフトウェア開発の現場では以下のような状況が頻繁に発生します。 他の開発者のレビ

    フロー効率を重視した開発のすすめ - KAKEHASHI Tech Blog
  • DORA 2023 度版 State of DevOps Report

    Google Cloud Japan Advent Calendar 2023 1 日目です! 昨年の 2022 年度版 に続き、今年度版のレポートまとめをお届けします。 DORA DORA は DevOps を軸に、2014 年から 組織やチームを成功に導く能力やプラクティスを研究 能力やプラクティスから組織のパフォーマンスを予測 といった調査研究をする Google Cloud のチームです。 State of DevOps Report 過去 9 年間、延べ 36,000 人に協力いただき調査を実施してきました。実践から期待できる成果と、その成果に大きく寄与する要因を分析しています。 記事でまとめをお届けする 2023 年度版の全文は こちら からダウンロードできます! 2023 年度サマリー 5 行でまとめるとこんな結果です。 開発速度と製品安定性は両立できます ユーザーにフォー

    DORA 2023 度版 State of DevOps Report
  • device mapperによるディスクI/O障害のエミュレーション

    Linuxカーネルのdevice mapper機能を使ってブロックデバイスレベルでディスクI/O障害をエミュレーションをする方法について紹介しました。kernel/vm 北陸 part6で発表しました。 https://kernelvm.connpass.com/event/297033/?utm_campaign=event_participate_to_follower&utm_source=notifications&utm_medium=twitter

    device mapperによるディスクI/O障害のエミュレーション
  • Tidy First? - Qiita

    Kent Beckの最新作Tidy First?は、リファクタリングよりも小さな単位でコードを整理するやり方を記したです。これをTidying(記事では「片づけ」と呼びます)と呼んでいて、リファクタリングのサブセットと定義付けています。なので片づけはコードの振る舞いは変えないことはリファクタリングから継承します。 Tidy First?はこんまりメソッドの影響も少なからず受けてそうです。 Tidy First?を書いた背景には、リファクタリングが機能開発を止めて行うようになったり、振る舞いを変えてしまうようになったことがある、とKent Beck自身が書の中で述べています。 最近のKent Beckの講演は、Tidy First?に関連するものになっています。最新は、DDDEUのイベントの講演で第3部の内容が中心に語られています。なおKent Beckのプレゼンは、スライドは用意せず

    Tidy First? - Qiita
  • 効果検証入門に物申してみた_JapanR_2023

    2023年12月2日に開催されたJapan.RのLT資料です。 処置と割当の不一致や効果の異質性によって効果が検出できない際に、操作変数を用いて効果を推定する方法を紹介しています。 因果推論・効果検証に興味のある方は、ぜひご一読いただけますと幸いです。

    効果検証入門に物申してみた_JapanR_2023
  • 今年の汚れ、今年のうちに!MySQLで使っていないインデックスを削除しよう - クラウドワークス エンジニアブログ

    この記事は クラウドワークス Advent Calendar 2023 シリーズ2 2日目の記事です。 こんにちは。crowdworks.jp SRE チーム 田中(@kangaechu)です。 年末といえば大掃除ですね。 皆さんのデータベースにも使っていないインデックスが溜まっていませんか? お掃除してきれいな新年を迎えましょう。 手順 1. MySQLで使っていないインデックスの一覧を取得 未使用のインデックスは sys.unused_indexes ビューで確認できます。 dev.mysql.com しかし、このビューの元データである performance_schema テーブルは起動時から終了時までのデータしか保持していません。 Tables in the Performance Schema are in-memory tables that use no persistent

    今年の汚れ、今年のうちに!MySQLで使っていないインデックスを削除しよう - クラウドワークス エンジニアブログ
  • サブドメイン列挙とはどういうものなのか調べてみた - NTT Communications Engineers' Blog

    この記事は、 NTT Communications Advent Calendar 2023 2日目の記事です。 こんにちは、イノベーションセンターの坪井です。 1日目の記事を担当した平木と同じくNetwork Analytics for Securityというチーム(通称NA4Sec)に所属しています。 1日目の記事はこちらです。 engineers.ntt.com NA4Secプロジェクトについては、 サイバー脅威インテリジェンス(CTI)配信はじめました を読んでいただくと我々がどんな活動を行なっているかわかると思います。 先日の11/21(火)にInternet Week 2023のC10 DNS DAYというプログラムの中で「ランダムサブドメイン攻撃において事業者として行なった対策と解析について」というタイトルで講演をさせていただきました。 講演の中で、私はDNSハニーポットを運

    サブドメイン列挙とはどういうものなのか調べてみた - NTT Communications Engineers' Blog
  • Amazon Linux 2023を触ってみて質問がありそうなことをまとめてみました。 | ソフトウェア開発のギークフィード

    こんにちは、意識高い系エンジニア社長の内です。 2023年3月15日にAmazon Linux 2の後継バージョンとなるAmazon Linux 2023(略してAL2023)が一般公開されました。2021年11月にAmazon Linux 2022(略してAL2022)のプレビュー版が公開されてから、約1年4ヶ月後のリリースとなりました。2022年中にリリースできなかったため、名前もAmazon Linux 2022からAmazon Linux 2023に変更されてのリリースです。 私の投稿も約1年2ヶ月ぶりとなります、前回記事「AmazonLinux3じゃなくってAmazon Linux 2022 (AL2022) だってさ」という、Amazon Linux 2022プレビュー版記事はこちら 当初AmazonLinux2のサポート終了日 (EOL、End of Life) は2023

    Amazon Linux 2023を触ってみて質問がありそうなことをまとめてみました。 | ソフトウェア開発のギークフィード
  • コンテナのベストプラクティスに対しておこがましくも言ってみる - Qiita

    最近実際に開発現場にコンテナを導入してきた経験から、公式ドキュメントに記載されているベストプラクティスに実際どうなんだということを言ってみようと思います。公式に書いてあることを間違ってると指摘という意図はありません 発言は個人の見解に基づくものであり、所属組織を代表するものではありません。 2023/12/3更新: 燃えかけてるのでタイトルを変えました。 補足: こちらの環境は下記を想定しています。 Java CICD/番環境イントラネット内に整備 WF開発 マルチステージ・ビルドを使う マルチステージビルドの目的 公式ドキュメントには、下記のように記載があります。 マルチステージ・ビルド は、中間レイヤとイメージの数を減らすのに苦労しなくても、最終イメージの容量を大幅に減少できます。 つまり、最終イメージの容量を減らすことが目的であって、その一つの手段としてマルチステージビルドを進めて

    コンテナのベストプラクティスに対しておこがましくも言ってみる - Qiita
  • Architecture Decision Record を一年運用してみた - Qiita

    この記事は、株式会社カオナビ Advent Calendar 2023の2日目です。 カオナビでは2022年9月からArchitecture Decision Record(以下ADR)を導入開始しました。記事ではADRを導入し実際に一年間運用して見た経過をご報告しつつ、導入のポイントや注意点について紹介します。 ADRをなぜ導入したのか? まずADRについて簡単に説明すると、「アーキテクチャー設計の記録をドキュメントとして残すこと」 です。Michael Nygardのブログ記事が初出のようです。 ソフトウェア開発を行っていく間には、途中で様々な設計決定をする必要があります。例えばウェブアプリケーションであれば、データベースはMySQLにしようとか、キャッシュはRedisを使おうとかという実行環境の決定の話から、実際のプログラムの基構造といったところまで様々です。 この設計決定は、口

    Architecture Decision Record を一年運用してみた - Qiita
  • SQLiteでLinderaを使った日本語全文検索 - *iroi*

    これは はてなエンジニアアドベントカレンダー2023 3日目の記事です。 はてなエンジニア Advent Calendar 2023 - Hatena Developer Blog はてなエンジニアのカレンダー | Advent Calendar 2023 - Qiita 昨日は id:pokutuna さんの blog.pokutuna.com でした。私も若い頃に同僚とGitHub上で白熱してしまい観光名所になってしまっていたような気がします。気を付けていきましょう。 さて、この記事では SQLiteでLinderaを使った日語全文検索をする話を紹介します。 モチベーション laiso.hatenablog.com 上の記事でも話題になっているように個人開発ではDBのコストは問題です。同様に全文検索したいときにもコストに頭を悩ませているのではないでしょうか? たとえば Amazon

    SQLiteでLinderaを使った日本語全文検索 - *iroi*
  • 世紀末LSM-Treeプチフリ神話の終わり - Software Transactional Memo

    凍った木が溶け始める様子をそれっぽく描いてもらった この記事はデータベース・システム系 Advent Calendar 2023の2日目の記事である。前日は僕、明日も僕。 Log Structured Merge Tree(以下LSM-Tree)という物をご存知だろうか。データ構造としては順序付きの辞書であり結構昔に発明されており各操作の計算オーダーは赤黒木等と同じである。システム系学会を追っていると無限に亜種が提案されているので特徴を一言で言い表すのは難しいのだが、その一種であるLevelDBChromiumの中でも使われている。 https://chromium.googlesource.com/chromium/src/+/HEAD/third_party/leveldatabase/leveldb_chrome.h LSM-Treeの典型的な実装の概要とその利点・欠点を整理すると

    世紀末LSM-Treeプチフリ神話の終わり - Software Transactional Memo
  • 経営のプロ 「コンサル会社」 の倒産が急増 ~ コロナ禍での政策支援と「本物を求めるニーズ」のはざまで ~ | TSRデータインサイト | 東京商工リサーチ

    2023年は10月までに経営コンサル会社の倒産が過去最多の116件に達した。同期間(1-10月)で最多だった2009年(109件)を大幅に上回る。経営のプロである「コンサル会社」の倒産の増加は何を示唆するのか――。 倒産は過去最多ペース 2023年1-10月の経営コンサルタント業の倒産は116件で、2022年同期(78件)の約1.5倍に急増し、過去最多を更新した。116件のうち、90件(構成比77.5%)が「販売不振」で、全体の約9割の104件(同89.6%)は負債1億円未満の小規模事業者だ。 年間では、2023年の116件はすでに過去2番目の水準となり、このままのペースで推移すると、2009年の128件を抜いて、2023年は過去最多の記録を塗り替えそうだ。 コンサル会社は、国内外のシンクタンクなどの政策系と戦略系、士業などの専門系など、多様化している。ここに、中小企業診断士やファイナンシ

    経営のプロ 「コンサル会社」 の倒産が急増 ~ コロナ禍での政策支援と「本物を求めるニーズ」のはざまで ~ | TSRデータインサイト | 東京商工リサーチ
  • 見積りとは何か?

    見積りとは何か?2023年12月2日この記事は 10X アドベントカレンダー2023 という企画の2日目(12/2)の記事です。 1日目(12/1)の昨日は岡野さん(@operandoOS)による「CIを高速化する技術⚡️」でした。 はじめに この記事の内容は以下のの第一章とほぼ同じ内容となります。この記事の読んで見積りについて興味が湧いたらぜひ以下の書籍に目を通してみてください。 出典 ソフトウェア見積り 人月の暗黙知を解き明かす 早速ですが見積りしてますか?おそらくソフトウェアエンジニアの方であれば、こんな感じで会話して見積りした経験が1度はあるんじゃないでしょうか? プロダクトマネージャー「機能xyzの件だけど、開発期間はどのくらいだと見積もってる?」 ソフトウェアエンジニア「1ヶ月ですね。」 プロダクトマネージャー「長すぎる。1週間で何とかならないか。」 ソフトウェアエンジニア

    見積りとは何か?
  • 世界の原発容量「2050年までに3倍」宣言 米仏など、日本も賛同:朝日新聞デジタル

    米エネルギー省は2日、「世界全体の原発の発電容量を2050年までに3倍に増やす」との宣言に、日を含む22カ国が賛同したと発表した。温室効果ガスの排出を減らす対策の一環として、国連の気候変動会議(COP28)に合わせた。 この宣言には、米日のほか、英国やフランス、スウェーデン、フィンランド、韓国、COP28議長国のアラブ首長国連邦(UAE)などが賛同した。「今世紀半ばまでに、温室効果ガス排出の実質ゼロを達成する上で、原子力は重要な役割を果たす」とし、世界全体の原発による発電容量を20年比で3倍にするという目標を掲げている。 米エネルギー省のデービッド・ターク副長官は11月30日の会見で「クリーンなエネルギー生産のなかでもかなり大きな割合を占め、24時間で発電している」と指摘。ターク氏は「各国で政策や手段は異なる。次世代型原発の小型モジュール炉(SMR)もあり、核融合にも注目が集まっている」

    世界の原発容量「2050年までに3倍」宣言 米仏など、日本も賛同:朝日新聞デジタル
  • OSS 観光名所を貼るスレ - ぽ靴な缶

    これは はてなエンジニアアドベントカレンダー2023 2日目の記事です。 はてなエンジニア Advent Calendar 2023 - Hatena Developer Blog はてなエンジニアのカレンダー | Advent Calendar 2023 - Qiita トップバッターは緊張するけど、順番が回ってくるまで長い間ソワソワするのも嫌、という理由で例年2日目を狙うようにしている id:pokutuna です。今年も成功しました。 観光名所とは 目を閉じれば思い出す、あのコード... あの Issue... あなたが Web 系のエンジニアであれ、趣味で開発している方であれ、必要に応じてライブラリやフレームワークのコードを読むのはよくあることでしょう。公開の場で開発されているソフトウェアは、ソースコードだけでなく、開発コミュニティでの議論やバグ報告なども見ることができます。 リポ

    OSS 観光名所を貼るスレ - ぽ靴な缶