2011年9月30日金曜日

Twitter Streaming APIが HTTPSのみになった

Streaming API turning SSL only on September 29th | Twitter Developers
Streaming API: use https://stream.twitter.com instead of http://stream.twitter.com

日本時間で9月30日、Twitter Streaming APIがHTTPによるアクセスを受け付けなくなった。HTTPSにする必要がある。
あまり知られてない気がするけど、結構影響あるんじゃない?急に接続できなくなったとこが続々と?
そんなに使われてないのかなあ。

jQuery Mobileは jQuery UIのメンバーが作ってる?

jQuery UI Development & Planning Wiki / FrontPage
We're working on jQuery Mobile

たしかにコンセプトは近いし、UIも似ているような(似ていないような)。
そしてまだUIの方で実装されていないチェックボックスとかを先にMobileで実装してしまったのか。

Firefoxの profileのフォルダを簡単に開く方法

プロファイル | 操作方法 | Firefox ヘルプ
Firefox ウィンドウ上部の Firefox メニューをクリックし、ヘルプ メニューの右の矢印 (Windows XP では ヘルプ メニュー) をクリックし、トラブルシューティング情報... を選択します。 トラブルシューティング上のタブが開きます。

これは分かりにくい

2011年9月29日木曜日

Titanium Studioを Windows XPにインストールする時の注意

Titanium Studio起動メモ(use Windows XP) — Gist
XPでの注意点)
空白パスのサポートが完全に駄目。><。
手動で設定変更が必要!!
Win7は空白パスがないから動いているだけ~

いろんな人がダメダメ書いてたけど、やっぱり駄目かー

Titanium Studioのインストール

Office L: Windows で Titanium Studio を使って Android アプリ開発の準備
今回、Titanium Mobile によるスマートフォンアプリ開発勉強会(DevHub西新宿)を開催することになったので、 Windows での環境構築のチェックを兼ねて、 KitchenSink が動作するところまでを試してみました。

上記サイトにも書いてあるが、(現時点では)下記に注意
  • JDKは6にする(そのうちTitaniumがUpdateして7に対応してくれそうだけど)
  • Android SDKのplatform-tools\adb.exeをtools\adb.exeにコピーする(これもそのうち対応するでしょう)
  • 下記のパスをWindowsの環境変数「Path」に追加する
    ・JDKのbin
    ・Android SDKのplatform-tools
    ・Android SDKのtools

2011年9月28日水曜日

Androidアプリ開発の参考サイト

素人のアンドロイドアプリ開発日記
このサイトでは、javaの初心者がアプリを作成していけるまでを書いていきます。
androidアプリ制作において役立つ情報を配信し、皆さまの開発に役立てればと思います。

Javaのインストールから丁寧に説明されてる。

PHPの SPLの例外群の系統建てが分かるクラス図

2011年9月27日火曜日

ブラウザ上でAndroid/iPhoneアプリを開発できるサービス

Monaca - クラウドベースのネイティブアプリ開発環境
コーディングからビルドまで
全てはクラウド上で

スマートフォンアプリ開発に必要な開発環境のセットアップは難解で時間のかかるものです。Monacaではこれらのセットアップを行う必要もありませんし、ワンクリックでアプリケーションを使える状態にビルドします。

ブラウザ上でコーディングできるらしい。裏ではPhoneGapを使っているので、HTML/CSS/JavaScriptでローカルWebアプリを作ることになる。

ビルドはサーバサイドでやってくれる。
Androidの場合、JavaとかAndroid SDKとかが要らないのかな?
iPhoneアプリはさすがにSDKが要ると思う。

2011年9月26日月曜日

jQeury Mobileの入門サイト

ASCII.jp:西畑一馬のjQuery Mobileデザイン入門
西畑一馬のjQuery Mobileデザイン入門

いまもっとも注目されているモバイルフレームワーク「jQuery Mobile」。jQuery Mobileの基本的な使い方から、実践的なデザインテクニックまで。iPhone/Androidなどのスマートフォンサイト制作にjQuery Mobileを活用する方法を具体的に解説します。

