明日にはでっかい太陽が昇るかもしれません。

「覚悟」とは!! 暗闇の荒野に!!進むべき道を切り開く事だッ!

ぼくのかんがえたさいきょうかいはつかんきょう

どういうこと?

VMWare Player が 5.0 になったときに、ライセンスの解釈が変わったとかどうとかで、仕事の開発環境として VMWare Player が利用できなくなったとかいう話がありました。(結論どうでしたっけ??)

それからしばらくして、開発が停滞していた(と思われていた) VirtualBox も 5.0 がリリースされ、メンテナンスリリースもされるなど、活発な開発が行われているように見えることから、個人的な Linux 開発環境についても見直しを行ってみるか!という気分になりました。

期待する環境

MUST

  1. パフォーマンスが良いこと
  2. 業務用と個人用で共通化したい

SHOULD

  1. バックグラウンド実行したい(サービス化でも良い)
  2. HDDイメージは圧縮可能であること(肥大化後のシュリンク

MAYBE

  1. VT on VT ができること

なんか、他にもあった気がしましたが、思い出したら追記します。。。

ともかく、いろいろ考えた結果、 VirtualBox にすることにしました。

やはり、 VMWare だとライセンスの解釈で業務では使えない可能性があるのがネックでした。

上記の期待を VMWareVirtualBox に当てはめると、以下のようになりました。

項目 比較 備考
パフォーマンス VMWareVirtualBox 世間的な評価だけだが、体感的な差はない!?
業務利用 VMWare << VirtualBox ライセンス的には VirtualBox は安心。
バックグラウンド実行 VMWareVirtualBox VMWare も外部アプリでサービス化できるが、標準対応している VirtualBox にはかなわない。
HDDイメージ圧縮 VMWareVirtualBox VMWare Player は標準では圧縮ツールが付属されないらしい。。。
VT on VT VMWareVirtualBox VirtualBox は随分前からチケットがあるけど対応されていない。。。

そもそも、 Linux をメインにすればいいんじゃね!?という発送もあるのですが、お家では Windows がプリインストールしかないので、試すことができないのです。。。

インストールしたいツール

とりあえず、開発環境として以下のツールは導入したい。

目的 ツール 備考
サーバのコンテナ化 Docker トライ済み
プロジェクト管理 OpenProject 今までは Trac を長年使用
バージョン管理 git 業務で長年使用
コードホスティング kallithea トライ済み
CI Jenkins トライ済み
モダンなビルド環境 cmake トライ済み
モダンなコンパイル環境 llvm+clang トライ済み
レガシィコンパイル環境 gcc 業務で長年使用
静的解析 cppcheck 検討中
ユニットテスト CppUTest トライ済み
コードドキュメンテーション Doxygen トライ済み
ドキュメントジェネレータ pandoc Markdown -> reStructuredText or Word
ドキュメントジェネレータ sphinx reStructuredText -> Html or PDF
ドキュメント解析 RedPen 検討中

ドキュメント(技術文書)については、編集の容易さ、差分確認やドキュメント解析(をやりたい)の観点から、軽量マークアップ言語からの変換で納品に耐えられるフォーマット(想定は Word)にたどり着くように試してみたい。 (先人の記事などで、後工程でのトラブルは発生することをある程度覚悟しているが、やはり試したい)

現状は Markdowns (flavored github) を検討しているが、 AsciiDoc も気になる。。。

ただし、 AsciiDoc は pandoc での変換入力に対応していないので、 AsciiDoc → DocBook → reStructuredText のように変換が増えるので、どのような感じになるか試す必要がある。

少しでも、業務にフィードバックできれば、残業時間の完全コントロールも夢じゃない!かも!?