Engineer's Digest

忙しいエンジニアのための技術情報ダイジェスト。前日の話題をサクッと把握!

2024/12/10 #34 - 今日の技術情報ダイジェスト

SQLクエリ設計と効率化

データ分析におけるSQLクエリの効率的な設計手法について解説しており、設計と実装の分離による手戻り削減、可読性向上、保守性向上を実現する方法を、「アウトプット」「インプット」「プロセス」の3要素を用いた段階的設計プロセス(概念設計、論理設計、物理設計)と、CTE(共通テーブル式)を活用したBigQueryクエリの実装、テストケース管理までを具体的に説明しています。

techblog.kazaneya.com

レトロゲームエンジンPyxel開発秘話

Pythonで動作するオープンソースのレトロゲームエンジン「Pyxel」を紹介する記事で、1万5000以上のGitHubスターを獲得した人気プロジェクトです。Pyxelはドット絵エディタやサウンド制作ツールを搭載し、シンプルにレトロゲームを作成できます。開発者は『メタルギア』や『ZOE』を手掛けた元コナミのエンジニアで、現代の開発環境とは異なる制約のある環境で培った技術の重要性を説き、Pyxelでは意図的にリソースを制限することで、初心者から上級者まで幅広いレベルの開発者が利用できる設計にしている点を強調しています。制約の中で工夫する経験こそがエンジニアリングの原点であり、次世代育成にも繋がるという開発者の考え方が紹介されています。

levtech.jp

日米エンジニア育成の違い

この記事では、米国と日本のエンジニア育成における根本的な違いを解説し、日本のエンジニア育成が米国から見て非効率である理由を、採用基準、解雇、育成方法、評価システム、給与水準といった観点から分析しています。具体的には、米国では一定のスキルを持つ者しか正社員として採用されず、能力不足のエンジニアは解雇されるためパワハラが少ない一方、日本の解雇規制がパワハラの一因となっていること、米国企業は「育成」よりも「仕事ができるようにサポート」し、オンボーディング後も即戦力が求められること、米国ではネガティブな発言が解雇理由となり得るほど成果主義と厳格な評価システムが徹底されていること、米国エンジニアの高給は高い能力と解雇の容易さによるリスク軽減が理由であることなどを指摘し、日本の現状を変えるためには給与水準向上と解雇規制緩和が重要であると結論づけています。

type.jp

2024年の画像生成AI進化

2024年の画像生成AIの進化を4回に分けて解説した記事の第1弾では、高精細化・高品質化が進み、特にキャラクターの一貫性維持という課題が克服されつつある現状を紹介しています。具体的には、Midjourney v6以降の写真レベルの画像生成と同一人物の容易な生成、照明効果制御技術「IC-Light」による画像のバリエーション増加、Luma AIの「Dream Machine」による人物の一貫性を保った動画生成、そして漫画制作へのAI活用を広げるイラスト制作AI「Copainter」が登場したことなどが取り上げられています。

ascii.jp

JR東日本のSuicaサービス拡張

JR東日本がモバイルSuicaの位置情報を利用し、改札を通らず乗車できるサービスを導入予定であると日本経済新聞が報じています。Suicaの個人間送金機能も追加され、決済機能が強化されます。これにより収集される移動データと決済データは、沿線地域の商業開発や街づくりに活用される予定です。サービスの基盤となるのは、膨大なビッグデータをクラウドで一元管理するシステムです。なお、本記事は日本経済新聞の有料会員限定記事です。

www.nikkei.com

LLMとExcel文書の連携

製造業で広く使われるExcel文書は、その複雑な構造(枠線、セル、オブジェクト、グラフなど)からLLMによる解析が困難です。本記事では、LLMを用いたExcel文書解析における課題と、openpyxlなどのライブラリを使った直接パース、PDF変換、独自PDF変換API開発といった解決策を解説しています。特にPDF変換においては、ページ区切りの正確な設定が重要であると指摘しており、複雑なExcel文書の解析精度向上に向けた開発の継続についても触れられています。

zenn.dev