第1回からの説明の流れが分かりやすい。基本的に、HTMLに決められたrole-xxx属性やclass属性を加えるだけでいいようだ。(HTML構造はある程度限定される。)
実際にどんな属性にどんな値を入れるのかは、第5~7回のサンプルに列記してある。(他にもあるのかな。)

TechCrunch創設者の新ブログが指導

UNCRUNCHED
Here I Am

TechCrunch創設者にて元編集長(先日退社)のMichal Arringtonが、新ブログを始めた。日本語版は無理かな。

2011年9月17日土曜日

Androidの Macアドレスの調べ方

apad(android pad・tablet)日本最大級情報サイト » Blog Archive » apad(android pad)日本最大級情報サイト
意外とわかりにくい場所にあるMACアドレスの調べ方について、ご説明します。

無線LANでMacアドレスを限定している場合などに。
設定画面でさらにMENUボタンを押すというのは気づかなかった。
他にも長押ししないと出ないメニューとか分かりづらいよね。

2011年9月16日金曜日

Windows8の IE10

Windows8 Developer Preview ファーストインプレッション【アプリケーション編】 | Sinack
フルスクリーンです。メニューすらないです。

画面下にはアドレスバーやらバックボタンやらがあります。

IE10(PP)にアドレスバー(URL欄)が無いのはこのためだったのか。
IE8~9は他のブラウザの後追いのイメージが強かったけど、IE10のUIは他より先行してるかも。(それともChrome OSの影響?)

Google Analyticsでサイトのページ表示の速さを調べられるらしい

Googleアナリティクスの「サイトの速度」でページの表示スピードを計測 | 海外SEO情報ブログ
「サイトの速度」を記録するにはトラッキングコードを変更する必要があります(後述)。

そのうちデフォルトでオンになるのかな。

Google検索結果のフィルタリング指定がやっと日本でも使えるようになったらしい

Google、特定のサイトを検索結果に表示させない「ブロックサイト」機能を日本にも導入 | 海外SEO情報ブログ
ユーザーがブロックしたサイトは、パンダ・アップデート v2からは質が低いと判断したときの妥当性を検証するデータとして使われています。

「多くのユーザーがブロックするサイト」=「質の低いサイト」という図式が成り立つからですね。

これでみんな、はてなブックマークをブロックしまくるだろうから、はてなブックマークスパムの効果が低くなって、結果的に、はてなブックマークスパムがなくなるといいな。

それにしても、はてな、みたいに平仮名の名前は前後に句読点を入れなきゃ読みにくくなるから良くないよね。

PHP版 heroku?(日本発!)

無料ではじめるクラウド・ホスティング・プラットフォーム│C4SA
C4SAは、サーバーの設定や運用、管理に掛かる業務コストを大幅にカット。
複雑なサーバー設定一切不要で、即日、大規模WEBサービスを公開可能にしました。

日本発というか日本向けか。

0.05円/PVというのは高くは無いと思うが、クローラからのアクセスとかも含まれるだろうから、単純にGoogle AnalyticsベースのPVで計算はできない。(何倍くらいになるんだろう?)

メールが飛ばせない/受け取れないのは痛いかな。まあ用途を絞ればいいのか。
独自ドメインとかHTTPSとかはどうなんだろ。できるのかな?共通のサーバ証明書が使えれば便利かも。

2011年9月現在、PHPは5.3、MySQLは5.1。PHPのリビジョンは気になる。あと、今後のUpdateどうするかも。ユーザー側がUpdateの適用を選べないと困る場面もありそう。

総じて言えば、Amazon EC2でMicroインスタンス借りた方が何かといじり倒せていいかなー。
もし共通のサーバ証明書があれるなら、それは魅力だが...

2011年9月14日水曜日

PHPの mbstringの internal_encodingのデフォルト値

PHP の mbstring に関するメモ
php.ini で mbstring.internal_encoding を指定しなかった場合、mbstring.language の設定に対応した mbstring の内部文字コードが設定されます。

実際には以下のようになります。

マニュアルにはnullと書かれていたが、実際はnullにはならなかった。
上記リンク先が正しそう。
PHP5.4からはneutralやEnglishがUTF-8になるのかな。Japaneseも?

