タグ

ブックマーク / tech.nitoyon.com (62)

  • [はてなダイアリー]てっく煮ブログ - はてなダイアリーで JavaScript eval

    3ヶ月ほど前、弾さんや id:amachang さんが、はてなダイアリーで JavaScript が使えたらいいのにね、という話をしていました。404 Blog Not Found:Hatena::Diary - スーパpre記法で実行可能なJavaScriptIT戦記 - Re: スーパー pre 記法で実行可能な JavaScript をで、先日、自分のはてなダイアリーにブログパーツを設置できるようになったので、事実上の JavaScript 解禁になりました。ということで、JavaScript の eval を貼り付けるガジェットを Google Gadgets で作ってみました。サンプルまずは簡単に Hello World。nanto_vi さんによる Math.random().toString(36).slice(-8) でパスワード生成 もすぐに試せる。(関連エントリ:Ja

    wacky
    wacky 2007/08/20
    はてなダイアリ上で任意のJavaScriptコードをevalするブログパーツ。(iGoogleガジェット)
  • Flex Internals1 〜MXML 再入門〜 発表資料 - てっく煮ブログ

    flexFlex2勉強会第20回@大阪工業大学 で発表してきました。発表資料はこちらです。Flex Internals 1 〜MXML 再入門〜ソースコード (156KB)MXML の裏側がどうなっているかを掘り下げています。もっとマニアックに行く予定だったのですが、作っているうちに、結局初心者向けになってしまいました。注目してほしいのは後半に出てくる「インスペクタ」。今年のお正月に作ったまま放置してたものを、この機会に発掘してみました。ソースコードの中にインスペクタのソースも入っているので、興味がある人は見てください。あまり Flex を理解していない時代の作品なので、Flex っぽくないソースになってますが…。第2回はどうしようかと色々悩んだのですが、次回はてら子と共催ということで、レイアウトネタにしてみようかな、と構想中です。以下、スライド作りの苦労話今回は、Flex 勉強会というこ

    wacky
    wacky 2007/08/01
    Flex2勉強会での発表資料。初心者のためのMXML解説。
  • JS や AS で長い関数をリファクタリングする1手法 - てっく煮ブログ

    200行ぐらいある関数を、分かりやすく書きなおそう、というお話。お題はこんなJavaScript。あとで、軽く ActionScript 3.0 も出てくるよ。 function fly() { // 初期化処理 var init:Boolean = false; // 50行ぐらい初期化処理 // うまくいったら init が true になる // 実行 if(init) { var succeeded = false; // 100行ぐらい実行 } // 終了処理 // 30行ぐらい終了処理 } 構造化プログラミングについて知ってる人なら、きっとこうする。 function fly() { if(startFly()) { doFly(); } endFly(); } 構造がたいそうすっきりした。問題は、startFly()・doFly()・endFly() をどこに記述するか。fl

    wacky
    wacky 2007/07/10
    JavaScript / ActionScriptの長い関数をすっきりさせる手法。処理の分割、関数内関数。構造化で分かりやすいコードに。
  • てっく煮ブログ - 四則演算を JavaScript で実装する

    aki noteGoogle 電話面接を受けました orz (いまは消えてるけど)にて割り算が壊れました。自分で実装してみてくださいという質問が紹介されていた。せっかく(?)の機会なので、割り算だけでなく、四則演算を全部壊してみて、JavaScript で実装して見ることにした。JavaScript を選んだのは、コンパイル不要、ビット演算がある、Firebug で手軽に確認できる、という理由から。それ以上の深い意味はない。ということで、次のような問題に一般化してみた。問い四則演算を JavaScript で実装しなさい。演算子は ==、!= およびビット演算子のみ使ってよいものとします。補足例えば、for 文で for(var i = 0; i { // ... } と書くためには、++ 演算子は次のように定義できる。 function increment(i){ var c =

    wacky
    wacky 2007/06/29
    ==、!=、ビット演算だけを使って四則演算をJavaScriptで実装。あー、2の補数とか完全に忘れてる・・・。
  • Google Gears 発表前と発表後のオフライン事情 - てっく煮ブログ

    先日の Google Gears の使い道 という記事用に既存のオフライン技術についてまとめていたのですが、長くなったので割愛してしまいました。とはいえ、もったいないので別エントリの形で公開します。紹介するのは3つのオフライン技術と、それぞれの Google Gears への反応です。はじまりはじまり。Dojo Offlineオフライン機能をいち早く実装したのは Dojo Offline というライブラリです。Dojo という名前からも分かるように、JavaScript ライブラリ「Dojo」の Dojo.Storage という機能を活用して実装されているようです。Dojo.Storage は Cookie・SharedObject・ActiveX File API・XPCOM File API などの中から適切なものを選ぶ、という実装のようです。Google Gears の発表を受け、D

    wacky
    wacky 2007/06/06
    Google Gears発表を受けての3種類(Dojo Offine、Firefox3、Apollo)のオフライン技術の動向。
  • Google Gears の使い道 - てっく煮ブログ

    Google Gears (BETA) が発表されました。Google Gears はウェブサービスにオフライン機能を付け加えやすくするためのフレームワークです。フレームワークが提供するのは次の3つの機能です。LocalServerオフラインになったときにも HTMLJavaScriptCSS にアクセスできるようにする。ブラウザのキャッシュ(一時ファイル)を強化したイメージ。Databaseオフライン時に行った動作を記録しておく。SQLite ベース。ブラウザの Cookie を大容量化したイメージ。WorkerPoolCPU を消費する機能をバックグラウンドで実施する機能。setTimeout で無理やり細切れに実行していた部分を任せることができる。スレッド機能とも考えられる。開発者は、これら3つの機能を駆使して、オフライン機能を実装することになります。ありがちな実装パターンは

    wacky
    wacky 2007/06/04
    オフライン目的以外でのGoogle Gearsの活用方法。LocalServer / Database / WorkerPoolのそれぞれについて。
  • fcsh で Apollo を高速コンパイル(参考リンク集のおまけ付き) - てっく煮ブログ

    Apollo mini Camp@Tokyo の効果なのか、再び Apollo 熱が高まってきていますね。週末に Apollo を触ってみよう、という人も多いのでは。ActionScript や MXML を使って Flash で Apollo アプリを作る場合、Flex Builder を使うか、コマンドラインで amxmlc を使うことになります。この amxmlc はビルドに時間がかかってしまうので、fcsh を使って高速化しちゃいましょう。fcsh は 川o・-・)<2nd life - ActionScript3 (mxmlc) でのコンパイルを100倍速にする方法 が参考になりますが、これが Apollo 用のビルドにも使えちゃいます。やり方は簡単。1. fcsh を導入Flex Compiler Shell - Adobe Labs からダウンロードして、Flex SDK の

    wacky
    wacky 2007/05/27
    Apolloを高速にコンパイルする手順。
  • てっく煮ブログ - ActionScript for Flasher(1) 資料公開

    as大阪での Flash 勉強会(寺子屋(仮)第3回)で発表しました。資料を公開しておきます。プレゼン資料:ActionScript for Flasher(1)サンプルファイル:sample.fla (166KB) [要Flash MX以上]タイムライン vs ActionScript という Flash 界の永遠の課題(?)に切り込んでみたつもりです。サンプル用に作った関数は、文字のセンタリングに対応するために泥臭くなっていますが、もうちょっと汎用化してみたいかな。

    wacky
    wacky 2007/05/20
    id:nitoyon氏による大阪でのFlash勉強会の資料。タイムライン v.s. ActionScript。両方の良いとこ取り。
  • Flex と WPF の概要について発表しました - てっく煮ブログ

    仕事で東京に来ることになっていたので、id:amachang さんに「勉強会したいです!」とお願いして開催してもらいました。せっかく集めてもらっておいて、しょぼい発表はできないぞ、ということで気合入れて資料を作りました。RIAと呼ばれるものまとめ (勉強会資料 2007/5/19)RIA っぽいものに注目は集まってきているものの、意外に Flex と WPF の共通点や違いをまとめた資料は見かけないので、個人的な感想を交えながら発表してみました。WPF 歴は1週間なので、間違いが含まれてたらすいません。ツッコミ、コメントは大歓迎です。 ちなみに、先日公開した Apollo でニコニコメソッド プレゼン を実践してみました。かなり好評! みんなのツッコミで笑いが取れる上に、フィードバックも得られるし、補足もしてもらえるし、言うことなしです。レポートあとで

    wacky
    wacky 2007/05/20
    id:nitoyon氏による勉強会資料『RIAと呼ばれるものまとめ』。FlexとSilverlightについて「実行環境」「開発環境」「言語のとっつき」「デザインのしやすさ」「デザイナとの連携」を比較。
  • てっく煮ブログ - Apollo でニコニコメソッド プレゼン

    プレゼンしているその画面の上に、聞いている人達のコメントがニコニコ動画風に流れるのが楽しそう。ということで、それ、AIR でできるよ、と作ってみました。ドキュメントフォルダの niconico.txt を監視し続け、新たな行が登場したら、行の中身をニコニコ動画風に表示します。Flash を使ってるので家と似た表示になるのがポイントです。ダウンロード:niconico.air (要 AIR ランタイム β版)ソースコード:niconico.as (176行)このアプリケーション単体の機能はテキストの中身を出力するだけですが、次のような活用法を想定しています。ローカルに Web サーバーを立てて、CGI 経由でコメントを niconico.txt に出力する → ニコニコメソッドプレゼンが可能に!Plagger で取得した内容を niconico.txt に吐き出す → ニコニコメソッド R

    wacky
    wacky 2007/05/05
    テキストファイルの内容をニコニコ動画風にスクリーンに流すApolloアプリケーションのサンプル。
  • JavaScript から Flash を楽々操作できる FABridge [てっく煮]

    JavaScript から Flash を操作できるツール、Flex-Ajax Bridge (FABridge) を試してみました。 名前に Flex や Ajax とついていますが、Flex や Ajax にしばったライブラリではなく、JavaScript から SWF を操作できる、と考えたほうがよい感じです。 必要なファイルは SWF に組み込む FABridge.as と HTML でインクルードする FABridge.js の2つです。ダウンロード方法はちょっとややこしいので最後で説明します。 SWFの準備 まずは、SWF 側の実装。bridge フォルダに FABridge.as を置きます。AS3.0 です。 // Test.as package { import flash.display.Sprite; import bridge.FABridge; public cl

    JavaScript から Flash を楽々操作できる FABridge [てっく煮]
    wacky
    wacky 2007/04/16
    JavaScriptからFlashを操作できるライブラリ「Flex-Ajax Bridge(FABridge)」の紹介。要Flash Player9。
  • ActionScript版 Apollo アプリを作ってみる

    第2回は ActionScript で Apollo アプリを作ってみます。 ActionScript を触ったことがない人にも分かりやすく書いたつもりですので、ActionScript が初めての人も恐れずに読んでみてください。 第1回 の HTMLJavaScript で作るときは HTML+JavaScript の作成 ADF の作成 実行 パッケージ化 (.air の作成) という手順でしたが、今回は ActionScript の作成 コンパイル (.as→.swf の生成) ADF の作成 実行 パッケージ化 (.air の作成) とコンパイルの手順が増えます。 では、さっそく具体的に説明していきましょう。 ActionScript の作成 単に丸を描くだけの ActionScript です。Test.as として保存します。 package{ import flash.dis

    ActionScript版 Apollo アプリを作ってみる
    wacky
    wacky 2007/04/03
    Apolloチュートリアル。ActionScript編。
  • てっく煮ブログ - あまり語られていない Apollo のセキュリティについてまとめてみた

    (2007年10月追記) この記事は、Adobe AIR と呼ばれている技術のα版時点でのセキュリティについて述べています。2007年10月現在での最新版についての情報は、以下のページを参照してください。akihiro kamijo: Adobe AIR ベータ 2 セキュリティ関連の変更点akihiro kamijo: Adobe AIR のデジタル署名機能について(追記ここまで) void element blog: いろんな意味でしゃれにならないApollo にて Apolloセキュリティ的に危ないよ、という話が出ていたので、ちょっと調べてみました。Web 技術を使っているとはいえ、ローカル環境で動くので、ある程度の覚悟をもってインストールする必要があります。今回は、その心構え(?)のようなものをまとめてみました。セキュリティは専門ではないので、つっこみは大歓迎です。Apollo

    wacky
    wacky 2007/03/28
    Apolloのα版はアクセスレベルのコントロールができない。リモートのswfやスクリプトからもローカルファイルにアクセスできてしまうので注意が必要。
  • HTML JS版 Apollo アプリを作ってみる [てっく煮]

    Apollo 開発の方法を丁寧に説明していく予定です。第1回目は HTML+JavaScriptApollo アプリを作ってみます。 そこそこ実用的な例、ということでシンプルな RSS リーダーを作ることにします。Apollo での通信にはドメインの制約がない、という利点を体感することもできます。動作イメージはこんな感じです。 開発環境のインストールがまだの方は、Adobe Apolloメモ や はじめてのApolloプログラミング を参考にして準備しておいてください(手抜き)。 HTMLJavaScript の作成 まずは HTML を準備します。rss-simple.html として保存します。味気ないですが、あえてシンプルにしてます。 <html> <head> <title>Simple RSS</title> <script src="rss-simple.js"><

    HTML JS版 Apollo アプリを作ってみる [てっく煮]
    wacky
    wacky 2007/03/23
    Apolloチュートリアル。HTML+JavaScript編。
  • てっく煮ブログ - Apollo 触ってみた。すごすぎ。

    Apollo のα版がリリースされたので、さっそく触ってみました。初日はランタイムをインストールしてサンプルを動かしてみました。コンパイルは時間がなくてまだ試せてません。2007.2.24追記:HTML+JS版 Apollo アプリを作ってみる で解説文章を書きはじめていますApollo を知らない人のために、おおざっぱにざっくり説明しておくと、Apollo は Web アプリを作るようにローカルアプリケーションを作れるようになるステキなライブラリです。Flash だけに縛られているわけではなく、Flash, Flex, HTML, Ajax などを統合して利用することができます。イメージはこんな感じ(Adobe の apollo_docs_alpha1_031907.zip からの引用)。図からもわかるように、HTML/JavaScript だけで Apollo API を利用してローカ

    wacky
    wacky 2007/03/20
    Apollo α版のサンプルを触ってみた感想。ワクワクさせられるレポート。
  • tech.nitoyon.com@hatena - はてブのCSSをカスタマイズしてみた

    hatena毎日使っているのにデフォルトのスタイルのままになっていた「はてなブックマーク」の CSS を変えました。こんな感じです。 b:id:nitoyon「はてブ」の何となく分かりにくい部分を、分かりやすく見せることを目標に作ってみました。以下では、今回のデザインでこだわった「タイトル部分のアイコン」と「コメントのふきだし」について簡単に説明してみたいと思います。 タイトル部分のアイコンまずは、タイトル部分。デフォルトのタイトル部分のアイコンや数字の羅列は意味が分かりにくいですよね。マウスを乗せたらツールチップで説明が表示されるのですが、なんか直感的じゃない。この部分の数字の意味を分からずにはてブを使ってるひとも多いのでは…。 なので、画像を書き換えて分かりやすくしてみました。RSS の青くてかっこ悪いアイコンも、オレンジ色のおしゃれなやつに。いろんな人にお気に入りにいれてほしいので、

    wacky
    wacky 2007/01/26
    はてなブックマークのものすごく凝ったカスタマイズ例。RSS/お気に入り追加アイコンの付替え、コメント表示の豪華さなど必見。
  • はてブでタグクラウド

    の首相演説のタグクラウド および US Presidential Speeches Tag Cloud に触発されて、はてなブックマークのタグを時系列で並べてみたらおもしろいかも!と思い、作ってみました。 「あー、このころは、こんなことに夢中だったんだ」と、意外な再発見があるかもしれません。 サンプルとして、私のタグクラウドを表示してます。自分のタグクラウドを表示させることもできますので、試してみてくださいね。 エクスポート用の Atom フィード をクリップボードにコピーします。 下のテキストエリアに貼り付けて、読み込みボタンを押します。 ちゃんとした XML である必要はありませんブラウザが出力する '-' などの記号が入っていても OK です。 ブックマークが1000以上ある人は1000個ずつぐらいに区切って貼り付け・変換したほうがいいかもしれません読み込みにはあまり時間がかかり

    wacky
    wacky 2006/11/13
    自分のはてなブックマークから月ごとのタグクラウドを作ってくれる。ブックマークの歴史が見えて面白い。自分のWebサイトに設置することも可能。
  • 大旦那のお気に入り

    はてなブックマークで被お気に入りが多い人は、 逆にどんな人をお気に入りに入れているのか? みんなのネタ元のネタ元が判明。 隠れた名ブックマーカーが見つかるかも。 → 使い方

    wacky
    wacky 2006/11/03
    はてなブックマークのお気に入りについて、大旦那への影響度ランキング。サーバレスで動作。
  • JavaScript 用デバッグコンソール "IEerBug" [tech.nitoyon.com]

    IEerBug は Internet Explorer 6.0 と FireFox 1.5 で動く JavaScript 用のデバッグ コンソールです。 FireBug と同じ console.log()、console.debug() などの関数が使えるようになるため、FireFox と IE の両方でデバッグする場合に便利です。コンソールに出力したオブジェクトを、DOM インスペクタを利用して解析することも可能です。 使い方 ieerbug.zip をダウンロードし、中身をアプリケーションのディレクトリに配置します。IEerBug 用のディレクトリを作成して、その中に配置しても問題ありません。 HTML の中で次のようにして ieerbug.js を読み込みます。

    JavaScript 用デバッグコンソール "IEerBug" [tech.nitoyon.com]
    wacky
    wacky 2006/08/30
    IE6やFirefox1.5で動くJavaScript用デバッグコンソール。FireBugをIEに移植(?)。
  • xml2json.cgi - ドメインを超えてXMLを読みこむ [tech.nitoyon.com]

    Ajax の弱点は別ドメインのページを取得できないこと。そんな制限を取っ払って、別ドメインの XML を取得できる CGI を作ってみました。 使い方 XMLファイルの例: <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <items> <item> <jcity>千代田区</jcity> <jlocal>千代田</jlocal> <jpref>東京都</jpref> <pref_cd>13</pref_cd> <zip_cd>1000001</zip_cd> </item> </items>

    xml2json.cgi - ドメインを超えてXMLを読みこむ [tech.nitoyon.com]
    wacky
    wacky 2006/01/19
    クロスドメインAjaxのためにProxyとして動作するPerl CGI。XMLをJSONに変換する。