DX御伽噺:イマドキ開発のちょっぴり怖い話
この記事は夏のリレー連載2024の3日目の記事です。 暑い日が続きますね。そんな時には寒気を感じるような怖い話が聞きたくなります(よね?)。 ということで、今日は最近出てきている公開情報などをベースに、筆者が怖いと思ったことに基づいた作り噺をお届けします。登場人物や組織名は架空のものですし、見解については筆者個人のものであって所属会社の見解などは一切関係ありません。それでは、はじまりはじまり~!! トータス社のこと # あるところにトータス社という老舗眼鏡メーカーがありました...
記事を読む奥さんが「ガスコンロつけっぱなしで危ない思いをしたので警告音出るものがほしいなぁ」というのでメディアプレイヤーを作ってみた
この記事は夏のリレー連載2024 2日目の記事です...
記事を読むDDDってなんでオニオンとかといっしょに出てくるの?を社内で聞いてみた
この記事は夏のリレー連載2024初日の記事です。 夏のリレー連載の企画ということで今回はいつもとは趣を変え、筆者が社内Slackに「DDDってなんでオニオンとかといっしょに出てくるの?」と聞いたときのやり取りを紹介したいと思います。記事化の目的には筆者自身が技術的に「へぇー」と思ったことのアプトプットもありますが、それ以上に豆蔵の雰囲気を少しでも知ってもらえればいいなという思いもあります。読んでもらい豆蔵の社風的なものを少しでも感じ取っていただければ幸いです...
記事を読むRaspberry PiにCompanionをインストールする方法
こんにちは、庄司です。 リモートワーク環境を改善しようと Elgato の Stream Deck を購入しました。この Stream Deck で Blackmagic Design の ATEM Mini を操作する方法を調べたところ、Bitfocus の Companion を使うと良さそうだとわかりました。 さらに調べると、Companion Pi が提供されていて Raspberry Pi で Stream Deck が使えそうと考えました...
記事を読むLambdaでPlaywrightを動かす(Lambdaレイヤー / コンテナ)
今クロスブラウザテストでよく使われるツールといえばPlaywrightですね。 テストでなくとも単純にブラウザ自動化ツールやスクレイピングツールとして使っている現場も多いかと思います。 とある事情で、Lambda上でPlaywrightを動かしてみましたが、予想以上に苦戦したので備忘録も兼ねて手順をまとめます。 Lambdaレイヤーを使う # これが一番簡単な方法です。 Playwright等のツールはそれ単体では動作せず、Chromium等のブラウザをインストールしなければなりません...
記事を読む2024年版!VS Code で Java 開発環境を構築する
はじめに # Java デベロッパーの皆さんは IntelliJ IDEA や Eclipse を使ってる方が多いのではないでしょうか。筆者は VS Code を使っています。業務では長らく Java から離れていたのですが、ここ数年はけっこう書いています。かつては IntelliJ IDEA に課金してましたが Java 再開を機に VS Code の環境を整えました。この記事では、定番の拡張やワークスペースの使い方についてご紹介したいと思います...
記事を読むValibot: 超軽量&型安全なスキーマバリデーションライブラリ
JavaScript、とりわけTypeScriptプロジェクトでデータのバリデーションを行う際、ZodやYup等のライブラリがよく使われています。 今回は、最近これらの代替として注目を集めているValibotというライブラリを紹介します。 Valibotとは? # Valibotは構造化データを検証するためのスキーマライブラリです。 公式ドキュメントではその特徴を以下のように説明しています...
記事を読むUMLをプログラミング言語で実装するには? Python編
はじめに # UML表記法やUMLモデリングのセミナー講師をしていると、「自分の言語ではどのように実装すればよいのか」というご質問を受けることがあります。また、講師側としても、受講生が使っているプログラミング言語でUMLを説明すると、すんなりと分かって頂ける経験が幾度となくあります。多くのプログラマがUMLモデリングに興味を持って頂けているようですが、UMLのモデルをどのようにソースコードにするかについては意外と知られていません...
記事を読む画像AIで異常検知:事例に合わせたモデル選定と実践
画像AIの技術は急速に進化しており、異常検知や物体検出、セグメンテーションなど、さまざまなタスクに活用されています。この記事では、異常検知に利用できるモデルの特徴と選定の指標、オープンデータで実際に異常検知用AIを学習してみた結果を記述しています。 異常検知に利用できるモデル # 画像AIで異常検知がしたい場合、学習に使用するモデルを選定する必要があります。異常検知に利用できるモデルには異常検知モデル、物体検出モデル、セグメンテーションモデル、分類モデルなどが考えられます...
記事を読む豆蔵デベロッパーサイト 2024年4-6月のサマリー
早いもので今年も半分過ぎました。2024年度第1四半期のサマリーです。 記事数・執筆者数 # この3ヶ月で33本の記事が投稿され、記事数は590になりました。新たに3名が執筆デビューし、累計56名になりました。 春の新人向け連載 # 新年度を迎え IT 業界も多くの新人を迎えています。当サイトでも「春の新人向け連載2024」と題して、新人向けのリレー連載を開催しました。スケジュールは決めず不定期に公開。期間が長かったのもあり、バラエティに富んだ12記事が執筆されました...
記事を読むUMLをプログラミング言語で実装するには? Go言語編
はじめに # UML表記法やUMLモデリングのセミナー講師をしていると、「自分の言語ではどのように実装すればよいのか」というご質問を受けることがあります。また、講師側としても、受講生が使っているプログラミング言語でUMLを説明すると、すんなりと分かって頂ける経験が幾度となくあります。多くのプログラマがUMLモデリングに興味を持って頂けているようですが、UMLのモデルをどのようにソースコードにするかについては意外と知られていません...
記事を読むKRaft モードの Kafka をコンテナ環境にデプロイする
はじめに # 今年の初めに「KRaft による ZooKeeper レス Kafka クラスター構成」という記事でローカル環境で KRaft モードで Kafka を実行する方法について書きました。 この時は Docker や Kubernetes などコンテナ環境でのサポートが追いついておらず、設定にはかなりの手作業が必要でした。現在では手軽に構築できるようになっています。 macOS Sonoma / OrbStack 1.6.2 の環境で試しました...
記事を読むJJUG CCC 2024 Spring 登壇後記 - Spring Boot vs MicroProfile セッションの補足と訂正
先週日曜日(6/16)に開催されたJJUG CCC 2024 Springに『Spring Boot vs MicroProfile - クラウドネイティブにおけるフレームワークの比較と選択』のタイトルで登壇させていただきました。JJUG CCCの登壇はこれで2回目ですが、前回はオンラインとオフラインのハイブリッド開催のため、会場の入りはまばらでしたが、今回は「こんなに人が入ってるワケないので会場を間違えた!?」と自分で思うほど、大勢の方に足を運んでいただけました...
記事を読む文字コード これだけは覚えておこう ~シフトJIS編~
はじめに # 日頃、Javaの初心者からベテランまで様々なスキルレベルの方から質問を頂く立場で仕事しておりますが、Java言語を使用するうえで基本事項でありながらも、あまり理解されていない事柄があると感じています。これらの事柄については改めて誰かに質問できず、「そういうもの」として無理やり納得しやり過ごしている方がいるのではないでしょうか。ここではそのような事柄について改めて解説し、その理由を知ることで「だからこうするべき」、「だからこれはダメ」ということを理解する手助けになればと考えます...
記事を読むServerless Framework v4 の変更点を整理する
先日(2024-06-14)Serverless Framework v4のGAリリースが発表されました。 Serverless Framework V4 Generally Available 今回はこのv4リリースについて、主要な変更点を主観的に整理してみました。 ライセンス変更 # 対象ユーザーに該当する場合は、インパクトが大きいのはやはりこれですね。2023年に事前予告はありましたが、それに沿った形である程度の売上規模を持つ組織での利用が有償になります...
記事を読む新人だって怖くない!Gitで焦らないためのコマンド操作解説:スタッシュ・コンフリクト解消・マージの取り消し
昨年新入社員として入社しました、塚野です。 今回は新人向け記事ということで、去年の自分がまずつまずいたGitについて「こんな時どうすれば…!」となる場面ごとに解決方法とその仕組みを解説していきたいと思います。 Gitは大変便利なバージョン管理ツールで多くの現場で導入されていることと思いますが、新人の自分にとっては謎の呪文だらけで「不意にデータを上書きしないか心配」「Gitに怒られたけど何言ってるのかわからん」となっていました。 しかしGitは使い方さえ理解できれば怖いツールではありません...
記事を読むTypeScript 向けの軽量ORマッパー Drizzle を使う
少し前ですが、TypeScript向けのORマッパーとして TypeORM を紹介しました。 ORマッパーのTypeORMをTypeScriptで使う TypeORMのスキーママイグレーションを使う この記事は予想以上にアクセスがあり、RDBおよびORマッパーの注目度はいまだに高いと思いました。 最近TypeScript向けで新しいORマッパーの Drizzle を使ってみました。 軽量で使いやすいAPIを提供していて、結構良いなと思いましたので今回はこちらを紹介させていただきます...
記事を読む【新人さん向け】A5:SQL Mk-2のおすすめ設定と使い方
はじめに # 最近漬物とゆで卵を合わせればタルタルソースみたいにおいしくなるのでは?と思い、キムチと野沢菜のワサビ入り浅漬けで試した石原です。(不味くはないですがおすすめはしません) 色々な案件で利用する機会が多いDB開発ツールA5:SQL Mk-2[1] (以後A5M2と記載)について、新人さん向けにおすすめの設定と使い方について記載します。 ワークスペースの設定 # DB操作でのやらかしとして「開発環境を操作していたつもりが実は別環境だった」ことありませんか...
記事を読む高コスパで電力効率のよい Arm ベースの GitHub Actions Runner を使っていく
はじめに # Arm ベースの Actions Runner がパブリックベータになりました。Arm ベースの Linux / Windows ランナーが提供されます。 Actions: Arm-based linux and windows runners are now in public beta GitHub のブログでは、Arm テクノロジーがデータセンターの電力消費を削減することが記載されています...
記事を読むArtifact Attestations で GitHub Actions ワークフローの成果物の出所情報を検証可能にする
はじめに # GitHub の Artifact Attestations を使用すると GitHub Actions ワークフローでビルド成果物に署名して成果物の出所情報を検証可能にできます。 Artifact Attestations は現在パブリックベータです...
記事を読む