Developers Summit 2025 公募セッション "データの整合性を保つ非同期処理アーキテクチャパターン" https://event.shoeisha.jp/devsumi/20250213/session/5585 --- 1つの業務が一連のイベント(出来事)から構成されるシス…
はじめに こんにちは。はじめまして。まるべいじ(malvageee)と申します! まだ完成系じゃないですが、Notionからmarkdownに変換するライブラリをOSSとして公開したので、経緯など含めて紹介しようと思います。 変換されたMarkdownはこちらから確認できます。https://zenn.dev/salvage0707/articles/4105ccdf1690c8 この記事もこのライブラリを使って変換処理されたMarkdownを使ってます。 Notion記事:https://malvageee.notion.site/Notion-markdown-OSS-Zenn-19b2ad69d3ce80679f86f3feeee4b611 なぜつくったか 1番の理由は、Notionを全てのプラットフォームの記事執筆の環境にしたかったからです! (あと、シンプルに変換ライブラリ作るの
はじめに 課金戦士は恐怖した。必ず、テスト自動化の実装をできるようにならなければならぬと決意した。課金戦士にはコードがわからぬ。課金戦士は、QAエンジニアである。テストケースを作成し、テスト環境に弄ばれて暮して来た。けれどもテスト自動化という未知に対しては、人一倍に敏感であった。 テスト自動化への心理的障壁がエベレストなあなたも、日和山なあなたも、はじめまして。 食べログの品質管理室、SETチームに生息している課金戦士と申します(課金機能を担当している戦士ではなく、アプリゲーム課金を趣味として赤字と戦い続ける戦士です)。 ちなみにSETとは、「Software Engineer in Test」のことを指します。つまりSETチームとは、ソフトウェアの品質保証とテスト自動化に特化したエンジニアのチームです。 課金戦士は、SETチームの一員として、約1年半テスト自動化に携わってきました。 今回
We’ve all been there—staring at a function that looks like it was written by an over-caffeinated goblin at 3 AM (maybe even your alter ego). You could pretend it doesn’t exist, or you could refactor it. Luckily, GitHub Copilot makes the second option less painful. Let’s get to it. What is code refactoring? Feel free to breeze past this section if you already know what’s involved with refactoring c
音楽レーベル〈Brainfeeder〉を主宰し、サンダーキャットやカマシ・ワシントンを輩出、ケンドリック・ラマーやチャイルディッシュ・ガンビーノらとともに先鋭的なサウンドをメインストリームへ押し上げたプロデューサー、フライング・ロータス(以下、フライロー)。 彼は2度、坂本さんとスタジオをともにしたことがある。1度目はピアノを勉強すべく訪れた坂本さんのニューヨークのスタジオで。2度目はLAにある彼自身の自宅兼スタジオで。そこではどんなやりとりがあったのか。フライローが間近で目の当たりにした、“ミュージシャン坂本龍一”の凄みを語る。 「彼はすべてのものに注意を向けていた」 ——坂本龍一の音楽に出会ったきっかけを教えてください。 フライング・ロータス いろんなレコードを掘りながら、サンプリングしていたときに偶然出合ったんだ。正確な時期は覚えていないけど、『Until the Quiet Com
Next.js + REST APIを必要とする人のためのライブラリ 世間がRSCで盛り上がっている今でも私はREST APIを好んで使っています。OpenAPIをSwaggerUIで展開してAPI仕様書として納品できるし、保守引継ぎのためのエンジニア教育も比較的簡単です。 SwiftやKotlinでネイティブアプリ対応する場合もOpenAPIからHTTPクライアントを自動生成して使うことが多いのではないでしょうか? ゆえにNext.jsのRoute HandlersでAPIを開発したい場面がそれなりにあるのですが、公式の方法だけだと型が緩くて辛いです。回避策として全てのリクエストをHonoに投げて型を付ける記事をよく見かけますが、ファイルベースルーティングの利点が失われてしまいます。 この記事では、aspidaとfrourioの開発経験を活かして設計されたRoute Handlers特化
年末年始に読んだ 「TypeScript と React/Next.js でつくる実践 Web アプリケーション」 の読書感想文を先月記事にしました。(多くの方に読んでいただき、非常にありがたい経験ができました。) この中で惜しかったところとして、書籍内のサンプルアプリケーションが Page Router で実装されていた点をあげました。これは自身のモチベーションに App Router を学びたいことがあったためです。(書籍では丁寧にサンプルアプリケーションの実装手順が記載されていました。) こちらの記事では書籍内のサンプルアプリケーションを参考に App Router で実際に実装してみての個人的なポイントや所感を書いていこうと思います。大まかにはディレクトリ構成・レンダリングモデル(Static Rendering, Dynamic Rendering, Partial Preren
上記のとおり、「parallel_document_massege」~ 「parallel_create_code」までが並列で処理されるノードです。ある程度ノードをまとめてしまってもよいですが、処理ごとに分けておくとノードの付け替えなどでカスタマイズがしやすいかと思います。 コーディング 使用したライブラリ コード内で使用した外部ライブラリとインストールコマンドは以下です。 $ pip install chardet==5.2.0 $ pip install aiofiles==23.2.1 $ pip install ipython==8.27.0 $ pip install langchain-core==0.3.28 $ pip install langchain-anthropic==0.3.0 $ pip install langgraph==0.2.60 import os
以下では、React19の背景や最新機能をざっと整理しながら、自分の備忘録としてもまとめてみました。 はじめに: 進化するウェブ開発のニーズ 👀 ここ数年、Webアプリ開発は以下のようなポイントを強く意識して作るケースが増えているように思います。 初回ロードの速さ: 初回ロードから画面にコンテンツが表示されるまでの時間をいかに短くできるか。ユーザーが「待ち疲れ」しないようにする工夫が重要。 インタラクティブ性: アプリの規模が大きくなるほど、状態管理やリアルタイム更新が複雑になりがち。サクサク動くUIとストレスのない操作感を実現するのがポイント。 SEO対応: SPAでも検索エンジンにしっかりインデックスされるように、SSRやSSGの導入が一般的になりつつある。 ネットワークがよろしくない環境への対応: オフラインや低速回線でも、ユーザーを過度に待たせないためのキャッシュやロード分割など
はじめに Visual Regression Test (以下VRT) やっていますか? ありがちなケースとして VRT が安定せずにオオカミ少年化し、誰も差分のレポートを気にしなくなってしまって、CI のリソースやコストを食い潰すだけの仕組みになってしまうということがあると思います😇 この記事では VRT を安定化させるためのアプローチと、Storybook をベースにテストが実行できる Storybook Test runner 機能の活用法について紹介します! VRTを安定化させるアプローチ base64エンコードした画像の利用 Storybook で表示する画像の例として以下があります。 ローカルのファイル クラウドストレージ上のファイル Placeholder.com などのダミー画像生成サービス VRT 用のスクリーンショット撮影時にこれらの画像のロードが完了していないことが
Hello, Rustaceans! The Rust Survey Team is excited to share the results of our 2024 survey on the Rust Programming language, conducted between December 5, 2024 and December 23, 2024. As in previous years, the 2024 State of Rust Survey was focused on gathering insights and feedback from Rust users, and all those who are interested in the future of Rust more generally. This ninth edition of the surv
Fixes Avoid the deprecation message #19062 by @alexander-akait Should not escape CSS local ident in JS #19060 by @JSerFeng MF parse range not compatible with Safari #19083 by @alexander-akait Preserve filenameTemplate in new split chunk #19104 by @henryqdineen Use module IDs for final render order #19184 by @dmichon-msft Strip blob: protocol when public path is auto #19199 by @alexander-akait Resp
Why I'm Writing a Scheme Implementation in 2025 (The Answer is Async Rust) by Matthew Plant This blog post is an introduction to scheme-rs. I really love Rust. I’ve been using it as my language of choice for about ten years now. I believe that it is a remarkably well designed language, and that includes the parts that are often most criticized, most notably async. But while I thing that async Rust
紹介 「ストリートコーダー」とは、プロフェッショナルな現場(ストリート)で経験を積み、実務で求められるさまざまなスキルを身に付け、柔軟に問題解決できるプログラマーのことです。授業では教えてくれない実用的な手法を携え、独学では習得できなかった実践的な技術を有しています。 本書には、ストリートで闘うことでしか身に付かない「現場の知恵」が詰まっています。現場ですぐに役立つ考え方、現実に即した手法、本当は役に立つアンチパターン、テストの本質、積極的にリファクタリングすべき理由とリファクタリングすべきではない場合、必要なときに行う必要な最適化など、筆者が現場を切り抜けていく中で重要だと感じた事柄であり、今日から使える知識ばかりです。 本書は、これから現場(ストリート)に出ようというエンジニア初心者、現場投入されて数年が経つものの伸び悩んでいるプログラマーといった層にお勧めです。著者が直面し、苦労して
Astro 5.3 is here with faster page rendering, easier setup for experimental sessions, and more! 💘 It’s the season of love, and you’re sure to fall for these improvements to Astro: Faster page rendering Automatic session storage setup More control over Netlify bundling Improved handling of HEAD requests To upgrade an existing project, use the automated @astrojs/upgrade CLI tool. Alternatively, upg
Hello everyone. I'd like to officially announce the beginning of our journey to Solid 2.0. We've done a lot of prototyping over the last few months and feel like we've gotten to a place where we can official start the process of developing Solid 2.0!! For Solid 2.0 we are looking at features in a few key areas: Fine-grained non-nullable async Mutable derivations Flush boundaries Derived signals La
こんにちは。Webアプリケーションエンジニアのきのすけです。 フロントエンド開発において、適切なテスト戦略を選択し実装することは、品質を担保する上で重要な課題です。この記事では、ロリポップ for Gamersにおけるフロントエンドのテスト拡充の取り組みについて紹介したいと思います。 背景 GMOペパボでは、2024年に「ロリポップ for Gamers」というサービスをリリースしました。これは、VPSをベースに「ゲームのマルチプレイが簡単にできる環境」を提供するサービスです。技術スタックとしては、フロントエンドにNext.js、バックエンドにGoを採用しています。 プロジェクト初期において、フロントエンドの経験が豊富なチームメンバーはいませんでした。しかし、迅速な市場参入を実現するために、非常に限られた時間の中で、可能な限りフロントエンドのキャッチアップを行い実装を行いました。 結果とし
2025-02-13, Version 23.8.0 (Current), @targos Notable Changes Support for using system CA certificates store on macOS and Windows This version adds the --use-system-ca command-line flag, which instructs Node.js to use the trusted CA certificates present in the system store along with the --use-bundled-ca, --use-openssl-ca options. This option is available on macOS and Windows for now. Contributed
/ Shayon Mukherjee / blogScaling with PostgreSQL without boiling the oceanFebruary 9, 2025 ~9 mins “Postgres was great when we started but now that our service is being used heavily we are running into a lot of ‘weird’ issues” This sentiment is frequently echoed by CTOs and senior engineers at high-growth startups when I speak with them. Scaling PostgreSQL successfully doesn’t always require a ful
“Only Apple can do this” Variously attributed to Tim Cook Apple introduced Apple Intelligence at WWDC 2024. After waiting almost a year for Apple to, in Craig Federighi’s words, “get it right”, its promise of “AI for the rest of us” feels just as distant as ever. While we wait for Apple Intelligence to arrive on our devices, something remarkable is already running on our Macs. Think of it as a loc
この記事の内容はじめまして。champayaです! この記事では、DifyのワークフローをTypeScriptコードに自動変換する方法をご紹介します。 手順はすごく簡単で、これだけです😇 1. DifyのDSLエクスポート ↓ 2. プロンプトとDSLをChatGPTに入力 ↓ 3. 出力されたコードをNext.jsに貼り付けて必要な箇所を修正。 それではやっていきましょう。 実際の手順1. DifyのDSLエクスポートお好きなDSLをエクスポートしてください。 今回はサンプルとして、IF/ELSEとtoolを組み合わせた適当なワークフローを用意しました。 サンプルワークフロー【サンプルDSL】 app: description: dify2codeのサンプル icon: 🤖 icon_background: '#FFEAD5' mode: workflow name: sample
森田です。 現在開発しているプロダクトで BlockNote というリッチテキストエディタを使う機会があったのですが、これがめちゃめちゃ便利だったので今回はその紹介をしたいと思います! BlockNote とは? BlockNote は React で Notion のようなブロックベースのテキストエディタを実装できるライブラリです。デフォルトの状態で Notion に引けを取らない UX が設定されており、とても簡単に高クオリティなテキストエディタを実装できます。 https://www.blocknotejs.org/ 実装 長々と説明するより実際に見てもらうほうが早いと思うので、早速で実装してみましょう! 今回もNextjsで行きます サクッとプロジェクトを作成して... $ npx create-next-app blocknote-app ✔ Would you like t
export const loader = async () => { const { app } = await importElectron(); return { version: app.getVersion(), userData: app.getPath("userData"), }; }; loaderはメインプロセスで実行されるので値が取得できます。IPC (In-process communication)を意識せずに書けるのが利点です。 Without SSR through tRPC もしかしたらSSRしたくないときもあるかもしれません。renderer部分はSPAにして別の環境にデプロイしたいとか。 そんなときのためにメインプロセスとの通信をtRPCを介して行う方法も実装してみました。 export default function Index() { const
概要 Unityで任意のVRMファイルをフォルダから選択し読み込むまでのデモです。 開発環境 Windows 10 Unity 2022.3.6f1 Api Compatibility Level .NET Standard 2.1 使用したパッケージ VRM 1.0 リンク先からunitypackageをダウンロード、事前にプロジェクトにインポートしておきます。 https://github.com/vrm-c/UniVRM なお、利用したのはVRM-0.117.0_9a91.unitypackageです。 VRMの実装に関しては、以下が参考になりました。 Unity Standalone File Browser こちらは、フォルダからファイルを読み込むのに利用しました。 Windowsでしか試していませんが、クロスプラットフォーム対応できるようです。素晴らしい! リンク先からunit
この記事を読んで使ってみたいなぁと思い、はや数ヶ月 ちょっと試してみようと、いろいろ調べてみたときの備忘録(*´ω`*) Nuxt Auth Utils でサーバーサイドの認証を(OAuth・マジックリンク・ワンタイムパスワード) Nuxt Auth Utilsとは https://github.com/atinux/nuxt-auth-utils 認証周りのライブラリ クライアントサイド、サーバサイドを含めSSRに対応 20以上OAuthプロバイダーに対応 ※nuxt buildのみ、nuxt generateは非対応 Nuxt Auth Utilsが提供しているもの ユーザセッション周りのServer UtilsやComposable&Component Server Utils(setUserSession()、etc..) ... 保存/取得クリアなどのセッション管理系 Compo
SwiftUI学習を最近始めました。ViewModelの書き方について教えてください。 以下のようなコードを書いて、Viewからの更新を受けてViewModelでAPIを叩き、@Publishedなpostsを更新することでUIが更新されるような簡単なものから作り始めようとしています。 public class HomeViewModel: ObservableObject { @Published var posts: [Post] = [] private let postAPI = PostAPI() public init() {} public func fetchPosts() async { do { // PostAPIのfetchPostsメソッドを呼び出してダミーデータを取得 let fetchedPosts = try await postAPI.fetchPosts
はじめに これは覇権では nikkieです。 世はまさに大LLM時代。 そんな乱世で非常に頼れそうなパッケージを知りました。 目次 はじめに 目次 結論:LiteLLMを使ったこのスクリプトを見てくれ! LiteLLMはcompletion()だけで様々なモデルからOpenAI互換のレスポンスを得られる! LangChainより簡単になっている衝撃 私には使う理由がなくなってしまった同種のパッケージ ell-ai aisuite 終わりに P.S. 知ったきっかけ 結論:LiteLLMを使ったこのスクリプトを見てくれ! 動かすにあたり、2つの環境変数を指定しています。 OPENAI_API_KEY GEMINI_API_KEY(Google AI Studioで取得) % uv run -q --python 3.12 script.py model='openai/gpt-4o-mini
import os import ssl import certifi from langchain_openai import AzureChatOpenAI from browser_use import Agent import asyncio ssl_keylogfile = "tls_keys_20250213-001.log" os.environ["SSLKEYLOGFILE"] = ssl_keylogfile context = ssl.create_default_context() context.keylog_filename = ssl_keylogfile llm=AzureChatOpenAI( openai_api_version="2024-xx-xx", azure_endpoint="https://xxxxxxxxxxxxx.openai.azure
はじめに 課金戦士は恐怖した。必ず、テスト自動化の実装をできるようにならなければならぬと決意した。課金戦士にはコードがわからぬ。課金戦士は、QAエンジニアである。テストケースを作成し、テスト環境に弄ばれて暮して来た。けれどもテスト自動化という未知に対しては、人一倍に敏感であった。 テスト自動化への心理的障壁がエベレストなあなたも、日和山なあなたも、はじめまして。 食べログの品質管理室、SETチームに生息している課金戦士と申します(課金機能を担当している戦士ではなく、アプリゲーム課金を趣味として赤字と戦い続ける戦士です)。 ちなみにSETとは、「Software Engineer in Test」のことを指します。つまりSETチームとは、ソフトウェアの品質保証とテスト自動化に特化したエンジニアのチームです。 課金戦士は、SETチームの一員として、約1年半テスト自動化に携わってきました。 今回
export interface PokeResourceList { count: number; next: string; previous: string; results: PokeResource[]; } export interface PokeResource { name: string; url: string; } import { Link } from 'react-router'; import { Button } from '~/components/shadcn/ui/button'; import type { PokeResourceList } from '../__.poc/types/poke'; import type { Route } from './+types/route'; // clientLoaderは、クライアントサイドでのみ
C言語であれば、コードを書いた後に入力例をコピーしてCLIに張り付ければそのまま実行して出力結果までパッと見れるわけです。 作成したコードを実行するところから結果確認までを1画面上で完結でき、自分の手に馴染んだ方法でした。 じゃあ、TypeScriptはどうでしょう。 先ほど提示した練習問題に対するTypeSciptでの回答例を以下として、検証してみます。 import * as fs from "fs"; const input = () => { const stdin = fs.readFileSync(process.stdin.fd, "utf8"); return stdin.split("\n").map((v) => v.split(" ")); }; const output = (stdout: any) => { console.log(stdout); }; con
人工知能で睡眠を見守り、最適なタイミングと方法で目覚めをサポートする次世代型スマートアラーム「GemiMo(ジェミーモ)」をご紹介します。 AIが睡眠状態を理解し、最適な目覚めを実現 GemiMoの最大の特徴は、Google製の最新AI「Gemini」による3D姿勢認識技術を活用している点です。カメラを通してユーザーの睡眠状態をリアルタイムで把握し、以下の3つの状態に応じて最適なアラーム制御を行います: 睡眠中:穏やかな環境音「Moonlight Bamboo Forest」で静かに目覚めをサポート もがき中:エネルギッシュな「Feline Symphony」で自然な目覚めを促進 起床時:さわやかな「Silent Whisper of the Sakura」で心地よい朝の始まりを演出 技術的な実装の詳細 1. 睡眠状態の認識(Gemini API連携) class GeminiServic
はじめに この記事の使用例は以下を下敷きにしていますが、実装はMudBlazorに依存するものではありません。 やりたいこと アプリから値を取り出す手段のひとつとして、クリップボードを経由する方法が考えられます。 「ボタンを押すと、動的に生成されたテキストがクリップボードにコピーされる」ようなシナリオです。 実装 IJSRuntimeごしに、ブラウザAPIを使います。 使用例 @using Microsoft.JSInterop @using Tetr4lab @inject IJSRuntime JSRuntime <MudTable Items="items" Dense Bordered Breakpoint="Breakpoint.Xs" @ref="_table" > <RowTemplate> <MudTd Class="align-right" DataLabel="@(Pa
やりたいことは、HonoとPrisma(SQLite)とCloudflare D1を組み合わせた開発環境を、ローカルで構築することです。 最終的にはCloudflare WorkersとCloudflare D1で構築したAPIサーバーを立てることが目標ですが、まずはローカルで一通り動くまでやりたい。 プロジェクトの作成 まずはおもむろにHonoプロジェクトを作成します。 yarn create hono 色々聞かれますが、いい感じに答えます。今回はHonoをCloudflare Workersに載せることを見越しているので、Workersを選択します。 色々終わったらとりあえずローカルサーバーを立ち上げます。 yarn dev http://localhost:8787 をブラウザで開いたらいい感じに動いてました。簡単だね。 Prismaのインストール 次はDBを用意したいので、Pris
業務システムで使える!CSVを手軽に表計算に表示する「Handsontable」 2024年6月12日 技術情報 JavaScript, テーブル, 表計算 中津川篤司 業務システムで良くあるのが、データをExcelなどの表計算風に表示するという要件です。テーブルで表示するだけでなく、ソートしたり、簡易的な編集をしたりと多彩な機能が望まれます。 今回はそんな要望を手軽に叶えられるライブラリHandsontableを紹介します。 Handsontableを使えば、ExcelやGoogleスプレッドシートのような表計算ソフトの操作性を、オリジナルのアプリケーションで実現できます。 Handsontableとは? Handsontableは、JavaScriptのライブラリの1つで、データをJSON形式の配列で渡すだけで、表計算風の表示が可能になります。 また、以下のような豊富な機能も備えていま
前の記事 1 2 では,Pythonが動くWebサイトの作り方を紹介しました. この記事では,Pythonプログラミング問題サイトの作り方を紹介します. MATLAB Cody と paizaのスキルチェック をイメージしてサイトを作成しました. 完成したサイトは,以下になります.(画像クリックでWebサイトにアクセスできます) プログラムは,以下のリポジトリにあります. HTMLとCSS WebサイトのHTMLとCSSは,以下の通りです. problem.html <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>Pythonプログラミング問題</title> <script src="https://cdn.jsdelivr.net/pyodide/v0.27.2/full/pyodide.js"
これは、なにをしたくて書いたもの? RustのWebフレームワークをそろそろ試してみようかなということで。 axumを始めてみたいと想います。 RustのWebフレームワーク RustのWebフレームワークといえば、axumとActix Webが有名なようです。 Actix Web GitHub - tokio-rs/axum: Ergonomic and modular web framework built with Tokio, Tower, and Hyper 参考。 Web Frameworks » AWWY? 歴史が長いのがActix Webで、勢いがあるのがaxumといった状況みたいです。 今回はaxumを選びます。 axum axumは、tokioの開発元が開発しているWebフレームワークです。axumのGitHubリポジトリーはこちら。 GitHub - tokio-rs
Prisma、便利ですよね。 マイグレーションを重ねていくと、あるテーブルに対して列追加しなければいけないこともあると思います。 そういったときにどう対処すればよいか考えてみました。 検証用のパッケージを作成する# とりあえず検証用のパッケージだけ作成します。 mkdir prisma-paradigm-shift-pattern cd prisma-paradigm-shift-pattern yarn add -D typescript ts-node @types/node prisma yarn prisma init --datasource-provider sqlite // 参考モデル // https://www.prisma.io/docs/getting-started/quickstart model User { id Int @id @default(autoi
こんにちは。estie のデータマネジメント事業部に所属しています万代です。今回は estie レジリサーチの公開に寄せて、その裏側の技術的な内容についてのブログです(estie レジリサーチの説明については PMの勝田のブログをぜひご覧ください!)。 私は普段はオフィスの募集情報(このビルのこの階の広さ何坪の区画は入居者をいくらで募集しているよ、のような情報)を扱っています。世の中にオフィスビルはたくさんあり、estie マーケット調査が扱っているオフィスビルは2024年10月現在8万棟以上、募集情報は200万件以上と大量のデータを扱っています。 しかしながら日本にはオフィスビルよりもずっと多くの住宅が存在します!estie レジリサーチで取り扱うデータも estie マーケット調査(オフィスを扱うプロダクト)とは比較にならないような量があり、執筆時点では建物情報(マンション・アパートの
WordPress 6.7.2 メンテナンスリリースについて WordPress 6.7.2 は、メンテナンスリリース(WordPress 6.7.2 Maintenance Release) となります。 今回の WordPress 6.7.2 では、システムコアとブロックエディターに関する35件のバグ修正に関するアップデートが行われています。 システムコアに関するバグ修正 システムコアに関するバグ修正は、以下の通りです。 #62534 - [管理] 管理画面でカテゴリ/タグ/プラグインのページネーションが壊れている #62110 - [ビルド/テストツール] AtomParser_Parse_Test::test_parse_sets_handlers が失敗する #62808 - [ビルド/テストツール] 古いブランチでの Puppeteerテストが失敗する #62843 - [ビル
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く