TOP > 踊るプログラマ物語 > 2009年05月

あすなろBlogger

このエントリーを含むはてなブックマーク このエントリーをはてなブックマークに追加 この記事をクリップ! livedoorclip ユーザー数 BuzzurlにブックマークBuzzurlにブックマーク この記事をtweetする

一眼レフカメラを買った

2009.05.29

2週間ほど前に一眼レフのカメラを買いました。Cannon Kiss x3です。x2にしようかと思っていたのですが、Panasonicのやつが動画とれるらしいので、x3にしました。コンパクトデジカメに比べてでかいです。ずっと持っているとやっぱり重いです。

一眼レフは前から欲しくって、以前、松本でのお泊まり会でNikonの一眼レフを見て以来、ずっと欲しかったのです。去年の湯布院でのLL温泉のときに密かに買おうと決心して、やっと買いました。

買ったばかりだからかもしれませんが、コンパクトデジカメに比べてとるのが楽しいです。でも、沢山とっちゃうし、危険かもしれません。 なんとなく一眼レフだときれいにとれるような気がします。背景のボケがそう感じさせるのかもしれません。 

投稿者 : 大谷 弘喜 | 投稿日時 : 2009.05.29 12:37

このエントリーを含むはてなブックマーク このエントリーをはてなブックマークに追加 この記事をクリップ! livedoorclip ユーザー数 BuzzurlにブックマークBuzzurlにブックマーク この記事をtweetする

MacのiWebが使えなかった

2009.05.29


昔はいろいろページを作っていたのですが、ハードが壊れてからはblogだけになってしまいました。blogは流れ去るもので、まとまった文書をそこにおいても不便なことが多いです。それで、CMSとまではいかなくてもHTMLでもいいから置けないかなー、と思っていました。僕はMobile Meに入っているので、そこにサイトを作れます。よくわかんないですが、iWebを使えば簡単にできそうです。


それで、iWebをはじめて起動しました。きれいなページが簡単に作れそうな気がしてきます。まあ、きれいなサイトじゃなくてもいいのですが。で、タイトルを入れたりテンプレートを選択したりして、ページを作っていきます。画像の挿入はちょっと厄介ですが、できました。たくさんページを作りそうなので、ディレクトリをほって分類しようとします。あれ?ディレクトリがほれない?きっと今時のシステムはそんなことを意識したら負けなのでしょう。


次にテーブル。よくわかりません。あきらめます。リストはよく使うので、ってあれ?これもよくわかりません。リストぐらいはアスタリスクで代用できます。h1やh2などはどこから設定するんでしょう?そこそこ長いページである程度は構造化しておきたいですが、どこでどうやるかわかりません。そもそも、文字を入力するエリアをテキストボックスとして配置することが間違っています。いや、僕の使い方にマッチしていません。HTMLを意識しなくてもいいのはすばらしいかもしれませんが、ここまで単純化してしまうのもどうかな?


このままいくとgoogle様のsiteを使っちゃいそうです。

投稿者 : 大谷 弘喜 | 投稿日時 : 2009.05.29 00:00

このエントリーを含むはてなブックマーク このエントリーをはてなブックマークに追加 この記事をクリップ! livedoorclip ユーザー数 BuzzurlにブックマークBuzzurlにブックマーク この記事をtweetする

Find Bugsが便利な件

2009.05.28

過去にいくつかのソースコードの解析ツール(と言えばいいのか?)を試したことがあります。それは、C/C++用やJava用、Python用のものでした。また、試したのもかなり以前のことで、いつ頃だったかは思い出せません。ただ、そのときの印象では、ソースコードを静的に解析してもバグなんて見つけられることはほとんどないし、まともなレポートをしてくれない、と言うものです。そのときの印象が正しい判断だったのかどうかは、今となってはわかりません。なんて言うツールを試したのかさえ覚えておらず、印象だけが残っていました。

さて、最近、社内でFind Bugsが使われ始めました。 Eclipseのプラグインもあるので、便利です。さて、Find Bugsで検査すると大量のレポートが出てきました。詳細はかけないのですが、

 

class MyClass {

