タグ

ブックマーク / 0xcc.net (16)

  • シンプル=バッドシグナル説 - bkブログ

    シンプル=バッドシグナル説 知人と話していて、シンプルという言葉は手抜きの言い訳として使われることがあまりに多いので、シンプル=バッドシグナル(バッドな兆候)なのではないか、という話になりました。 シンプルが言い訳としてよく使われるのは以下のような場面です。 必要な機能が足りていない デザインがださい そこらじゅう手を抜いている プログラミングにおいてよくあるのが、まじめに実装していないクラスに Simple なんとかという名前をつけるパターンです。自らシンプルと名乗っているものには疑ってかかったほうがいいのかもしれません。 以上、シンプルな考察でした。

    ftnk
    ftnk 2008/07/07
    > シンプルという言葉は手抜きの言い訳として使われることがあまりに多いので、シンプル=バッドシグナル(バッドな兆候)なのではないか
  • 横着プログラミング 第3回: 履歴マニア

    最終更新日: 2002-05-18 (公開日: 2002-05-18) Unix Magazine 誌に 2002年1月号から 2003年2月号にかけて連載し ていた記事の元の原稿です。 コンピュータの方がうまくできることに人間を使うな。 -- Tom Duff *1 私の見る限り、プログラマという人種は決まって事務作業が嫌いな ようである。同じような書類を何枚も書かされたり、1つ誤字があ るから書き直せと言われたりすると、異常にストレスがたまる。 同様に、計算機を使っていても、同じような作業を何度も繰り返し たり、ちょっとでも間違えたら最初からやり直し、というのは耐え られない。そこで、今回は履歴を活用して作業の再利用をするノウ ハウを取り上げる。 シェルの履歴 Unixを使い始めて間もない初心者が作業しているところを見ると、 打ち間違えたコマンドを律儀に最初から打ち直しているのに気づく

    ftnk
    ftnk 2007/09/11
  • Emacsでファイルの自動保存 (auto-save-buffers)

    うっかりファイルの保存を忘れていたために、OSやアプリケーショ ンが突然落ちて何時間もの作業を失ったという経験のある人は多い。 うっかりと書いたが、これはうっかりしていた人間が悪いというよ り、作業内容を失ってしまう計算機の方が悪い話である。 こうした「ファイルの保存し忘れ問題」に備える現実的な対策は、 ファイルの保存をこまめに行う、という方法である。実際、多くの 人がこれを行っている。なんだかおかしな話だ。 Emacs にはバックアップを自動保存する機能が備わっているが、 いざというときに復元の仕方がよくわからない。 M-x recove-file して復元するファイル名を指定する。 バックアップファイルが残っているときにファイルを開くと M-x recover-file せよ、と説明がでるけど、 再度ファイル名を指定し直さないといけないのは不便 (このととき RET を押だけでもいいけ

    ftnk
    ftnk 2007/09/11
  • ハッカー養成塾: 深追い、佳境、バッドノウハウ

    最終更新日: 2006-01-31 オープンソースマガジン2006年3月号に向けて書いた記事の元の原稿 です。 ハッカーウォッチャー 前回の武藤健志さんからバトンを受け取った高林です。ハッカー養 成塾の講師という大変な役目を軽々しく引き受けてしまいましたが、 筆者などは、むしろ出来の悪い塾生といったところが当です。 しかし、どういうわけか、これぞハッカーという人たちと知り合う 機会には恵まれてきました。稿では、彼らを観察して得られた知 見を元に、ハッカーの人物像について考察してみたいと思います。 ハッカーの人物像 ハッカーといってもいろいろな種類がいますが、筆者の周りのハッ カーに共通に見られる傾向に、以下の3つがあります。 「深追い」しまくり 「佳境」に入りまくり 「バッドノウハウ」に詳しいこと甚だしい 上記の 3点について、これから掘り下げていきたいと思います。 「深追い」は筆者と

    ftnk
    ftnk 2007/09/11
    [system:unfiled]
  • 私の情報整理術: 捨てる派の情報整理術

    捨てる派? 捨てない派? 情報整理術は興味の尽きないトピックです。誰もが何かしらのこだ わりを持っているため、ひとたび議論が始まると、自分はこうやっ てる、俺も昔はそうやっていたが駄目だった、などと始まって収拾 がつかなくなります。これはちょうど誰もがうまいラーメン屋につ いて一家言を持っているのと似ています。 私の観察によると、ある種の人たちが情報整理術について議論を始 めると永遠に平行線で終わるようです。それは「捨てる派」と「捨 てない派」です。 捨てる派によれば、「物理的なものにしろ電子的なものにしろ、い らないものはどんどん捨ててしまえばよろしい。不要なものがたく さんあるから必要なものが見つかりにくくなるのだ。第一、ものが 少ない方が気分がすっきりする。昔から、墓場まで情報は持ってい けないと言われているではないか」ということになります。 一方、捨てない派によれば「必要か不要か簡

  • いやなブログ - スルー力カンファレンス (スルカン) 開催決定!

    スルー力カンファレンス (スルカン) 開催決定! ものごとをやり過ごしたり見て見なかったことにしたりすることを「スルーする」と呼ぶようになって久しい今日この頃ですが、このたび「スルー力」、すなわち、スルーする力に関する、 ITエンジニアのためのカンファレンスを開催することになりました。ユニークな下でおなじみの某社CTOをはじめとする豪華なスピーカ陣による講演が行われる予定です。 「人生の大半の問題はスルー力で解決する」とはスルー力研究の専門家の間では共通のコンセンサスですが、昨今頻発するネット上での炎上事件、人間関係上のストレス問題、あるいは仕事上での燃え尽きの多発などの事情から、スルー力に対する社会的、特にITエンジニアの間での認知度が足りないのではないか、という問題意識が今回のカンファレンス開催の背景にあります。 現在、スピーカは調整中の段階にありますが、スルー力のベストプラクティス

    ftnk
    ftnk 2007/09/11
    [system:unfiled]このたび「スルー力」、すなわち、スルーする力に関する、 ITエンジニアのためのカンファレンスを開催することになりました。
  • Binary Hacks のここがすごい - bkブログ

    Binary Hacks のここがすごい Binary Hacks の宣伝週間ということで、著者の一人である私から見て Binary Hacks のここが気に入っている、という点について書いてみたいと思います。 新しい発見がいっぱい Binary Hacks はメインの著者5人、コントリビュータ 6人という大人数で書かれています。各人が「これは役立つ」「これはおもしろい」というアイディアを持ち寄った結果、扱われているトピックは非常に多岐にわたります。著者間で内容のチェックをしたときも、「こんなことができたのか」「こういうこともできるよ」と新しい発見に大いに盛り上がりました。 「はじめに」にも書きましたが、これまで「知る人ぞ知る」的な傾向のあったノウハウを集めて誰にでも使えるようにすることが書の試みです。ほかのにはあまり載っていない情報がたくさん載っていると思います。ぜひ目次をご覧くださ

  • システム上のユーザのアイドル時間を調べる - bkブログ

    システム上のユーザのアイドル時間を調べる デーモンや cron から何か重い処理を走らせたいときに、作業中のユーザに迷惑をかけないよう、システムにログインして作業しているユーザがいるか確認したいときがあります。ここでは、GNU/Linux システムでつかえる方法をいくつか検討してみたいと思います。 ロードアベレージを調べる ロードアベレージは/proc/loadavg から調べられます。ロードアベレージが 1を超えるような状況では重い処理は走らせないほうがいいでしょう。 この方法の欠点は、システム全体の忙しさはわかっても、ユーザがログインして作業しているかどうかはわからない点にあります。たとえば、ユーザがテキストエディタなどで軽い作業を行っていた場合、ロードアベレージは低い数字になります。 端末のアイドル時間を調べる w コマンドを実行すると IDLE という欄に各端末のアイドル時間が表示

  • Binary Hacks - バイナリアン度チェック

    Binary Hacks 的な技術に精通したエンジニアのことを、専門用語で 「バイナリアン」と呼びます。 ここでは、みなさんのバイナリアン度を診断できるチェックリストを用意しました。 目次を見て、 「こんな内容はぬるい」と思った方も、 「バッドノウハウばっかり」 と思った方も、ぜひ挑戦してみてください。 診断には JavaScript が有効なブラウザが必要です。 問題は15問あります。 診断スタート

  • やっとくよ - 学校では教えてくれないバッドノウハウ英語 #2 - bkブログ

    やっとくよ - 学校では教えてくれないバッドノウハウ英語 #2 学校では教えてくれないバッドノウハウ英語の2回は、"Will do." を取り上げたいと思います。主語も目的語もなく Will と do とピリオドだけで構成される、テストでは 0点をもらいそうな表現です。 この表現に初めて出くわしたのは、私が出した "I think it would be good to handle this case (この場合も処理したらいいと思う)" といった感じのメールに対する返信の中です。 そのときの返事は "Will do." の一文しかなく、主語が省略されているため、肝心の「誰がやるのか」という点がはっきりせず、もしかして、 "You will do that (お前がやる)" だったらどうしようとかなり焦りました。結局、省略されていた主語は "I" で、 "I will do that (

    ftnk
    ftnk 2007/09/11
  • こうすればうまくいくよ - 学校では教えてくれないバッドノウハウ英語 #1 - bkブログ

    こうすればうまくいくよ - 学校では教えてくれないバッドノウハウ英語 #1 宮川さんの人気企画「学校では教えてくれないエンジニアリング英語」に便乗して、私もソフトウェア開発に使えるフレーズ、とりわけバッドノウハウ的な場面において役立つフレーズを紹介していこうと思います。第1回は "do the trick" です。 do the trick は「こうすればうまくいくよ」というときに使えるフレーズです。日常会話にも使えますが、とりわけ「うまくいかない」「うまくいった」という場面が多く発生するソフトウェア開発では特に便利なフレーズです。 例) In that case, setting LD_ASSUME_KERNEL=2.4.19 should do the trick. それなら、 LD_ASSUME_KERNEL=2.4.19 をセットすればうまくいくはず。 Heh, this seem

    ftnk
    ftnk 2007/09/11
  • もし必要なら - 学校では教えてくれないバッドノウハウ英語 #3 - bkブログ

    もし必要なら - 学校では教えてくれないバッドノウハウ英語 #3 学校では教えてくれないバッドノウハウ英語の3回は、"if need be" を取り上げたいと思います。"if need be" はソースコードのコメントの中でとりわけよくみられる表現です。 "if need be" の意味は「もし必要なら」です。同じ意味を表す "if necessary" という表現も一般的ですが、"if need be" の方が2文字分短いためか、"if need be" の方を好むプログラマも多いようです。 例) // Change the font size if need be. // フォントサイズを変更する、必要なら。 We could help improve the test coverage if need be. 必要ならテストカバレージの改善を手伝ってもいいよ。 この表現はメールでもよ

    ftnk
    ftnk 2007/09/11
  • いやなブログ - Binary 2.0カンファレンス 2006 発表資料とレポート

    Binary 2.0カンファレンス 2006 発表資料とレポート Binary 2.0 カンファレンス 2006 は大盛況のうちに無事終了いたしました。開催にご協力いただいた皆様、スピーカーの皆様、参加していただいた皆様、大変ありがとうございました。当日の発表資料とレポートをこのエントリでまとめます。

  • いやなブログ - スクリプト言語用のデバッガの使い方 - Ruby, Python, Perl

    スクリプト言語用のデバッガの使い方 - Ruby, Python, Perl スクリプト言語用の CUIのデバッガの使い方を簡単にまとめました。対象言語は Ruby, Python, Perl です。 私は C, C++ でプログラムを書いているときはデバッガ (主に GNU/Linux 上の gdb) を頻繁に利用します。しかし、スクリプト言語ではそれほどでもありません。これはおそらく次のような理由によります。 ビルドが不要なので printf デバッグが容易 (ある程度大きい C++ のプログラムではビルド時間が長いので printf の挿入はしんどい) 異常終了時にスタックトレースが表示される (Ruby, Python なら自動、Perl の場合は use Carp; $SIG{__DIE__} = \&Carp::confess; など) オブジェクトのインスペクトが簡単 (Ru

  • 浮動小数点演算ではまった話 - bkブログ

    浮動小数点演算ではまった話 浮動小数点演算のありがちな問題ではまりました。 いろいろ調べているうちに x86 特有のちょっとおもしろい 現象に遭遇したので紹介したいと思います。 パーセンテージの計算 簡単な C のプログラムでパーセンテージを計算しようと思い、 次のようなコードを書きました。 int x, y; ... int a = (double)x / y * 100; int a = x * 100 / y としないのは、 x が大きい場合に x * 100 が オーバーフローを起こす (INT_MAX を越える) ためです。 このコードは一見、期待通りに動いていたのですが、 しばらく使っていると、手元の環境では x = 53, y = 100 のときに a は 53 ではなく 52 になることに気づきました。 これは次の理由によります。 式の最初の (double)53 / 10

  • 年を取ると環境設定がどうでもよくなる現象 - bkブログ

    年を取ると環境設定がどうでもよくなる現象 環境設定に関するエッセイを書きました。 もともとは、とあるメディア向けに書いたものですが、 諸事情により、ブログにて公開することにしました。 環境設定と老化 ソフトウェア開発を行う上で、プログラマはさまざまなツールを使います。そして、ツールをカスタマイズしたり、ときおり新たなツールを導入するなどして、開発環境を整えます。具体的には、テキストエディタの設定を変更したり、ブラウザに拡張機能をインストールしたり、といったことを行います。 私の場合、以前はこうした環境設定に情熱を燃やしていましたが、年をとるにつれて、その情熱は徐々に衰えてきました。周りのプログラマを見渡しても、多かれ少なかれ、同じ傾向が見られます。 というわけで、今回は「年を取ると環境設定がどうでもよくなる現象」がなぜ起きるかについて考察してみたいと思います。それではさっそく、思い当たる要

  • 1