Macへの外付け指紋認証

MacBook ProユーザーがTouch IDの使い勝手の悪さを解消するため、ジャンクのMagic KeyboardのTouch ID部分を流用し、3Dプリントケースなどを用いて約4600円で外付け指紋認証デバイスを自作しました。Magic Keyboardを分解してTouch ID部分を抜き出し、3Dプリントしたケースに組み込むことで実現しており、3Dモデルデータは公開サイトから入手、3Dプリントは依頼しています。自作デバイスの製作過程やAppleへのTouch ID単体販売要望についても記事で紹介しています。

zenn.dev

NVIDIA製グラボとAppleチップのAI推論性能比較

GitHubリポジトリで、NVIDIA製GPUとApple SiliconのAI推論処理能力を比較検証した結果が一覧表として公開されており、大規模言語モデル(LLM)推論における各GPUの性能、複数のGPU使用時の効率性、LLM推論速度とメモリ使用量などが詳細に計測・公開されています。これにより、LLM推論に最適なNVIDIA製グラボやMacの選定に役立つ情報が得られます。

gigazine.net

Webサーバ入門とPython実装

Django/FastAPIを用いたWebサーバの動作仕組みを、反復モデルからイベント駆動モデルまで実装例と共に解説しており、ソケット、ファイルディスクリプタ、システムコールといった低レベルなプログラミング概念、マルチプロセス(prefork workerモデル)による並行処理とそのメリット・デメリット、マルチスレッドとイベント駆動モデルによる高性能化とC10K問題への対応策、複数コアCPUの効率的活用のためのスレッドプールやpreforkとの組み合わせを提案しています。

tech.iimon.co.jp

USB給電フルHDモニターレビュー

ラズベリーパイ公式の15.6インチフルHDモニター「Raspberry Pi Monitor」のレビュー記事です。USB給電に対応し、重量も軽く持ち運びに便利なノングレア液晶を採用しており、角度調整可能なスタンドやVESAマウントにも対応しています。Raspberry Piだけでなく、Windows PCやスマートフォンなど様々な機器と接続でき、価格は約1万5000円です。

gigazine.net

XのAI「Grok」無料ユーザー開放

X社が開発したAI「Grok」が、無料ユーザーでも利用可能になったことを複数のIT系ニュースサイト(Impress Watch傘下など)が報じており、PC、デジカメ、家電、スマホといった幅広い分野に加え、ASUS、VAIO、ドスパラといったPCメーカーや、ソニーの一眼レフカメラα、ゲーミングPCのGALLERIA、IIJmioやpovo2.0といったモバイル回線サービスに関する情報も掲載されています。

pc.watch.impress.co.jp

AWS学習ロードマップ

AWS学習ロードマップの最新版がQiitaで公開され、基礎知識からVPC、EC2、Linux操作まで網羅した実践と資格対策に対応した内容となっています。PDF版のダウンロードが可能で、Qiitaでストックすることで更新通知を受け取れます。

qiita.com

小型全固体電池の実用化

小型全固体電池が、EV用よりも先にコイン電池代替など身近な用途での実用化が進んでいます。現在、量産化に成功しているのはTDK、マクセル、カナデビアの3社のみで、これらの企業は耐熱性や真空環境耐性などの特性を生かし、人工衛星、半導体製造装置、産業機器などに採用しています。高温環境や真空環境での動作が求められる用途において、既存のリチウムイオン電池よりも優位性が高く、交換不要で長寿命なことからバックアップ電源などへの適用が進んでいます。

xtech.nikkei.com

AWS LambdaとFirecracker技術

AWS Lambdaの基盤技術であるFirecrackerについて、その開発背景、軽量仮想化技術としてのMicroVMの採用、Rust言語を用いた開発、KVMやSeccompによる軽量化とセキュリティ強化、そしてFirecrackerのコード解説とMicroVMの仕組みを詳細に解説した記事です。

tech-blog.abeja.asia

GuardDutyによるS3マルウェアスキャン導入

