So-net無料ブログ作成

Don't Listen to Your Parents [転職]

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
  • メディア: ペーパーバック

項目6「Don't Listen to Your Parents」では、1つの会社で働き続けることに対するリスクが述べられています。
Staying in a single company, working your way up the ranks, is a limiting environment in which to grow as a developer. Gone are the days of the "lifer" who would join a big company and settle in for a full career. This sort of behavior used to be a sign of dedication. Now it's a liability. If you've worked in only one palce and seen one set of systems, many (smart) managers would see that as a strike against you when making a hiring decision. I'd personally rather hire someone who has seen a variety of successes and failures in different environments than someone who has known only one way of doing tings.

一社だけで働き続けて、昇格していくということは、開発者として成長するには限定された環境です。大企業に入社して、全キャリアをそこで過ごすというのが当たり前という時代は過去のことです。そうすることは、かつては、献身とみなされていました。今日では、それは負債です。一箇所でしか働いてこなく、1つのシステムしか見てこなければ、多くの(優秀な)マネジャは、採用決定の際に、あなたの怠慢だとみなすことでしょう。一つのやり方しか知らない人よりは、様々な環境で色々な成功や失敗を見てきた人を、私なら採用します。
さらに、友人との会話として、次のことが述べられています。
I remember talking to a friend about potentially moving out of this company, and he said, "Is it your destiny to work at $big_company for the rest of life?" Hell no it wasn't! So, I quickly found another job and left.

今の会社を離れる可能性について友人と話をしたことを覚えています。彼は、「人生の残りをその大企業で働くことが、君の運命なのか?」と言ったのです。全くそんなことはありません。それで、すぐに仕事を見つけて、転職しました。
この項目は、日本と米国の雇用形態の違いも考慮すると、そのまま当てはまらないかとは思います。しかし、私自身は、すでに3回転職しています。そして、今働いている会社は、8月末で退職し4回目の転職をします。

今回の転職では、年収が2割以上の減収になります。しかし、ソフトウェアエンジニアとしてソフトウェア開発に集中できる環境であり、新たな人々と一緒にソフトウェア開発を行い、様々なことを学ぶことができると期待しています。

