僕は発展途上技術者

悪意あるコメントに傷つかない方法 -「BEST SOFTWARE WRITING」を読んで

Joel on Softwareで有名なJoel氏によるBEST SOFTWARE WRITINGを読んでいる。


Joel on Softwareはさすが名著と言われるだけあってすばらしかったのだけれど、タイミングを逸してブログに感想を書かなかった。


BEST SOFTWARE WRITINGの感想も読み終わるまで待っていると、もしかしたら書かないかもしれないので、まだ読んでいる途中なのだけれど、いまのうちにメモしておこう。


本書は、Joel氏がソフトウェア開発に関係する「これは読む価値がある!!」と思った様々な文章を集めてきたエッセイ集だ。


アダム・ボズワーズ「ICSOC04講演」の章、RSSの長所を説明しているくだりにこうある。


RSSとウェブログ(ブログ)で最も注目に値することは、Webにおける最大の悲劇のひとつである「議論の無礼さ」を解決しはじめたやり方だ。

(中略)

Webは、人々が他の人の考えに対する意見を、自分のウェブログへの投稿を通じてコメントする巨大な場となった。そのようにすることは、コメントに対して自分の評判を懸けることになる。それは決して安いものではなく、匿名でもない。


ブログを書いていて、幸い僕は悪意あるコメントに傷ついたり嫌な思いをしたことはほとんどないけれども、それでもちょっと気になったり、すこしむかついたことはある。はてなブックマークのコメントを見るのが怖い、という人の話も聞いたことがある。


そんなとき、これからは上で引用した言葉を思い出せばいい。


僕は僕の評判を懸けてブログを書いている。それに対して誰が書いたかわからない悪意あるコメントなんてこれっぽっちも価値がないんだから、そんなコメントを気に留めたり傷つくことは馬鹿げている。


スラッシュドットでは匿名の投稿者のことをAnonymous Cowardと呼ぶ。直訳すれば「匿名の臆病者」だ。


スラッシュドットジャパンでは匿名をAnonymous Cowardとそのまま表記しているのだけれど、これじゃあ真意は伝わっていないと思う。「Anonymous Cowardってどういう意味だろう?なんかかっこいい響きだなあ」と思っているユーザーもいるかもしれず、そもそも意味も通じていない可能性がある。


しかし、本家英語版のslashdot.orgに表示されるAnonymous Cowardは違う。カウボーイの国で使われるCowardには、「臆病者が!」という強烈な侮蔑がこめられている印象を僕は持つ。slashdot.orgのコメントとスラッシュドットジャパンのコメントとを見比べると、slashdot.orgの方が圧倒的にAnonymous Cowardのコメントが少ないのもうなずける。


みなさんも悪意ある匿名コメントにもし傷つきそうになったら、「この臆病者が!」と心の中でつぶやきましょう。きっとすっきりすると思います。



BEST SOFTWARE WRITING


BEST SOFTWARE WRITING
posted with amazlet on 08.03.12


Joel Spolsky 青木 靖
翔泳社 (2008/02/21)
売り上げランキング: 1536





Windows から Mac に乗り換えるときに知っておいたほうがいいこと

Mac一ヶ月になりました。