AWS GuardDutyのS3マルウェアスキャン機能の本番導入事例を紹介するブログ記事で、料金やクォータを考慮した対象バケット選定、TBAC(タグベースアクセス制御)を用いたアクセス制御設定、Slack通知によるアラートシステム構築とインシデント対応手順策定、そして3ヶ月間の運用で100万ファイルのスキャンを行いマルウェアを検知しなかったという結果が報告されています。

nealle-dev.hatenablog.com

OBS Studio 31の新機能

ライブ配信ソフト「OBS Studio」の最新バージョンv31.0.0がリリースされました。約1年ぶりのメジャーアップデートとなる本バージョンでは、プレビューUIの使い勝手改善に加え、NVIDIA Blur Filter、背景ぼかし機能、AJAデバイス対応など、様々な機能強化が施されています。また、OBS Studio内にYouTubeチャット機能が追加された一方、一部GPUやアンチチートソフトウェアとの互換性問題が報告されているため注意が必要です。Windows、Mac、Linuxに対応しており、窓の杜からもダウンロード可能です。

forest.watch.impress.co.jp

Raspberry Pi 500キーボード一体型PCレビュー

1万5000円以下で購入できるキーボード一体型PC「Raspberry Pi 500」のレビュー記事です。Raspberry Pi 5と同等の性能を備え、OSがプリインストールされており、USBポート、HDMIポート、LANポートなど豊富なインターフェースを搭載しています。空冷ファンレスにも関わらず、長時間高負荷での安定動作が確認されており、今後、日本語配列版と分解レポートも公開予定です。

gigazine.net

フロントエンドにおけるFeature-Sliced Design導入

フロントエンドエンジニアがFeature-Sliced Designを導入し、Atomic DesignやBulletproof Reactにおける課題を解決した経験を紹介する記事です。7つのレイヤーによる明確な依存関係と可読性向上、導入過程での問題とESLintプラグインを用いた解決策、そして大規模化への対応と安定した開発への貢献について解説しています。

speakerdeck.com

React Scanによるレンダリング状況可視化

Reactアプリのレンダリング状況を可視化するツール「React Scan」について解説しています。Chrome DevToolsなどの既存ツールよりも直感的に再レンダリングの原因を特定でき、コード変更不要でCLIやブラウザ拡張機能として利用可能です。再レンダリング回数や時間、原因となる状態変化などを表示し、パフォーマンス最適化のための改善点を示唆する機能も備えています。

zenn.dev

TypeScriptのsatisfies演算子解説

TypeScript 4.9で追加されたsatisfies演算子について解説しており、型チェックを行いながら元の型情報を保持できる仕組みや、as constとの組み合わせによる厳密な型チェック、Enumライクな定数やネストしたオブジェクト定義での活用例、タイポ検出やコード可読性向上への貢献などを説明しています。

zenn.dev

16GB RAMの容量不足問題

16GBのRAMを搭載したMacで、複数のアプリケーション(Slack、Excelなど)と動画3本を同時に再生したところ、RAM不足によるシャットダウンが発生したという事例を紹介。1990年代の低スペックなMacとの比較や、Windowsの仮想メモリ機能との違い、将来的なメモリ増設の必要性などが議論されています。

anond.hatelabo.jp

Atomic Designの限界と代替案

フロントエンド開発におけるAtomic Designの限界と、デザインと実装の抽象度のずれを指摘し、Reactに特化した新しいコンポーネント分類方法として、Pages、Contexual、Parts、Ghost、SubComponentの5種類を提案しています。この分類は、アプリへの依存度、再利用可能性、DOM描画の有無などを基準に定義され、生産性、簡潔さ、網羅性を重視した実用的なアプローチです。

hachibeechan.hateblo.jp

趣味開発Webアプリケーションの低コストインフラ構築

趣味で開発したWebアプリケーションを、Cloud Run、TiDB Serverless、Cloud Storageといったサーバーレス技術とCloudflareを組み合わせることで、ほぼ0円で運用するインフラ構成を紹介しています。無料枠のあるTiDB Serverlessをデータベースに、フロントエンドはCloud Storageで静的配信、バックエンドはCloud Runで実行し、CloudflareのDNS ProxyとCloud Connectorを用いてリクエストを振り分けています。

