Software Design 2023年11月号

今号の特集概要

第1特集
理想のコンテナイメージを作る
Dockerfileのベストプラクティス

現代の開発現場では,Dockerなどのコンテナを使って開発を進めることがあたりまえになってきました。サーバサイドでもフロントエンドでも,コンテナの知識が必須と言えそうです。きちんとしたコンテナイメージをビルドできるようになるためには,Dockerfileの書き方のベストプラクティスは押さえておきたいところでしょう。

本特集では,理想的なコンテナイメージはどういうものか説明し,公式ドキュメントにあるガイドラインの内容を深掘りします。さらに,悩みがちなベースイメージの選び方,イメージ作成に役立つツール,セキュリティ対策を押さえていきます。「とりあえず使えるものが書ければいいや」と済ませず,自信を持って理想的なコンテナイメージを作れるようになりましょう。

第2特集
稼げるアプリを作りたい!
個人開発 成功の必須条件

個人開発で一発当てるのは,ITエンジニアの誰もが一度は夢見ることでしょう。しかし,アイデア,コスト,時間,モチベーション等々,立ちふさがる課題は多く,現実は甘くありません。個人開発で収益を上げている人は何か特別な策を講じているのでしょうか?

個人開発で成果を出している人たちに,成功のために心がけていること,実践していることを教えてもらいました。

個人開発の成功とは……

個人開発の目的は人それぞれ,成功の形も人それぞれですが,本特集では成功のひとつの形として「収益を上げること」と設定しました。収益を上げるには,企画,マネタイズ,メンテナンス,ユーザーサポートなど,技術以外の側面にも目を向ける必要があるからです。やるなら技術以外のことにも挑戦し,多様な学びや経験を得ましょうという主旨です。

とはいえ,記事の中ではそれぞれの著者が,自身が考える個人開発の目的や成功の定義についても語ってくれています。それらのメッセージも,個人開発に取り組むときに大いに励みになるでしょう。

特別企画
追悼 Bram Moolenaar
Vimへの情熱と貢献を振り返る

テキストエディタ「Vim」の開発者Bram Moolenaar氏が,8月に亡くなりました。享年62歳でした。本記事では,日本のVimコミュニティの牽引者であり,2022年まで本誌連載「Vimの細道」を執筆されていたmattnさんに,Bram氏とVimのこれまでと,ご自身の思い出を振り返っていただきました。

目次

第1特集
理想のコンテナイメージを作る
Dockerfileのベストプラクティス

  • 第1章:理想のコンテナを目指す基礎知識
    3つの視点とDockerfileの基本を押さえる
    …… 田中 智明
  • 第2章:Dockerfileのベストプラクティス
    公式ドキュメントのガイドラインをひも解く
    …… 前佛 雅人
  • 第3章:ベースイメージの選び方
    セキュリティと効率のために意識したいポイント
    …… 水野 源
  • 第4章:コンテナイメージ作成に役立つツール
    Docker DesktopやVS Codeを活用しよう
    …… 遠山 洋平
  • 第5章:コンテナイメージのセキュリティ
    フェーズ別セキュリティリスクと対策方法
    …… 森田 浩平

第2特集
稼げるアプリを作りたい!
個人開発 成功の必須条件

  • 第1章:最速で開発/リリースして需要を見極める
    売れるプロダクトはどうやって生まれる?
    …… ちぇん
  • 第2章:長期的視点でスモールビジネスを続ける
    まずはモチベーションを維持して作り切ろう
    …… 渡邊 達明
  • 第3章:1つのアプリをじっくり育てる
    自分の「好き」を追求する
    …… あたか

一般記事

  • [特別企画]追悼 Bram Moolenaar
    Vimへの情熱と貢献を振り返る
    ……mattn

特別広報

  • Web3の新時代を拓くココネのエンジニアリング力を探る
    【5】歴史ある「リヴリーアイランド」がスマホアプリで再出発
    ……編集部

連載

  • ITエンジニア必須の最新用語解説
    【179】Bun……杉山 貴章
  • 平林万能IT技術研究所 2ndシーズン
    【18】美術鑑識探偵風「油絵のひび割れ」鑑賞法――Python+画像処理で名画の裏側を推理しよう!……平林 純
  • Stable Diffusionで学ぶ画像生成AIのしくみ
    【6】img2img……國田 圭佑
  • ハピネスチームビルディング
    【20】ドラッカー風エクササイズでお互いの期待を理解する……小島 優介
  • エンジニアのためのやる気UPエクササイズ
    【15】生産性を最大化する休憩のとり方……えくろプロテイン
  • 実践LLMアプリケーション開発
    【2】ベクトルデータベースを活用したチャットボットの開発……西見 公宏
  • 画像解析AIの作り方
    【2】AIモデル構築の要件定義……髙木 優介
  • MLOpsのすすめ
    【4】MLOpsのための技術選定……澁井 雄介
  • 位置情報エンジニアリングのすすめ
    【4】Web地図を作ってみる(前編)……鈴木 祐亮
  • 新時代の分散型SNS Nostr
    【5】作ってわかるNostrプロトコル……設樂 洋爾
  • Google Cloudを軸に実践するSREプラクティス
    【8】Anthos Service Mesh入門……前多 賢太郎,(監修)小森 裕介
  • なるほど納得Go言語
    【10】Goにおけるエラー処理(後編)……崎原 晴香(H.Saki)
  • AWS活用ジャーニー
    【14】Amazon GuardDuty……杉金 晋
  • ひみつのLinux通信
    【117】なぞなぞ……くつなりょうすけ
  • 現場から学ぶAWSのクラウドセキュリティ
    【3】ガードレール型運用の基本と構築……花塚 亮祐
  • 魅惑の自作シェルの世界
    【12】リダイレクトの実装(その2)……上田 隆一
  • 【最終回】[Ansible]現場を支えるPlaybook
    【12】自社研修の環境構築を自動化して研修の質を向上……長谷川 脩
  • あなたのスキルは社会に役立つ~エンジニアだからできる社会貢献~
    【143】済州島に東アジアのシビックハッカー大集合!……武貞 真未