2011年9月12日月曜日

PHPの mcrypt_encrypt()で AESの鍵長を指定する方法

floatingdays: PHPで AES方式 (Rijndael-128)で暗号化するメモ
PHPのラインダールでは鍵長を指定するパラメータが無いので、鍵長は渡した鍵の長さに応じて決まる。

実験したところ、渡した鍵が収まるうちで最も小さい鍵長が使われることが分かった。

AES(MCRYPT_RIJNDAEL_128)の"128"は鍵長かと思ったらブロック長の128のようだ。
鍵長はパラメータの鍵の長さで決まる、と。

2011年9月9日金曜日

OpenSSL::Cipher::Cipher

RubyのOpenSSL::Cipher::Cipherについて。


パディングについて
OpenSSL::Cipher::CipherのパディングはPKCS#5形式。

下記が詳しい。

OpenSSL::Cipher::Cipher のパディング処理 | へびにっき
結果、PKCS#5 の PBES1, PBES2 と同じく RFC 1423 で定義されたパディング処理を行っていることが分かった。このパディングアルゴリズムは一般には PKCS#5 Padding などと呼ばれているらしい。


鍵長について
AES-128の場合、keyの長さは128ビット。
それより短いとエラー。
長いとはみ出た部分は無視された。
keyには文字列をセットすればOK。
ASCIIなら16文字(1文字で1バイト=8ビット)。
平仮名は1文字で(UTF-8なので)3バイト扱いになった。

JSONによるデータのやり取りにはセキュリティ的に色々注意点があるらしい

PHPのイタい入門書を読んでAjaxのXSSについて検討した(3)~JSON等の想定外読み出しによる攻撃~ - ockeghem(徳丸浩)の日記
さらに上表に示す対策のカバー範囲をあわせて考えて、以下で対応することを提案致します。

対策の基本はX-Requested-Withヘッダのチェック
Content-Typeは正しく application/json; charset=UTF-8 と指定
IEに顔を立てて、X-Content-Type-Options: nosniff を指定(あるいは不要か?)
JSON生成ライブラリで設定できる最大限のエスケープ

何もしないと意外に脆弱性が多いんだ。

jQueryとX-Requested-Withのチェックをして文字コードを適切にすればいいということか。でもブラウザでJSONを表示してチェックしたい時には外さないと。(jQuery使ったチェックツール作ればいいか。)

X-Content-Type-Options: nosniffはやった方がいいんだろうけど、未対応ブラウザのことを考えると結局鉄壁ではないしねー。

PHPのjson_encode()って色々オプションがあるんだ。

2011年9月8日木曜日

httpsを使わずに JavaScriptで送信データを暗号化

httpsを使わずに、JavaScriptで送信データを暗号化しているサイトがあった。

そば屋五兵衛 WEB サイトにて使用されている暗号化技術に関して
そば屋五兵衛の WEB サイト(以下 当サイト) では、SSL/TLS による暗号化通信をサポートしておりません。
その代わりに javascript による暗号化を実装しており、これによりお客様のデータを保護できるようになっております。

公開/秘密鍵方式と共通鍵方式を併用して、SSL/TLSと同様のことを実装している。そば屋のサイトにしてはすごい。(サーバ証明書買った方が何かと楽そうだが、事情があるのかな。)

他にもこのサイト、ケータイ向け・スマートフォン向け・英語版のそれぞれのページがあるなど、意外にすごい。
その割にページのタイトル要素が無かったり、地図がしょぼかったり。
誰が作ったんだろう。

CSSの構文チェックやその他のヒントをくれる CSS版 JSLint

CSS Lint
Your CSS goes here. The more, the better. Linting works best when we see the big picture, so give us everything you've got.

セレクタにID使うと注意される

JSLintより使いやすい JavaScript構文チェックサービス

JSHint, A JavaScript Code Quality Tool
How JSHint is different from JSLint

JSHint is a fork of Douglas Crockford's JSLint that is designed to be more flexible than the original. Our goal is to make a tool that helps you to find errors in your JavaScript code and to enforce your favorite coding style.

