タグ

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

  • 手から火炎が飛び出す! 漫画のようなファイヤーパンチが撃てるという工作

    パンチを放つと炎が出る、ファイヤーパンチを工作で作った Hackster.io のアレン・パンさん(Allen Pan)が、作り方を公開しています。 動画 01:00 からの「リアル・カンフー・マスター」オスカー・ペレス […] パンチを放つと炎が出る、ファイヤーパンチを工作で作った Hackster.io のアレン・パンさん(Allen Pan)が、作り方を公開しています。 動画 01:00 からの「リアル・カンフー・マスター」オスカー・ペレスさんの試技がカッコいい。 材料は、 加速度センサーとArduino 缶からブタンを放出する電磁弁 バチバチッと火がつくアークライター 加速度センサーからのデータの判定で、「良いパンチ」じゃないと火がでないようになっているそうです。短時間に一方向に大きく動いた時だけを判定しているので、手を横に薙ぎ払ったり、自分に向けたりしても発動はしない、と。なんで

    手から火炎が飛び出す! 漫画のようなファイヤーパンチが撃てるという工作
    kenkitii
    kenkitii 2017/08/05
    これほしいいい
  • Kazuho@Cybozu Labs: JavaScript から Flash の便利な機能を使う方法

    « Comet の正しい使い方 | メイン | キーワード抽出のススメ (Lingua::JA::Summarize がアップデート) » 2007年03月14日 JavaScript から Flash の便利な機能を使う方法 先月・今月と新しいメンバーが加わったサイボウズ・ラボですが、いま社内でfont-familyが密かなブームです。ということで、ブラウザで使用できるフォント名一覧をJavaScriptで取得する方法について調べてみました。 (中略) ■ 2. Flash の TextField.getFontList() を JavaScript から呼び出す (TAKESAKO @ Yet another Cybozu Labs: JavaScriptフォント名一覧を取得する3つの方法) JavaScript から Flash のちょっとした機能を呼び出すためだけに、毎回 Fla

  • Kazuho@Cybozu Labs: JavaScript/1.7 で協調的マルチスレッド

    « Japanize - ウェブサイトの高速化 | メイン | Japanize が Firefox にフィッシングサイト扱いされている件について » 2007年05月25日 JavaScript/1.7 で協調的マルチスレッド JavaScript/1.7 の話なので Firefox 限定です。以前、 残念ながら、JavaScript には非同期メッセージを同期化する方法はない!残念!><ほんとに残念! JavaScript 1.7 なら yield でできるんじゃないかと思いました。 Kazuho@Cybozu Labs: JavaScript で非同期処理 と書いたっきり失念していたのですが、社内で話題になったので実装してみました。こんな感じです。 function runnable(f) { var o; o = f(function () { o.next(); }); o.ne

  • Webページの本文抽出 (nakatani @ cybozu labs)

    Webページの自動カテゴライズ の続き。 前回書いたとおり、パストラックで行っている Web ページのカテゴライズでは、Web ページの文抽出がひとつの鍵になっています。今回はその文抽出モジュールを公開しつつ、使っている技法をざっくり解説などしてみます。 モジュールの利用は至極簡単。require して analyse メソッドに解析したい html を与えるだけ。文字コードは UTF-8 です。 【追記】大事なこと書き忘れ。モジュールは Ruby1.8.5 で動作確認していますが、特別なことはしていないので、1.8.x なら動くと思います。 $KCODE="u" # 文字コードは utf-8 require 'extractcontent.rb' # オプション値の指定 opt = {:waste_expressions => /お問い合わせ|会社概要/} ExtractCont

  • 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を使ってみた | 秋元@サイボウズラボ・プログラマー・ブログ
  • 風鬼 – 擬似アイトラッキングを行なうヒートマップ生成サービス | 秋元@サイボウズラボ・プログラマー・ブログ

    FENG GUI(風鬼)は、ユーザがウェブページのどのあたりを良く見るのか、を色などでわかりやすく見せるヒートマップを、任意のURLやページ画像から作成してくれるというサービス。 普通なら、視線の位置を追跡するための専用メガネをつけたりして収集しないとどこを見ているか取れないので、専用のハードウェアが必要になる。 また、最近だとウェブカメラで目の動きを解析して視線を割り出すような技術が実用化されている。パソコンにカメラがついていて、被験者がカメラで撮影されることに同意していれば、ネット越しにでもユーザビリティテストが行なえるだろう。 しかし、このFENG GUIがやっているのは、もっとお手軽なもの。そのかわり精度は下がる。何をやっているかというと、ウェブページ上のどんなデザインに対して人が注目するのか、というデータを元に、「このあたり良く見られそう」という箇所を類推しているのだ。 どういう

    風鬼 – 擬似アイトラッキングを行なうヒートマップ生成サービス | 秋元@サイボウズラボ・プログラマー・ブログ
  • cloth – 布の動きをシミュレート | 秋元@サイボウズラボ・プログラマー・ブログ

    Flashによる布の物理的なシミュレーション。 二点が壁に固定されていて、好きなノードをつまんでひっぱると、布のように伸びたり、ひらひらと舞ったりする。手を離すと元に戻ろうとする。 布のサイズを変更したり、部屋の奥にある扇風機を動かしたりもできる。カーソルキーで視点の変更も。 via del.icio.us/popular この記事は移転前の古いURLで公開された時のものですブックマークが新旧で分散している場合があります。移転前は現在とは文体が違い「である」調です。(参考)記事の内容が古くて役に立たなくなっている、という場合にはコメントやツイッターでご指摘いただければ幸いです。最新の状況を調べて新しい記事を書くかもしれません

    cloth – 布の動きをシミュレート | 秋元@サイボウズラボ・プログラマー・ブログ
  • Javascript で実装した Ruby インタプリタ JSRuby 0.1 リリースしました。 (nakatani @ cybozu labs)

    « MyMiniCity 日語化 | メイン | JSRuby から jQuery を使う ( Javascript 連携 ) » Javascript で実装した Ruby インタプリタ JSRuby 0.1 リリースしました。 あけましておめでとうございます。 1月からサイボウズ・ラボのオフィスが引っ越しました。新年から気分も新しくぶりぶり仕事します。よろしくです。 というわけでちょっとずつ作っていました Javascript で実装した Ruby インタプリタの "JSRuby" を一区切り付けるべくバージョン番号を付けてリリースしました。 JSRuby Project Page (CodeRepos) http://coderepos.org/share/wiki/JSRuby JSRuby Test Page http://labs.cybozu.co.jp/blog/naka

  • Google Appsメール移行APIがリリース | 秋元@サイボウズラボ・プログラマー・ブログ

    via Digg ついに来たか。他のメールクライアントの既存メールをGmailへ移行させるためのAPIGoogle Apps Email Migration APIだ。 自分のサーバにてAtom形式でメールの生データを生成し、それをこのAPIに伝えることによって、Google Appsがメールデータを読み込み、Gmailのデータとして反映させるという仕組みのようだ。 Javaと.NETについてはクライアントの作り方のチュートリアルが用意されている。GData APIのライブラリを使えば、他の言語でも大差なく作れそうだ。 第一のターゲットはOutlookだろう。日ではそれほど強くないが、アメリカではOutlookのシェアは高く、メールシステムを取りにいこうとする製品はOutlookとのシンクや移行手段を提供することが求められることが多い。 # Share360(サイボウズOfficeの英

  • 西尾泰和のブログ @ Cybozu Labs: Pythonでtypoを素早く察知する方法

    先日「スクリプト言語は便利だけど、 長時間計算した後で綴り間違い(typo)で落ちたりすると やる気がなくなるよね」 という話を聞きました。 たしかに、綴り間違いで落ちるのは悲しいです。 せめて「代入されたけども読み出されていない変数」とか 「代入される前に読み出されている変数」が出力できれば、 早めに綴り間違いに気づくことができますね。 そこで「先日公開したCodeHackモジュールを使えば簡単にできるよ」と言いながら作ったのが今回紹介するモジュールです。 CodeHack 0.05に同梱しました。 CodeHack 0.06に同梱しました。 使い方は簡単です。 たとえば下のような関数fooを定義したとします。 def foo(left, top, right, bottom): "function for test" width = right - left hieght = top

  • 西尾泰和のブログ @ Cybozu Labs: Python拡張の作り方

    いくつかの落とし穴をよければ意外と簡単だったので、 この文章を必要としている誰かのために整理してみることにします。 追記: おびなたのはてな日記 - distutils with boost.pythonで詳しく説明されているように、C++とBoostを使うともっと楽になるようです。近いうちに試してみます。 また、 Cybozu Developer Network: Python調査報告 (2006/10) によれば 「PEAKの setuptools は distutils の拡張で(中略)distutils の上位互換であるため、setuptools を使用しない理由はありません。積極的に使用しましょう。」とのことなのでこちらも試してみたいと思います。 Cのコードを用意する 書き換えるべき所を明確にするために、 [[MODULE_NAME]]というように表記しました。 同じ名前の括弧に

  • 西尾泰和のブログ @ Cybozu Labs: コーディング過程をで中継

    右半分がPythonの対話的インタプリタIdleで、左半分がチャットのLingrです。 対話的にコードを書いて試している過程がチャットでどんどん公開されていきます。 Lingrのボット(チャットを読み書きするプログラム)は inforno :: Python版Lingr APIライブラリ を使うと簡単に書けます。 リンク先の例では入退室と発言しかありませんが、 他人の発言をウォッチするのも User Observe in Lingr Developer Wiki を使うだけで簡単にできます。 しかし、Lingrにコードを書くのはオートインデントとかがなくて面倒なので、 対話的インタプリタの側からLingrに「実行する内容」と「実行した結果」を送信するようにしました。 チャットに書いたコードが自動的に実行されるとなるとセキュリティが心配ですが、 これは自分のマシンで走るのは自分の書いたコード

  • 西尾泰和のブログ @ Cybozu Labs: Pythonでreduce(l|r)

    Pythonで実装してみました。 404 Blog Not Found:Code Snippets - reduce(l|r)を実装汁! 解答は下のようになります。 >>> reducel = reduce >>> reducer = lambda f, xs: reduce(lambda y, x: f(x, y), reversed(xs)) 動作を確認してみましょう。 >>> concat = lambda x, y: "(%s#%s)" % (x, y) >>> reducer(concat, range(1, 5)) '(1#(2#(3#4)))' >>> reducel(concat, range(1, 5)) '(((1#2)#3)#4)' 解説は後で書きます。 = ちなみにHaskellでは、まともに書くと下のようになってとても悲しいです。 reducer = foldr1

  • 西尾泰和のブログ @ Cybozu Labs: Python2.4以降での高速なソート

    どうも、ご無沙汰です。 このブログをはじめた当初は「1日1エントリー公開しよう」 などともくろんでいたのですが、はやくも2週間以上間が空いてしまいました。 今回の話はCPythonにバージョン2.4から追加された機能についてです。 みなさんは、例えば「タプルの入ったリストを、そのタプルの2番目の要素でソートしたい」とか 「Entryオブジェクトのリストを、その属性updateTimeの値に従ってソートしたい」という場合、 どうしていますか? まずは2.3以前から可能だった 「sortメソッドに比較用の関数を渡す方法」の実行にかかる時間を調べてみます。 # sortメソッドに比較用の関数を渡す方法 d.sort(lambda x, y: cmp(x[1], y[1])) 実行時間の測定にはtimeitモジュールを使います。 (10.10 timeit -- 小さなコード断片の実行時間計測)

    kenkitii
    kenkitii 2007/05/08
    sortについて
  • 西尾泰和のブログ @ Cybozu Labs: PythonワンライナーでUSBミサイルランチャーを制御

    先週の金曜日、弊社の 竹迫、 鶴岡 と共に 弾さんのお宅で行われた Hackathonに参加しました。 内容に関しては YappoLogs: YAPC::Asia Hackathon at Dan the hotelが詳しいです。 新人研修にかまけて記事にせずに放置していたところ TokuLog 改め Perl を極めて結婚するブログ - missile on ruby.でリークされてしまいましたが、ワンライナーで作りました。 下のコードを実行すると、動作テストとして三三七拍子を奏でた後、 インタラクティブに操作できるモードになります。 [globals().__setitem__("COMMAND",{'right':[8,0,0,0,0,0,0,0],'d':[2,0,0,0,0,0,0,0], 'f':[16,0,0,0,0,0,0,0],'fire':[16,0,0,0,0,0,0

  • TAKESAKO @ Yet another Cybozu Labs: Shibuya.esの動画公開

    先日開催されたShibuya.js Technical Talk #3 - Shibuya.esの録画アーカイブが公開されました。 犬ビームメソッドが見れるのはShibuya.esだけ! ちなみに、講演者の承諾がとれている発表枠のみの公開となっております。 Shibuya.es録画アーカイブ amachangさん: JSer のための AS3 ![動画] abuiさん: Cycal - オンラインスプレッドシート[動画] cho34さん: えへへ、うふふ E4X[動画] sendさん: Firebug[動画] omoさん: はじめての ABC[動画] Yu Kobayashiさん: Narcissus - ナルシスト、自分を愛した美少年JavaScript[動画] takesakoさん: SWF Binary Hacks ~evalのいばら道~[動画] kusigahamaさん: fcwr

  • 秋元@サイボウズラボ・プログラマー・ブログ: Google AdSenseで大儲けしている個人のリスト

    アドセンスで稼いでる個人のリストを作った人がいるので紹介。ネット上でソースが明らかになっている情報から集めて高い順に並べたそうだ。 いったいアドセンスで「すごく稼ぐ」というのはいくらぐらいなのか。 サイト 月の収入(円) […]

    秋元@サイボウズラボ・プログラマー・ブログ: Google AdSenseで大儲けしている個人のリスト
  • Kazuho@Cybozu Labs ウェブサイトの UI を自動的に日本語化するサービス

    « Collatz 予想 | メイン | Japanize - 疑問への回答と、これからのこと » 2006年08月14日 ウェブサイトの UI を自動的に日語化するサービス 転職して1周年ということで、外国語のウェブサイトの UI を日語化するサービスを作ってみました。 Japanize は、外国語のウェブサイトを日語化するサービスです。Mozilla Firefox のエクステンションをインストールするだけで、いままで英語だったウェブサイトが日語で表示されるようになります。翻訳データは、 wiki ライクなサービスによって共有・拡張されます。 ホームページに Mozilla Firefox でアクセスして Firefox Extension をインストールするだけで、Google Calendar や YouTube といった英語サイトの UI が、日語に自動変換されるように

  • Kazuho@Cybozu Labs: キーワード抽出モジュールを作ってみた

    « IIS のログを tail -f | メイン | Lingua::JA::Summarize 0.02 » 2006年04月26日 キーワード抽出モジュールを作ってみた 一昨日、同僚の竹迫さんに、文書内からのキーワード抽出技術について教えてもらっていた時、わざわざ TF-IDF注1 用に別のコーパスを用意しなくても、MeCab だったら生起コストを辞書内に持っているんだから、それを使えばいいのではないか、という話になりました。 竹迫さんがその日のうちに作ってくれたプロトタイプで、アルゴリズムの改善とパラメータのチューニングを行ったところ、十分な品質が出そうなので、書き直して公開することにしました。 普通の Perl モジュールなので、 perl Makefile.PL && make && make install すれば使うことができます (15:50追記: すみません。 MeCab

  • ライブドア次世代テクノロジーセミナー第1弾/TAKESAKO @ Yet another Cybozu Labs

    木ヒルズで開催されたライブドア次世代テクノロジーセミナーに、会社の同僚の秋元さんと一緒に行って来ました。 当社は長い受託ビジネスやWEB開発から蓄積した、膨大な経験と実績を使い、現在UU14,336千人、月間約22億PVというポータルサイト 「livedoor」を構築するまでになりました。そこには飽くなきローコストへの挑戦と、多くの優秀なエンジニア、更には膨大なインフラを支えるネットワークエンジニアによる日々の汗と苦労の結晶です。今回は、それらの技術面及びインフラ面のノウハウの一端を、皆様の成功の鍵にしていただきたく紹介をさせていただきます。 定員50名の募集に対して、告知後数時間で150名超の申し込みがあった いわば選ばれた者だけが参加できた貴重なセミナーでした。 ■参加者のレポート [システム運用] ライブドア 次世代テクノロジーセミナー http://pmakino.jp/tdi