- Notionを用いたタスク管理
- C/C++プログラミング
- ブラウザ操作自動化
- TypeScriptとWeb開発
- 生成AIの現状と展望
- 2024年お気に入りのフリー・オープンソースソフトウェア
- Next.jsセキュリティ
- LocalStackによるAWSローカル環境構築
- 生成AI入門
- マイクロソフトのAI開発投資
- ゲーム『アクアリウムは踊らない』のRTA
- Perplexityのスペース機能
- サンワサプライハンディマウスレビュー
- Webエンジニアの休職経験談
- Go言語による簡易DB実装
- ReactにおけるHTML Drag and Drop API
- ITエンジニアが遭遇する不可解な現象
- LinuxとMicrosoftの歴史
- サイボーグ昆虫研究
- Clineのシステムプロンプト日本語化
- Doomを使ったCAPTCHA
- Drizzle ORMとSQLiteの日時型のカスタマイズ
- 製造業における若手技術者の課題
- 『良いコード/悪いコードで学ぶ設計入門』レビュー
- JavaScript/TypeScript技術動向
- Gemini AIの使い方
- SSHを使ったファイル転送ツールBeam
- StreamlitとGemini APIを用いた生成AIアプリ開発
- ID連携とOAuth、OIDC
- Publickeyによる2025年のIT業界予測
Notionを用いたタスク管理
様々なタスク管理アプリを試用した経験を持つ著者が、タスクシュートという手法とNotionを組み合わせた独自のタスク管理システムを構築し、その詳細とNotionテンプレートの販売について紹介しています。タスクシュートはタスクの優先順位付けを行わず、小さなタスクから順次こなしていく手法であり、著者はNotionを用いてタスクのステータス変更や作業ログ記録が容易なデータベースを作成、そのテンプレートを販売しています。
C/C++プログラミング
C/C++におけるポインタの概念を、IDとオフセットの組を用いた表現、完全なオブジェクトへのID割り当て、ヌルポインタの特殊性、ポインタ比較における最適化と例外規定、そしてポインタ演算の有効範囲と規格上の不明確な点といった観点から解説しています。
ブラウザ操作自動化
browser-useを用いたブラウザ操作の自動化に関するサンプル集です。ヘッドレスモードでのブラウザ操作を自動化し、カスタムアクションによるユーザー入力やCAPTCHA対応、出力のカスタマイズ、step数制限やシステムプロンプトのカスタマイズ、ファイルアップロード、マルチタブ操作、並列実行といった機能を備えています。Anthropic ClaudeやAzure OpenAIなどのモデルも利用可能です。
TypeScriptとWeb開発
TypeScriptを用いたWeb開発における新規プロジェクト構築のための、フロントエンド(React、Jotai、shadcn/ui)、バックエンド(Hono、Prisma)、テスト(Vitest)、Git Hooks(Lefthook)、monorepo管理(Turborepoとpnpm workspaces)といった技術スタック候補と、その他便利なツールやライブラリ、開発環境に関するメモが公開されています。
生成AIの現状と展望
中国DeepSeek社の低価格高性能生成AI発表を受け、生成AIのコモディティ化が加速し、SaaS企業はAI活用戦略とAIからの活用戦略の両面への対応が求められています。LLMと既存データの組み合わせによる効率化、LLMの専門性を活かしたサービス提供が重要となる一方、API連携によるデータ活用が中心となりUIの重要性が低下する可能性や、SaaS利用代行AI(SPaaS)の台頭による顧客接点維持戦略の必要性も指摘されています。
2024年お気に入りのフリー・オープンソースソフトウェア
2024年に作者が感動・気に入ったフリー・オープンソースソフト17個を紹介しており、音楽、KVMスイッチ、絵文字、ファイル共有など様々な分野のソフトウェアを網羅し、AIによる音源分離機能付き音楽プレイヤーや高機能なシステム監視ツールなども含まれています。Windows、macOS、Linuxなど複数OSに対応したソフトも多く、個々のソフトの機能や特徴、使い勝手の良さが詳細に解説されています。
Next.jsセキュリティ
Next.js v14で安定版リリースされたServer Actionsは、フォーム送信時のサーバーサイド処理を関数化し、エンドポイントを不要にすることで開発効率とユーザー体験を向上させますが、クライアントへのデータ露出や公開API化といったセキュリティリスクも伴います。そのため、データ検証(zodなど)や認証認可、バリデーション、server-only
の活用、CSRF対策といった適切なセキュリティ対策が不可欠です。また、Next.jsによるバックエンド統合は利便性を向上させる一方、リソース管理や複雑なロジックへの対応も考慮する必要があります。
LocalStackによるAWSローカル環境構築
AWSサービスをローカル環境でシミュレートできるオープンソースツールLocalStackを用いた、コスト削減と開発スピード向上を実現する手法について解説しています。Dockerによる容易なインストール方法、S3操作の実践例、Pythonバージョンやjqインストールに関するエラーとその解決策、LocalStackを用いた効率的なAWS開発促進のための情報を網羅しています。
生成AI入門
日本経済新聞電子版の記事では、生成AIの基礎から具体的な活用方法、様々なツール(ChatGPTやMidjourneyなど)、そして今後の展望や規制・著作権問題までを専門家が解説しており、生成AIデビューを目指すエンジニアにとって有用な情報が網羅されていますが、全文閲覧には有料会員登録が必要です。
マイクロソフトのAI開発投資
マイクロソフトがAI開発のためのデータセンター構築に、1年間で800億ドル(約12兆5000億円)という巨額の投資を発表しました。この投資額の半分以上は米国で実施され、トランプ次期大統領への政策提言として、AI開発における民間部門の支援と、強引な規制による民間部門の減速回避が訴えられています。 グーグルやアマゾンも同様の巨額投資を進めており、AI開発競争が激化している状況が示唆されています。
ゲーム『アクアリウムは踊らない』のRTA
「RTA in Japan Winter 2024」にて開催されたインディーゲーム「アクアリウムは踊らない」のグリッチRTAが大きな話題となりました。バグを利用したプレイ(Glitched部門)において、ランナーは開発者も予想外の高度なバグ技を連発し、9万人の視聴者と開発者自身を驚かせました。開発者はイベントをリアルタイムで視聴しており、Twitterでその衝撃を共有。イベント中、ハッシュタグ「#アクおど公開デバッグ作業」が誕生し、多くの視聴者からのコメントが寄せられました。さらに、ゲームのドラマCD発売も告知され、イベントの盛り上がりは最高潮に達しました。
Perplexityのスペース機能
Perplexityのスペース機能は、特定のウェブサイトやファイルを情報源として登録し、それらを優先的に検索することで、ソフトウェアの調査などを効率化する機能です。GitHubや公式ドキュメントなどを登録することで、正確な情報に素早くアクセスできますが、日本語で質問すると日本語で検索され、意図しない結果になる場合があるため、英語で検索し日本語で要約する指示を付与することで精度を高めることができます。
サンワサプライハンディマウスレビュー
サンワサプライのハンディマウス「400-MAWBT204BK」は、親指一本でPC操作が可能なワイヤレスマウスで、2.4GHzワイヤレスとBluetooth接続に対応しています。スティック操作でカーソル移動やメディア再生などが可能で、寝転んだ状態など様々な体勢でのPC操作が容易になり、Lボタン長押しでドラッグ&ドロップも可能です。Amazonなどで約7480円で販売されています。
Webエンジニアの休職経験談
Webアプリケーションエンジニアとして働き始めた著者が、2024年5月から休職し、1月6日付で退職、その経験を振り返る記事です。業務の難しさや同僚の大量退職によるメンタル不調、うつ状態の診断、リワーク施設での治療とプログラミングへの再燃、退職後のカジュアル面談を経て「Teacher Teacher村」開発への参加、そしてプロダクト志向のエンジニアを目指し社会貢献にも繋がる仕事への転職活動開始に至るまでの経緯が詳細に記述されています。
Go言語による簡易DB実装
Go言語を用いて、技術書「Database Design and Implementation」を参考に簡易的なDBMSをフルスクラッチで実装した経験について記述しています。ストレージ、クエリ実行、ログリカバリ、トランザクション、クエリプランナーといった主要な機能を実装し、その過程でDBMSの内部動作(データ永続化、クエリ処理、リカバリなど)を深く理解したと報告しています。さらに、クラウドDB(Spannerなど)の機能理解も深まり、DBMS設計の複雑さと高度さを改めて認識した点を強調しています。
ReactにおけるHTML Drag and Drop API
HTML Drag and Drop APIを用いたドラッグ&ドロップ機能の実装方法を、Reactを用いたサンプルコードと共に解説しており、追加ライブラリ不要でブラウザ標準機能のみでドラッグ開始、移動中、ドロップ時のイベントハンドリング、カスタムデータオブジェクトを用いたデータ転送などを詳細に説明しています。
ITエンジニアが遭遇する不可解な現象
Qiitaの記事「ITエンジニアが遭遇する「摩訶不思議」な現象とその真相」では、本番環境特有の謎のバグ(例:シュレーディンガーのバグ、デプロイメントパラドックス)、再起動で解決する問題(メモリリークなど)、浮動小数点数の精度問題、ブラウザやサーバーのキャッシュによる表示不具合や文字化けといった、ITエンジニアが直面する様々な不可解な現象とその原因、対策、そしてそれらを解決するためのログ分析や環境差異の把握といった手法について解説しています。
LinuxとMicrosoftの歴史
1998年、Windows98発売日にLinuxユーザーによる抗議活動「Great 1998 Linux Revolt」が行われ、Linuxインストールディスクが配布されましたが、その反省を活かし、Microsoftのイベントにおいて同様の活動「シリコンバレー茶会」が実施され、約500枚のLinuxインストールディスクが配布されました。このイベントは平和的に行われ、一部Microsoft社員からも好意的な反応があり、Linuxのオープンソース性と、Microsoftとの対立と共存というテーマが浮き彫りになった出来事です。
サイボーグ昆虫研究
オーストラリアのクイーンズランド大学で、学生がゴキブリなどの昆虫に小型回路基板を取り付け、電気信号で動きを制御することに成功しました。麻酔した昆虫の背中に回路基板を取り付けることで、昆虫本来の俊敏性を活かしつつ、遠隔操作で方向を指示できるサイボーグ昆虫が実現しました。研究チームは、将来的にこの技術を災害救助現場での捜索活動などに活用することを目指しています。
Clineのシステムプロンプト日本語化
ClineというローカルLLM(大規模言語モデル)のシステムプロンプトを日本語化する方法を紹介した記事です。Clineはファイル操作やコマンド実行、外部サービスとの連携など高度な機能を持ち、XML形式で記述された厳格なルールに従ってツールを使用します。さらに、MCPサーバーを用いた機能拡張や、ユーザーの承認を得ながら段階的にツールを使用する仕組みについても解説されています。
Doomを使ったCAPTCHA
VercelのCEOが作成した、人気FPSゲーム『Doom』を用いたCAPTCHAが話題になっています。このCAPTCHAは、ウェブサイトへのログイン認証に利用され、ユーザーはゲーム内で敵3体を倒すことで人間であることを証明する必要があります。操作は矢印キーとスペースキーのみとシンプルですが、難易度が高く、実用化は意図されていません。過去にも同様のCAPTCHAは存在しましたが、セキュリティ上の懸念が指摘されているため、注意が必要です。
Drizzle ORMとSQLiteの日時型のカスタマイズ
SQLiteは日付型を持たないため、日付時刻の扱いに工夫が必要ですが、Drizzle ORMを用いることで、ISO-8601形式やUnixタイムスタンプによる扱いを実現できます。本記事では、Drizzle ORMのカスタムタイプ機能を用いてSQLiteにおける日付時刻の扱い方をカスタマイズする方法を解説しており、Day.jsなどの日付ライブラリとの連携や、SQLiteがUTCで日時を扱う点についても触れられています。
製造業における若手技術者の課題
日本の製造業、特に自動車業界では、高度な調整業務(インテグレーション)が重要になっていますが、若手技術者は本来の技術開発以外の調整業務に多くの時間を費やし、やりがいを感じにくい状況です。この調整業務は製品完成に不可欠ながら評価されにくく、人材育成が課題となっています。企業はインテグレーション業務の重要性を理解し、若手技術者に適切な権限と裁量を与え、育成する必要があります。組織構造の見直しやマネジメント人材の育成も必要です。
『良いコード/悪いコードで学ぶ設計入門』レビュー
仙場大也氏の著書「改訂新版 良いコード/悪いコードで学ぶ設計入門 ―保守しやすい 成長し続けるコードの書き方」の内容を紹介する記事です。 メソッド名に連番をつける「連番命名」など、悪いコードの例を挙げつつ、現状維持が生産性向上に繋がるケースもあると解説しています。良いコードと悪いコードの認識を深め、コード改善のヒントを得られる内容となっています。
JavaScript/TypeScript技術動向
JavaScript/TypeScript関連の最新情報として、hono、rspack、vite、Astroといったライブラリのアップデート、Node.js 23におけるTypeScriptのデフォルトサポート予定、AIエージェントによるブラウザ操作ライブラリの注目度向上、Cloud Build上でのNext.jsビルド最適化手法の紹介、そして新しいターミナルエミュレータGhosttyのリリースなどが報告されています。
Gemini AIの使い方
GeminiはGmailやGoogleドライブと連携できる生成AIツールで、商品比較や情報収集、メール検索、文書要約、旅行予約情報抽出、会議議事録要約といった作業効率化に役立ちます。無料プランと有料プランがあり、有料プランでは高性能モデルと2TBのクラウドストレージが利用可能で、1ヶ月間の無料トライアルも提供されています。
SSHを使ったファイル転送ツールBeam
ksdme/beamは、SSH接続を利用して、コンピュータ間でファイルやパイプ(標準出力など)を転送するツールです。SSHクライアントさえあれば、追加のソフトウェアなしで使用でき、SSH認証による安全な転送が可能です。転送速度はSSHサーバーの地理的な位置に影響を受けます。
StreamlitとGemini APIを用いた生成AIアプリ開発
PythonのStreamlitとGoogle Gemini API 2.0を用いて、グラウンディング機能を搭載した生成AIアプリの構築方法を解説した記事です。Google AI Studioを利用し、Streamlitで手軽にアプリのプロトタイプを作成、Google検索と連携することで、生成AIの回答に最新情報を加え、ハルシネーションを抑制する手法が示されています。完成したアプリはStreamlit Cloudで簡単にWeb公開できます。
ID連携とOAuth、OIDC
ID連携、OpenID Connect (OIDC)、OAuth 2.0の概要と、それらが異なるサービス間でのユーザー情報やリソースアクセスの安全なやり取りをどのように実現するのかを解説しています。OIDCによるIdPからRPへの安全なユーザー情報提供、IDTokenの利用、OAuth 2.0によるアクセストークンを用いたリソースアクセス提供、メールソフトにおける認証技術の変遷(パスワードからアプリパスワード、OAuthへの移行)といった具体的な例も示しながら説明しています。
Publickeyによる2025年のIT業界予測
Publickeyが公開したIT業界予想2025年版では、世界情勢不安定化、円安、人手不足が業界を大きく左右すると予測しており、AIはプロンプト入力からの指示に従うだけでなく、自律的なエージェントへと進化し、企業や個人の生産性に大きな差を生む可能性が示唆されています。また、経済安全保障の強化に伴い、ソブリンクラウドやSBOM(ソフトウェア部品表)への注目が高まり、RDBにおいてはスケーラビリティの向上が新たな常識となる見込みです。