    private String foo;

   public void func(String foo) {

        // いろんな処理

        foo = another_func(foo); 

   } 

}

  のようなコードでお怒りになっています。いろんな処理のあとfoo = another_func(foo);でその後、foo使ってないのになんで代入しているの?コード書き忘れたりしてない? ということらしいです。で、ここは、本当はthis.foo = another_func(foo);というものの間違いでした。

これ以外にも、怪しそうなコードをちゃんと教えてくれたりしていて、バグなんだけど、たまたまちゃんと動いているように見えていただけとかがありました。

そんなに手間ひまをかけずにある程度バグと思われるところを見つけてくれるので、かなり使えそうです。そして、僕の昔の印象は、 たまたま使ったツールが悪かったのか、その後の数年で進化した結果なのかはわかりません。

 

投稿者 : 大谷 弘喜 | 投稿日時 : 2009.05.28 16:56

このエントリーを含むはてなブックマーク このエントリーをはてなブックマークに追加 この記事をクリップ! livedoorclip ユーザー数 BuzzurlにブックマークBuzzurlにブックマーク この記事をtweetする

プログラマの面接のときに出す問題

2009.05.27


アリエルでは昔からプログラマの面接の場合は事前に問題を出しています。解答はJavaでもいいですが、アリエルの人が理解できる言語であれば何でもいいです。さて、その問題に次のものが加わりました。正確には加わるかもしれません。会長が作った問題です。開発部長は「くだらない」と一笑にふしてメールを消し去っていました。

さて、問題です。以下の問題について、汎用部分の共有化を意識してコーディングを行ってください。

 1.  10進数の数字の列を入力とします。列中の連続する数字が増加(等しい場合は含
まない)している部分を増加部分列と呼ぶことにします。与えられた入力数列の
最も長く続く増加部分列を求めるアルゴリズムを示してみてください。

2.  2進数の数字の列を入力とします。列中の同じ数字が連続する部分を同値部分と
呼ぶことにします。与えられた入力数列の最も長い同値部分を求めるアルゴリズ
ムを示してみてください。

3.  アルファベット(A〜Z,a〜z)の文字の列を入力とします。列中の同じ文字(大
文字、小文字を区別しない)が連続する部分を同字部分と呼ぶことにします。与
えられた入力文字列の最も長い同字部分を求めるアルゴリズムを示してみてくだ
さい。

 

どうでしょうか?どこかで見たような問題のような気もします。僕だったら正規表現で・・・。西尾さんがやっているどう書く.orgから適当に問題を拾ってくるのでもいいかも。

ちなみに、人のコードを何も考えずに丸写しで送ってくると面接のときに悲しいので意味がないです。なので、答えが落ちている問題でもかまいません。 


投稿者 : 大谷 弘喜 | 投稿日時 : 2009.05.27 19:24

このエントリーを含むはてなブックマーク このエントリーをはてなブックマークに追加 この記事をクリップ! livedoorclip ユーザー数 BuzzurlにブックマークBuzzurlにブックマーク この記事をtweetする

社内のTracのコメント

2009.05.26

Tracとは、有名なバグ管理システムです。社内ではTracを使ってバグを管理しています。ただ、Tracは単純なバグ管理ツールとしてではなく、一部、コミュニケーションツールやTwitterのようなつぶやきツールとしても使っています。積極的に使おうとした訳ではなく、いつの間にかそうなっていました。

さて、TracはチケットというものでバグやTodoを管理し、その進捗などをコメントとして登録していきます。コメントには技術的な詳細やバグの再現手法などまじめそうな内容にまぎれて次のようなコメントもあります。

終電に乗り遅れそうなので、今日は諦めて帰る

  このぐらいであれば、まあ、普通です。次のようなコメントもあります。

○○についてソースをgrepすると、148ポックルみつかる

  ポックルという単位は何なんでしょう?さらに、チケットが修正されると、「[1234] がはははは、どりゃー。」1234というのは、修正したときのSubversionのリビジョン番号です。でも、そのあとのコメントは意味不明です。

すると、コメントで

おおたにさんが壊れた

すかさず、別の人が

