Zenet Tech Blog

https://media.zenet-web.co.jp/

技術系の話を中心にまとめた株式会社ゼネットのテックブログです

フィード

記事のアイキャッチ画像
はじめてのアクセシビリティ対応 〜miCheckerで始める第一歩〜
Zenet Tech Blog
目次 はじめに アクセシビリティとは なぜアクセシビリティ対応が必要なのか miChecker(エムアイチェッカー)とは? miCheckerの使い方 1. インストール 2. チェック対象のURLを入力する 3. 音声ユーザビリティ視覚化を実行する 4. ロービジョンシミュレーションを確認する 5. ワークシートの作成 miCheckerで検出できる問題の例 まとめ おまけ:イベント参加感想 はじめに システム事業部の本田です。 2/19、2/20でDeveloperSummit 2026に参加してきました。 あるセッションでアクセシビリティ対応が取り上げられており、実際にどのような対応をす…
2時間前
記事のアイキャッチ画像
生成AIは業務で本当に使えるのか?現場で整理した向き・不向き
Zenet Tech Blog
こんにちは。株式会社ゼネットの遠藤です。 2年ほど前から大きな話題となり、業務で活用し始めている方も多い生成AI。生成AIは業務で本当に使えるのでしょうか。 「とりあえず触ってみたけれど、どこまで任せてよいのか分からない」「便利そうだが、結局人が直すなら意味がないのではないか」 社内業務や開発現場で生成AIを試していると、こうした疑問に何度も直面します。実際、便利だと感じる場面もあれば、思ったほど使えないと感じる場面もあります。 触ってみて分かったのは、「使える/使えない」という単純な話ではないということでした。業務の性質によって、相性がはっきり分かれます。 本記事では、実務でよくある業務を例…
4日前
記事のアイキャッチ画像
脱マウス!キーボードだけでExcelの表を作る方法
Zenet Tech Blog
こんにちは!ゼネットの山﨑です。 今回はマウスを使わずにキーボードだけでExcelで表を作る方法をお伝えします。 ※本ブログの記載内容はあくまでWindowsのPCで利用できるものです。macOSなどのWindows以外には対応していないため、あらかじめご了承ください。 目次は以下の通りです。 マウスを使わないことのメリット 表の作成 罫線を引く セルの色を変更 書式をコピーする セルの結合と結合解除 セルの挿入と削除 フィルター掛け フィルター選択の解除 ウィンドウ枠の固定 Excelショートカットの小話 最後に マウスを使わないことのメリット Excel操作をマウスを使わずキーボードだけで…
5日前
記事のアイキャッチ画像
Developers Boost 2025で学んだ「生成AIはどう使うべきか」
Zenet Tech Blog
目次 はじめに 生成AIに違和感を持っていた理由 印象に残った講義 講義から学んだ生成AIの捉え方 結局、生成AIをどう使うべきか おわりに はじめに システム事業部の本田です。 昨年12/6に池袋サンシャインシティで行われたITイベント Developers Boost 2025*1 に参加してきました。 event.shoeisha.jp 未経験からIT業界に入り1年目、かつ外部イベントへの参加は今回が初めてでした。正直なところ不安もありましたが、講義・ブース巡りともにとても楽しめました。 なぜ参加したか ITイベントではどんな話がされていて、どんな雰囲気なのかを実際に体験してみたかった …
6日前
記事のアイキャッチ画像
ActionController::RateLimitingを使うときに考えること
Zenet Tech Blog
はじめに ゼネットの土屋です。 Rails 8 で ActionController::RateLimiting が導入され、 Controller に直接レート制限を記述できるようになりました。 class Api::ReportsController < ApplicationController rate_limit to: 300, within: 1.hour def index # 一覧取得 end end 書き方自体は非常にシンプルですが、 本番で使う場合は「どう書けるか」よりも 「どう効かせるか」を考えないと、意図しない制限になりがちです。 この記事では、 Controller…
7日前
記事のアイキャッチ画像
WSL2のUbuntu環境でディスク容量が圧迫された原因と解決方法
Zenet Tech Blog
はじめに ゼネットの池澤です。 WSL2のUbuntu環境で開発を進めていたところ、物理ディスクの空き容量が数百MBまで減少し、Windows自体の動作が不安定になる事象が発生しました。 本記事では、その原因と解決方法についてまとめます。 原因 1. 仮想HDD(VHDXファイル)の仕様 WSL2は「VHDXファイル」にUbuntuなど各ディストリビューションのデータを保存しています。 VHDXファイルは動的に拡張される仕組みを持っていますが、自動で縮小されることはありません。 そのため、Ubuntu内で不要なファイルを削除して空き容量を確保しても、VHDXファイル自体のサイズは変わらず、物理…
10日前
記事のアイキャッチ画像
Rubyの非推奨警告『literal string will be frozen in the future』への対応と、『dup』メソッドの使い方
Zenet Tech Blog
ZENET大貫です。 今回は、業務で遭遇した Ruby の非推奨警告 「warning: literal string will be frozen in the future」 の回避方法について書いていきたいと思います。 目次 非推奨警告とは何か warning: literal string will be frozen in the futureについて 「dup」を使い warning: literal string will be frozen in the future を回避する方法 「dup」とは何か 「dup」と「clone」の違い まとめ 非推奨警告とは何か Rubyでは…
11日前
記事のアイキャッチ画像
閉域網からQuickSightへ接続!SquidプロキシとVPCエンドポイントでの構成を徹底解説
Zenet Tech Blog
はじめに 課題:なぜVPCエンドポイントだけでは不十分なのか 解決構成:Squid Proxyを活用したハイブリッド構成 Squidプロキシの設定とホワイトリスト定義 Squid基本設定(squid.conf) ホワイトリスト定義(allowed_sites.txt) DNS(Route 53)の名前解決設計と検証 Route 53ホストゾーンによる名前解決の仕組み 【検証】名前解決が正しく行われているかの確認 導入結果:アクセスログによる通信経路の検証 CloudWatch メトリクスによる着信確認 まとめ 参照資料 はじめに こんにちは!ゼネットシステム事業部の方です。 近年、BI(Bus…
12日前
記事のアイキャッチ画像
AWS Immersion Day ~新しいAI Agentic 分析サービスを体験してみよう~に参加してみた
Zenet Tech Blog
はじめに どんな感じだったか アジェンダ ① Amazon Quick Suiteについてご紹介 ② Amazon Quick Suiteのハンズオン 学び 感想 まとめ 注意点(AI Agent 機能の現状) 参照資料 はじめに ゼネットシステム事業部の方です。 先日、AWS Immersion Day に参加し、最新の AI Agentic 分析サービス「Amazon Quick Suite」 を体験してきました。 普段動画で見ているAWSの方々を実際にお見かけできたことに加え、会場となったAWS目黒オフィスの開放的な雰囲気も、Immersion Dayならではの体験だったと感じました。 …
13日前
記事のアイキャッチ画像
【実践】Amazon Rekognition Custom Labels で画像分類モデルを作ってみた
Zenet Tech Blog
はじめに Custom Labels とは? 今回作ったカスタムモデル(マグロとサーモンの分類) 1. S3 を使った学習データ準備(Amazon Rekognition Custom Labels) 2. プロジェクト作成 3. トレーニング結果 4. リアルタイム推論デモ 注意点 実際に使ってみてわかったこと(所感) まとめ 参照資料 はじめに こんにちは!ゼネットシステム事業部の方です。 今回は AWS の Amazon Rekognition Custom Labels を使って、画像分類モデルを実際に作ってみた内容をまとめます。 機械学習モデルを一から構築するには、データ収集・アノテ…
14日前
記事のアイキャッチ画像
AWS SNS サブスクリプションをCloudFormationで自動化|複数メールを一括登録する方法【初心者向け】
Zenet Tech Blog
はじめに SNSサブスクリプション自動化のメリット CloudFormationでSNSサブスクリプションを自動化するテンプレート例 実際に使ってみよう 1. スタック作成時にメールアドレスを入力 2. デプロイ後にリソースを確認 3. メールの「サブスクリプション確認」を承認 使うときのポイントまとめ まとめ 参考資料 はじめに ゼネットシステム事業部の方です。 AWSの運用では、システム異常やジョブ失敗の通知をSNS(Simple Notification Service)で受け取ることが一般的です。しかし、通知先メールアドレスが複数ある場合、SNSコンソールから1件ずつ手作業で登録するの…
17日前
記事のアイキャッチ画像
AWS Glueの失敗時アラート|EventBridge × Lambda × SNSで通知を自動化する手順
Zenet Tech Blog
はじめに 全体アーキテクチャ なぜ失敗通知の自動化が必要なのか? Step1:Lambda を作成 Step2:EventBridge で Glue の失敗イベントを検知 Step3:SNS 設定 SNS Standard と SNS FIFO の違い どっちを使うべき? Step4:Lambda 設定 検証 よくあるハマりポイント まとめ 参照資料 はじめに ゼネットシステム事業部の方です。 AWS Glue のジョブが失敗しても気づかず、パイプライン全体が止まってしまう…。 そんなトラブルを防ぐために、多くの現場で 「Glue失敗 → EventBridge → Lambda → SNS通…
3ヶ月前
記事のアイキャッチ画像
AWS Glue Job Bookmarkで重複処理を防ぐ!ETLジョブの効率化ガイド
Zenet Tech Blog
AWS Glue を使って ETL 処理を自動化していると、「同じデータを何度も処理してしまう」という問題に直面することがあります。そんなときに役立つのが Glue Job Bookmark(ジョブブックマーク) 機能です。 この記事では、Job Bookmark の仕組み・実装方法・注意点 を、実際のジョブログ例とともにわかりやすく解説します。 はじめに Job Bookmark とは 具体的な仕組み メリット Bookmarkのモード 実装してみた Step 1:S3にデータを格納 Step 2:Glueジョブの設定 Step 3:ジョブ実行 Step 4:Bookmark動作の確認 注意…
4ヶ月前
記事のアイキャッチ画像
AWSクラウドエンジニアになる前に知っておきたいこと
Zenet Tech Blog
この記事では、インフラ未経験からAWSクラウドエンジニアとして活躍できるようになるまでのステップを、実際の経験を交えて紹介します。 対象読者: AWSやクラウドエンジニアに興味がある方 IT未経験からエンジニアを目指す方 資格を活用してキャリアアップしたい方 この記事を読むことで、「何から学べばいいのか」「どんな道筋でAWSエンジニアになれるのか」が明確になります。 目次 はじめに AWSクラウドエンジニアになる前に知っておくこと 学習ロードマップ(ゼロ知識から現場配属まで) 効率的に学ぶためのポイント よくある質問 / つまずきやすいポイント おわりに 参照資料 はじめに ゼネットシステム事…
4ヶ月前
記事のアイキャッチ画像
AWSコスト異常検知から原因特定までの完全ガイド
Zenet Tech Blog
はじめに 請求額の異常を確認 1. 請求とコスト管理で全体を把握する 2. 対象サービスを特定する CloudTrailで操作履歴を確認 1.まずは「どんな操作が行われたか」を探る 2. イベント履歴を検索する 3. 原因特定 社内での対応 まとめ 参照資料 はじめに ゼネットシステム事業部の方です。 ある朝、出社してメールを開くと「【AWSコストアラート】今月の利用料金が予算オーバー」の通知が届いていました。 前日まで安定していた請求額が急に跳ね上がっている場合、原因を特定せずに放置すると、コストはさらに増え続けます。 本記事では、AWSでコスト異常が発生した際に 何を確認し、どう原因を突き…
5ヶ月前
記事のアイキャッチ画像
AWS Glueでノーコード/ローコードETLを実践!S3データを自動変換・集計する方法
Zenet Tech Blog
はじめに ETLジョブの概要 実装手順(GUIでの操作) Glue Studioで新規ジョブ作成 S3データの読み込みノード追加 Change Schema(旧Apply Mapping)で型変換と列マッピング SQLノードで月判別列を追加 Change Schema(列名変更ノード) S3出力ノードの設定 実行確認 データ品質チェック(Data Quality) まとめ 参照資料 はじめに ゼネットシステム事業部の方です。 AWS Glueは、データの抽出・変換・ロード(ETL)をサーバーレスで簡単に実行できるサービスです。従来のETLツールと異なり、ほとんどコードを書くことなく、S3上のC…
5ヶ月前
記事のアイキャッチ画像
Ruby 4.0 でトップレベルモジュール `Ruby` が定義された話
Zenet Tech Blog
はじめに ゼネットの土屋です。 Ruby 4.0 の変更点を眺めていたところ、少し地味ですが気になる変更を見つけました。 それが トップレベルモジュール Ruby が定義されたという点です。 www.ruby-lang.org 一見すると「名前空間が 1 つ増えただけ」に見えますが、 果たして既存アプリケーションへの影響はどの程度あるのか、整理してみます。 これまでの Ruby の課題 Ruby には以前から、次のような定数がトップレベルに存在していました。 RUBY_VERSION RUBY_RELEASE_DATE RUBY_PLATFORM RUBY_PATCHLEVEL RUBY_RE…
5ヶ月前
記事のアイキャッチ画像
Kaigi on Rails 2025で話題のHotwire Turboを試してみました
Zenet Tech Blog
株式会社ゼネットシステム事業部 原です。 背景 Kaigi on Rails 2025 Day1 にオンライン参加いたしました。 Hotwireに関する発表が2つあり、聴講しました。 - 高度なUI/UXこそHotwireで作ろう Kaigi on Rails 2025 - Speaker Deck - Web Components で実現する Hotwire とフロントエンドフレームワークの橋渡し / Bridging with Web Components - Speaker Deck 内容を理解したく、Hotwireを試してみました。 今回はこちらを参考にRailsアプリケーションにHo…
5ヶ月前
記事のアイキャッチ画像
Rails 8.1 で schema.rb のカラム定義順が変わった件と CSV 列順ズレ問題の対応
Zenet Tech Blog
はじめに ゼネットの土屋です。 Rails 8.1 が正式リリースされてから 2 か月ほど経ち、 実際に運用してみると様々な挙動の変化が見えてきました。 今回はその中でも、Rails 8.1 の変更によって実際に発生した CSV 出力の列順が変わってしまう問題について紹介します。 db/schema.rb のカラム定義が アルファベット順 に並ぶようになった この仕様変更は以下のコミットで導入されました: github.com 何が起こるのか? 例えば users テーブルが次のように定義されていたとします: 従来(Rails 8.0 まで) id name age created_at up…
6ヶ月前
記事のアイキャッチ画像
Ruby 並列処理を比較!
Zenet Tech Blog
はじめに Ruby で重い処理に悩まされていませんか?分割して並列処理ができたらな、なんてことありませんか? 「Ruby は並列処理に向いていない言語」と言われていたのも昔の話、今は様々な選択肢がサポートされています! 今回は Ruby 組み込みライブラリである Process, Thread, Fiber, Ractor、 そして代表的な gem であるparallel, asyncについて調べてみました。 Ruby における並列処理 Ruby はそもそもグローバル VM ロック(GVL, または GIL)と呼ばれるロック機構があり、完全なマルチスレッドでの実行ができません。 このため、Ru…
6ヶ月前
記事のアイキャッチ画像
ISMSとは?セキュリティを守るセキュリティの基本
Zenet Tech Blog
はじめに こんにちは、システム事業部の熊井です。「ISMSってよく聞くけど、実際どんなものなの?」そんな疑問をお持ちの方も多いのではないでしょうか。 この記事では、ISMSの意味・目的・認証制度を、専門用語をなるべく使わずにわかりやすく解説します。「情報セキュリティの基本を理解したい」「自社のセキュリティ意識を高めたい」という方におすすめの内容です。 🔐 ISMSとは?わかりやすく解説 ISMS(Information Security Management System)とは、情報を守るためのルールと仕組みを会社全体で運用していくことです。 ざっくり言うと、こんなイメージです: 「大事な情報…
6ヶ月前
記事のアイキャッチ画像
N+1を回避したのに性能が悪い!? includes/preload依存の落とし穴と解決策
Zenet Tech Blog
はじめに システム事業部堤田です。 Kaigi on Rails 2025に参加してきました。1カ月以上経過していますが、発表の中で最近自身も似たような経験をしたなという内容があった為、その内容の紹介と共に、自身が体験した事象の振り返りをしたいと思います。まずは、発表内容の紹介です。 タイトルは「そのpreloadは必要?見過ごされたpreloadが技術的負債として爆発した日」です。 kaigionrails.org 内容は弊社ブログにて、他の社員が紹介しておりますので、そちらを参照ください。 【下書きプレビュー】 初めてのKaigi on Rails2025に参加したことで意味はあったのか …
6ヶ月前
記事のアイキャッチ画像
Kaigi on Rails 2025 参加レポート:成功/失敗談から得た「未然防止」の学びと今後の活かし方
Zenet Tech Blog
はじめに 2025年9月26日(金)、27日(土)に Kaigi on Rails 2025 が開催され、今年は会社から「参加してみないか」と声をかけていただいたため、オンライン視聴で参加することにしました。 Kaigi on Rails は、Railsを中心にしつつフロントエンドやプロトコルなどWeb全般も扱う、誰もが参加しやすい包括的な技術カンファレンスです。 存在自体は前々から知っていましたが、今回初めて参加してみて、登壇者の成功/失敗談に触れたときに自分の現場で思い当たる点がいくつもあったのが大きな収穫でした。 視聴を進めるうちに、それらの気づきが自然と「未然防止」という形で整理されて…
6ヶ月前
記事のアイキャッチ画像
初めてのKaigi on Rails2025に参加して感じたこと
Zenet Tech Blog
こんにちは!ゼネットの中川です。 Kaigi on Railsというイベントの名前は以前から知っていましたが、「自分が参加しても内容を理解できるのかな?」という不安がありました。 そんな中、会社の支援で参加できる機会をいただいたので「せっかくなら挑戦してみよう」という気持ちで今回はオンライン参加をすることにしました。 まだKaigi on Railsに参加したことが無かったり、イベント参加に悩んでいる人の参考になればと思います。 この記事はこんな方におすすめです。 Kaigi on Railsの存在は知っているけど、経験が浅くても楽しめるのか気になる方 発表内容が難しくて何もわからないまま終わ…
6ヶ月前
記事のアイキャッチ画像
Lambda×S3でファイルを自動整理!イベント通知で日付フォルダに振り分ける方法
Zenet Tech Blog
はじめに 課題 実装アーキテクチャ 実装手順 1. S3バケット作成 2. Lambda関数作成 3. トリガー設定(S3イベント通知) 4. Lambda実行ロール権限 5. 動作確認 注意点 まとめ 参照資料 はじめに ゼネットシステム事業部の方です。 AWSを利用していると、S3に大量のファイルが溜まっていき、整理や管理が大変になることがあります。手動で整理するのは手間がかかり、ミスも発生しやすくなります。 本記事では、S3イベント通知をトリガーにLambda関数を動かしてファイルを自動整理する方法を紹介します。IAM権限やバケットポリシーを最小限にしつつ、日付ごとにフォルダに振り分ける…
7ヶ月前
記事のアイキャッチ画像
CloudWatchで作るAWS請求額カスタムダッシュボード|サービス別・期間別に簡単可視化
Zenet Tech Blog
はじめに 課題 CloudWatchのメリット 実装手順 1. CloudWatchでのメトリクス確認 2. ダッシュボード作成 3. 閲覧ユーザー権限設定 注意点 まとめ 参照資料 はじめに ゼネットシステム事業部の方です。 AWSを利用していると、請求額の確認は重要な業務の一つです。しかし、Billingコンソールへのアクセス権限がないIAMユーザーだと、請求情報の確認が難しいことがあります。本記事では、CloudWatchダッシュボードを活用して、IAMユーザーでもAWS請求額を簡単に可視化する方法を紹介します。 課題 AWSのコスト管理には、以下のような課題があります。 IAMユーザー…
7ヶ月前
記事のアイキャッチ画像
Step FunctionsでCloudFormation StackSetを自動デプロイしてみた⚙️
Zenet Tech Blog
はじめに 課題 全体構成🧩 実装例 注意点⚠️ まとめ 参照資料🔗 はじめに システム事業部の方です。今回は AWS Step Functions を使って CloudFormation StackSetを自動デプロイ する仕組みを構築したので、その内容を紹介します。 AWS環境を複数アカウントで管理している場合、「同じスタックを各アカウントへ一括展開したい」という要件は非常に多いですよね。 StackSet を使えばそれが可能ですが、 「複数アカウントへ段階的にデプロイしたい」 「失敗時に自動リトライや削除を行いたい」といった柔軟な制御をしたい場合、Step Functions が非常に便利…
7ヶ月前
記事のアイキャッチ画像
AWS QuickSightの埋め込み3種類を徹底比較!匿名ユーザー・登録済ユーザー・ワンクリックの違いとは
Zenet Tech Blog
はじめに QuickSight埋め込み3方式をざっくり紹介! ワンクリック埋め込み(One-click Embedding) 登録済みユーザー埋め込み(Registered User Embedding) 匿名ユーザー埋め込み(Anonymous Embedding) まとめ おわりに 参考資料 はじめに こんにちは、ゼネットシステム事業部の方です。 最近よく話題になることの多いAWS QuickSightの埋め込み機能について、触れてみたいと思います。 QuickSightは、クラウドベースで使えるBI(ビジネスインテリジェンス)ツールで、最近ではWebアプリや社内ポータルなどにダッシュボー…
7ヶ月前
記事のアイキャッチ画像
Qで計算フィールド自動生成!前月/前期フィルタの作り方📊
Zenet Tech Blog
はじめに 従来のやり方 Amazon Q in QuickSight 東京リージョンでリリース!(2025年7月) 実際に使ってみた まとめ 制限事項や注意点 Demo Central で無料体験してみよう 参照資料 はじめに システム事業部の方です。業務上、データ分析基盤の構築に携わっています。BIツールを利用する中で、よく要望として挙がるのが 「今月」「先月」「今年度」など動的な期間フィルタを作りたい というものです。 QuickSightでも従来から計算フィールドを使って実現できますが、dateDiff や truncDate など複数の関数を組み合わせる必要があり、初心者にとっては試行…
7ヶ月前
記事のアイキャッチ画像
SCPでS3パブリック禁止でもOK!CloudFrontで実現するセキュア配信🛡️
Zenet Tech Blog
はじめに 課題:S3を直接公開できない 解決策:CloudFront + S3バケットポリシー 結果 まとめ 補足情報OAI と OAC の違い 参照資料 はじめに ゼネットシステム事業部の方です。 AWSでWebサイトやファイルを配信する際、Amazon S3 をオリジンに使う構成はよく見られます。しかし、セキュリティ要件が厳しい会社や組織では S3をパブリックに公開できない ケースがあります。 従来は「S3 ブロックパブリックアクセス」を一部解除し、バケットをインターネットから参照できるようにしなければなりませんでした。ところが、SCP(Service Control Policy)でパブ…
7ヶ月前