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
DuckDB の FTS (Full Text Search) 拡張と Lindera を利用する事で、日本語全文検索を実現できますが、DuckDB-Wasm と Lindera-Wasm を利用する事でブラウザで日本語全文検索を実現できます。Wasm なので完全オフラインで、利用できます。 さらに、クライアントのリソースということもあり一文字ずつ入力された値に対して Lindera-Wasm で形態素解析して、SQL を実行することでインスタント検索も実現できます。 DuckDB-Wasm (FTS 拡張) + Lindera-Wasm技術的には特に難しいことはしておらず、DuckDB-Wasm の FTS 拡張に Lindera-Wasm で形態素解析した結果を引数として渡して実行しているだけです。 デモサイトを用意しておきました、もし良ければ試してみてください。 DuckDB-Wa
はじめに Googleカレンダーのような時間枠を扱うシステムを設計する際、開始・終了時刻を管理するロジックは容易ではない。 しかし、PostgreSQLには 範囲型 があり、この機能を活用することで、開始時刻(begin_at)と終了時刻(end_at)を1つのカラムで扱えるようになる。 そこで本稿では、範囲型を用いた設計と、その利点を紹介する。 時間枠を扱う難しさ まず前提として時間枠の扱いがなぜ難しいかを紹介する。 ソフトウェアデザインでやっている連載、実戦データベースリファクタリングの 【12】厄介な時間枠に向き合う でも紹介したが、時間の範囲を比較するときが難しい。 範囲の重なりには以下の種類がある。 包含:範囲Aが範囲Bを完全に含む 重複:範囲Aと範囲Bに共通点がある 隣接:範囲Aと範囲Bが隣り合う 時間枠の扱いはSQLに限らず、プログラミングの題材として難易度が高い。 特に重複
Previous slideNext slideToggle fullscreenOpen presenter view Rails vs Node.js 最終章 「Prisma」 @mizchi Cloudflare Meetup 2024/10/02 今日の Prisma + Cloudflare の様子 About https://x.com/mizchi Node.js とフロントエンドの専門家 100万円*達成率で御社のフロントエンドの高速化をやります 前書き フロントエンド/Node.js 視点のポジショントークです Railsに対するチャレンジャーとして Node.js を使ってきた話 Rubyの開発者やRubyのユーザーを否定する意図はありませんが、好き嫌いは否定しません。型が好きです 「Rails」は 2010年前後に流行っていた任意なWAFに置き換え可能 Symfony
Prisma界隈で話題沸騰中(自分調べ)のTypedSQLだが、自分の中ではかなりアツいと思っているので、その理由を語ろう。なおTypedSQLの機能とか仕組みについては記述しないのでドキュメントや以下の記事を参照するとよい。 Prismaの難しさ 複雑なクエリを組み立てるのが特に難しい。複雑といっても何10行もあるようなクエリとかではなく、joinとか集計関数がいくつかあるくらいで十分複雑になる。たとえば特定のユーザーに紐づく記事をコメントの数を含めて取得したいとする。クエリは雰囲気こんな感じ。SQLとしては全然難しくない。 SELECT posts.id, count(comments.id) AS cnt FROM posts INNER JOIN users ON posts.author_id = users.id LEFT JOIN comments ON posts.id =
Introducing database.build (formerly postgres.new), the in-browser Postgres sandbox with AI assistance. With database.build, you can instantly spin up an unlimited number of Postgres databases that run directly in your browser (and soon, deploy them to S3). Each database is paired with a large language model (LLM) which opens the door to some interesting use cases: Drag-and-drop CSV import (genera
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? Webサービスのフォームに住所を入力するとき、丁目や番地などを入れる欄について、数字やハイフンを全角で書かなければいけない「全角縛り」をやっているフォームをよく見ます。半角文字を入力してしまってエラーになったり、咄嗟に変換方法を思い出せなかったり、全角と半角の見分けが付きづらかったり、「全角縛り」であることが明示されていなかったり、「ハイフン」としてどの文字を使うべきかわからなかったり……と、鬱陶しさを感じることが多くあります。 「住所は全角のみ」(数字やハイフンも絶対に半角を受け付けない)という仕様がどういう経緯で生まれて、どう広まっ
最近、LLMにWeb Backendを書かせて遊ぶ、Hanabiというサービスを作っています。その開発過程で、前に試したLLMをAPIとして振る舞わせるアプローチを再検討したので、記事としてまとめました。 一年ちょっと前、私はChatGPTをWebフレームワークにしようと試みました...が、残念ながら全く実用的ではありませんでした。しかし、あれから一年、LLMは目覚ましい進歩で進化を遂げました。価格は下がり、速度も上がり、記憶容量の増加やRAGの発展など、もはや別物レベルで進化しています。 いまならもうちょっと実用的なヤツが作れるんじゃねってことで、色々な手法を面白がった再検討したまとめです。 余談ですが、一年前はLLM=ChatGPTという状況でしたね...懐かしい。ちょうどvicuna13Bが出た頃ですかね? ↓去年の記事(できれば読んでほしい)↓ 出来たもの 全部プロンプトに入れちゃ
SolanaのPublic DataをBigQueryで取得したかった# えー、お笑いを一席. ブロックチェーンSolanaのデータがGoogle Cloud BigQueryで使えるようになったというニュースをたまたまネット推薦記事でみかけた1. おや, 面白そうだ. ちょっとやってみようかな… BigQueryはさわるのが1年以上つかってないかも, どうやるんだっけ… とりあえずカラムとかサンプルでちょっとデータをみたいよな, こんな感じだっけか? とりあえず動かしてみよう, ポチッとな. … 5秒でレスポンスが帰ってくる. おー、速い. えーっと, あれ課金データ309TB?! いちげきひっさつ、ハサンギロチン2. BigQueryでクエリ一撃5 秒で29万円溶かした人の顔# 話題の画像生成AI, DALL・Eをつかって BigQueryでお金溶かした人の顔を表現してもらった3. あ
この記事はRust Advent Calendar 2023 シリーズ1の4日目の記事です。 あるソフトウェアをテストするとき、そのソフトウェアがデータベースやメッセージブローカのような外部のサービスに依存する場合に、その依存をどのように扱うかという問題がつきまとう。この問題へのよくある解決策としては 依存サービスを差し替えられるような設計にして、テスト実行時はモックに差し替える Docker Composeなどであらかじめ依存サービスをテスト用のコンテナとして立ち上げておき、テスト実行時はそれらのサービスが動くコンテナにアクセスする などが挙げられる。 今回はさらに別の方法として、テスト実行時にテストコードの中から依存サービスをコンテナとして立ち上げるためのフレームワークであるTestcontainersを紹介する。また、RustでTestcontainersを使うときの実例を紹介する。
私は日付時刻の処理が大好きです。 タイムゾーンの問題でデータ抽出が9時間分漏れていたとか、朝9時の始業前のログが昨日付けになってしまっていたなんていう問題が起こると喜んじゃうタイプ。 そんな私にとって、各プログラミング言語が標準で持っている日付時刻型クラスにはそれぞれ思うところがあり、今日はちょっとその品評会をしてみたいと思います。 エムスリーエンジニアリンググループ、Unit1(製薬企業向けプラットフォームチーム)三浦(@yuba@reax.work) [記事一覧 ]がお送りいたします、エムスリー Advent Calendar 2023の2日目です。 至高の日付時刻型を持つ言語、BigQuery SQL 不足はないが蛇足、Java 8 日付時刻で画竜点睛を欠いたC# C#よりややまし、Python 型は良い構成、なのに命名と処理関数で損しているPostgreSQL まとめ We ar
こんにちは、ソーシャル経済メディア「NewsPicks」のむとうです。 先日から『Ghost of Tsushima』の開発者が書いた『ルールズ・オブ・プログラミング』という本をちょっとずつ読み進めていて、プログラミング熱が高まっています。この本は大きな指針を示すだけで具体の話をするものではないのですが、読み物として面白いので私も似たようなことをやってみたくなりました。 何年もこういう仕事をしているとバグが入るパターンというのが見えてきます。そしてだいたいどこに行っても何の仕事でも似たようなことをすることになるのですが、今回の話もその一つです。 構造化テキストを文字列結合で作らない、置換でいじらないというのはこれだけみると何のことか分かりづらいかも知れませんがSaaS Product Team セキュアコーディングの啓蒙 第2回 (SQL インジェクション編)の内容とある面では同じ話です。
思い出します2年前・・・ VTeacher所属のSatokoです。 フロントエンドエンジニアとバックエンドエンジニアを兼任しています。 定番なテクノロジーと少しだけGeekなテクノロジーを組み合わせた選定が好みです🤤 Next.js Conf 、朝まで大忙しでしたね。 (ねむい・・・) Server Actions の一般的な誤解 まず最初に、SNSで話題になっている Server Actions に関する一般的な誤解についてです。 (1) 生のSQLが書かれているというアンチパターン?🤔 一部のサンプルコードでは、生のSQLを直書きしているところがあります。 しかし、以前のプレゼンテーションでも述べられているように、 React Server Component や Server Actions で、この書き方を推奨しているわけではありません。 あくまで「こんなこともできるようになっ
GitHub CopilotのAIモデルがさらに進化し、より的確なコードの提案、脆弱性のあるパターン、SQLインジェクション、クレデンシャルのハードコードを警告など GitHubは、AIによってプログラマのコーディングを支援する「GitHub Copilot」の基礎となる「Codex」と呼ばれるAIモデルを更新し、提案するコードの品質の向上と、コードの提案にかかる時間短縮などを実現したと発表しました。 これにより、GitHub Copilotによって提案されたコードをプログラマが受け入れる割合がGitHub Copilotを発表した当初の27%から現在の35%にまで上昇し、特にJavaでは61%にまで到達したとしています。 脆弱性のあるパターンのコードには警告 提案されるコードをより安全にするため、安全でないコードのパターンが生成された場合にはそれをリアルタイムでブロックするAIベースの脆
日本語の問いをChatGPTでSQLに変換、実行する「Chat2Query」を搭載。MySQL互換のTiDB Cloud MySQL互換のオープンソースデータベース「TiDB」(タイデービー)を提供しているPingCAP社は、日本語を含む自然言語の問いをChatGPTを用いてSQL文に変換し、実行する「Chat2Query」機能を、クラウド上でTiDBのマネージドサービスを提供する「TiDB Cloud」にβ版として搭載したことを発表しました(日本語のプレスリリース) Introducing #Chat2Query, our AI-powered natural language querying tool that will release you from tedious manual SQL writing and change the way of #DataExploration
研修資料・動画一覧Git研修( 動画 / スライド )データベース研修( 動画 / スライド1, 2 / SQL演習環境 )設計・テスト研修( 動画 / スライド )コンテナ研修( 動画 / スライド1, 2 )iOSアプリ開発研修( 動画 / スライド / リポジトリ )Androidアプリ開発研修( 動画 / スライド / リポジトリ )フロントエンド研修( 動画 / スライド / リポジトリ )ゲーム開発(Unity)研修( 動画 / スライド1, 2, 3, 4, 5, 6 / リポジトリ )Flutter研修( 動画 / スライド / リポジトリ )AI研修( スライド1, 2, 3, 4 / リポジトリ )セキュリティ研修( スライド )チーム開発研修( スライド )Git研修チーム開発での Git (+GitHub) の使い方とGit の内部的な挙動について学ぶ研修です。後半
株式会社メタップスペイメントの運営する決済代行システムから約288万件のクレジットカード情報が漏洩した不正アクセス事件について、第三者委員会の報告書および経済産業省の行政処分(改善命令)があいついで公開されました。 第三者委員会調査報告書(公表版) クレジットカード番号等取扱業者に対する行政処分を行いました (METI/経済産業省) 本稿では、主に第三者委員会の調査報告書(以下「報告書」と表記)をベースとして、この事件の攻撃の様子を説明します。 システムの概要報告書にはシステム構成図やネットワーク構成図は記載されていないため、報告書の内容から推測によりシステムの構成を以下のように仮定しました。 図中のサーバー名は報告書の記載に従っています。以下、概要を説明します。 サーバ名概要 A社アプリ一般社団法人A 会員向け申込みフォーム 経産省改善命令では、「同社とコンビニ決済に係る契約を締結してい
バグハンターmageに聞くバグハンティングの方法とセキュアなサービス作りに必要なこと バグハンターとは、Webサービスやソフトウェアなどに含まれる脆弱性を、システム改善のために探し出す人々です。バグハントの方法は非常に多岐にわたりますが、具体的な手法、使用ツール、ハントのマナーを凄腕のバグハンターに聞きました。mageの名で知られる馬場将次さんが語り下ろす実践的なノウハウは、サービスをセキュアなものにしたいエンジニアのみなさんにとっても重要な知見になるでしょう。 バグハンティングを犯罪にしないために必ず知っておきたいこと 馬場流バグハント手法「調査」「解析」「実証」。そして「普通はやらない」を無数に試す 防御のために、言語やフレームワークの実装を学ぼう。コード読解から、違和感を見つけ出す方法を実践してみる XSSの現在。技術の進化と並走する攻撃手法の進化 セキュリティを理解するためにまずは
この記事はクラスメソッド Google Cloud Advent Calendar 2021の9日目の記事です。 Google Cloud自体ナンもわからないマンが、以前から気になっていたCloud Runをあれこれ動かしながら学んでみた様子をお届けします。もともとAWSのApp Runnerがお気に入りのサービスだったので、それとの機能上の違いも入れています。 (祭) ∧ ∧ Y ( ゚Д゚) Φ[_ソ__y_l〉 Cloud Run祭りダワッショイ |_|_| し'´J 注意事項:この記事には両者のサービスの優劣をつける意図は全くありません そもそも、違うプラットフォームに存在するサービスを単独で機能比較して優劣がはっきり出るほど、パブリッククラウドは単純なものではありません。AWSもGoogle Cloudもサービス単体で利用するよりは、そのエコシステムの中でビルディング
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く