まわりでもMacにしようかなと考えている人が増えています。少しは参考になるかもしれないので、ずっとWindowsを使ってきた僕がMacに乗り換えてはまったこと、「これは知っておいたほうがいい」ということを列挙しておきます。



  1. きっと長年Macを使ってきた人にとっては常識なのでしょう。でも僕にとってショートカットキーの表示がまったくもって意味不明でした。Command キーには左上に (うお、「コマンド」で変換できるのですね)Mac 以外では表示されないのですね。なんというか僕にはサイコロの5にみえるマークですというマークがあるからいいのですが、上矢印が Shift を意味するとか知りませんでした。

    他のキーについては、


    »Dan Rodney - Mac OS X Keyboard Shortcuts


    にまとめがあります。


  2. 話には聞いていましたが、Mac を使いはじめてすぐ、ターミナルを立ち上げ、

    # rails -v


    とやって、はじめから rails がインストールされていることにすごく感動しました。


    ruby も rails も apache も php も perl も入ってるのだから、たぶんなんでもはじめから使えるのね、という誤解が生まれたんだと思います。make と C コンパイラが入っていない事実に気づくまでにかなり無駄な時間を費やしました。


    make と C コンパイラは製品購入時についてくる DVD に Xcode として入っているんですね(常識ですか?しかしこれに気づくのに僕は2時間くらいかかりました)。


    で、「DVDからインストールするのね、あれ、でも Macbook Air には DVD 入れるところないんですけどー」となります。


    ほかの PC の DVD ドライブを借りる Remote Disc 機能?うーん、僕にはあまりスマートなやり方には思えません。


    » Tools - Xcode


    からダウンロードできるのでした。(ADCにユーザー登録(無料)が必要ですが。。。)



  3. オンラインから銀行振込しようとして気づきました。半角カナが入れられない!!

    なんとなんとデフォルトで半角カナ入力はオフなんです。


    オンにする方法はこちら↓を参考にしました。


    » たなごころ: macで半角カナ


    パソコンにあまり詳しくはない世の中の90%以上の人はここで挫折する気がします。


    親や親戚に Mac にしたいと思うんだけどどうかな?って聞かれたとします。「まだやめたほうがいいよ」と言っておこうかなあ、と僕に思わせる十分大きな理由です。


  4. Linux(おっと、Unix の間違いですね)だから使いたいツールががんがん入れられるぞ!centos の yum、ubuntu の apt-get のようにコマンド一発でいれられるんでしょ」と思いきや、デフォルトではそういう仕組みが用意されていません。

    ネットで調べてすぐ


    » The MacPorts Project -- Home


    をインストールして使うのが常識っぽいことがわかりました。


    でもこのくらいのこと、デフォルトでできるようにしておいて欲しい。(というのはあまりに開発者よりの意見なのかな?)


  5. Mac 使いの先輩に教えてもらいました。

    Macbook Air をパタンと閉じたとき、実は Windows でいう Sleep 状態であって、Hibernate(休止)状態ではなかったのですね。


    すごい静かだし、電気もどこもついていないので気づきませんでした。


    Sleep 状態だと、すこしずつですが徐々に電池がなくなってしまいます。


    設定を変更すれば、閉じたときに Hibernate 状態にすることもできるのだそうですが、教えてもらったのは自分で明示的に休止状態にする方法。


    » Deep Sleep


    というガジェットを使います。



以上、ちょっと皮肉や苦言も入ってしまいましたが、おおむね Mac には満足しています。


Rails の開発をするとき、これまでは VMWare 上の Ubuntu を使っていたのが、ネイティブの環境でできるようになった、という一点だけとってもかなり効率アップでうれしいです。


加えてUIや細かな部分がいちいちかっこいいので使ってて楽しいし、画面キャプチャができる「グラブ」や画像の縮小や形式の変換くらいなら余裕でできる「プレビュー」など、Windows ならシェアウェアやフリーウェアをいちいち入れなくてはいけないところを、デフォルトで入っているアプリケーションで結構まかなえてしまうところがいいです。


Macbook Air の見た目もかっこいいことだし、中身もスマートな印象が強いからこそ、たとえば「半角カナがデフォルトでいれられない」ところなんかは、「あれれ?」と思ってしまうのでしょう。


つくるぶガイドブログ: ひとりサービスをリリースするまでやっておくこと10個

» つくるぶガイドブログ: ひとりサービスをリリースするまでやっておくこと10個


を書きました。



今回は、開発はひとやすみにして、サービスをリリースする前にやっておくべき細々としたことを紹介したいと思います。


これらは筆者がひとりサービスをリリースするときに、毎回なんとなく思い出しながらやってきたことで、サービスによっては忘れてしまっているものもあります。


ですから、次からはこれをチェックリスト代わりに使おうと思っています。


以下、書いたあとに思い出したもの。



  1. ntp で時刻をあわせておく

  2. trackfeed を使い、サイトにリンクされたブログをチェックできるようにしておく

  3. コンタクトフォームを用意しておく

  4. 最近、というか今日知った AddClips のタグをはっておいて、ユーザーが簡単にブックマークできるようにしておく

  5. head タグ内 keywords と description を忘れず書いておく

  6. JSの難読化と圧縮。AJAXの戻りの圧縮

  7. .htaccess にアクセスできないようにする http://q.hatena.ne.jp/1166068589

  8. (Rails限定)Mongrel で運用している場合、/public/displatch.(rb|cgi|fcgi) は不要なので削除しておく


つくるぶガイドブログ: Rails で Yahoo 検索 API + Widgets Tabnav でタブナビゲーション

» つくるぶガイドブログ: Rails で Yahoo 検索 API + Widgets Tabnav でタブナビゲーション


を書きました。