救護班!救護班---!
 変な会社です。ちなみに、エンジニアが書くチケットは無味乾燥なものになりがちなので、そうするとだんだん読まなくなったり、他の人の担当のチケットを気にしなくなってしまいます。変なコメントが少しでも混ざっていれば、他の人のチケットやコメントをちょっとだけでも意識できるんじゃないかなー?と思って僕が始めたことです。また、変なコメントがあると、新しく入ってきた人が、そんなに形式張らなくてもいいんだと、書くときの心理的な敷居を下げられると思っています。でも、本当に意味のあることかどうかは、議論の余地があります。


 

投稿者 : 大谷 弘喜 | 投稿日時 : 2009.05.26 12:05

このエントリーを含むはてなブックマーク このエントリーをはてなブックマークに追加 この記事をクリップ! livedoorclip ユーザー数 BuzzurlにブックマークBuzzurlにブックマーク この記事をtweetする

アルゴリズムとかデータ構造とか

2009.05.25

ITエンジニアとしての適正を見抜く言葉」の記事の中に次のようなきじゅつがあります。

プログラミングの学習経験がある学生なら、自分の得意なプログラミング言語を使って、手書きでプログラムを書いてもらいます。テーマは「配列a[0]〜a[99]に格納された値を昇順にバブルソートする」「整数nの階乗を求める」くらいのシンプルなものがよいでしょう。

   

最近、面接の時や、3年目ぐらいのプログラマの人と話をするときに、バブルソートのコードを書いてみて、と頼んだことがあります。そのときの反応で、「バブルソートって聞いたことがありますが、わかりません」や「バブルソートって何ですか?」と反応されることがあります。まあ、クイックソートを書けとかは、無理かもしれませんが、バブルソートぐらいはと思ってしまいました。

その話を会社でしたら、「配列をソートするプログラムを書け 」だったら結果的にバブルソートのコードができるんじゃない?と言われました。確かにそうかもしれません。ただ、アルゴリズムをちゃんと学ばないでjava.util.Listのsortを使っているとしたら悲しいです。

また、「リンクリストのコードを書いてみて」とお願いしたときがあります。そのときも「リンクリストって何ですか?」と聞かれたことがあります。「ArrayListを自分で実装してみて」と言えばよかったのかも知れません。

会社でこの話をしたら、「ArrayListとLinkedListの違いがわからなければデータ構造を考えられないじゃん」と言われました。でも、社内のコードのほとんどはArrayListだし、今のCPUスピードだとLinkedListじゃなきゃいけないものってほとんどないと反論するとQueueを使う場合はそうかもしれないけど、そのぐらいかも、と。

僕がCを初めて最初にやったのがこの辺りのことでした。この辺からやらないとどうしようもなかったからなのか、このぐらいの基本的なことは押さえておくべきだったからなのか、 今となってはわかりません。APIの使い方を学ぶのも大事ですが、それだけに走ってはもったいないです。

 

投稿者 : 大谷 弘喜 | 投稿日時 : 2009.05.25 19:58

このエントリーを含むはてなブックマーク このエントリーをはてなブックマークに追加 この記事をクリップ! livedoorclip ユーザー数 BuzzurlにブックマークBuzzurlにブックマーク この記事をtweetする

ゲーム大会

2009.05.22

アリエルにはテレビがおいてあって、Wiiもあります。ゲームも数本あります。でも、最近はみんな忙しさにかまけて遊ぼうとしませんでした。しかたないので、若者を集めて強制的にWii Sports大会が行われました。 

開発はおとなしい人が多いので、なかなかお互いに話をしません。なので、ゲームだろうと、飲み会だろうと、そういう催しがあった方がいいです。それから、会社の中で真面目に仕事をしている人がおおいので、遊んじゃ行けないという空気が時々感じます。偉そうな人が率先して遊ばないと、若い人たちは中々遊べません。

まあ、コードを書くときはコードを書いて、遊ぶときは遊ぶのがいいのです。 

投稿者 : 大谷 弘喜 | 投稿日時 : 2009.05.22 19:33