今の会社は11年以上勤めましたが、残念ながら、私自身がソフトウェア開発に直接関与したり、若手を育成してソフトウェア開発を行ったりすることが評価されない組織となってしまい、私自身のモチベーションを維持するのが困難となってしまいました。(「ソフトウェアエンジニア」「開発チーム(組織)の成長」「ウィークエンド・プログラマー」「Be the Worst」「40代最後の年」「若手の育成」「自己啓発が組織を導く」

Invest in Your Intelligence [プログラマー現役続行]

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
  • メディア: ペーパーバック

項目5の「Invest in Your Intelligence」では、インドでJavaが分かるエンジニアを採用しようとして多くのエンジニアをインタビューしてけれど、良い人材が見つからなくて困り果てていた時に、条件にSmalltalkを付け加えてみて探してみたということが書かれています。Smalltalkで開発するのではないのですが、その条件を付け加えることで、少ないながらも優秀なエンジニアが見つかったということです。

それに対する説明として、以下のように述べられています。
My explanation is that either good people seek out diversity, because they love to learn new things, or being forced into alien experiences and environments created more mature, well-rounded software developers.

良い人材は新たな事柄を学ぶのが好きなため、様々な事柄を探求します。あるいは、異質な経験や環境にさらされることがより成熟して均衡の取れたソフトウェア開発者にするというのが、私の説明です。
そして、仕事で使うことがないかもしれない先端の技術に投資する人材を探すようにしていると述べています。
If I know you learned something for the sake of self-development and (better) pure fun, I know you are excited and motivated about your profession. It drives me crazy to ask people whether they've seen or used certain not-quite-mainstream technologies only to hear, "I haven't been given the opportunity to work on that" in return. Given the opportunity? Neither was I! I took the opportunity to learn.

自分の成長や(もっと良いのは)純粋な楽しみのために、あなたが何かを学んだと私が知っているならば、あなたがプロフェッショナルとして胸躍らせてやる気があるといことを私は分かっています。 まだ主流ではない技術を見たり使ったりしたことがあるかと尋ねたら、「その技術で仕事をする機会を与えてもらったことがありません」と答えられるとイライラします。機会を与えられたらだって!私は機会を与えられたことはない。私は自分で学んだ。
新たなことを継続的にかつ自発的に学ぶことをせずに、歳を取ってしまうとソフトウェアエンジニアとしては使えなくなってしまいます。(「ソフトウェアエンジニアの成長カーブ」

人材を補充するために、多くの30代後半から40代のエンジニアを面談した経験から言えば、与えられた仕事をするだけで、自発的に何も勉強を全くしていない人は、話にならないレベルの人ばかりです。たとえば、ずっと組込みシステム開発をやってきましたという人に、「JavaやC#などを勉強したことはないですか?」と聞くと、「そのような仕事はなかったので勉強していません」という回答が本当に返ってきます。その上、組込みシステム開発に関しては、知識が不足していて基本的なことも知らないという人がいたりします。(「40代、50代のプログラマー?」


Wireless Gate [WiFi]

町田のヨドバシカメラに行った際に、Wireless Gateのパンフレットが置いてあったので、それを持って帰って、「ワイヤレスゲート」に加入しました。「ヨドバシカメラ オリジナルプライン」ということで、月額380円で、以下のアクセスポイントが利用可能だそうです。
  • BBモバイルポイント
  • エキLANスポット
  • 成田空港エアポートネット
  • livedoor Wireless
  • 羽田空港ビッグバード無線LAN
  • JR東海 N700系車両内(東京~新大阪間)、 新幹線待合室(東京、品川、新横浜、小田原、熱海、三島、新富士、静岡、掛川、浜松、豊橋、三河安城、岐阜羽島、米原、名古屋、京都、新大阪)
で、接続して確認してみたのは、今のところBBモバイルポイントだけです。これでドコモ公衆無線LANサービスとの併用になるのですが、アクセスポイントが増えました。

Windows XPやMacOS用には、自動的にログインするためのアプリケーションがあるので、それを利用すれば便利なようです(まだ、試していません)。GDDフォンでは、個別にSSIDとWEPの設定をしなければならないのがちょっと面倒です。

BBモバイルポイントは、マクドナルドに設置してあるところが多いのですが、そのおかげで、こどもの国の三和(スーパー)のマクドナルドでも利用できます。

Lead or Bleed [プログラマー現役続行]

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
  • メディア: ペーパーバック

一度読んだのですが、読み返しています。

項目1「Lead or Bleed」では、技術への投資というのは、通常の投資と同じようにハイリスク・ハイリターンもあれば、ローリスク・ローリターンもあるということです。Java言語に関しては、それが登場した当時(1995年~1996年)に関しては、次のように述べられています。
If you were looking at the state of the industry at that time, as Sun was, you may have seen something special in Java. You may have had a strong feeling that it was going to be big. Investing in it early would make you a leader in a big, upcomping technology trend.
実際、私自身も興味を持ってJavaに取り組み始めたのは、1996年の夏で、まだJDK 1.02の頃です。それから、ずっとJavaの変遷を見てきた訳ですが、インターネットもまだ今日のように普及していなかったこともあったのだと思いますが、当初は急速には広まりませんでした。

そのおかげ(?)で、Java関連の雑誌の記事を書いたり、『プログラミング言語Java 第3版』の翻訳から始まって色々と翻訳しました。さらに、『プログラミング言語Java 第4版』、『Java Puzzlers 罠、落とし穴、コーナーケース』、『Effective Java 第2版』では、英語原著のレビューにも参加させてもらったり、『Java 2 Standard Edition 5.0 Tiger 拡張された言語仕様について』を執筆したりと、非常に大きなリターンを得たと思っています。

一方で、技術投資が失敗に終わる場合もあるということで、BeOSの技術獲得への投資が書かれています。つまり、最初は有望だと思われていたにもかかわらず、消え去ってしまった技術です。

一方で、古いレガシーの技術で作られたシステムが、新たな技術へ移行する場合には、「技術ホスピス」(technology hospice)が求められるということで、古い重要なシステムをサポートできる最後のエンジニアという立場になれば、それはそれで仕切ることができるようになると述べられています。そして、次のようにまとめられています。
Both ends of the technology adoption curve might prove to be lucrative.

正誤表を更新 [正誤表]

プログラミング言語Java (The Java Series)

プログラミング言語Java (The Java Series)

  • 作者: ケン・アーノルド
  • 出版社/メーカー: ピアソンエデュケーション
  • 発売日: 2007/04
  • メディア: 単行本

正誤表を更新しました。修正箇所は、 335頁、357頁、 387頁です。

外貨(ユーロ)を青葉台で購入 [その他]

青葉台のスターバックスへ行ったついでに、来週ヨーロッパへ行く妻に頼まれた外貨(ユーロ)を購入しようと、最初にシティバンクに行ったのですが、出張所なので取り扱っていませんでした。次に、横浜銀行へ行ったのですが、外貨は取り扱っていないとのこと。でも、三井住友銀行か東京三菱UFJ銀行では取り扱っていますと教えてもらいました。

そこで、三井住友銀行に行ったら、米国ドルは扱っているけど、ユーロは扱っていないとのこと。仕方なく、東京三菱UFJ銀行へ行ったら、ユーロも取り扱っていました。

窓口かなと思ったら、外貨両替機なるものがあり、ユーロに関しては、100ユーロのパック(5ユーロ紙幣×4枚、10ユーロ紙幣×8枚)単位での購入が可能でしたので、200ユーロ分(2パック)購入しました。

プリンターの買い替え時期? [その他]

多分、2000年の年末に買ったと思うのですが、ずっとキヤノンのBJ F870インクジェットプリンターを使用しています。今では、調子が悪く、色合いもおかしいことが多々あります。

そうは言っても、まだ使えるので使っているのですが、昨日、町田のヨドバシでインクのマルチパックセットを買おうと思ったら、置いてありませんでした。また、個別の色ごとの単品も品揃えが少なくなってしまっていました。仕方なく、Amazon.co.jpでマルチパックセットを注文しました。

マネジャーはプロジェクトの現状をつかむことができない? [プログラマー現役続行]

プログラマーのジレンマ 夢と現実の狭間

プログラマーのジレンマ 夢と現実の狭間

  • 作者: スコット・ローゼンバーグ
  • 出版社/メーカー: 日経BP社
  • 発売日: 2009/05/21
  • メディア: 単行本

この書籍の179頁にヒューレット・パッカードの「歩き回るマネジメント」が出てくるのですが、それはソフトウェアの分野にはうまく応用できないとして、ワッツ・ハンフリー氏の次のような主張が引用されています。
ハンフリーは次のように主張する。「製造業、軍隊、従来のハードウェア開発の場合、マネジャーは工場、戦場、研究室を歩き回って、人びとが何をしているか見ることができる。誰かが間違ったことをしていたり、ほかの理由で生産性が落ちたりしていた場合、数分も観察すればマネジャーにはそれがわかる。ところが、ソフトウェア開発者のチームの場合、見ただけでは何をしているのかわからない。何を作っていうのかたずねてみたり、入念に調べてみたいるする必要がある。ソフトウェア開発者が何をしているかは、よほど注意深くて知識のあるマネジャーでないとわからない。何かほかのことをやるように、あるいは新しい方法をとるように指示したとしても、本当に言われたとおりにやっているかどうかを判断するのは容易ではない」
実際、個々のソフトウェアエンジニアがどのような作業を行っているかを判断するのは容易ではありません。たとえば、開発現場で自分の席に座って、全体を見渡したからと言って、みんなが何をしているのかを把握できません。さらに、毎日スクラムミーティングを行っても、個々のソフトウェアエンジニアが報告通りの作業をきちんと行っているかを判断するのは難しいです。

たとえば、担当者が新たな機能、およびそのテストコードの実装が終り動作を確認しましたと報告しても、本当にきちんと行っているかは分かりません。それは、担当者がそう報告したに過ぎない訳ですから。特に、工数の関係で誰ともレビューしていないコードの場合は、実装した担当者の技量の差による品質の悪さが顕著な場合があります。

その出来具合を確認するには、マネジャー自身がコミットされたソースコードを確認するしかありません。しかし、どれだけのマネジャーが実際にソースコードを確認したりするのでしょうか?そもそも、マネジャーが自分では開発しなくても、開発環境を一式手元に持っているのかということがあります。つまり、Subversionなどのソースコード管理のアカウントをマネジャー自身も持っていて、いつでもチェックアウトしてビルドできる環境を持っているのかということです。

ソフトウェア開発は、家内製手工業です。個々の担当者の能力を知るには、その人が実際に創造した「作品」を見なければなりません。そして、「作品」を見る能力が見る側にも求められることになります。単に開発現場を見渡しただけでは、決して、その開発組織の実力や成果を知ることはできないわけです。さらに、会議室で個別に面談しても、口では何とでも言えますので、担当者の能力を正しく知るには無理があります。

マンション管理組合理事の任期 [マンション・ライフ]

私が住んでいるマンション(582世帯)の管理組合の理事の任期は2年ですが、約半数が理事に就任した時期が一年ずれています。したがって、毎年、約半数の理事の選任を行います。

新築の分譲マンションを購入する際には、あらかじめ販売会社が用意した管理規約に同意して入居することが多いと思います。私のマンションの管理規約では、管理組合理事の任期につぃては、当初、次のように規定されていました。
第36条 役員の任期は、2年とする。但し、再任を妨げない。
旧管理規約
ここでの役員とは管理組合理事を指します。この条項は、新しい管理規約では、次のように改められています。
第38条 役員の任期は、2年とする。ただし、再任は認めるが再々任は認めない。なお、退任後4年が経過すれば役員に就任できる。
新管理規約
2009年1月に印刷されて配布された新管理規約には、「管理規約改正の理念と作成方針」ということで、改正のために何回も行われた臨時総会の配布資料等が一緒に印刷されて含まれています。そこには、この任期に関する説明として、以下のように述べられています。
多選理事に起きがちな問題の解決
団地の区分所有者の場合には、理事就任をためらうものが多いのが通例であるために、理事の職に長くとどまる「多選理事」が生まれがちです。この「多選理事」は、いわばベテラン理事として理事会の諸問題に通暁(精通)している場合が多いため、理事会運営の継続性が確保できるというプラスの面もあります。しかし、他面では、理事会の問題のある慣行が継続され、手直しするのが容易ではないというマイナス面があります。
また、新任の理事は理事会で発言し、意見を述べることを多選理事の面前では差し控えることがおこりがちです。新任の理事でも、新鮮な発想で正論を発言できる状況を絶えず保障しておかなければ、理事会での理事間の対等な協議決定はできないという問題もあります。したがって、理事の再任は認めても1回2年と制限を加えることが必要と考えました。
なお団地居住者から信頼され、理事に再度就任を要望される適任者もおられますので、一定の期間(4年)を置いて再度就任できる制度を設けることとしました。
管理規約は、分譲マンションを購入した区分所有者にとっては憲法であり、全体で整合性が取れるように改正する必要があります。この任期とは別に、理事の選任方式も同時に改定してありますが、それは別の機会に書きたいと思います。

582世帯が住む大規模なマンションですので扱う管理費や修繕積立金の額も非常に大きいです。将来、管理組合が一部の区分所有者に占有されてしまわないことを防ぐために、任期を設けることにしました。

ドコモ公衆無線LANサービス(4) [WiFi]

田園都市線を利用する時は、こどもの国線で長津田駅まで行き乗り換えます。田園都市線の長津田駅のホームで、屋根の下を良く見ると、たとえば、上り方面ホームの後ろから2両目付近にドコモ公衆無線LANサービスのアンテナらしきものが見つかります。当然、その真下に行けば、電波も強く、快適に接続されます。

こどもの国線のホームも隣接していますので、電波は少し弱いですが、そこからもアクセス可能です。