アプリケーション名をキーワードに、API を使って Yahoo 検索の結果を表示することで、そのアプリケーションの関連情報を表示してみます。


後半では Widgets というプラグインの Tabnav 機能を使って、タブナビゲーションを実現します。


» rails再チャレンジ(その4) | Happy Man


で紹介されていた SeeSaw | Rails Widgets プラグインを使っています。手軽にちょっと凝ったUIを追加できて楽しいです。


あと、キャプチャをみていただけるとわかるかと思うのですが、Mac です。


しょぼいデザインでも Mac 上だとそこそこ綺麗に見えるのがありがたい。


つくるぶガイドブログ: capistrano で本番環境にデプロイ

»つくるぶガイドブログ: capistrano で本番環境にデプロイ


を書きました。


リリース間際ではなく、なるべく早い段階で本番環境でも開発環境と同じように動くことを確認しておくと安心です。


capistrano はデプロイの作業を楽にしてくれるおすすめのツールです。


capistrano は便利です。使い始めたとき、「ああ、なんでもっと早くから使ってなかったんだろう」と思ったものです。


封筒に入ってやってきた!!

さよなら Windows


sany0037.jpg



つくるぶガイドブログ: Rails + rcov でテストカバレッジを調べる

» つくるぶガイドブログ: Rails + rcov でテストカバレッジを調べる


を書きました。


今回は少し話題を変え、テストとカバレッジツールを取り上げます。


rcov のような使いやすいカバレッジツールが簡単に使えるなんて、ruby は素敵です。使わない手はないです。


先天性甲状腺機能低下症(クレチン症)の患者さんとご家族のための情報サイト「こども健康倶楽部」がオープンしました

先天性甲状腺機能低下症(クレチン症)は、喉(のど)の部分にある甲状腺という器官で、生まれつき甲状腺ホルモンを作る働きが悪い病気のことをいいます。

このサイトは患者さんやご家族の方が、クレチン症に関する正しい知識を得ることによって、より健やかな生活を送っていただきたいと願い作られたものです。


半年ほど関わっていたプロジェクトで、本日オープンです。


» ~先天性甲状腺機能低下症(クレチン症)の患者さんとご家族のための情報サイト~こども健康倶楽部


~先天性甲状腺機能低下症(クレチン症)の患者さんとご家族のための情報サイト~<br /><br />こども健康倶楽部


AJAXもフォークソノミーもAPIもRSSもなし。でも、医療監修の原田先生や、ディレクションされたエア インフィニティー株式会社岡本さんの要望に答え、エンジニアではない、普段からネットを頻繁に使っていないかもしれない一般のユーザーに、どうやったらストレスなく使っていただけるかを考え、持っている技術・知識を総動員して開発したつもりです。


それというのも、チームの皆さん全員から感じられる、「よいものを作りたい」という強い思いに触発されたからだと思います。原田先生はすでにクレチン症等に関するWebサイトを個人サイトで立ち上げられているので、ユーザーがどんなサービスを欲しいと思っているかを理解されており、それを岡本さんが組みとって具体的な機能に落とし込むとともに、ユーザーの立場に立った要望にしていただきました。two-moons 吉岡さんのデザインは、難しい病気に関する解説をわかりやすく伝える効果を発揮し、誰もが使いやすいユーザーインターフェースを実現していると思いますし、プログラマーとしてもフリーランスとしても大先輩にあたるEY-Officeの吉田さんには、的確なアドバイスをいただきました。


技術的な話をちょこっとしますと、最初、このサイトはGeeklogをカスタマイズして仕上げるつもりでしたが、きめ細かい要望に即座に応えたいという思いから、途中から Ruby on Rails でスクラッチから作り直しました。開発期間はそれなりにかかってしまいましたが、今後の機能追加やカスタマイズははるかにやりやすくなったと思いますし、なにより楽しく開発することができ、結果的に正解だったなと感じております。


話変わり、僕は四年間サンフランシスコベイエリアでの生活を経験したのですが、住み始めた当初「ジャパンネット」というアメリカに住む日本人のためのコミュニティサイトを使っていました。そこでは、どこそこのレストランがおいしいといった日本人のためのグルメ情報が手に入ったり、アメリカ生活でわからないことを気軽に投稿でき相談できる掲示板があったりして、とても重宝しました。ベイエリア在住の日本人なら、誰もがお世話になっていたんじゃないかというほどのサービスでした。


そのときの経験がウェブのサービスを作りたいという僕の原点です。そういう、特定の興味をもった人を地理的な制限を超えてつなぎ、コミュニティを作り出し、あるときは不安を取り除きながら、生活を豊かにすることができるサービスを作りたい。