このエントリーを含むはてなブックマーク このエントリーをはてなブックマークに追加 この記事をクリップ! livedoorclip ユーザー数 BuzzurlにブックマークBuzzurlにブックマーク この記事をtweetする

もうすぐ、新しい学生バイトの人が来ます

2009.05.21

いろいろ思うところがあって、会社で学生バイト(プログラマ)をとることになりました。僕の希望は、あと二人ぐらいとりたいので、興味ある人は応募してきてください。嘘でもいいので、Pythonとか、Erlangとか書いておけば割とすんなり採用になるかもしれません。RubyはRailsのせいで人口が増えすぎました。

さて、今回やってくるバイトの人は大学3年の女子大生です。見た目は普通の若者ですが、中学3年の夏にJavaでコードを書いてしまったそうです。今ではCでWindowsアプリを作ったりもするそうです。道を踏み外してしまったのかもしれません。

アリエルにやってくる学生バイトは、 変な人が多いです。社員よりもすごいプログラマもやってきたりして(社員もすごそうな人ばりですが)、その場合は、そのまま、社員のような扱いになって、仕事がどんどん振られていきます。

そこまでじゃない人は、開発部長の弟子として一子相伝のプログラマの道が伝授されます。 きっと。ただ、Javaのコードを書くときもEmacsを使わされるので、そのへんはどうかな?それ以外はすてきな環境です。きっと。

投稿者 : 大谷 弘喜 | 投稿日時 : 2009.05.21 17:11

このエントリーを含むはてなブックマーク このエントリーをはてなブックマークに追加 この記事をクリップ! livedoorclip ユーザー数 BuzzurlにブックマークBuzzurlにブックマーク この記事をtweetする

EeePCを買った

2009.05.18

