会社設立までの個人履歴【その1】

新卒で就職した先は、制御系のシステム屋さんだった。
しかも、ハードウェアに近い箇所で、OSすら載らない4bit、8bitの小さいシステムを手がける会社。
手がけると言っても、業務のほとんどは下請けなので、仕様を聞いてその通りのものを作るだけ。

制御系・組込系のシステムの特色としては堅牢性が第一にあげられる。
どんな状態になっても動作させる。
その為にシステム設計は、フローチャートではなくて、状態遷移図で行う。
この辺のフォールトトレラントなシステム作りは、今のお仕事にとても役立っています。

それと、ハードウェアを直接叩くので、アドレッシングが重要。
当時(今でも?)、ハードウェアを直接叩けるのはアセンブラとC言語だけでした。
C言語からアドレス指定でハードウェアを叩くと言うのも勉強になりました。

開発環境【その4】

ちなみに開発環境ではありませんが、普段使いのアプリも晒します。

ブラウザはFirefox、メーラーはThunderbird。

officeは昔から一太郎を使用していたので、そのまま使用しています。
しかしながら、共有が難しいので、最近ではLibre Officeを使用しています。

MS-Officeは、勝手にDLLを上書きしてしまってVisul Studioの開発環境をおかしくした経験があるので、怖くて使っていません。
納品後にDLLのバージョンも固定する必要があるのですが(新しいDLLを入れ替える場合には検証してから)、かつてのMS-Office様は、アップデートとかで共通のDLLをバンバン書き換えてくれました。
現在のMS-Officeは違うのかもしれませんが、今は他のオフィスソフトも互換性が上がってきているので、無理に入れる必要はないかなっと思っています。

開発環境【その3】

svn、git環境は、windowsでは両方共に亀、macではSourceTreeを使用しています。
SourceTreeもwindows版は出来が悪いですね(笑)。
もちろん、SourceTreeでsvnは使用できる筈はなく、git-svnを介して使用しています。

ftpはFileZillaを使用しています。
以前は何も考えずにffftpを使用していたのですが、FileZillaの存在を知っていから、何であんなのを使用していたのかと思うくらい(笑)。

開発環境【その2】

エディタは主にvimを使用しています。

その他のサブ環境として、windowsではTeraPad、macではAtomを使用しています。
windowsのサブもAtomにしてもいいのですが、Windows版はちょっと出来が悪くて、待ち状態です。

プログラムにもブログにも両方にしっくり来るエディタって無いですよね?
まあ、慣れの問題だと思いますが・・・。

開発環境【その1】

開発言語は、C・C++とphpを主に使用しています。
電話系、通信系の実行ファイルが必要な開発はC言語で、webサーバーを使用した業務系アプリはphpと言う具合で使い分けています。
もっとも、最近はandroidアプリの開発が入ってきていますので、その場合にはjavaも使用します。

開発にはIDEを使用しています。
若い頃は、vimでゴリゴリと書いていましたが、フレームワークを利用するには、やはりIDEを使用した方が効率的です。

C言語の開発環境は、windows版はVisualStudio、mac版はXcode。
php、javaはnetbeans。
と、一般的なものを使用しています。

以前はeclipseを使用していましたが、2年前にプログラマとして参加したあるプロジェクトでの標準がnetbeansでした。
出始めの頃に試したことはあるのですが、遅くて断念した覚えがありました。
しかしながら、久々に触ってみるとすごく出来が良かったので、その時にnetbeansに乗り換えました。

androidアプリに関しては、最近、AndroidStudioも使用し始めています。