日頃より楽天のサービスをご利用いただきましてありがとうございます。 サービスをご利用いただいておりますところ大変申し訳ございませんが、現在、緊急メンテナンスを行わせていただいております。 お客様には、緊急のメンテナンスにより、ご迷惑をおかけしており、誠に申し訳ございません。 メンテナンスが終了次第、サービスを復旧いたしますので、 今しばらくお待ちいただけますよう、お願い申し上げます。
日頃より楽天のサービスをご利用いただきましてありがとうございます。 サービスをご利用いただいておりますところ大変申し訳ございませんが、現在、緊急メンテナンスを行わせていただいております。 お客様には、緊急のメンテナンスにより、ご迷惑をおかけしており、誠に申し訳ございません。 メンテナンスが終了次第、サービスを復旧いたしますので、 今しばらくお待ちいただけますよう、お願い申し上げます。
Paul Graham / 青木靖 訳 2007年8月 いいプログラマは、自分のコードに集中しているとき、それを頭の中に保持しておくことができる。数学者が取り組んでいる問題を頭の中に入れているのといっしょだ。数学者は学校で子供たちが習っているように、紙の上で問題の解いているわけではない。彼らは多くの部分を頭の中でやっているのだ。問題の領域をよく把握しようと努めることで、普通の人が記憶にある育った家の中を歩き回れるように、数学者は頭の中で問題空間を歩き回ることができる。最高の状態で行われるプログラミングもそうだ。プログラムの全体を頭の中に入れたなら、それを思い通りに操れるようになる。 これはプロジェクトのはじめにおいては特に価値がある。それはプログラムを作り始めるときに最も重要なことが、やっていることを変えられるということだからだ。単に問題の解き方を変えるという ことではなく、解いている問題
私の個人ブログに掲載したら好評でしたので、こちらでもご紹介してみます。 最近知ったんですが、生年月日から年齢を計算する簡単な計算式というのがあるそうです。 (今日の日付-誕生日)/10000の小数点以下切捨て。 PHPで書くと echo (int)((20070823 - 19850101)/10000); Perlで書くと print int ((20070823 - 19850101)/10000); JAVAで書くと System.out.println( (int)((20070823 - 19850101)/10000) ); という感じになります。 日本の法律を確認してみました。誕生日の前日が終了する瞬間(すなわち誕生日をむかえる午前0時00分の直前)に1歳を加えることになる。ただしうるう年など、年によって期間を定めた場合において最後の月に応当する日がないときは、その月の末日を
Time-Savers: Code Beautifier And Formatter 各種プログラムコードの整形ツール集。 ブラウザ上でコードを自動で美しく整形してくれるツールなどがまとまっていました。 コードが綺麗だとメンテナンスしやすくて多くのメンバーでも作業しやすくなりますね。 Quick Highlighter - コードをハイライト化したHTML&CSSを吐き出せる PrettyPrinter - PHP, Java, C++, C, Perl, JavaScript, CSSコードを整形 PHP Code Beautifier - PEARのコーディング規約に沿った形にPHPコード整形 Ruby Script Beautifier - Rubyスクリプト整形 Tabifier - インデントツール CSS Beautifier - CSS整形ツール Highlight.js -
レベル0 レベル0の人はプログラムを一度も書いた事がありません。 レベル0の人は、プログラミングとはどのような作業なのか想像もつきません。 世の中のほとんどの人は、このレベルです。 レベル0の人は、プログラムをかけるプログラマはいわゆるオタクだと思っています。 ありがちな発言 「プログラミングできるんだ。ふーん。凄いね。」 レベル1 レベル1の人は学校の授業の課題としてプログラムを書いた事があります。 しかし、あまりプログラミングには興味を持てず、コンピュータに詳しい知人に課題をやってもらったり、教えてgooなどで課題の答えを聞いたりしているので、仕事としてプログラミングはできません。 ありがちな発言 「教えて下さい」 レベル2 このレベルの人は、2度ほど何かの小規模プログラムを書き上げた経験を持っています。 段々とプログラミングへの興味が広範囲に及ぶようになり、勉強をするのが楽しくて仕方
にわかに注目を集めている、URLをIDとして利用する認証プロトコル、OpenID。本連載ではこのプロトコルの仕組みを技術的に解説するとともに、OpenIDが今後どのように活用されていくのかを紹介する(編集部) OpenIDってなんだろう? 現在、国内外でにわかに注目されつつあるOpenIDという仕組みを聞いたことがあるでしょうか? これはユーザー中心の分散ID認証システムですが、まだ日本での普及は進んでいない状況です。 これにはいくつか原因が挙げられるでしょうが、筆者はOpenIDが正しく理解されていないことが原因だと考えます。 本連載ではOpenIDの現行仕様、およびその拡張仕様とともに、実装を例に取りつつOpenIDとは何かということを明らかにしていきます。最終的にはOpenIDが切り開く未来を見るため、現在策定中の次期仕様についても触れていきたいと思います。 広がりつつあるブラウザベ
ここ数日、私はずっとペアプログラミングをしている。 ペアプログラミング自体は、これまでに何度も経験したことがある。 しかし今回の試みが今までと違うのは、 一日中、ペアプログラミングしかしないという点である。 1セット1時間半、15分の休憩を入れて、 ドライバーとナビゲーターを交互に入れ替えて毎日4セットやる。 このところ、これを何日も続けている。 こうやって、ある程度ストイックに続けてみることで、 わかってきたことがある。 それは、ペアプログラミングにはメガトン級の破壊力があるということだ。 プログラマーは絶えず誘惑にさらされている。 調べ物でウェブを見たついでに何時間もネットサーフィンしてしまったり、 考えたことをメモするついでに2時間かけてブログを書いてしまったり、 仕事の用事で知人に IM したついでにしばらくだべってしまったり、 Twitter に書き込んだついでに Friends
ネットワーク応用通信研究所 特別研究員。島根の田舎に住みながら国際的なオープンソース・ソフトウエアの開発に挑むプログラマ。家族6人で幸せな田舎暮らしを満喫している。バグと原稿の締め切りがなければもっと幸せなのに,と思いつつ,考えてみれば,それらがないならないで,別の困ったことがあるよなあと思う今日このごろ。 皆さんは「サピア・ウォーフ仮説」をご存じでしょうか。これは言語学における古典的な仮説の一つで,「人間の思考は使用する言語とそれに付随する文化に影響を受ける」というものです。もし仮に数字を3までしか持たない言語があったとすると,その言語を使用する文化に生まれ育った人間は3以上の数を認識できない,といったことです。言語学的にはこの仮説は否定されているようですが,日常生活の中では,この仮説が本当ではないかと感じる経験がたびたびあります。 例えば,私は年に数回海外に出張して講演をする機会があり
aki note ≫ Google 電話面接を受けました orz (いまは消えてるけど)にて割り算が壊れました。自分で実装してみてくださいという質問が紹介されていた。せっかく(?)の機会なので、割り算だけでなく、四則演算を全部壊してみて、JavaScript で実装して見ることにした。JavaScript を選んだのは、コンパイル不要、ビット演算がある、Firebug で手軽に確認できる、という理由から。それ以上の深い意味はない。ということで、次のような問題に一般化してみた。問い四則演算を JavaScript で実装しなさい。演算子は ==、!= およびビット演算子のみ使ってよいものとします。補足例えば、for 文で for(var i = 0; i { // ... } と書くためには、++ 演算子は次のように定義できる。 function increment(i){ var c =
id:hirose31さんのファイルを変更したら自動的にreloadする方法 - (ひ)メモにあるobserve-mtimeを使わせていただいて「編集したら自動コンパイル」とかやってるんですが、裏で動かしてるのでいつコンパイルが終わったのか分からないんですよ。 でも音は出したくないので、通知領域にテキストバルーンを表示させることにしました。Windowsだし。 (MacだとMac::Growl::RegisterNotificationsかな?) cpanからWin32::GUI - metacpan.orgをインストールして、 % perl -MWin32::GUI -e '$t=3;$n=Win32::GUI::Window->new->AddNotifyIcon(-balloon=>1,-balloon_tip=>q{COMPLETE});sleep $t;'と、これだけで3秒間「C
ファイルの更新を監視して、変更されたらMozReplなFirefoxさんにreload指令を送る。 コンテンツのファイルをいじってて、いちいちF5するのがめんどいので。 reload指令を受理できるように MozLab - Trac をインストール。 ツール→MozLab→Start Replで開始。 extensions.mozlab.mozrepl.autoStartをtrueにすれば、動きっぱなしにできるのかも。 4242でlistenしてるのはlocalhostだけなので、他のマシンからtelnetしたいときは、パケットリピータを使う。 例えばstoneを使って、 4242宛てのパケットをlocalhost:4242にリピートする ただし、接続を許可するのは10.6.25.201と10.6.25.202からのみ とするときはこんな感じ: stone -nr localhost:42
今月11日、それまで「Apollo」のコードネームで開発が進められてきたAdobeのRIAプラットフォームが、「AIR(Adobe Integrated Runtime)」という正式名称を与えられて、β版のリリースに至った。α版に比べて多くの機能追加が行われており、プラットフォームとしての完成度がかなり高まった感がある。 そこで、本連載では、そのβ版を使用し、AIRが持つ様々な機能と、それを利用したプログラミングテクニックを紹介していきたいと思う。 今回は連載の1回目ということで、AIRの概要とインストール方法、およびサンプルの実行方法を説明する。β版の機能を利用したプログラミングについては次回から解説しよう。 AIRの概要と利点 AIRは、先ほども述べたとおり、コードネーム「Apollo」として開発が進められてきた、Adobeの次世代RIAプラットフォームだ。AIRは「Web開発技術をそ
皆さん、先月の半ば頃からmixiのトップページの3列目に「日記キーワードランキング」というコーナーが登場していたのをご存じでしょうか。手前味噌ながら、これはとても面白い機能で、毎日ランキングが更新される度に素敵なランキングが作られていて悦に入っているmikioです。今回は日記キーワードランキングの秘密についてお話します。 日記キーワードランキングとは、日記に書かれた言葉の使用頻度を統計的に処理して、今話題になっている度合を算出し、その上位をランキング形式で表示する機能です。トップページには5位までが表示されるので、それをチェックするだけで最新の流行を把握することができます。さらに「30位までを読む」に進むと30位までのキーワードとその関連日記が表示されます。詳細を知りたい場合はキーワードをクリックすると、そのキーワードで日記検索をした結果を見ることができます。一通り見るのに10分くらいでし
第0回 あらためてRuby入門 まつもとゆきひろ氏自身による「Ruby入門」をお届けします。日経Linuxの連載開始前の特別企画(2005年4月号)として,Rubyが他のスクリプト言語やオブジェクト指向言語とどこが違うのか,なぜ便利なのかを中心に解説してもらったものです。 ● 基本と他言語との違い ● 実装とRuby誕生の秘密 第1回 プログラミングとオブジェクト指向の関係 プログラマを目指す人々の中にも,「オブジェクト指向は難しい」とか,「なかなか分からない」という印象を持つ方が多いようです。そこで,Rubyを題材にオブジェクト指向という考え方について説明していきます。 ● その1 ● その2 ● その3 第2回 抽象データと継承 オブジェクト指向プログラミングを構成する3原則のうち,前回は「ポリモーフィズム」を学びました。今回はオブジェクト指向の歴史を復習した後,残りの「データ抽象」と
ここはプログラミングの原則を集める Wiki です。巨人の肩に乗って、ふつうの人がよいプログラムを書くための指針を集めたいなと思ってます。 目次 よいデザインのための Concepts + Principles DRY (Don'tRepeatYourself) 名前重要 直交性 トラッシュではなくクラッシュ DuckTyping よいルーチンを書く 凝集性 結合性 契約による設計 (DesignByContract) ルーチンを作る正当な理由 よいモジュールを書く 適切なモジュール性を確保するために守らなければならない5つの原則 開放/閉鎖原則 (OpenClosedPrinciple) よいアプローチのための Concepts + Principles 曳光弾 可逆性
Twitterをぼげぇ〜と眺めていて発見。 LOLCODE Matzさんでさえ言及した様子がないこのLOLCODEですが、なかなかどうして面白い……って、小飼弾さんの「404 Blog Not Found:君は新言語xtalを知っているか?」をまともにパロる力量に、残念ながら全くもって欠けているので、ここからは普通に。 さて……ってんでさっそく話を始めたいところですが、LOLCODEの説明に入る前に、予備知識を少し。 ここ数ヶ月、英語圏のブログ等で、文法的におかしな英語やネット用語等からなるユーモラスなキャプションの付された、猫の画像を見かけた方も多いでしょう。それらはLOLCATSといって、まぁ日本でいえば、猫の写真を、はてなセリフで2ch語と掛け合わせたみたいな感じで、可愛い猫とユーモラスなキャプションとの対比が、激烈なカワユス効果を生み出しています。最近では、猫に限らず、様々な動物や
2007年05月23日05:00 カテゴリLightweight Languages 君は新言語xtalを知っているか? Lua に関してねっとをぼげぇ〜と眺めていて発見。 xtal-language - Google Code xtal_doc/syntax xtal_doc/ref xtal_doc/cpp 新言語 Xtalを作る日記 DOFI-BLOG どふぃぶろぐ Matzさんでさえ言及した様子がないこのxtalですが、なかなかどうして面白い。for loopの後ろにelseが書けたり、Fiberを持っていたり...callee()で無名再帰関数も書けたり...そうそそう、...といえば、可変引数の引数は、...という配列に入って、...[0]がその最初の要素というのも楽しいですね。 XTALというとOSの方を思い出してしまいますが、組み込み向けという点で共通しているかも。偶然の一
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く