要らないとこばかりチェックするJSLintと違い、デフォルトの設定でかなり普通のJavaScriptをPASSしてくれるので使いやすい

2011年9月6日火曜日

Railsで has_manyと belongs_toのモデルを generateする例

Railsで作るTwitterもどき - 篳篥日記
ここではそのように作ってみる。つぶやき(Tweet)モデルと、お気に入りの関連モデル(Favoriteship)を作成。

これが分かりやすそう

Google App Engineの Pythonのバージョンが 2.7になるらしい

App Engine の料金体系変更に関する FAQ - Google Japan Developer Relations Blog
Q: Python 2.7 を使用するために、コードにどんな変更を加える必要がありますか?
A: 基本的には、現在の Python 2.5 用のコードはそのまま Python 2.7 でも動作しますが、いくつか大事な変更をする必要があるかもしれません:
- Django 1.2 を使用してください: 現在の Python ランタイムはデフォルトで Django 0.96 を使用します(実は webapp 組み込みの template システムを使用すると Django を使うことになります)。Python 2.7 は新しいランタイムなので、この古いバージョンをパッケージ、サポートする予定はありません。Django 1.2 以降のバージョンをサポートする予定です。これに備えるためには、コードが Django 1.2 で動作することを確認しておくのが一番良い方法です。Django 1.2 を使用する方法については、こちらに解説があります。
- Python 2.7 サポート: 言うまでもないことかも知れませんが言っておきますと、新しいランタイムで使用するためには、コードが Python 2.7 で動作する必要があります。

Q: Python 2.7 では並列リクエストはどのように動作しますか?
A: 現在の Java ランタイムがスレッドにより並列リクエストをサポートしているのと同様に、並列リクエストはスレッドを使用します。
- WSGI 準拠のフレームワークを使用してください: 並列リクエストの恩恵を受けるためには、CGI インターフェースではなく、その替りに WSGI 準拠のフレームワーク(これは App Engine に同梱している webapp フレームワークも含まれます)を使用する必要があります。
- スレッドセーフ: Python 2.7 ではスレッドを使用して並列リクエストをサポートしているので、この恩恵を受けるためにはコードがスレッドセーフである必要があります。
- もちろん前の質問で述べてある Python 2.7 対応も必要です。

Djangoは1.2へ。
並列リクエストを受け付けられるようになるので、新しい課金体系での料金を抑えられるようだ。

2011年9月5日月曜日

CSS生成の LESSの PHP版

lessphp - leaner css in php
lessphp is a compiler for LESS written in PHP.

The entire compiler comes in a single includable class, but an additional command line interface to the compiler is included. See the quick start for basic usage.

LESSを扱えるPHPツール。Rails3.1はSCSSを採用したが、どっちが生き残るのかな

2011年9月2日金曜日

Windows XPで Meiryo UIを使う方法

ちょいマシOffice:WindowsXP で Meiryo UI を使う
この、Meiryo UI フォントですが、Windows XP 向けの提供はされていないようです。
しかし、最新(2010)の Powerpoint Viewer をインストールすることで、私の環境では使えるようになりました。

試してみる価値はある

Safari、 Chrome、 Firefoxでのフォント名の指定方法

SVGとフォント名 | 4D
今回は, 4D SVG(v12)とSafari, Google Chrome, FireFoxを比較してみました。

Safari、Chrome、Firefoxでは英語でフォントファミリーを指定しておけばよいということか

メイリオをjQueryで show()や hide()でアニメーションするとギザギザになる

メイリオを指定したIE7・8でopacity不具合 | 技術部 | TAC部Log
フォントにメイリオを指定したページを、jQueryでフェードインしてみたところ、
IE7・8での挙動がなんだかおかしい。。。
メイリオのアンチエイリアスが効かなくなり、テキストがジャギジャギになっています。

IE(8以下)の場合jQueryはshow()やhide()等のアニメーションにIE独自実装のfilterを使って透過っぽい表現を実現するので、メイリオのClearTypeが無効になるようだ。

ブログ アーカイブ

カテゴリー