金高真悟の奇天烈(キテレツ)大百科

日々徒然なるままに

株式会社ニコシスの新入社員が毎日のあれやこれやを語ります。

自分も道具もメンテナンス(日々の努力によるいざって時の準備)が必要

機能追加と新たな仕様とデバッグ

キテレツです。
今日のキテレツは新たな機能追加とデバッグと・・・・・C#のソフトと向き合ってました。
途中、LinuxでisoファイルをUSBメモリに書き込むって作業が発生しました。

新たな機能

現在デバッグしているソフトウェアに、新たな機能を追加。
メールを読み込む部分を作成しているんですが、メールの無いようにあわせてデータベース処理を走らせます。
メール本文のスクレイピングですね。

文字を切ったり張ったりはとても面倒・・・・・Linuxなコマンドラインならこんな感じかなぁ・・・なんて思いながらプログラミング。
考え方は一緒なんですが、文字列操作部分に関してはC#の機能に限定されてしまうのでパズル的な要素がたぶんに含まれます。
悲壮感漂う処理ではなかったので楽しみながら作業スタート。

幸いなことに、キテレツの知らない部分が多く、今回のデバッグは非常に良い教材になっています。

新たなバグも発見

新たなバグも見つかりました。
見つかってラッキーです。
気がついてよかった。

この処理は・・・・まぁ作業的に処理できるかな。
VisualStudioって良く出来ている。
デバッグするには機能が豊富。

イミディエイトウィンドウってありがたい。
エディタ部分については・・・・Emacsにならんかなぁ・・・(-∀-`; )ノ
とか考えてしまいます。

統合開発環境

ってすごいですよね。
昔で言えば、BorlandC++とかMicrosoftCとか。
きっと知っている人も少ないなぁ・・・(・∀・;)

当時から統合開発環境ってあったんだけれど、優秀な機能は盛りだくさんなのに、ちょっとしたことが出来なかったり。
まぁ、個人に合わせてカスタマイズなんていちいち対応出来ないですもんね。
そこは、エディタのマクロとかで頑張っちゃうわけです。

エディタを使い理由は、シンプルで小回りが利くからって所じゃないでしょうか。

Emacs

キテレツはEmacsが好きです。
えぇ・・・変体って言われますが・・・・Emacs好きです。
何が好きって、Lispが面白かったりするんですよ。

Lisp

って、数学者が使って人工知能とかで威力を発揮してきた言語って認識が多いみたいですが、キテレツのような数学嫌いな人間でも楽しめたりします。

全てがリストで、全てがアトムって言っても・・・わかりませんよね?(・∀・;)
何がい言いたいかと申しますと、言語仕様がとってもシンプルなんです。
なのに、今現在の最新のプログラミング言語が採用しているような仕組みをすでに持ってたりします。
ものすごく古い言語の部類に入るLispが、すでに今現在の言語たちが取り入れようとする機能を持っていたなんてすごいなぁって思ったりするわけですね。

残念ながら、オレツール的な使い方しかできませんが・・・・^^;
Lispでシリアル通信手やったことないしw

EmacsLispだと簡単な文字処理とかならさくっと出来ちゃいます。
同じようなSQL文とかを沢山書かなきゃいけなかったり、特定の文字の組み合わせを何回も書かなきゃいけなかったり。
テキストテンプレートな使い方とかはお手の物です。

Linux作業!!

本日、上司がお客様向けのサーバーを仕立てていたんですが、そのサーバーに物理的なディスクドライブが存在しない事実が発覚!!!
業者は気がつかなかったのか???
それとも・・・・意図的な虐めか????(・∀・;)

んで、仕方が無いのでisoファイルをUSBに焼きこんでUSBブートするかっ!!って流れになりました。

キテレツは普段、初代EeePCを持ち歩いております。
搭載OSはLubuntu Linuxです。
軽量Linuxをバッファローの超小型USBメモリにインストールして、USBブートで動かしています。

作りたいのは4GBのUSBブートメディア。
isoファイルは3.5GBあります。

キテレツ作業開始するも・・・・EeePC君のスピードが・・・遅いんですね。(´д`ι)
デスクトップPCからUSB経由でisoファイルをコピーしたり奮闘してるんですが、いかんせん初代EeePC君は馬力が無いw
ファイルコピーに時間がかかり、さらにイメージファイル焼きこみに時間がかかる。

Gpartedってアプリをインストールしているので、フォーマットとかも出来るんですが、デバイス認識に15分とかかかりおる・・・orz
X60とかならあっと言う間に出来る事が、こうも時間がかかるとは・・・・

結局、同時進行で上司が別のパソコンばらして部品取りし、DVD-ROMなドライブをケーブル結線して事なきをえました。

ふぅ・・・僕のEeePC君も頑張ってくれてたんですが、いかんせん遅いですね。
全てをコマンドラインであれこれすれば早かったのかもしれませんが・・・・書き込みフォーマットやらをGUIツールでやろうとしたキテレツの技量の無さですね。

EeePC君は悪くないです。

ちょっとしたプログラミングやWebブラウジングなど、お勉強には何の問題も無く、小さくコンパクトなボディなので、電車の中で起動しても問題ありません。

Emacsが動作してDropboxが動作して。
んで、Webブラウジングが出来れば当面問題なく。
勉強のためのプログラミングが出来ればOKですね。

試行錯誤

するのも大切ですが、いざって時にすぐに動くのも重要なポイントですね。
やり方をシステマティックに出来るようにって感じで。
今回も、実績のあるハードウェアとソフトウェアと方法を確立できていたら、もう少し早く作業も完成していたかも??
CUIコマンドもオプションの付け方によっては、あっという間に出来てたかもしれないし。

何事も、日々のメンテナンスですね。
自分も道具も。