BGPの基礎と実践 ~bgpsimで経路制御をシミュレーションしよう~
はじめに # ビジネスソリューション事業部の山下です。今回はネットワークのプロトコルの1つであるBorder Gateway Protocol(BGP)について説明しようと思います。 普段の実務で馴染みがなくても、IPAやクラウドベンダーの資格を勉強する際に、経路探索に利用できるプロトコルとして聞く方も多いと思います。 今回はBGPについて調べる機会があったので、概要をまとめたうえで、Web上でBGPを検証できるシミュレータであるbgpsimの紹介をしたいと思います...
記事を読むtextlintのallowlistルールをkernelから活用する方法
注意事項 # この記事は、VSCodeで校正ツールのヒントを表示 - problem matcherの解説で網羅できなかったことをフォローしている記事です。 記事そのものの内容は独立していますが、これまでの背景を知りたい場合には前の記事をご確認ください。 前回の記事と同様、サンプルは以下に掲載しています...
記事を読むVSCodeで校正ツールのヒントを表示 - problem matcherの解説
はじめに # ビジネスソリューション事業部の山下です。今回は、Visual Studio Code(VSCode)のタスク機能で設定できるProblem Matcherについて解説していこうと思います。 普段の開発にあたって、コードチェック機能はエディタやその拡張機能で提供されるため、あまり意識しないはずです。 しかしながら、スクラッチで開発したCLIツールの出力をエディタ上でも確認したいといったケースもあるでしょう...
記事を読むオンライン検索×AI:Perplexity新API Sonarの概要と基本的な使い方
オンライン検索型AIサービスとして知られるPerplexityが、2025年1月21日に以下発表をしました...
記事を読むGitHub Issues で Sub-issues による進捗状況把握ができます
はじめに # 昨年の秋に GitHub Issues の Sub-issues がプライベートプレビューになって試したのを記事にしていました。 GitHub Issues で Sub-issues が作れるようになりました(ベータ) 今年に入ってこの機能がパブリックプレビューになり、全ユーザが試せるようになりました...
記事を読むNinjaでビルドを高速化!その使い方を徹底解説
はじめに # 最近ビルドツールのMakeを触っていたのですが、「これって古くから使われているらしいけど他に何か新しいビルドツールで広まっているものあるのかな~?」と思ったので調べたところ、Ninjaというツールが良いぞという情報を得たので触ってみたことをまとめたいと思います。 Ninjaの特徴 # NinjaはMakeに比べて高速に動作することがウリのビルドシステムです...
記事を読む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を利用すれば特に設定を作り込むことなく簡便なテストの評価ができます。 しかし、機械的に変異を組み込むアプローチであるがために、日々の開発で利用するならば検討したほうが良い点もあります。引き続き以前の記事で利用してきた「よくあるサンプルアプリ」を題材にして、どのような理想が望ましいかを検討してみます...
記事を読む機械学習と倫理の話
これは豆蔵デベロッパーサイトアドベントカレンダー2024第25日目の記事です。 江川と申します。機械学習のソフトウェアエンジニアをしています。 --> 豆蔵デベロッパーサイト運営より江川崇氏は、機械学習を専門とするソフトウェアエンジニアです。氏は豆蔵のOBでもあることから、そのご縁でアドベントカレンダーに寄稿いただけることになりました。 氏は多くの著作・翻訳でも知られますが、本記事に関係深い直近の翻訳にオライリー・ジャパンから昨年出版された「機械学習システムデザイン」があります...
記事を読む社内ノウハウ・ノウフー共有における生成AIの活用
これは豆蔵デベロッパーサイトアドベントカレンダー2024第24日目の記事です。 みなさま、こんにちは。Cosense (旧Scrapbox)[1] の魅力にすっかり取り付かれている牟田です。今日はクリスマス・イブ。気がつけばもう 2024 年も終わりですね。 今回は、弊社内のノウハウ・ノウフー共有における生成 AI の活用について紹介します...
記事を読む雑用が会社の利益に変わる瞬間
これは豆蔵デベロッパーサイトアドベントカレンダー2024第23日目の記事です。 中山です。ここ5年ほどはDX関連のコンサルティングとマーケティングの掛け持ちをしています。 今日のアドベントカレンダーの記事は、会社生活に迷う私の迷える雑用についてお届けします。 会社に存在する様々な雑用 # 出欠確認のリマインド、パワポのフォーマット合わせ、登録の代行、思いつきを振られる、チームのちょっとした調整などなど、会社には幅広い大小様々な雑用が存在します。 名もない雑用、なので担当はもちろんいません...
記事を読むOpenAI Realtime API の音声会話アプリを WebRTC を使って実装する
2024年10月に登場したOpenAIのRealtime APIは、任意のアプリでAIとリアルタイム音声会話を実現する画期的なAPIです。 これまでWebSocketのみをサポートしていたRealtime APIですが、先日WebRTCへの対応が発表されました。 さらに、価格の大幅な引き下げや、音声品質の向上といったアップデートも加わり、より手軽に使えるAPIとなっています...
記事を読む