並び順

ブックマーク数

期間指定

  • から
  • まで

201 - 240 件 / 6578件

新着順 人気順

Treeの検索結果201 - 240 件 / 6578件

  • C言語でSQLiteのクローンを作るチュートリアルやった - valid,invalid

    2019年12月の冬休みに1週間程かけて"Let's Build a Simple Database"という、C言語でSQLiteのクローンを作るチュートリアルをやりました。この存在を教えてくれた同僚に感謝 :pray: cstack.github.io チュートリアルの内容 Richard Feynman先生の“What I cannot create, I do not understand.”という言葉が掲げられているように、データベースを作ることでデータベースをより深く理解することに主眼が置かれているチュートリアルです。 これは重要事項説明かつタイトル詐欺に関する謝罪なのですが… 残念ながらこのチュートリアルは完成しておらず、Part 13が2017-11-26に公開されたのを最後に更新が止まってしまっており、以下の13章しかありません。 Part 1 - Introduction

      C言語でSQLiteのクローンを作るチュートリアルやった - valid,invalid
    • DirectX ❤ Linux - DirectX Developer Blog

      DirectX is coming to the Windows Subsystem for Linux At //build 2020 we announced that GPU hardware acceleration is coming to the Windows Subsystem for Linux 2 (WSL 2). What is WSL? WSL is an environment in which users can run their Linux applications from the comfort of their Windows PC. If you are a developer working on containerized workload that will be deployed in the cloud inside of Linux co

        DirectX ❤ Linux - DirectX Developer Blog
      • 「雑に立てられるissue」で疲弊しないためにOSS開発者ができること - 2021-12-04 - ククログ

        要約:OSS開発プロジェクト運営者の側でとれる対策はいくつかあるよ。issueは基準を設けてどんどん閉じてしまおう。GitHubならActionsで自動化も簡単だよ。自動テストを整備するように、必要なコストだと思って割り切るといいよ。 結城です。 GitHub Actionsに関することならなんでもありらしいアドベントカレンダーとのことでしたので、ほんのちょっとかすっているだけではありますが、4日目にエントリーさせて頂きます。 「軽率に寄せられる報告や要望がOSS開発者を疲弊させる」という問題について語るOSS開発者は少なくないです。私の観測範囲内では最近も、イシュートラッカーにissueを立てようとすること自体に待ったをかける記事1や、「要望には初手で『なぜ自分で実装しない?』と訊ね、次に『継続的にメンテナンスしてくれるの?』と訊ねるドライな対応がおすすめ」という趣旨に受け取れる発言など

          「雑に立てられるissue」で疲弊しないためにOSS開発者ができること - 2021-12-04 - ククログ
        • WebアニメーションはLottieがオススメ!基本の使い方完全ガイド【2020年版】

          最近のウェブサイト制作では、アニメーションがますます重要になってきています。 この記事は、Lottieの使い方をまとめた基本ガイドです。Lottieの魅力はもちろん、After EffectsへのAiファイルの読み込みやアニメーション作成、プラグインを利用したJSONファイルの書き出し、Webサイトでのアニメーション表示まで一連の流れをまとめています。 Lottieを利用すれば、手軽にそして軽量に動画を貼り付けることができるので、これまでアニメーションを試したことのないひとにもオススメです。 コンテンツ目次 1. Lottie(ロッティー)って何? 2. Lottieを利用するメリットは? 3. Lottieアニメーション作成手順ガイド 4. After EffectsへのAiファイルの読み込み 5. After Effectsでアニメーション作成 6. Lottie JSONファイルでア

            WebアニメーションはLottieがオススメ!基本の使い方完全ガイド【2020年版】
          • 「これはHEAD^^」 「これはHEAD^2」 「これはHEAD~2」「HEAD@{2}、reflog用」「全部いっしょじゃないですか」「違う!!もっとよく見ろ!!」 - Qiita

            「これはHEAD^^」 「これはHEAD^2」 「これはHEAD~2」「HEAD@{2}、reflog用」「全部いっしょじゃないですか」「違う!!もっとよく見ろ!!」Git 画像略 TL;DR(Too Long; Didn't Read) ~nは単純なコミットの親をたどる(ブランチの分岐がある場合は現在のブランチのみで辿れるコミット) ^nはマージコミット向けで^2は「そのコミットの2番目の親(取り込んだブランチの前回のコミット)」 だからHEAD^n(n > 2)は存在しない 2024/06/04追記: OctopusなMergeだと3つ以上のブランチからマージできるので^nも存在する......があまり見かけることはない HEAD^^は「HEAD^の親」、HEAD^2は「HEADのもう一人の親」みたいな......。タラちゃんがHEADだと波平がHEAD^^でマスオがHEAD^2です(

              「これはHEAD^^」 「これはHEAD^2」 「これはHEAD~2」「HEAD@{2}、reflog用」「全部いっしょじゃないですか」「違う!!もっとよく見ろ!!」 - Qiita
            • TypeScriptで世界一型安全な型レベルSQL Interpreterを作っている話

              こんにちは。DevOps芸人と化して久しいAndyです。 2020年の秋にTypeScript 4.1へTemplate Literal Typesが導入され、そのインパクトに俄かに一部の界隈がザワついたのは記憶に新しいかと思います。 今回は型プログラミングの可能性を大いに押し広げたTemplate Literal Typesを用いてSQL文を型レベルで解析し、その実行結果を型情報として導出するためのsqlptureというライブラリを作ったので紹介します。 Embedded content: https://github.com/andoshin11/sqlpture SQLの実行/検証対象はPostgreSQL v13です。 tl;dr SQL文を型レベルで解析・評価して返り値型を取得できるmini interpreterを作ったよ 型レベルのSQL validatorも作ってるよ 実際

                TypeScriptで世界一型安全な型レベルSQL Interpreterを作っている話
              • なぜ人は自作OSをするのか?自作OSとは何か? 〜自作OSのいまと昔 [第1回] | さくらのナレッジ

                みなさん、自作OSという言葉をご存知でしょうか? 自作PCという言葉には馴染みがあっても、自作OSという言葉は初めて聞いたという方も多くいらっしゃると思います。本連載では、そもそも自作OSとは何か、という基本的なところから、自作OSのこれまでの歴史、現代のコンピューターにおける自作OSの難しさ、そして自作OSの将来的な可能性について、筆者の実体験を踏まえながらご紹介したいと思います。 身近にあるOSの例 自作OSというのは、OS, つまりオペレーティングシステムを自分の手でつくりあげることを指します。といっても、そもそもOSとは何か知らない方も多くいらっしゃると思いますので、最初はそもそもOSとは一体何なのか見ていきましょう。 さて、みなさんの知っているOSにはどんなものがあるでしょうか?下記の図は、2019年5月の、日本国内におけるOSのシェアを示したグラフです。 最も多く使われているO

                  なぜ人は自作OSをするのか?自作OSとは何か? 〜自作OSのいまと昔 [第1回] | さくらのナレッジ
                • Rust で SQLite を再実装した 2023 - kawasin73のブログ

                  気合いで実装、どうもかわしんです。 この記事は Rust Advent Calendar 2023 の6日目 兼 情報検索・検索技術 Advent Calendar 2023 の 6 日目です。 Rust で SQLite をフルスクラッチで実装しています。 github.com なぜ SQLite を Rust で再実装しようと思ったのかについては以前の記事で紹介しています。一言で言えば、誰も Rust で SQLite を書いている人がいなかったからやってみたのですが、そもそも SQLite が強すぎるということが再実装しているうちにわかってきて絶望しています。 kawasin73.hatenablog.com 4 ヶ月前にこの記事を書いたときは簡単な SELECT 文しか実行できなかったのですが、現時点では SELECT, INSERT, DELETE 文をサポートし、express

                    Rust で SQLite を再実装した 2023 - kawasin73のブログ
                  • CPUの珍命令 - Qiita

                    EDIT: はてなブックマークのエントリ だと ABCD (BCD加算) や DJNZ (ループ命令) が人気なようだ(Wikipediaしばりなもんで...) 。6502によくある JSR / RET が対応しないコーディングや、Z80で PUSH を目的外利用するような例は入れても良かったのかも。 DOOMの例を追加。 Wikipediaに個別ページができちゃうくらい有名な命令のメモ。 きっかけ このソースコードは現在の倫理上一般的でない表現が使われている箇所については当時の内容を尊重して掲載しています — ほうめい マイコンで遊んでばっかりで (@houmei) July 14, 2020 を受けて、 6809の命令のことですね。わかります >RT — Miura Hideki (@miura1729) July 14, 2020 1つのCPU命令が独立したWikipediaのページ

                      CPUの珍命令 - Qiita
                    • Puppeteerで不要なCSSを消す - Cybozu Inside Out | サイボウズエンジニアのブログ

                      こんにちは。フロントエンドエキスパートチームの穴井(@pirosikick)です。福岡在住で、普段は福岡のweworkで働いています。他のメンバーは皆、東京に居てリモートで仕事をしていますが、モブでわいわい開発していますし、weworkが快適すぎて、毎日楽しいです! フロントエンドエキスパートチームでは、サイボウズの各プロダクトが抱えるWebフロントエンドの課題を解決するのが仕事の一つです。 blog.cybozu.io 最近の取り組みとして、Puppeteerで不要なCSSを消した事例を紹介します。 このブログは、6/19に福岡で開催した「Google I/O '19のWebをまとめる会」で登壇したときの内容を詳細に説明しつつ、アップデートした部分もあるので、発表見たぞ、スライド見たぞという方も見ていただけますと幸いです。 speakerdeck.com きっかけ とあるプロダクトのCS

                        Puppeteerで不要なCSSを消す - Cybozu Inside Out | サイボウズエンジニアのブログ
                      • Goodbye to sequential integers, hello UUIDv7!

                        At Buildkite, we've historically stored our data with two keys. We use sequential primary keys for efficient indexing, and UUID secondary keys for external use. The upcoming UUIDv7 standard offers the best of both worlds; its time-ordered UUID primary keys can be utilized for indexing and external use. This blog post will take you on the journey Buildkite took that led to our eventual adoption of

                          Goodbye to sequential integers, hello UUIDv7!
                        • クラフトジンジャーエール、クラフトコーラときたら、こちらは「クラフトトニックウォーター」だ。

                          クラフト○○系のドリンクが流行している。 クラフトジンジャーエールに始まり、最近は大手メーカーがクラフトコーラを発売した。 結局「クラフト」ってなんだっけ?原点に立ち返って、オリジナルの「クラフトトニックウォーター」をつくってみた。 2022年1月、三ツ矢サイダーをつくっているアサヒ飲料が「三ツ矢クラフトコーラ」を発売した。 筆者も1本買ってみました クラフトビールの流行から、クラフトジンジャーエールが話題になり、ついにはクラフトコーラである。コカ・コーラのイメージが強すぎて、「コーラのクラフトってなに?」と驚いた方も多いだろう。 しかし思うのだ。 「クラフト」がいいなら、筆者だってクラフトできるぞ…!と。 クラフトドリンクについての明確な定義は存在していないが、ふんわり「素材にこだわったオリジナルレシピ」とか、「手作業でつくった希少性のある」とかの意味でつけられることが多い。それなら個人

                            クラフトジンジャーエール、クラフトコーラときたら、こちらは「クラフトトニックウォーター」だ。
                          • 「Go言語でつくるインタプリタ」は前提知識無しで取り組める言語処理系のチュートリアル - Explore cs in depth!

                            目次 目次 概要 本題 私がこの本を購入した理由 数ある言語処理系の技術書でも恐らく最も初歩的 Goは現在恐らく最も可読性が高い言語 何故オススメ? プログラミングの本質が見えるから 単純にコード量が多いのでやってて楽しい テスト駆動開発 読者の為に残された多くの課題 総評 おまけ 概要 ※注意 Go言語でつくるインタプリタ 作者: Thorsten Ball,設樂洋爾出版社/メーカー: オライリージャパン発売日: 2018/06/16メディア: 単行本(ソフトカバー)この商品を含むブログを見る こちらの本を読み終わりました(付録以外)。 言語処理系に興味を持った衝動で買った本ではありましたが、 今まで読んだ本でもトップレベルで完成度の高いものだったので、 ここで紹介しておきたいと思います。 簡単に良いところをまとめておくと、 プログラミングの抽象的な概念をより深く学べる これは言語処理系

                              「Go言語でつくるインタプリタ」は前提知識無しで取り組める言語処理系のチュートリアル - Explore cs in depth!
                            • vscode の web build を netlify にデプロイする + ファイルシステムを永続化する - mizchi's blog

                              年末年始の時間を使って実験していたこと。 tl;dr vscode をカスタマイズして静的サイトとしてデプロイしたい。やった。公式にない永続化層も作った。 できた。ここで試せる。 https://mizchi-vscode-playground.netlify.com/ やりたかったこと フロントエンドにまつわるものはフロントエンドで作業を完結したい。なので vscode がブラウザで動いてほしい。 vscode をカスタマイズしたものを各自が自由にデプロイできると、様々な可能性がある。インストールの手間を省いたプログラミング教育用のツールだったり、専用の開発環境だったり、その他諸々。 問題 この用途で期待していた vscode online が使いづらかった。MS のアカウントを要求されたり、Docker コンテナの Enviroment を作ったりする必要があり、面倒だった。そもそもリ

                                vscode の web build を netlify にデプロイする + ファイルシステムを永続化する - mizchi's blog
                              • 思わず突っこみたくなる系のネタを探してる

                                突っこんだら負け、そうはならんやろ、とかのキーワードで調べてるんだが、なかなかピンとくるものがない。 具体例を挙げると ・「気になりすぎて夜しか眠れない」 ・「俺はこの手法で820万を140万にした」 ・「まどかが変身するところまで見て」 ・「見ての通り頭の良い奴だ」 こういうやつ 他に何かない? 【追記】 コメントありがとう 世界が広がった (FXコピペの例が適当だったので修正した) あとで読む用 土屋賢二bot(ツbot) (@tsuchiken_bot) / Twitter【連載】カレー沢薫のほがらか家庭生活 | マイナビニュース『ひきこもり処世術』/カレー沢薫|記事詳細|tree小泉進次郎構文bot (@NanimoBot) / Twitter高田純次 bot (@takadajunji_bot) / Twitterそれから cider_kondo id:Re-KAmさんみて連想し

                                  思わず突っこみたくなる系のネタを探してる
                                • AWS CDKを始めるハンズオン ─ IaCの第一歩をAWS LambdaとDynamoDBのシンプルな仕組みで学ぶ|ハイクラス転職・求人情報サイト AMBI(アンビ)

                                  AWS CDKを始めるハンズオン ─ IaCの第一歩をAWS LambdaとDynamoDBのシンプルな仕組みで学ぶ アマゾン ウェブ サービスが提供するIaC(Infrastructure as Code)の開発キットがAWS CDK(AWS Cloud Development Kit)です。本記事はAWS CDK入門者向けのチュートリアルとして、AWSでソリューションアーキテクトを務める吉川幸弘(@WinterYukky)さんによる、AWS Lambda関数でDynamoDBテーブルをスキャンするシンプルなハンズオンです。 みなさん、こんにちは。アマゾン ウェブ サービス ジャパン合同会社でソリューションアーキテクトを務めている吉川幸弘と申します。私は普段、西日本のお客様を中心に技術的なご支援や課題解決などをしています。 さっそくですが、みなさんはInfrastructure as C

                                    AWS CDKを始めるハンズオン ─ IaCの第一歩をAWS LambdaとDynamoDBのシンプルな仕組みで学ぶ|ハイクラス転職・求人情報サイト AMBI(アンビ)
                                  • 完全自律飛行のドローンで大発生する害虫の98%を駆除することに成功

                                    中国・広州に拠点を構えるドローンメーカーのXAGは、農園にはびこる害虫を退治するために、ドイツの農薬メーカーであるバイエル クロップサイエンスと協力して、自律運転で農薬を散布するドローンの開発を行っています。その効果はすさまじく、XAGはドローンの導入によって害虫の98%を退治することができたと報告しています。 “Debug the Fall Armyworm” – XAG Combats Alien Pests with Crop Spraying Drones https://www.xa.com/en/news/official/xag/57 Drone as New Tech to Battle the Crop-Devouring Fall Armyworm https://www.xa.com/en/news/application/54 アメリカシロヒトリは北アメリカを原産と

                                      完全自律飛行のドローンで大発生する害虫の98%を駆除することに成功
                                    • Log4j 2のバージョンアップのやりかた - 日々常々

                                      「Log4j 2に脆弱性があるらしい、バージョンアップしたら治るらしい。」 本日話題のこのテーマで軽く書いておきます。 未完です。 未完公開の言い訳。更新した内容は最後に書いてます。大きな間違いは(今のとこ)ないので、よかった。 2021-12-20追記: 2.17.0 出てますのでコピペしてそのままにせず適宜読み替えてくださいね。 とにかくバージョンを上げよう ……リリースできるかは別の話として。 バージョンを上げられないことには話になりません。ということでとにかくあげましょう。 Log4j 2のようなログライブラリは多くのプロダクトで使用されています。 意識する/しないに関わらず、ログライブラリは何かしら関連があると思うべきでしょう。 使用しているかの調べ方 常時依存ライブラリリストを出力するなどして管理しているのであればそれを見ればいいだけの話ですが、そうでなければ、 mvn dep

                                      • アンサー: named exportは有害なのか - uhyo/blog

                                        こんにちは。ここ数日は、以下の記事が話題になりました。 named exportは有害だと考えられます「named exportは有害」という主張はこれまで常識と思われていたこととは異なるため、界隈のエンジニアからは否定的・懐疑的な意見が見られます。実際、筆者もnamed exportが有害であるとは1ミリグラムも思っていません。 しかし、自分と異なる意見は当然に下等・幼稚なものであるというのは筆者が最も嫌う考え方ですから、このような異なる意見を分析・理解する必要があると思い、アンサー記事という形でまとめました。具体的には、異なる意見に達する理由としては前提が異なることと論理が異なることが主に挙げられます。前提が異なることが分かれば、自分と異なる意見に至った理由を理解でき、場合によっては取り入れることもできます。論理が違うのであれば、それは瑕疵であり指摘しなければいけません。 なお、そもそ

                                          アンサー: named exportは有害なのか - uhyo/blog
                                        • あるレポジトリのサブディレクトリ配下を別のレポジトリへ履歴付きで移行する - $shibayu36->blog;

                                          Gitで開発していて、あるサブディレクトリ以下を別のレポジトリに移行したいと思うことがある。今回はそういうことをしてみたのでメモ。 まずGitHubにそのようなやり方の指南がある(Splitting a subfolder out into a new repository - GitHub Docs)。大体これで良いのだけれど、このやり方だとサブディレクトリのpathがそのままになってしまうという問題がある。大抵のケースで、あるサブディレクトリを別のレポジトリに分割したいとなった時、そのサブディレクトリがレポジトリルートに来てほしい。 そういう場合はGit Filter Repo — Splitting a Subfolder Into A New Repository | by Edward Ezekiel | Mediumにも紹介されているようにgit filter-repo --s

                                            あるレポジトリのサブディレクトリ配下を別のレポジトリへ履歴付きで移行する - $shibayu36->blog;
                                          • NewSQL その成り立ちとモチベーション

                                            Database Lounge Tokyo #6の発表資料です。 (参考URL) ・NewSQLのblog https://qiita.com/tzkoba/items/5316c6eac66510233115 https://qiita.com/tzkoba/items/3e875e5a6ccd99af332f ・B-TreeとLSM-Tree https://docs.google.com/presentation/d/e/2PACX-1vSNk8RkQrVRm_BNZKYyz0sl1k7C6yjTfJIqfMDxnnka8f4pfpf6j2yuXvxvyVGnrzRERdAaxNbOU-CT/pub?start=false&loop=false&delayms=3000&slide=id.g4c1e3ed2c3_0_6 ・ConsistencyとIsolation https://f

                                              NewSQL その成り立ちとモチベーション
                                            • Docker イメージを利用したローカル開発環境向けメールサーバ構築のすゝめ|TechRacho by BPS株式会社

                                              ebi です。 弊社では Rails だけでなく、 WordPress 等を利用した PHP 環境、WordPress 等のフレームワークを利用するまでもなく、素の PHP で構成されるページを作成、保守することもあります。 往々にして LP だったり、コーポレートサイトやサービスサイトが中心で、サイト上からのメールの送信を伴う問い合わせフォームがセットとなっていることが多いです。 Rails だとメール送信は Action Mailer を利用して、メール受信は letter_opener 等を利用すればすぐにそれっぽい画面で確認できて便利だな、と思っていたのですが、そこそこ前から Rails 以外のプロジェクトでも、 Docker を利用して letter_opener 相当の環境を手元に用意しているのが便利なので今回はそれを紹介します。 これまでの話 ところで、そもそもこれまではどう

                                                Docker イメージを利用したローカル開発環境向けメールサーバ構築のすゝめ|TechRacho by BPS株式会社
                                              • MySQLとOracleの実行計画を比較してみた - ASMのきもち

                                                まいえすきゅーえりたい ぽすぐれない おらくるってる(狂ってる)tomoです。 今日はいつものMySQLリファレンスを読むではなく、夏休みの宿題にしていたこれをやってみます。 MySQLとOracleDBの実行計画を比較してみた さて同じようなテーブルで同じデータを載せて。 実行計画を取ってみた時、どのくらい情報量が違うのか簡単に違いを見てみましょう。 前提として、以下をご認識ください。 一方はOSSのDBエンジン、もう一方はガチガチ商用DBエンジンです。情報量が違うのは当たり前であって、良し悪しを比較したいのではありません。そして製品比較をしたいのではありません。いつも商用DBメインで使っているエンジニアが、OSSのDBにこうゆう情報も出してほしいな!というのをお願いしたいと思っていて、それを考える元ネタメモだと思ってください。 OSSでこれだけの情報出せるMySQLや、今回紹介しません

                                                  MySQLとOracleの実行計画を比較してみた - ASMのきもち
                                                • WebブラウザでPythonが動作する!PyScriptの詳解 | gihyo.jp

                                                  鈴木たかのり(@takanory)です。今月の「Python Monthly Topics」では、Webブラウザ上でPythonが動作するPyScriptについて、内部構造なども含めて詳しく解説したいと思います。 PyScript公式サイト(https://pyscript.net/) Warning:PyScriptは現在非常に活発に開発が進んでいるプロダクトのため、将来的にこの記事のサンプルコードが動かなくなる可能性があります。記事執筆時点では最新バージョンであるPyScript 2023.03.1で動作確認しています。うまく動かない場合はPyScriptの公式ドキュメントなどを参照してみてください。 PyScript - PyScript documentation PyScriptとは? PyScriptは公式サイトに「Run Python in Your HTML」と書いてあると

                                                    WebブラウザでPythonが動作する!PyScriptの詳解 | gihyo.jp
                                                  • dotfiles を使った環境構築の時短術(M1 Mac 向け) - SMARTCAMP Engineer Blog

                                                    挨拶 おすすめする人 dotfiles とは dotfiles を使ってみた感想 セットアップ方法 リポジトリ構成 自動セットアップ アプリケーションの管理 カスタマイズ デスクトップアプリケーション CLI アプリケーション Mac App Store のアプリケーション 完成系 プログラミング言語の管理 カスタム例 設定ファイルのシンボリックリンク作成 カスタム例 .gitignore および README.md .gitignore README.md さいごに 挨拶 こんにちは!スマートキャンプエンジニアの石井(トマス)です。現在、Boxil Event Cloudの開発に携わっています。 好きなことは「開発体験の向上」に取り組むことで、プロダクト参画時、開発環境をホストマシンに直接構築している状態で手順書もなく非効率だったのでDocker化し環境構築を簡略化しました。 今回は「開

                                                      dotfiles を使った環境構築の時短術(M1 Mac 向け) - SMARTCAMP Engineer Blog
                                                    • vscode.dev Visual Studio Code for the Web

                                                      Register now for a full day of community, learning, and all things Visual Studio Code vscode.dev(!) October 20, 2021 by Chris Dias, @chrisdias Back in 2019, when the .dev top-level domain opened, we picked up vscode.dev and quickly parked it, pointing at our website code.visualstudio.com (or, if you are from the Boston area like me, we "pahked it"). Like a lot of people who buy a .dev domain, we h

                                                        vscode.dev Visual Studio Code for the Web
                                                      • Time on Unix

                                                        Sections What is time Representing time Where do we usually find time on Unix System time, hardware time, internal timers Syncing time with external sources What depends on time Human perception of time What is time Time is relative Measuring time and standards Coordinating time Time zones DST Time, a word that is entangled in everything in our lives, something we’re intimately familiar with. Keep

                                                          Time on Unix
                                                        • PostgreSQL チューニングよもやま話 - エムスリーテックブログ

                                                          【Unit4 ブログリレー3日目】 こんにちは,エムスリーエンジニアリンググループの榎田です.数学とテレビゲームが好きです. 今回は,Unit4 で運用している "Docpedia" というサービスで実施した SQL チューニングの実例を2つご紹介します.普段の私が意識していなかった, RDBMS の内部機構に関する話が登場して面白かったので,今回の記事を書きました. なお,本稿で扱う議論はすべて PostgreSQL 11.x 以上を対象としており,特にその他の RDBMS で同様の動作をするかは確認していません.定性的な挙動に共通するものはあるかもしれませんが,ここで述べた話はそのままは通らないであろうことをお断りさせてください*1. プロダクトについて index なしで意外と耐えたが,耐えきれなかった話 実際の SQL とテーブル定義 原因の分析 対応策 SELECT DISTIN

                                                            PostgreSQL チューニングよもやま話 - エムスリーテックブログ
                                                          • Amazon Aurora MySQLでテーブル再構築を伴う操作をするとテーブルが見えなくなるっぽい - GMOインターネットグループ グループ研究開発本部(次世代システム研究室)

                                                            2023.01.11 Amazon Aurora MySQLでテーブル再構築を伴う操作をするとテーブルが見えなくなるっぽい Amazon Aurora MySQLでテーブルの再構築を伴う操作を行うと,Readerインスタンスで瞬間的に対象のテーブルが見えなくなる場合があるので,オペレーションの実行タイミングに気をけましょう,というお話です。再構築を伴う操作には,一部のALTER TABLEやOPTIMIZE TABLEが含まれます。 こんにちは,S.T.です。Amazon Aurora MySQLで少し気になる現象を見かけたので紹介します。この現象を知っていれば回避できるので,クリティカルな影響があるということではないですが,将来直ってくれると嬉しいですね。 1.Amazon Aurora MySQLとは Amazon Aurora MySQLはAWSで利用できるマネージドのRDBです。コ

                                                              Amazon Aurora MySQLでテーブル再構築を伴う操作をするとテーブルが見えなくなるっぽい - GMOインターネットグループ グループ研究開発本部(次世代システム研究室)
                                                            • 自作して学ぶKubernetes Scheduler | メルカリエンジニアリング

                                                              Mercari advent calender の21日目を担当します@sanposhihoです。現在大学の学部4回生で、メルカリでは内定者インターンとして、メルカリのホーム画面などのバックエンドを担当するチームに所属しています。 また、最近は個人的にKubernetesやその周辺のOSSにコントリビュートをしていて、特にKubernetesのコントロールプレーンのコンポーネントのうちの一つであるkube-scheduler周りを触ってることが多いです。 後で詳しく説明しますが、kube-schedulerはPodをどのNodeで実行するかを決定しているコンポーネントです。NodeAffinityや比較的新しいものだとPod Topology Spread Constraintsなど、Podのスケジュールの制約を指定できる機能も基本的にこのkube-schedulerに実装されています。

                                                                自作して学ぶKubernetes Scheduler | メルカリエンジニアリング
                                                              • Interpretable Machine Learning

                                                                Interpretable Machine Learning A Guide for Making Black Box Models Explainable. Christoph Molnar 2021-05-31 要約 機械学習は、製品や処理、研究を改善するための大きな可能性を秘めています。 しかし、コンピュータは通常、予測の説明をしません。これが機械学習を採用する障壁となっています。 本書は、機械学習モデルや、その判断を解釈可能なものにすることについて書かれています。 解釈可能性とは何かを説明した後、決定木、決定規則、線形回帰などの単純で解釈可能なモデルについて学びます。 その後の章では、特徴量の重要度 (feature importance)やALE(accumulated local effects)や、個々の予測を説明するLIMEやシャープレイ値のようなモデルに非依存な手法(mo

                                                                • 同じソースツリーでテストが通っていたらテストをスキップする | おそらくはそれさえも平凡な日々

                                                                  tl;dr git rev-parse HEAD^{tree} でツリーオブジェクトのハッシュ値が取れるので、ブランチが異なる場合でも同じソースツリーであるかどうかを判定できます。 これを利用して、すでにテストを通ったtreeのハッシュ値をどこかに記録しておいて、同一のソースツリーに対するテストをスキップできます。 本題 よく使われている、develop/mainブランチ運用をしている場合に、ちょっとした修正を本番に入れたい場合には以下のようなフローを踏むことになるでしょう。 featureブランチをdevelopブランチの先頭から切って修正を作ってテストが通るのを待つ developブランチにfeatureブランチにマージしてテストが通るのを待つ mainブランチにdevelopブランチをマージしてテストが通ったらdeployする さて、この時、他の作業が混ざらない限りにおいては1,2,

                                                                    同じソースツリーでテストが通っていたらテストをスキップする | おそらくはそれさえも平凡な日々
                                                                  • Downfall

                                                                    Downfall attacks target a critical weakness found in billions of modern processors used in personal and cloud computers. This vulnerability, identified as CVE-2022-40982, enables a user to access and steal data from other users who share the same computer. For instance, a malicious app obtained from an app store could use the Downfall attack to steal sensitive information like passwords, encryptio

                                                                      Downfall
                                                                    • Kubernetes: kube-scheduler をソースコードレベルで理解する - チェシャ猫の消滅定理

                                                                      はじめに Kubernetes において、Pod を配置するための Node を決定する手続きをスケジューリングと呼び、デフォルトのクラスタでは kube-scheduler がその責務を担っています。本記事ではこの kube-scheduler のソースコードを時系列に沿って追いつつ、どのようなロジックで Pod を配置する Node が決定されるのかを解説します。 なお、本記事は Kubernetes の内部実装について学ぶ勉強会 Kubernetes Internal #3 の補足資料を意図して執筆されました。本文中で参照しているソースコードのバージョンは v1.19.4 です。 Kubernetes Internal #3 録画 スケジューラの概要 ソースコードを読むに先立つ予備知識として、スケジューリングの大まかな流れと Scheduling Framework の概要に触れてお

                                                                        Kubernetes: kube-scheduler をソースコードレベルで理解する - チェシャ猫の消滅定理
                                                                      • MySQL で複合インデックスを作成する際には必ず Explain の key_len を確認すべきという話

                                                                        「Rails Developers Meetup 2018 で「MySQL/InnoDB の裏側」を発表しました」でちゃんと触れられてないので今更ながら key_len について補足します。発表で触れた内容については言及しないので、storage engine や B+ tree といった用語がよくわからない方は発表内容を参照してください。 なお、MySQL のバージョンは 5.7.38 です。 mysql> SELECT @@version; +-----------+ | @@version | +-----------+ | 5.7.38 | +-----------+ 1 row in set (0.00 sec) 事前準備 sample-data-railsdm-2018 の orders テーブルを少しいじって、キャンセル時刻(canceled_at)、配送予定時刻(deliv

                                                                          MySQL で複合インデックスを作成する際には必ず Explain の key_len を確認すべきという話
                                                                        • USBカメラモーションキャプチャーThreeDPoseTrackerの説明 - Qiita

                                                                          ThreeDPoseTrackerとは まずは下記の動画をご覧ください。画像をクリックすると別タブでYoutubeが開きます。 ThreeDPoseTracker v0.1.0 Introduction movie 他にもこの辺を見て頂くとわかりやすいかもしれません。 USBカメラだけでできる モーションキャプチャを作ってみた - Motion capture with USB Cam only - 【NT京都2020】 https://youtu.be/L0ieoaOD6Po ThreeDPoseTrackerは、USBカメラや踊ってみた等の動画だけでモーションキャプチャーができるWindows10用アプリケーションです。ノートPCであれば内蔵のカメラを使えば追加の機材は必要ありません。ですが、ちょっと(かなり)強めのグラフィック環境が必要です。具体的にはGTX1050以上は欲しいです。

                                                                            USBカメラモーションキャプチャーThreeDPoseTrackerの説明 - Qiita
                                                                          • React Server Components と GraphQL のアナロジー

                                                                            Next.js の App Router が安定版となり、React Server Components (以下 RSC) を実際に試す環境が整ってきた。 実際、今年はやれどこそこのプロダクトが Next.js を採用しただのやっぱり捨てだのといった話題が尽きなかったように思う。 かくいう自分自身も、今年は App Router の案件に取り組んで RSC と格闘する日々を送っていた。 その過程で、こんなようなことを考えるようになったので、今回はこの辺りの話を書き残しておこうと思う(何回か X に同じ旨の POST は上げていたけど、一回もちゃんとまとめてなかったので)。 RSC がない頃の、別の言い方をすると getServerSideProps を使っていた頃の、Next.js におけるアプリケーションの設計は、トラディショナルな MVC にかなり近しい。 ここでいう MVC は、Sp

                                                                              React Server Components と GraphQL のアナロジー
                                                                            • いまどきのVulkan

                                                                              3DグラフィクスAPI Vulkanの基本と最近のVulkanで使えるようになった機能について解説します これは2021年11月20日に行われた カーネル/VM探検隊 online part4での発表資料です 動画: https://youtu.be/CIfezfwbA3g ソースコード: https://github.com/Fadis/gct/tree/kernelvm-online-4

                                                                                いまどきのVulkan
                                                                              • マークアップを進化させる WAI-ARIA の基本

                                                                                マークアップを進化させる WAI-ARIA の基本 私 @masuP9 WAI-ARIAとは何か WAI Web Accessibility Initiative ARIA Accessible Rich Internet Applications WAI-ARIAは、ウェブコンテンツおよび アプリケーションのアクセシビリティと相互運用性を改良するためのフレームワークを提供する技術仕様である。 Accessible Rich Internet Applications (WAI-ARIA) 1.2 日本語訳 WAI-ARIAは ウェブのアクセシビリティを 高めるための技術仕様 WAI-ARIAはなぜ必要か アプリケーション化するウェブ Notion Figma G Suite 3D CAD etc... 意味も振る舞いも 既存のHTMLでは表現できなくなってきた 例えば タブUI 開いてい

                                                                                  マークアップを進化させる WAI-ARIA の基本
                                                                                • Terraform で実現する効率的な GitHub 権限管理 - カミナシ エンジニアブログ

                                                                                  こんにちは。ソフトウェアエンジニアの坂井 (@manabusakai) です。 今月でカミナシに入社してちょうど 1 年が経ちました。前職では 6 年間 SRE チームにいたのでプロダクト開発はブランクがありましたが、さまざまな挑戦をさせてもらっていたらあっという間に 1 年が経っていました。 カミナシのエンジニアリング組織もこの 1 年で急拡大しており、入社当初から比べると正社員のエンジニアも倍以上に増えました。 GitHub の権限管理、どうしていますか? ところで、みなさんが所属されている組織ではどのように GitHub の権限管理を行なっていますか? カミナシではつい先日まで、ほとんどのエンジニアが Organization の Owner 権限を持っていました。理由は、メンターになったエンジニアがニューカマーのユーザーを招待していたからです。 しかし、統制が取れていないことでいく

                                                                                    Terraform で実現する効率的な GitHub 権限管理 - カミナシ エンジニアブログ