タグ

ブックマーク / labs.cybozu.co.jp (17)

  • 日本のウェブデザインがこんなに悪い^H^H違う理由

    Why Japanese Web Design is so… Different?(なぜ日のウェブデザインはこんなに…違うのか?) というのが、はてなブックマークで人気になっていたので読んでみました。 英語 […] Why Japanese Web Design is so… Different?(なぜ日のウェブデザインはこんなに…違うのか?) というのが、はてなブックマークで人気になっていたので読んでみました。 英語で日のウェブデザインを語る記事は、良くわかってないものも多いのですが、今回のはかなり正確に現状やその理由を捉えているように思いました。ポイントをざっとまとめます。 禅庭などの文化、建築などで知られる日のデザインが、ウェブについては15年も古く見えるのはなぜか? 人気サイトとして楽天を例に (同様の例としてヤフージャパン、ニコニコ、JR東日、読売新聞なども) 詰め込ま

    日本のウェブデザインがこんなに悪い^H^H違う理由
    poppen
    poppen 2013/11/13
  • 秋元@サイボウズラボ・プログラマー・ブログ: regist という英語は無い

    さて、サイボウズラボの立ち上げプレスリリースが出たこの瞬間、とりあえずこのブログを見に来る人も多いと思われる。そんなチャンスに、このブログを読んだ人、特に日のソフトウェア技術者に一番訴えたいことってなんだろう? と考え […] さて、サイボウズラボの立ち上げプレスリリースが出たこの瞬間、とりあえずこのブログを見に来る人も多いと思われる。そんなチャンスに、このブログを読んだ人、特に日のソフトウェア技術者に一番訴えたいことってなんだろう? と考えた。 それは、日プログラマーだけが使う謎の動詞 registについてである。そんな単語は存在しないから、ちゃんと “register” を使おう。 Google.com で regist.cgi を検索 Google.com で regist.php を検索 出てくるのは日語のサイトばっかりである。拡張子を”.jsp” や “.asp” にし

    秋元@サイボウズラボ・プログラマー・ブログ: regist という英語は無い
  • Kazuho@Cybozu Labs: Q4M 0.8.3 をリリースしました (含 FreeBSD サポート)

    « MicroblogCon1 の報告と Q4M 0.8.1 リリースのお知らせ | メイン | Greasemetal (Google Chrome 用 Greasemonkey) を公開しました » 2008年09月02日 Q4M 0.8.3 をリリースしました (含 FreeBSD サポート) MySQL 5.1 のプラガブルストレージエンジンとして動作するメッセージキュー Q4M のバージョン 0.8.3 をリリースしました。今回の修正点は、以下のとおりです。 シャットダウン時 (および DROP TABLE 時) に発生する可能性のあるデッドロックの修正 FreeBSD のサポート FreeBSD のサポートについては、ソースからのビルドエラーを修正したのに加え、バイナリ版も同時にリリースするようにしました。MySQL AB の公式バイナリと組み合わせて動作確認を行っておりますの

  • Kazuho@Cybozu Labs: MySQL (InnoDB) に直接アクセスしてタイムライン処理を高速化する話

    « フレンド・タイムライン処理の原理と実践 | メイン | MySQL の ORDER BY を高速化 » 2008年06月12日 MySQL (InnoDB) に直接アクセスしてタイムライン処理を高速化する話 フレンド・タイムライン処理の原理と実践 の続きです。 先のエントリでは、プルモデルの速度が当初予測していたよりも遅かった (というより SQL レイヤでのオーバーヘッドが大きそうだった) ので、MySQL Internals メーリングリストで質問したりしながら、C++ で直接 InnoDB にアクセスするようなコードを書いてみました。 タイムライン構築速度 タイムライン/秒 SQL そしたら、10倍以上高速に! ベンチマークを perl ベースのものから mysqlslap に変えたのですが、プッシュモデルの 2/3 の速度が出ています。これなら、データサイズが約 1/10 にな

    poppen
    poppen 2008/06/15
  • Kazuho@Cybozu Labs: Perl で埋め込み SQL を使って楽をする話

    « Japanize for IE バージョンアップのおしらせ | メイン | Filter::SQL を使って掲示板を書いてみました » 2008年04月16日 Perl で埋め込み SQL を使って楽をする話 DSL (ドメイン固有言語) は、プログラム開発の生産性を向上させる有力な手段です。そして、よく使われる DSL の代表例が正規表現と SQL だと思うのですが、前者に比して後者を嫌いな人が多いようです。なぜだろうと思ってつぶやいたところ、「SQL はリテラルじゃないから!」という答えが tokuhirom さんから返ってきました。そういえば例えば Pro*C のように C で Embedded SQL というのは良く聞く話なのに、Perl では同様の例がないような感じだったので、作ってみました。Perl で埋め込み SQL を実現するソースフィルター Filter::SQL

  • Google App Engineを使ってみた

    Google App Engine(書きにくい。GAEとか略すのかなと予想)のページで、使える状態になっていたのでボタンを押して利用開始。 アプリは3つまで作らせてくれるということなので、まず Application名 […] Google App Engine(書きにくい。GAEとか略すのかなと予想)のページで、使える状態になっていたのでボタンを押して利用開始。 アプリは3つまで作らせてくれるということなので、まず Application名 “akky” を確保。 これで、http://akky.appspot.com/ が使えるようになる。(Google Appsのように、独自ドメインへのマップもできる予定) まずはローカルでちゃんと動くPythonアプリを作る、ということで、さきほどインストールしたSDK上で作業。 C:> cd “Program FilesGooglegoogle_

    Google App Engineを使ってみた
  • Google App Engine SDKを使ってみた | 秋元@サイボウズラボ・プログラマー・ブログ

    [追記] これを書いたあとアカウントが入手できたので、実際にGoogle App Engineのサーバ上で簡単なスクリプトを動かしてみた。 Googleが今晩(米国時間)のパーティーCampFireOneでTech CrunchメンバーやRobert Scobleさんら参加者に対して発表したGoogle App Engine, AmazonがS3+EC2+SQS+SimpleDB等で先行している「スケールする従量制ホスティングサービス」の競合サービスのようだ。 Googleが自社で使っているような大規模展開が可能なサーバ+ミドルウェア群を、外部に提供するということ。まずはPythonGoogle自身も使っている各種ライブラリ、WebフレームワークDjango、を積んでの公開だが、他の言語にも対応していくらしい。 やはりGoogleというか、ディスク500MB、月500万PVまでは無料で使

    Google App Engine SDKを使ってみた | 秋元@サイボウズラボ・プログラマー・ブログ
  • TAKESAKO @ Yet another Cybozu Labs: 続イメージファイト - HTML 2.0 New Browser Detection

    Shibuya Perl Mongersテクニカルトーク#8 で発表した「続イメージファイト」の資料を SlideShare で公開しました。 Shibuya.pm#8 続イメージファイト - HTML 2.0 New Browser Detection JavaScriptCSS Hacksを一切使わずにHTMLでブラウザを判別するハックの紹介です。 HTML 2.0 - Browser detection [3] ブラウザ判別のデモのページにアクセスすると、使っているブラウザの画像が表示されます。 このimgタグのsrc属性はfirefox2.0、firefox1.5、その他のGeckoエンジンを搭載したブラウザ、Safari2、Safari3、Opera、ie、w3m、lynxなどのブラウザの判別に対応しています。 テキストブラウザの判別

  • Kazuho@Cybozu Labs: MySQL の高速化プチBK

    « システムコールの最適化 | メイン | キャッシュシステムの Thundering Herd 問題 » 2007年09月20日 MySQL の高速化プチBK 鴨志田さんに教えていただいたのですが、MySQL のクエリは数値をクォートしない方が高速になるらしいです。たとえば以下の例では、160万件の整数から4の倍数を数えていますが、数値をクォートしないほうが約50%も高速になっています。 mysql> show create table numbers; +---------+----------------------------------------------------------------------------------------+ | Table | Create Table | +---------+--------------------------------

    poppen
    poppen 2007/09/20
  • Kazuho@Cybozu Labs: Perl から MySQL に非同期アクセスする方法

    « サーバシグニチャは隠さないのが当たり前 | メイン | swifty-0.02 と Perl バインディング » 2007年09月10日 Perl から MySQL に非同期アクセスする方法 mod_perl のプロセス内でやるのに POE でイベントループ回せ、ということ? もうちょいkwsk! > b:id:kazuhooku naoyaグループ - naoyaの日記 - 非同期SQLサーバ エントリ全体の趣旨はさておき、ソケット通信を非同期化するためにまた別のソケット通信を行うという使用例に違和感を覚えたのですが、回避策としてブクマコメントで提示した POE::Component::EasyDBI も内部で fork (&プロセス間通信) してるんですね。変なコメントしてごめんなさい忘れてください。って、それだけではなんなので... ここから題。 私はそういうケースに遭遇したこ

  • 市販のプリンターは印刷時に追跡用の隠しコードを描き込んでいるものがある

    どのプリンターで印刷したか、調べたらわかる? プリンターによっては、印刷した際に肉眼では見つけづらい黄色の点を勝手に印字することで、その紙に印字したプリンターのメーカー名や機種名、プリンターのシリアルナンバーや印刷日時ま […] どのプリンターで印刷したか、調べたらわかる? プリンターによっては、印刷した際に肉眼では見つけづらい黄色の点を勝手に印字することで、その紙に印字したプリンターのメーカー名や機種名、プリンターのシリアルナンバーや印刷日時までが読み取れるようになっているらしい。 顕微鏡で拡大したイエロードットの写真 この件自体は、2005年に一度話題になっていた。 スラッシュドット ジャパン | Xeroxプリンタの印刷物に追跡コード HotWired Japan ユーザーの知らぬ間に「追跡コード」も印刷 最初聞いたときは頭の悪い陰謀論みたいな話だ、と思ったけど、これを調べて注意を呼

  • TAKESAKO @ Yet another Cybozu Labs RejectKaigi2007まとめページ

    まだ見当たらなかったようなのでRejectKaigi2007のまとめページを作ってみました。(ただのリンク集ですが) RubyKaigに引き続きおこなわれた、RejectKaigi - ひとりあたり2分30秒ほどの時間があります。 - 時間切れで発表できなくても泣かない。 - トラブルで発表できなくても泣かない。 Reject会議 開催の経緯 [ruby-list:43595] [Ruby会議2007]RejectKaigi 2007の告知 RubyKaigiが終わったあとにRejectKaigiを開催するよ - 角谷HTML化計画 (2007-06-07) RejectKaigi 2007 発表内容 なぜRject Kaigiが行なわれることになったか勝手に語る (井上泰之さん) [発表資料] (log) 「ゆきひろ」(not ひろゆき) 認証 (斎藤さん) (log) [家はこちら]

  • Kazuho@Cybozu Labs: 安全な JSON, 危険な JSON (Cross-site Including?)

    « クロスサイトのセキュリティモデル | メイン | E4X-XSS 脆弱性について » 2007年01月06日 安全な JSON, 危険な JSON (Cross-site Including?) 先のエントリで、 JSON については、JavaScript として副作用をもたない (もたせようがない) ゆえに文法違反であるがゆえに、秘密情報を含むデータフォーマットとして使用することができるのです。 (Kazuho@Cybozu Labs: クロスサイトのセキュリティモデル) と書いたのですが、認識が甘かったようです。Jeremiah Grossman: Advanced Web Attack Techniques using GMail によると、配列の初期化演算子 [] の動作を外部から変更することができる注1とのこと。 実際に手元の Firefox 1.5 で試してみたところ、JS

  • TAKESAKO @ Yet another Cybozu Labs: Development Environment Conference 報告

    事前登録開始から最速4分で締め切られたという超人気カンファレンス Development Environment Conference (通称:DECON) に行ってきました。無理やり日語に訳すと「開発環境会議」ということで、Eclipse とか VisualStudio とかの話を期待していた人は完全にスルーでした。当にありがとうございました。スピーカー陣の構成からしてそのような話を期待していた人はいなかったと思いますけど。 ということで、DECONの各セッションで印象に残った点や感想をまとめてみました。 ■はてなと私の開発環境(伊藤直也) 会社では半分以上がプログラマ(21人中12人)で、11人がPerl使いで、1人がRuby厨。終始id:secondlife氏がネタにされていました。id:higepon氏はUbuntu Linuxを使っていて、その他の人は Windows coL

    poppen
    poppen 2006/09/14
  • Kazuho@Cybozu Labs: CSRF 対策 w. JavaScript

    « PERL5WEBDB | メイン | IIS のログを tail -f » 2006年04月11日 CSRF 対策 w. JavaScript CSSXSS に対して脆弱でない CSRF 対策とはどのようなものか、という議論が続いているようですが、JavaScript を用いてよいのであれば、簡単な対策手法が存在すると思います。 CSRF 対策では、フォームの hidden パラメタに、なんらかのトークンを埋め込むことで、第三者によるフォーム偽造を防止するのが一般的です。しかし、 CSSXSS を用いて、そのトークンを第三者が読み出せてしまうという点が、問題をややこしくしているように思えます注2。 しかし、 JavaScript を用いて良い環境では、単純な対策が存在すると思います。 HTML 内にあらかじめトークンを埋め込んでおくのではなく、フォーム送信時に、ブラウザ側でトークンを埋

  • TAKESAKO @ Yet another Cybozu Labs: livedoor Reader ベータ版公開

    Shibuya.js Technical Talk #1で紹介されていた livedoor の新しいサービス「livedoor Reader」のベータ版が公開されたみたいです。一般からもアクセスできるようになったみたいなので早速使ってみました。 RSSリーダーの画面はこんな感じ: 利用者がストレスなく使えるようにいろんな工夫が施されていて、マウスだけでなくショートカットキーでも操作できるようになっています。 右ページのスクロール下上はviライクにj/k、 左のフィード選択の上下はa/sとなっています。 とりあえずキー操作はこれだけ覚えておけば損はないはず。 気になった記事はpでピンに止めておいて後で読むことも。 UIが斬新でまだ操作に慣れていないところがありますが、現在はまだベータ版とのことで今後徐々に改善されていく部分もあるでしょう。初心者ユーザ層をどれだけ取り込めるかが普及の分かれ道だ

    poppen
    poppen 2006/04/20
  • Kazuho@Cybozu Labs: C - a pseudo-interpreter of the C programming language

    « URL と Base64 | メイン | C-0.02 » 2006年01月06日 C - a pseudo-interpreter of the C programming language PerlRuby では、ワンライナーで処理が書けて便利です。でも、なぜか C では書くことができません。仕事上の都合で、小さな処理を C 言語で書く必要があったので、ワンライナーも書くことのできる C 言語のインタプリタ(?)を作ってみました。 ダウンロードして、 /usr/bin にでもコピーすれば、インストール完了です。 2005/01/10 追記: 最新情報は Cインタプリタ アーカイブをご覧ください 使い方は、こんな感じです。 % C -e 'printf("hello world\n"); hello world % C --help C - a pseudo interpret

    poppen
    poppen 2006/01/11
  • 1