ただいま修行中...

ソフトウェア開発において、勉強中で悪戦苦闘の日々

新しいプリンタが欲しい

2007-12-30 23:53:52 | 未分類
今日、たまたま電池や電源タップを購入するために、近くの家電量販店に行ってきました。

そのときに、たまたまプリンタを見ていたら、最近のプリンタはかなり値段が安くなっているなと思いました。

最安値で、6000円くらいで、ビックリしました。
最近の主流は、どうも複合機らしく、それも2~3万円前後で購入できるからビックリです。
おそらくパソコン本体が安くなっているので、プリンタ本体の値段も下がっていると思いますが、それにしても安い。

今、使用しているプリンタが壊れたわけではありませんが、もうすぐインクが購入できなくなりそうなので、この年末年始の商戦にあわせて、購入を検討しています。

大掃除は疲れるな

2007-12-29 21:08:45 | 未分類
今日から冬期休暇に入り、早速朝から自宅の大掃除を開始しました。

担当は換気扇とお風呂場のみですが、普段あまりしないことなので、すごく疲れました。

換気扇は、キッチンマジックリンを使用して、油汚れがひどかったので、5分くらいつけおきをしておいたらあっという間に油汚れが取れました。

これは、すごいなと思う反面、環境にいい洗剤なのかなと思いました。
詳しい成分は見てもよくわからないので、なんともいえませんが、本当にすごいです。

お勧めの商品です。

今日が仕事納め

2007-12-28 21:58:27 | ソフトウェア開発
今日で平成19年の仕事が終わりました。今年も色々とありました。

今年は初めて、Jasstに参加したり、夏にIT合宿に参加したり、色々な技術者と出会う機会が増えました。それだけでものすごく刺激を受けて、自分も頑張らなければと思いました。

技術的なことでも、テスト駆動開発ペアプロしながら色々と教えていただいたりして正しいテスト駆動開発の仕方を知りました。
モデリングの仕方も教えてもらったりと技術的にも成長したかな?と思っています。
C#も現在の仕事では普通に使えるレベルにもなっているし、Javaはまだまだ修行中といった感じです。

今年も色々な方に出会い、すごくいい一年でした。

モデリングは机上ではわからない

2007-12-25 22:29:39 | プログラミング
先日からデータモデリングを手書きで行い、それが実現可能であるかを検証するために、実装をしていましたが、細かなところで、これではダメだとわかりました。

実際にプログラミングをしてみて、わかることってあるなということがよくわかりました。

当初考えていたものだとあまりにも貧弱であったということ・自分自身のスキルが足りないこと・詳細まで考えていなかったことが原因にあります。

しかし、実際にクラス図をツールなどを使用して、清書したところで、実際にプログラミングをしてみないと、うまくいくかどうかはわからないということです。つまり、清書しても誰が見るわけでもないものを、清書することがムダということです。

それでも今回は、NUnitを使用してテスト駆動開発で進めているので、リファクタリングもできるので、被害はあまり拡大していない状態です。

もっともっと色々な実現方法を考えなくてはならないなと思いました。

椅子を購入

2007-12-24 23:30:46 | 未分類
先日、約6年くらい使用していたPC用の椅子が壊れてしまい、昨日新しい椅子を購入しました。

約6年くらい愛用していたので、すごく気に入って使っていましたが、限界に来てしまい、壊れてしまいました。

今度の新しい椅子は、今までちょっと違ったタイプのものなので、画像をアップしました。
座ってみた感想としては、すごく座りごごちもよく長くPCの前に座っていても疲れないので、非常にいいです。

C#○ヶ月後取得メソッドサンプル

2007-12-20 22:18:22 | C#
C#に現在の日付より○ヵ月後を取得するメソッドがなかったので、DelphiIncMonthをC#に移植しました。サンプルのコードは以下のようになります。

private DateTime IncMonth(DateTime dt, int NumberOfMonth)
{
int Sign;
if (NumberOfMonth >= 0)
Sign = 1;
else
Sign = -1;
int year =dt.Year, month = dt.Month, day =dt.Day;
year = dt.Year + (NumberOfMonth / 12);
NumberOfMonth = NumberOfMonth % 12;
month += NumberOfMonth;
if ((month - 1) > 11)
{
year += Sign;
month += -12 * Sign;
}
day = DateTime.DaysInMonth(year, month);
return DateTime.Parse(year.ToString() + "/" + month.ToString() + "/" + day.ToString());
}

それにしても、○日後はあるのに、なぜ、○ヵ月後がないのか非常に不思議です。

IT技術者勉強会を開催しそう

2007-12-18 22:46:22 | ソフトウェア開発
今日、ある外部の技術者の方と話をする機会があり、一緒にIT技術者勉強会なるものを開催したら面白いですよねという話をさせて頂きました。

現在、この業界では様々なIT技術者の勉強会などを開催しています。しかし、中々地理的な条件などもあり、参加できないことも多々あります。

なら自分達で勉強会を開催しましょうというお話になり、時期は未定ですが、今度私も実行委員として参加することになりそうです。

そろそろ、そういったこともしていかなければならない世代になってきたのかなと思ってきた今日このごろでした。

JavaScript版RSSリーダー作成中

2007-12-17 22:33:58 | プログラミング
最近、新しい言語を覚えるときに、必ずRSSリーダーを作成しています。

今回もJavaScriptを覚えようと、RSSリーダーを作成しています。
以前、ちょとJavaを勉強したときに、RSSリーダーを作成してから色々な言語で、RSSリーダーを作成して、その違いを知ることで、すごく勉強になります。

ちなみにRSSリーダーを作成したときに、RSSにはRSS1.0、2.0、Atomと違ったフォーマットがあることをそのときに初めて知りました。

RSSリーダーを作成すると、その言語の大体の文法的なことや外部のライブラリの使用方法を知ることが出来るので、初心者の人にはお勧めかもしれません。


テスト終盤のバグは特定部分に集中する

2007-12-13 22:19:57 | ソフトウェア開発
テスト終盤において、見つかる殆んどのバグは、ある特定のモジュールに集中したりすることがよくあると思います。

今回もあるプロジェクトでバグの殆んどがそのモジュール周辺に集中しました。
その部分を徹底的にテストをして安定させたことで、リリースを迎えることができました。

その部分のテストが進まなかったので、私もバグフィックスをしました。

やはり、色々なプロジェクトにテストの立場として加わってみてわかったことですが、テスト終盤になって見つかってくるバグの殆んどがある特定のモジュールに偏っているのではないかと最近思います。

そういった箇所というのは、実装している人が不安に感じている部分なので、ヒアリングしたり、自分でテストコードを書いてみることで、早期にバグが発見できるし、効率的にテストが進むと考えられます。