嫁のPC(6,7年もののLet's Note)が 壊れたので、新しいノートを買わされました。近所の電気屋さんに行って、一番安い在庫のあるNetBookを買いました。3万7000円のEeePC 1000何とかでAtom N280がのっているやつです。正確な型番は覚えていません。

買ってきて使い始めた嫁が文句をいいます。まず、「重い」。Let'sが1kgをきっていたので、確かに重くなっています。ダイエットのためには必要な重量なのです。

次に、「画面が狭い」。サイズも小さくなった感じがしますが、縦が600なのはやっぱり不便です。アンチウィルスソフトとか、もろもろのものをインストールしながら、もう少し大きい方がいいと感じてしまいます。

それから、全体的な作りがLet'sのように頑丈そうではなく、ちょっとあらがあります(SDカードのスロットがざらつくとか)。まあ、それはLet'sが特別なのでしかたないです。それから、Atomって遅い。

で、いろいろぶつぶつ言われながら、最後に「安いの買って来たでしょ!」 。はい、そうです。でも、20数万円したものと4万円しないものを比べないで・・・。

で、NetBookと呼ばれているものをずっと一台欲しいと思いましたが、嫁にあげたものを少し触ってみて、自分にはいらない、とつくづく思いました。 

投稿者 : 大谷 弘喜 | 投稿日時 : 2009.05.18 17:41

このエントリーを含むはてなブックマーク このエントリーをはてなブックマークに追加 この記事をクリップ! livedoorclip ユーザー数 BuzzurlにブックマークBuzzurlにブックマーク この記事をtweetする

明日はInfoTalk

2009.05.14

明日は産業技術大学院大学のInfoTalkというのがあります。会社の小松会長の策略で明日はお話を聞きにいきます。何が策略なのかは秘密です。

今回はPython3のお話と携帯をエリアメール配信?のお話です。メールの方は何のことだか、タイトルを見てもよくわかりません。iPhoneを使っている僕でも意味のあるものなのでしょうか?

Python3のお話は、うーん、僕はPythonが好きです。ただし、言語の進化(変化)にはすごく保守的かもしれません。Python3は興味本位では好きですが、実際に使うことはかなり先でしょう。知っていることは大事ですが、使うのはまた、別ですね。でも、知らないと評価のしようがない。 

投稿者 : 大谷 弘喜 | 投稿日時 : 2009.05.14 20:14

このエントリーを含むはてなブックマーク このエントリーをはてなブックマークに追加 この記事をクリップ! livedoorclip ユーザー数 BuzzurlにブックマークBuzzurlにブックマーク この記事をtweetする

「新入社員はなぜ期待はずれなのか」を読みました。

2009.05.13

「新入社員はなぜ期待はずれなのか」を読みました。

 読んだといってもかなり前です。そのあと、開発部長にプレゼントして、社内の何人かが読んでいます。面白い本で、参考になる(と言うか納得できる)部分と、年寄りはみんなそう感じるんだろうという部分とあります。

実感としては、新入社員の面接は中途と違って難しいです。中途であれば、前職の経験からわかりやすいですが、学生の場合はよくわかりません。年をとったせいかも知れません。

遠い昔の新入社員のころを思い起こすと、僕が入社したときは新人研修をまともに受けないと問題になっていたような気がします。まあ、本当にまともに受けていなかったので、反論しようがないですが。さて、その次の年は、なぜか、もっと問題になって新人研修が途中で打ち切りになって現場に配属されていました。まあ、どの代でもそんなに違いはないと思いますが。

開発部長は最近入社してきた人に読ませていますが、何がかわるんでしょう?楽しみです。 

投稿者 : 大谷 弘喜 | 投稿日時 : 2009.05.13 16:10

このエントリーを含むはてなブックマーク このエントリーをはてなブックマークに追加 この記事をクリップ! livedoorclip ユーザー数 BuzzurlにブックマークBuzzurlにブックマーク この記事をtweetする

SaaSがいいのか?パッケージソフトがいいのか?

2009.05.12

アリエルが久しぶりにニュースサイトにでています。社内のシステムがSaaSなど外部に移動していくことが多いですが、その反対も十分あるということです。でも、僕はコストのことはわかりません。

さて、SaaSから社内にシステムを移行することは営業の人の話で、エンジニアとしては、SaaSの検討もしている訳です。まあ、SaaSじゃなくってクラウドと言ってもいいんですが。アリエルという会社は分散処理に夢みた人たちが作ったものです。分散処理はクライアント間のP2Pでもいいし、サーバ間の分散処理でもいいです。なので、クラウドも興味の対象になります。最近はhadoopのhBaseが使えないか検討しています。分散データベースということです。しかし、ここ数年はRDBMを使いすぎた成果、分散データベースになれません。正確にはシステムをどう組めばいいのかわかりません。RDBMと同じことはできないとわかっているのですが、本当に企業内のシステムでそれが許されるのか、わかりません。なかなか難しいです。 

投稿者 : 大谷 弘喜 | 投稿日時 : 2009.05.12 19:43

このエントリーを含むはてなブックマーク このエントリーをはてなブックマークに追加 この記事をクリップ! livedoorclip ユーザー数 BuzzurlにブックマークBuzzurlにブックマーク この記事をtweetする

電気製品がどんどん壊れていく

2009.05.11

数週間前にWiiが壊れてしまいましたが、今度は、PanasonicのLet's Noteが壊れました。洗濯機も時々誤動作をするので、今年中には買い替える予定です。

さて、今回壊れたLet's Noteですが、これは、かなり前のもので、多分、2002年か2003年頃に買ったものです。しかも、僕の所有物のころは、子供が上にのって飛び跳ねたり、嫁の所有物になってからは1mぐらいからの高さからの頻繁な落下テストが繰り返されました。その結果の症状としては、最初はOSが固まることに単を発して、今は起動途中で固まります。多分、ハードディスクに不良ブロックがあるんだと思います。でも、今までの虐待から考えると、よくもった方だと思います。Macだとすぐに壊れているでしょう。

さて、それで別のPCを用意しないと行けませんが、去年から順調にものが壊れていくせいで、かわりのPCがありません。デスクトップも壊れて動きません。モニターだけが元気に場所をとっています。しかたないので、新しいものを買わないといけませんが、 今回はNetBookというものを買うことになりそうです。Let'sはPentium IIIの800MHzぐらいだったと思うので、NetBookにしてもスペッアップになるはずです。サイズもそれほどかわらないし。

NetBookはLet'sのような虐待に耐えられるのでしょうか?心配です。 

投稿者 : 大谷 弘喜 | 投稿日時 : 2009.05.11 20:02

このエントリーを含むはてなブックマーク このエントリーをはてなブックマークに追加 この記事をクリップ! livedoorclip ユーザー数 BuzzurlにブックマークBuzzurlにブックマーク この記事をtweetする

ゴールデンウィークの高速道路は混んでいた

2009.05.07

ETC割引とはあまり関係なく、ゴールデンウィークは実家に車で帰りました。ETC割引があってもなくても車で帰るので、単純に出費が減るだけです。車の方が安いし、混んでいるときは子供が泣き叫ぼうが、帰省をあげようが他の人に迷惑をかけないのでいいです。

さて、行きはとても混んでいました。今までは休憩入れて5時間ぐらいでついていたのが、12時間かかりました。休憩時間もいつもより短いです。よきせぬ渋滞だとイライラしますが、あらかじめわかっていると暇つぶしの材料も用意するし、あとは、ブレーキから足を外してしまわないように注意するだけです。渋滞の中にいると考えることがいろいろあります。ETC割引とかして、公共の乗り物を遠ざけて、二酸化炭素という諸悪の根源とされている気体をまき散らす車を使わせようとする発想がわかりません。ゴアのお話によると地球はとても危機的な状況らしいので、目先の利益にとらわれて危機を加速してもいいものなのでしょうか?といろいろ考えながら実家にたどり着きました。いつもなら、満タンにした状態から3/4ぐらいガソリンを消費していますが、今回は半分ちょっとしか使っていませんでした。僕の運転は渋滞より環境に悪かったのでした。

さて、ETCが導入され始めた頃、ETCを搭載した車が10%か20%いれば 渋滞は出口付近の渋滞は解消するということが言われていたように記憶しています。ニュースを見ていると、それは嘘だったようですが、僕がおりたICはすいていました。実家の方がICに車がいませんでした。やはり、田舎。

帰りは、6日に帰ったのですが、比較的すいていました。いつものゴールデンウィークぐらいでした。まあ、いつも立ち寄る浜名湖のSAがとても混んでいたのですが、雨だったので横を過ぎ去りました。渋滞のピークをみんながさけようとして渋滞を生み出すのは、やっぱりゲーム理論(だまし合い)を実践しているようで面白いです。 

投稿者 : 大谷 弘喜 | 投稿日時 : 2009.05.07 17:41

このエントリーを含むはてなブックマーク このエントリーをはてなブックマークに追加 この記事をクリップ! livedoorclip ユーザー数 BuzzurlにブックマークBuzzurlにブックマーク この記事をtweetする

アシアルの人たちと豚を食す

2009.05.01

昨日はアシアルの人たちと豚を食しました。そのときの写真はこんな感じ。なぜ、アシアルの人たちとお食事をしたかというと、うーん、会社のお金で飲み食いしたかっただけかもしれません。

アシアルはPHPの人たちばかりです。アリエルでもPHPの仕事が少しあって、何故か僕を筆頭にPHPが嫌いです。でも、仕事なのでやらないと行けないのですが、やる人がいないので僕が細々とやったりしていました。でも、いやだいやだと言い続けていたら、外注することになりました。それがきっかけです。

さて、アシアルの人が去年の湯布院のLL温泉に行ったそうです。 Perlのすごい人にあったと言っていたので、それは多分tokuhiromさんのことでしょう。うーん、あんまり覚えていないのですが、ひょっとしたら、あの人でしょうか?僕はPerlのチームにいて、全く別のコードを書いていたのですが・・・。

それからアシアルもアリエルにならってバイトのテスターも雇い始めたらしいです。テスターについてはいろいろあるので、連休明けにでも忘れなければ書くでしょう。

明日から連休なので、おやすみなさい。 

投稿者 : 大谷 弘喜 | 投稿日時 : 2009.05.01 23:32

カレンダー

<< 2009年05月 >>

          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31            

最新のエントリー

最新のトラックバック

最新のコメント

Tag

バックナンバー