qiita.com

AWSと生成AI競争

AWSの年次イベントre:invent 2024で発表された新生成AI「Amazon Nova」は、高性能かつ低コストで大規模言語モデルと画像・動画生成AI機能を備えています。AWSは生成AI基盤「Amazon Bedrock」を提供し、多様なAIモデルに対応しており、自社開発の半導体「Trainium」によるAI学習の効率化やNVIDIAとの連携も進めています。さらに、AWSは生成AIを活用したレガシーシステムの近代化サービスも提供しています。

www.watch.impress.co.jp

アジャイル開発と人月商売の問題点

記事ID389「最も重要なのは「とっとと失敗しようぜ」、アジャイル開発は人月商売の毒が回ったか」では、日本のIT業界における人月商売やご用聞き商売が技術者の発想の硬直化を招いている現状を指摘し、アジャイル開発における早期の失敗を許容する重要性を主張しています。多くの批判を踏まえつつ、その批判の多くはアジャイル開発への誤解に基づいていると反論し、若手技術者には失敗を許容する企業を選択すべきだと結論づけています。

xtech.nikkei.com

電子ペーパー端末QUADERNOレビュー

富士通の電子ペーパー端末「QUADERNO」に新カラーモデルが登場し、A4とA5サイズが展開されています。従来モデルと同様に薄型軽量でPDF閲覧に対応しており、スタイラスペンも付属しています。カラーE Inkを搭載していますが、彩度は低く、フロントライト非搭載のため画面は暗めです。PDFの転送はPCアプリ経由の有線接続が必要ですが、スマートフォンではNFCに対応しており便利です。軽さと大画面から電子書籍閲覧に適していますが、見開き表示の処理速度は遅いです。

pc.watch.impress.co.jp

PixelスマートフォンOSアップデート期間延長

Googleは、Pixel 6、7、FoldシリーズのOSアップデート期間を従来の3年から5年に延長すると発表しました。Pixel 6は2026年まで、Pixel 7aとFoldは2028年までセキュリティアップデートを含むOSアップデートが提供されます。これは、Android端末のアップデート期間短縮という問題への対策として行われ、Googleの公式ヘルプページでも確認できます。ただし、Pixel 6に関しては性能面での課題も指摘されており、買い替えを検討するユーザーもいるかもしれません。

smhn.info

SQLコーディングスキルアップ

データベース設計やSQLコーディングのスキル向上を目指すエンジニア向け書籍「センスの良いSQLを書く技術 達人エンジニアが実践している35の原則」では、可読性と保守性に優れたSQLの書き方を、データベース界の達人ミック氏が35の原則に沿って解説しています。効率的なクエリ作成、インデックス戦略、スケーラビリティといった重要なテーマを網羅し、図解付きのサマリーで初心者にも理解しやすい構成となっています。さらに、シリコンバレーでの実務経験に基づいたコラムも掲載されています。

www.kadokawa.co.jp

Boxクラウドストレージサービスの普及とAI活用

Box JapanのクラウドストレージサービスBoxの利用状況と、AI活用による機能強化、特に2019年から2024年にかけてのユーザー数の大幅増加と、Box SignやBox AIなどのAI機能による業務効率化への貢献、多様なデバイス・プラットフォームへの対応、そして今後のBox Works Tokyo開催などによるサービス向上への取り組みについて解説しています。

www.itmedia.co.jp

組織横断的SRE活動

株式会社エス・エム・エスが、全社SREチームによる開発チームへのSRE活動委譲を開始した取り組みについて解説しています。運用負荷集中と信頼性向上のための活動不足を背景に、開発チームの自律性向上と運用の効率化・信頼性向上を目指し、SLI/SLO、監視、インシデント対応などの成熟度レベルを定義・評価することで、開発チームとの連携強化と組織全体の信頼性向上を図っています。

tech.bm-sms.co.jp