新着記事全ての記事を見る
-
Choreonoidで始めるロボットシミュレーション(その1)
0. はじめに # Choreonoidとは # Choreonoid[1]は、産業技術総合研究所(AIST)が開発したオープンソースのロボットシミュレーションソフトウェアです。 2025年1月10日の最新バージョンでは下記のOSでの動作をサポートしています。 Ubuntu Linux Windows --> Information本記事ではUbuntu 22.04を使用します...
記事を読む -
PostgreSQLで安全な再帰クエリ!CYCLE句の使い方徹底解説
初めに # ビジネスソリューション事業部の山下です。今回はPostgreSQL実装されているCYCLE句を紹介しようと思います。 CYCLE句は再帰クエリを安全に実行するための機能です。 具体的には循環参照による無限ループを検出し防止できます。 再帰クエリ # 本記事では細かい説明は省きますが、再帰クエリについて軽く触れておきます。 再帰クエリとは、クエリの中でクエリ結果自身を参照できる特殊なSQLクエリです。 WITH RECURSIVE句を使用して実装され、以下のような構造を持ちます...
記事を読む -
Javaエンジニアが始めるTypeScript入門(第9回:ジェネリクス)
はじめに # 今回はジェネリクス(総称型)について説明します。 ジェネリクスは型をパラメーター化することで、より柔軟で再利用性の高いコードが書ける仕組みです。 これにより、さまざまなデータ型を扱う同じような処理を簡潔に記述できるため、冗長性を低減できます。型を限定することで型安全性も確保できます。 基本的な動作 # 基本的な動作を確認します。 実装の仕方はJavaとほとんど変わりません...
記事を読む -
Go言語の並行処理を完全攻略!MutexとChannelを視覚的に学ぶ
初めに # ビジネスソリューション事業部の山下です。個人でGo言語のプログラムを記述している最中に並行処理の理解に苦戦したので、記事として投稿いたしました。 ここでは、Go言語の並行処理において重要な概念であるMutexとChannelについて、イメージを用いて整理しようと思います。 Go言語がよくわからなくても、ニュアンスが伝われば幸いです。また、興味があればサンプルコードも動かしてみてください...
記事を読む -
Electron アプリでコンテキストメニューを出す方法
はじめに # 昨年 Electron v33.2.1 にアップデートしたら急にアプリのコンテキストメニューが出なくなりました。 最初は利用してるライブラリ(後述)が追従できていないのではないかと思い調べたのですが、ライブラリのリポジトリには特にそういう issue は上がっておらず、Electron のバージョンを戻してしばらく放置していました...
記事を読む -
Microsoft Presidio: 個人情報保護に特化したオープンソースツール
近年、個人情報の保護に対する意識がますます高まっていると感じます。 その背景には、大規模言語モデル(LLM)の導入と普及があります。LLMはさまざまな場面で活用されていますが、取り扱うデータの中に個人情報が含まれる可能性があるため、適切な管理が求められています。 そんな状況の中で、今回Microsoftが提供するオープンソースツール Presidio に注目しました...
記事を読む -
豆蔵デベロッパーサイト 2024年10-12月のサマリー
あけましておめでとうございます。 2024年もご愛読いただきありがとうございました。本年も豆蔵デベロッパーサイトをよろしくお願いします。 記事数・執筆者数 # この3ヶ月で49本の記事が投稿され、記事数は680になりました。新たに5名が執筆デビューし、累計63名になりました。 連載記事 # Javaエンジニアが始めるTypeScript入門 # Java エンジニアをターゲットとした TypeScript 入門。現在、第8回までが公開されています...
記事を読む -
OpenAI Realtime APIのWebRTCでロボットを操作する
OpenAIのRealtime APIがWebRTCに対応し、2024年12月18日より価格も大幅に引き下げられました。この機会に、音声による自律走行ロボットの操作機能を開発しましたので、Realtime APIの組み込み方法についてご紹介いたします。 Realtime APIのWebRTC対応については以下の記事でもご紹介していますので併せて参照下さい...
記事を読む -
Deno のファーストクラス Wasm サポートを使う
はじめに # 11月の Deno 2.1 リリースで First-class Wasm support が入りました。 Deno 2.1: Wasm Imports and other enhancements 従来の Deno では Web 標準の API を使って Wasm のロード・実行が可能でしたが、2.1以降は通常のモジュール同様、import で使用できるようになりました...
記事を読む -
ミューテーションテストの開発組み込みを考える
前回の記事でJavaのミューテーションテストツールPIT(PiTest)を紹介しました[1]。ミューテーションテストはテストの質を評価するうえで有望な技術ですし、PITを利用すれば特に設定を作り込むことなく簡便なテストの評価ができます。 しかし、機械的に変異を組み込むアプローチであるがために、日々の開発で利用するならば検討したほうが良い点もあります。引き続き以前の記事で利用してきた「よくあるサンプルアプリ」を題材にして、どのような理想が望ましいかを検討してみます...
記事を読む