So-net無料ブログ作成

確定申告 [その他]

毎年恒例ですが、確定申告の書類を作成しました。確定申告の書類は、国税庁のホームページで作成して、プリンターで印刷します。そして、添付すべき書類を付けて、印を押して終わりです。

封筒に入れて、あとは、郵送するだけです。初めて確定申告をした時は、税務署まで行ったのですが、今は、郵送(簡易書留)で済ませています。

会社からの源泉徴収票、出版社からの印税の支払い調書、寄付金の領収書などに基づいて入力します。まず、最初に行うのは、源泉徴収票の内容だけを入力して、税金の支払いがぴったり(つまり、追加の支払いもないし、払い戻しもない)になるのを確認します。それを確認してから、残りを入力して終わりです。

Ricoh & Sun Developer Challenge 2009 結果 [Java]

審査員をさせてもらった「Ricoh & Sun Developer Challenge 2009」の結果が、動画付きで公開されています。

http://www.ricoh.co.jp/javachallenge/result/

技術教育 [プログラマー現役続行]

今月は、主に技術教育を中心として活動してきました。3種類のコースを実施し、3月下旬から始める新たなコースの準備です。それと、「プログラミング言語Java」コースです。教育コースは、立ち上げ準備が大変ですが、一度準備できてしまえば、あとはそれを行うだけなので、準備も3月で終わるかと思っています。

一方的な教育コースだけでなく、自発的な技術書の勉強会(読書会)も開催したいとは思っているのですが、それは、翻訳活動が一段落しているはずである4月からと考えています。

教育活動は、技術の伝承としては意味があることですが、自分自身を充電する活動がないと、バランスが取れないです。

The Source Code Is the Design [プログラマー現役続行]

Agile Software Development, Principles, Patterns, and Practices (Alan Apt Series)

Agile Software Development, Principles, Patterns, and Practices (Alan Apt Series)

  • 作者: Robert C. Martin
  • 出版社/メーカー: Prentice Hall
  • 発売日: 2002/10/15
  • メディア: ハードカバー

日本語版を持っていたはずなのですが、見当たらないので、英語版からの抜粋です(p.520)
The overwhelming problem with software development is that everything is part of the design process. Coding is design, testing and debugging are part of design, and what we typically call software design is still part of design. Software may be cheap to build, but it is incredibly expensive to design. Software is so complex that there are plenty of different design aspects and their resulting design views. The problems is that all the different aspects interrelate (just like they do in hardware engineering). It would be nice if top-level designers could ignore the details of module algorithm design. Likewise, it would be nice if programmers did not have to worry about top-level design issues when designing the internal algorithms of a module. Unfortunately, the aspects of one design layer intrude into the others. The choice of algorithms for a given module can be as important to the overall success of the software system as any of the higher level design aspects. There is no hierarchy of importance among the different aspects of a software design. An incorrect design at the lowest module level can be as fatal as mistake at the highest level. A software design must be complete and correct in all its aspects, or all software builds based on the design will be erroneous.
上流の設計から実際のコーディング・デバッグまで、すべての活動がソフトウェア設計活動であり、すべてが重要であると述べられています。しかし、上流設計だけが重要で、それさえできれば、後の実装(コーディング)・デバッグは誰がやってもできると信じて軽視しているソフトウェア開発が多いのではないでしょうか。その結果、レベルの低いプログラマー(作業員?)が大量に投入されて、負債としてのソフトウェアが作られてしまうか、最後にプロジェクトが破綻してしまう結果になるのではないかと思います。

したがって、大規模であっても、個々のソフトウェアエンジニアの成果物をきちんと確認(レビュー)しながら、品質の確保と同時にエンジニアの能力を上げていくことを目指して活動しないと、上手くいかないと思います。つまり、レベルの低い人を投入してほったらかしにしないことだと思います。

(「プロセス中心ではなく、スキル中心」)

外からしか見えない危機 [プログラマー現役続行]

2月22日付けの日本経済新聞の「リーガル映画館」では、「アポロ13」を紹介していたのですが、その中の言葉から。
自分の顔は自分で見ることができないように、現場にいる者よりも、外から見ている者の方がリスクの全体像をつかめるし、冷静な判断ができる。
ずっと同じ組織の中にいると、その組織の考え方ややり方が正しいとなってしまい、その中で異論を唱えると、はじき出されてしまうことがあります。実は、はじき出された人の意見が本当は正論であると、徐々にその組織は正論に対して耳を傾けなくなってしまう可能性が高くなっていきます。

井の中の蛙にならないためには、まずは意見を素直に聴いて考えることが必要だったり、社外の人々と交流したり、あるいは、書籍や様々なメディアを通して学ぶことが必要だったりします。

書籍『情熱プログラマー』 [プログラマー現役続行]

情熱プログラマー ソフトウェア開発者の幸せな生き方

情熱プログラマー ソフトウェア開発者の幸せな生き方

  • 作者: Chad Fowler
  • 出版社/メーカー: オーム社
  • 発売日: 2010/02/26
  • メディア: 単行本(ソフトカバー)

このブログで何度か取り上げた『Passionate Programmer』の翻訳が発売になるようです。

The Passionate Programmer: Creating a Remarkable Career in Software Development (Pragmatic Life)

The Passionate Programmer: Creating a Remarkable Career in Software Development (Pragmatic Life)

  • 作者: Chad Fowler
  • 出版社/メーカー: Pragmatic Bookshelf
  • 発売日: 2009/07
  • メディア: ペーパーバック