クレチン症の患者さんとご家族がサイトから正しい知識を得、またサイトを通してコミュニティを築けて、ちょっとでもその生活を豊かにできる、そんなサイトに「こども健康倶楽部」がなってくれることを願っています。


Acts as なんちゃらのような Rails プラグインをどうやって見つけるか?

» rails再チャレンジ(その4) | Happy Man



そんな連載読み中、いつも気になっていたことがあります。

それは

ジュンヤさん、acts_as_hogeやpluginってどうやって探してるの?

です。


とありましたのでちょっと書いてみたいと思います。


Happy Man さんが書いているように、そうですね、やっぱりまずはググリます。


でもググる時、まず google.com の方で英語でググります。やっぱり英語の情報の方が新しいし、充実しているので。タグクラウドやってみたいな、というときは「rails plugin tag cloud」みたいな感じで。


つくるぶガイドブログ: Rails プラグイン acts_as_taggable_redux でタグクラウドを作ろう」を書いたときですが、タグ付けするプラグインだけで数種類のプラグインがあることがわかりました。


こういうときは選定に迷うのですが、検索結果をひとつひとつ読んでいって、ブログならコメントにも目を通してみて、そのプラグインをみんな使いやすいと言っているのか、いつ作られたものなのか、バグはないだろうか、あったとしてもパッチとか解決方法が提示されているのか、といったことを調べます。


検索結果に Ruby on Rails Wiki のページがヒットすれば、ほかの記事よりも重視します。


あとは、Ruby on Rails Plugins - Agile Web Development の星評価やコメントも結構参考になります。


Happy Man さんに「師匠」と呼ばれるほどでは、まだ全然なくて、達人の方々は他に良い方法を知っているかもしれないですけど、臆せず書いてみました。


あと、Happy Man さんが記事中で、


» SeeSaw | Rails Widgets


というプラグインを紹介していますが、これ結構良さそうです。


かっこいいUIパーツがいろいろ簡単に実装できるっぽいです。上記サイトからたどれるスライドに詳しい説明があるのですが、スライドで目的のページにたどりつくのが結構面倒なので、一つキャプチャしてみました。


nubbins.png

↑ カーソルを項目の上にもっていくと、Edit リンクとごみ箱がニュッとでてくるやつ。Nubbin というそうです。Basecamp などに使われていますね。


プラグインばかり使ってないで、こういうパーツを自分で実装できるくらいじゃないと真のプログラマーとは言えない、という人がいそうです。


まあそれもそうなのですけど、たとえばこの Nubbin を結構な時間かけて作ったとします。で、実際に使ってみたところ、うーん、どうもこの UI は適切でない、と思ったとしたら、苦労して作った部品をあっさり捨てられるだろうか。全体的な使い勝手をみるべきなのに、部品自体に愛着がわいてしまって無理やり使う、なんてことになりはしないかと思うのです。


プラグインでちょいちょいと実装したなら、「駄目だこれ、捨て!」とあっさり切ることができます。プラグインでサクっと実装できるメリットに、この「あっさりと捨てられる」というのもあるんじゃないか、と思っています。


あと、自分で作らなくても、プラグインのソースコードを追ってみれば勉強になると思います。プラグインの気に入らないところを改造するというのもいいかもしれないですね。


アメリカのカスタマーサポートセンターに久々に電話をかけてみた

今朝、とある用事があり、アメリカのカスタマーサポートセンターに電話をかけた。


本人確認のために氏名、生年月日、住所などを聞かれたあと、いくつか秘密の質問をされる。ウェブサービスでもたまにみかける「あなたのペットの名前は?」といったやつだ。


「好きな映画は?」ということで、僕がうろ覚えながら「○tar ○ars」と答えたら、相手の女性オペレーター曰く


"Good Job! That's my favorite, too."(よくできました。私もおんなじよ。)


だって。


さすが、アメリカ。フランク過ぎる。


日本では絶対にあえりえない。


プロフィール

株式会社まちクエスト代表、つくる社LLC代表。

Scratchで楽しく学ぶ アート&サイエンスRaspberry Piではじめる どきどきプログラミングを書きました。

オンラインコンテンツ: 大人のためのScratch

Amazonから図書館検索 Libron、iPhoneアプリ ひらがなゲーム かなぶん を作っています。

Email: webmaster at champierre dot com

Twitter @jishiha

最近のエントリー

アーカイブ