Supercharge your entire team with AI-driven contextual feedback & smart chat
![AI Code Reviews | CodeRabbit | Try for Free](https://cdn-ak-scissors.b.st-hatena.com/image/square/55f860a6a302bf98c0e2fcf17e9648f88904f275/height=288;version=1;width=512/https%3A%2F%2Fframerusercontent.com%2Fassets%2FKZsZTHtBOb7czfWzLuUJHMuh9NY.png)
☰ Introduction Tree-sitter is a parser generator tool and an incremental parsing library. It can build a concrete syntax tree for a source file and efficiently update the syntax tree as the source file is edited. Tree-sitter aims to be: General enough to parse any programming language Fast enough to parse on every keystroke in a text editor Robust enough to provide useful results even in the prese
TotT 98 GTAC 61 James Whittaker 42 Misko Hevery 32 Anthony Vallone 27 Code Health 27 Patrick Copeland 23 Jobs 18 Andrew Trenk 12 C++ 11 Patrik Höglund 8 JavaScript 7 Allen Hutchison 6 George Pirocanac 6 Zhanyong Wan 6 Harry Robinson 5 Java 5 Julian Harty 5 Alberto Savoia 4 Ben Yu 4 Erik Kuefler 4 Philip Zembrod 4 Shyam Seshadri 4 Adam Bender 3 Chrome 3 Dillon Bly 3 John Thomas 3 Lesley Katzen 3 Ma
はじめに セキュリティエンジニアの齋藤ことazaraです。今回は、不可思議なContent-Typeの値と、クラウド時代でのセキュリティリスクについてお話しします。 本ブログは、2024 年 3 月 30 日に開催された BSides Tokyo で登壇した際の発表について、まとめたものです。 また、ブログ資料化にあたり、Content-Type の動作や仕様にフォーカスした形で再編を行い、登壇時に口頭で補足した内容の追記、必要に応じた補足を行なっています。 また、本ブログで解説をする BSides Tokyoでの発表のもう一つの題である、オブジェクトストレージについては、以下のブログから確認をすることが可能ですので、ご覧ください。 blog.flatt.tech なぜ今、この問題を取り上げるのか? 従来のファイルアップロードにおいて、Content-Type の値を任意の値に設定すること
Update AWS started investigating the issue: https://twitter.com/jeffbarr/status/1785386554372042890 Imagine you create an empty, private AWS S3 bucket in a region of your preference. What will your AWS bill be the next morning? A few weeks ago, I began working on a PoC of a document indexing system for my client. I created a single S3 bucket in the eu-west-1 region and uploaded some files there fo
日々のタスクに忙殺されていると、ついつい既存コードを流し読みして、ざっと動くコードを書いてしまいたくなります。 一発でうまく動けば短期的にはいいのですが、長期的にはコードの理解が追いつかなったり、一発でうまく動かなかった場合にかえって時間がかかってしまいます。 VSCode の拡張機能である Code Tour を使うと、コード上にメモを残しながら読み進めることができるので、既存のコードを読む際に便利です。 Code Tour とは VSCode の拡張機能で、コード上にメモを残しつつ、そのメモをたどることができるツールです。 使い方 ツアーを始める コマンドパレットから「Code Tour: Record Tour」を選択すると、ツアーの記録モードになります。 ツアーの名前 どのソースに紐づけるか(紐付けなし、ブランチ、タグ) を選択すると、リポジトリ直下に .tours/${指定したツ
AWS CDK TIpsシリーズの記事。 タイトルの通り、AWS CDKのNodejsFunctionを使う時に依存関係を解決する方法が数パターンあるので比較してみる。 例 今回は、以下のTypeScriptのLambdaをデプロイするケースを考える。 // よくあるAPI GatewayのLambda Authorizer import { APIGatewayRequestAuthorizerHandler } from 'aws-lambda'; import { verify, decode } from 'jsonwebtoken'; export const handler: APIGatewayRequestAuthorizerHandler = async (event, context) => { const token = event.headers?.Authoriz
小説のバージョン管理をGitで行うにあたり手頃なエディターが欲しくなったので、ブラウザでも編集できるようVS Codeの拡張機能として作ってみた。 機能としては小説投稿サイトにあるような、 ルビや傍点を振る 行頭の字下げを揃える 字数のカウント プレビュー といったものを一通り備えている。 ルビや傍点の記法はカクヨムと同じものを採用し、傍点に対応していないサイト用にはルビによる代替表記に変換してコピーするコマンドを用意した。 ソースコードはGitHubで公開している: なおNode.jsで動作する小説用拡張機能としては、より多機能なものとしてSF作家の藤井大洋氏による が既にあり、今回の拡張機能を作る上でも参考にさせていただいた。 Web拡張機能 VS CodeはTypeScript製ということもあってブラウザでも動くようになってきている(Visual Studio Code for th
前説 本記事は、下記で紹介したVSCode拡張機能をリリースするにあたって、プロジェクトの作成から公開、その他気にしておくべきことなどをまとめたものになります。 目次 前説 目次 雑文 開発環境 YEOMANとgenerator-codeのインストール プロジェクトの作成 実行とデバッグ 関数とVSCodeのコマンドの紐付け 多言語対応 メニューやタイトルの場合 プログラム内(extension.ts)のテキスト 拡張機能のテスト パッケージングとインストール vsceの実行環境を作る READMEの編集 package.jsonについて LICENSE ファイルについて vsixファイルを使ったインストール 拡張機能の公開 GitHub Actions を使ったCD/CI CHANGELOG のこと まとめ 参考記事 雑文 もはや我々デベロッパーの日常とは切っても切り離せない「VSCod
Amazon ECS でのコンテナデプロイの高速化 この記事は同僚の Nathan Peck (@nathanpeck)が書いた記事 “Speeding up Amazon ECS container deployments” を翻訳し、加筆・修正したものです. 元記事を ECS ユーザに紹介する機会が何回かあったので、せっかくなので翻訳することにしました. コンテナのオーケストレーションは非常に複雑な問題の一つです. アプリケーションコンテナのデプロイのために、相互にやり取りを行う複数の異なるコンポーネントが存在します. あなたのアプリケーションを実行したオーケストレータは、その実行されたアプリケーションが Web トラフィックを受け取る用意ができているかどうかについて判断する必要があります. その後そのアプリケーションはスケールダウンされたり、あるいは新しいバージョンのアプリケーション
はじめに 以下の記事でAWS CDKにおけるチーム開発のフローやテストについて記載した。 mazyu36.hatenablog.com mazyu36.hatenablog.com 今回は実装内容についてチーム内で意識合わせしておいた方が良いと思った点をまとめておく。 はじめに 前提 1. Stackの分割基準 極力Stackを分割しないパターン 共通的に使用するリソースを切り出すパターン Stack間参照を避けられない場合の対応 2. ConstructIdの命名規則 3. リソース名つけるか問題 インフラ担当者以外が参照することが多いリソースは名称をつける 他リソースは自動生成するが、判別するためにタグを付与する 4. 不要なリソース、ログの残存の回避 CloudWatch Logsのロググループ S3バケット KMS CMK おわりに 前提 チーム開発のフローの記事に記載した環境構成
Next.js 14 の Server Actions の stable リリースに発表は大きな反響を呼びました。 特に <button> の formAction 属性内で直接 SQL クエリを実行するコードは多くの人に衝撃を与えていました。"use server;" の部分を PHP やバイナリに置き換えると行った多くのミームも生まれました。 function Bookmark({ slug }) { return ( <button formAction={async () => { "use server"; await sql`INSERT INTO Bookmarks (slug) VALUES (${slug})`; }} > <BookmarkIcon> </button> ) } X 上での反応を見ると、このクライントから直接 SQL クエリを実行するコードは見た目の印象
English version of this article is available here. はじめに こんにちは、マネーフォワード ID 開発チームの Yamato(@8ma10s)です。 マネーフォワード IDでPasskey autofillを利用したパスキー対応をリリースしてから、早いもので半年ほど経過しました。 今年5月にリリースしたパスキー利用状況レポート vol.1、8月にリリースしたパスキー利用状況レポート vol.2に続き、11月時点でのパスキー登録や利用状況のレポートをまとめます。 Vol.2以降に加えた変更 Vol.2 時点では、マネーフォワード MEを利用しているユーザーのみにプロモーションページを表示しており、法人向けプロダクトにログインしようとしているユーザーへのプロモーションは行っていませんでした。 8月末頃からは、マネーフォワード クラウドの各種プロ
MySQLのインデックスですが、B-treeではなくB+treeを使用するのはどうしてなのでしょうか? 端的に言うと性能が良いからです。 これを理解するにはバッファプールへの理解が必要です。ディスク指向のデータベースの上では有限のメモリを最大限活用することでメモリに入り切らない巨大なデータ群に対して良好な参照性能を出す必要があります。バッファプールとはディスク上のデータの羅列を固定サイズのページ(InnoDBの場合16KB)の羅列であるとして読み書きに必要な分だけをメモリに移し取り複数の書き込みをできる限りメモリ内で受け止めて後でまとめてディスクに書き戻すという、ライトバック型のキャッシュのような機構です。 この中においてバッファプールは有限のサイズしか無いので適宜プール内のデータを書き戻して入れ替えながら上手くやっていく必要があります。 さてB+treeとB-treeの最大の違いは木のリ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く