もともと、この本は、次の本の第2版なので翻訳が出るのも早いですね。

My Job Went To India オフショア時代のソフトウェア開発者サバイバルガイド

My Job Went To India オフショア時代のソフトウェア開発者サバイバルガイド

  • 作者: Chad Fowler
  • 出版社/メーカー: オーム社
  • 発売日: 2006/09/26
  • メディア: 単行本(ソフトカバー)


経験とスキル [プログラマー現役続行]

Apprenticeship Patterns: Guidance for the Aspiring Software Craftsman

Apprenticeship Patterns: Guidance for the Aspiring Software Craftsman

  • 作者: David H. Hoover
  • 出版社/メーカー: Oreilly & Associates Inc
  • 発売日: 2009/10/21
  • メディア: ペーパーバック

ソフトウェアエンジニアの成長カーブ(2)」では、成長と年数について書きました。本書の「自分の仕事を省みる(Reflect As You Work)」では、「経験」と「スキル」について、次のように述べられています。
十分に長い期間続けていれば、あなたは「経験者」と呼ばれ始めますが、それがあなたの目標であってはいけません。経験が示すのは、あなたが生き延びてこれたことだけです。あなたが学んだ量を示しいているのではなく、過ぎ去った時間を示しているだけです。ソフトウェア業界のある部分では、能力の大幅な向上をしなくても、一年で経験したことを10回繰り返すのは非常に簡単です。実際、これは時として、反経験(anti-experience)になることがあります。つまり、年を重ねることが、単に身に付けた悪い癖を強化しているだけの現象です。したがって、あなたのゴールは経験を積むことではなく、スキルが上がることであるべきです。スキルレベルが上がることが、あなたが、自分の労働習慣を監査し、適応し、改善するために費やした努力に対する唯一の意味がある証なのです。
Apprenticeship Patterns
※ Anti-Experience: http://c2.com/cgi/wiki/changes.cgi?AntiExperience

ソフトウェア開発では、年数を経ていくと、スキルを伸ばしていなくても、まわりからは、「経験者=スキルがある人」と思われてしまうことがあります。皮肉なことに、そのように思ってもらえるのも、ある年齢までです。それを過ぎると、「年輩者=スキルがない人」となってしまいます。

(「ソフトウェアエンジニアの成長カーブ」、「ソフトウェアエンジニアの成長カーブ(2)」、「ソフトウェアエンジニアの成長カーブ(3)」、「40代、50代のプログラマー?」)

TBS 「がっちりマンデー」 [その他]

日曜日の朝に欠かさず見ているのが、TBSの 「がっちりマンデー」です。毎回テーマは異なりますが、30分があっという間に過ぎていきます。

今朝は、全国の新しいお菓子がテーマでしたが、広島のにしき堂では「もみじ饅頭」よりも「生もみじ」の売り上げが多いということで、食べてみたくなり、早速、オンラインで注文してみました。

【追記:2010年3月2日】
「生もみじ」も美味しいです。

DVD 『Star Trek』 [映画]

スター・トレック スペシャル・コレクターズ・エディション [DVD]

スター・トレック スペシャル・コレクターズ・エディション [DVD]

  • 出版社/メーカー: パラマウント ホーム エンタテインメント ジャパン
  • メディア: DVD

映画館でも見ましたが、注文しました。映画シリーズとしては11作目ですが、12作目は2012に公開されるようです(Star Trek XII Set For 2012)。

継続した読書(3) [プログラマー現役続行]

技術書には、間違いがあると思って読む必要があります。読んでいて、間違いだと思ったら、正誤表を確認します。正誤表に記載されていなかったり、正誤表が見つからなければ、著者あるいは出版社に問い合わせてくださいと「ソフトウェアエンジニアの心得」では話をしています。

問い合わせた結果として、次のどちらかになります。
  • 本が間違っている
  • 自分が勘違いしていることが判明する
どちらの場合でも、問い合わせた結果として、損をすることはありません。前者であれば、著者に感謝されますし、後者であれば自分の理解を正すことができます。

本が間違っている場合には、正誤表の謝辞に名前を掲載されたりします。たとえば、「The Java Programming Language, Fourth Edition」の正誤表謝辞のページに、誤りを報告した人達の名前が掲載されています。

たいていは、謝辞のウェブページに名前が掲載される程度なのですが、1999年に出版された「The Pragmatic Programmer」では、第2刷で謝辞(p.xxiv)が追加されています。
The second printing of this book benefited greatly from the eagle eyes of our readers. Many thanks to Brian Blank, Paul Boal, Tom Ekberg, Brent Fulgham, Louis Paul Hebert, Henk-Jan Olde Loohuis, Alan Lund, Gareth McCaughan, Yoshiki Shibata, and Volker Wurst, both for finding the mistakes and for having the grace to point them out gently.
残念ながら、この部分は、日本語版では追加されていません。

1999年12月28日に読み終えているのですが、指摘した内容は覚えていません。この追加された謝辞のために、英語版をもう一冊購入しました。

The Pragmatic Programmer: From Journeyman to Master

The Pragmatic Programmer: From Journeyman to Master

  • 作者: Andrew Hunt
  • 出版社/メーカー: Addison-Wesley Professional
  • 発売日: 1999/10/20
  • メディア: ペーパーバック

達人プログラマー―システム開発の職人から名匠への道

達人プログラマー―システム開発の職人から名匠への道

  • 作者: アンドリュー ハント
  • 出版社/メーカー: ピアソンエデュケーション
  • 発売日: 2000/11
  • メディア: 単行本