Tiny Tiny RSSの気をつける点

tiny-tiny-rss
2013年7月1日GoogleReaderの終了後し、その後feedlyを利用していた。
FeedlyはGoogleReader並の機能を持っており、購読するRSSを検索する機能があり初心者にも導入しやすいし、Flipboardとそっくりなマガジン風レイアウトのFeedly専用アプリも用意されている。
ただ、Feedlyは記事の検索ができない。不可能という意味では無く有償のFeedly Proになる必要がある。金額は年額45$(現時点で5,396円)結構な金額なのでTiny Tiny RSSというRSSリーダーも併用していた。
Tiny Tiny RSSはサーバーにインストールする方式のRSSリーダーで敷居が高いがその分ソフトがデザインや機能拡張等の自由度が高く、Feedlyのように有償との差別化の為に検索できないようにされる事も無く、GoogleReaderのようにサービス終了に怯える事も無い。
今回iPadでもTiny Tiny RSSを利用する方法があると分ったので一本化する事にした。
そこで、Tiny Tiny RSSを使う上でハマりやすいと思うことを書いてみようとおもいます。
※画像は個人的にSpeed Dial 2用に作った画像でオフィシャルのロゴではありません。
〝Tiny Tiny RSSの気をつける点〟の続きを読む

メールにSSLを(SMTPsとかSTARTTLS)

SSLはパソコンとサーバーの間を暗号化する技術でSSLの設定がされていないとパソコンとサーバーの間のパケットを覗かれた場合通信の内容が丸見えになってしまう。
私はWEBの仕事をしているので仕事のメール設定はSSL(POP3sやSTARTTLS)を設定するようにしてるが「一般の人はSSLの設定はしてないんだろうな」と思っていたが、先日導入したThunderbirdでは「SSL設定」をなしに設定すると警告が出る。これはもしかして「世間的にもメールのSSL設定は浸透しているのか?」と思い、メール設定の解説が書かれたページにSSLの設定方法があるか調べてみた。
〝メールにSSLを(SMTPsとかSTARTTLS)〟の続きを読む

今更ですがEdMaxからThunderbirdへ

Thunderbird

メールクライアントソフトは十数年の長い間EdMaxフリー版を使ってる。
今回移行するMozilla Thunderbirdは過去に何度か試みたが当時はまだ機能不足で結局EdMaxに戻っていた。
EdMaxは複数アカウントが使え、カスタマイズ出来る要素が多く、レジストリを使わないのでフォルダを移動しても使えるのでリムーバブルディスクに入れて外出先はノートパソコンでも利用出来たり、バックアップが簡単だったり優秀なフリーソフトだ。
しかし、ここ数年は開発が停滞しており時代遅れ感が否めない。さらにEdMaxはUnicode(UTF-8)のメールに問題を抱えている。これは昔はOSやソフト内部の文字コードがShiftJISが一般的だったのに起因している。EdMaxはUnicodeのメールが来たらShiftJISに変換し見る事が出来るがその影響でHTMLメールや添付ファイルが文字化けしてしまうのだ。
昔はUTF-8のメールは珍しかったので問題無かったが最近はUTF-8のメールは少なく無い。
EdMaxとしては「Unicode版に移行してね」という事だろうけど、シェアウェアだし更新が止まってるのはUnicode版も同じなので、久々にThunderbirdを試してみたら機能的にはEdMaxを圧倒するレベルに成長していたので乗り換える事にした。
〝今更ですがEdMaxからThunderbirdへ〟の続きを読む

ソーシャルメディアボタン「忍者おまとめボタン」


このブログのソーシャルメディアボタンは数年前に導入した改造版SexyBookmarksで改造してしまったので更新する事が出来ず、古いバージョンのまま利用していたが、確認してみるとサービスの終了したものが多くなっていたので設置し直すことにした。
〝ソーシャルメディアボタン「忍者おまとめボタン」〟の続きを読む

Pixi.jsで千切りした画像を動かしてみる

Pixi.js
ブラウザでゲームとか作ったりアニメーションさせる時に便利なcanvas系のJavaScriptライブラリはいくつかあるが最速の描画JavaScriptライブラリは!? パフォーマンスの検証 – ICS LABによるとPixi.jsはWebGLを使ってFlashよりも速いらしい。

以前揺れるキリンで高さ1pxの要素(li)の背景にしてjQueryで動かしてみたがとても遅かった。
そこで、このpixi.jsを使えば早くなるかもと考えやってみた。
kirin wave by Pixi.js

前回同様、高さ1pxにスライスするが今回は要素では無くスプライトに貼り付ける感じだ。
作ったはいいが、WebGLを有効にするとFirefoxでは動かず(参考にしたPixi.jsを初めて触って簡単にアニメーションを作成してみた話(その3) | 株式会社LIGも動いてない)
Google Chromeは動くけどWebGLを有効・無効にかかわらず以前より重くなってしまった。

720個のスプライトを描画させるのは難しいのかもしれない。

iPhone6のWEB制作

本日iPhone6が発売になりました。
WEB制作を生業としている私も増加した解像度をWEBブラウザ上で表示するのか気になるので調べてみた。

結論から言うと
iPhone 5はモニタ解像度は幅640pxをdevice-widthが320px(320pxのふりをして)表示します。
iPhone 6はモニタ解像度は幅750pxをdevice-widthが375px(375pxのふりをして)表示します。
iPhone 6 Plusは解像度がフルHDなので幅1090pxをdevice-widthが414px(414pxのふりのふりをして)表示します。

iPhone 5やiPhone 6の場合はdevice-pixel-ratioが2.0なので単純に2分の1で理解できるのですが
iPhone 6 Plusはdevice-pixel-ratioが3.0なのでdevice-widthは3分の1の360px(一桁四捨五入)と思っていたので不思議に思っていたが
PaintCodeによると1.15の縮小補正が入るので414pxでいいらしい。

ややこしい。

ちなみに同じく解像度が1090pxでdevice-pixel-ratioが3.0の「Sony Xperia Z」や「HTC One X」は普通に3分の1(360px)です。

まだ間に合うかもしれない新しめのアプリ開発


iPhoneやAndroidはアプリ開発を特定の会社じゃなく一般の開発者にさせることで発展した。
最近では一般の開発者がヒットを飛ばすことが少なくなったが、最初の頃は一攫千金を得た人も多かった。

アプリで乗り遅れたオレは頑張ってPassBookを覚えてサービスを開始したがPassBookは人気が出なかった。

そこで一般の開発者でも参加できそうな新しめのテクノロジーをまとめてみた。

〝まだ間に合うかもしれない新しめのアプリ開発〟の続きを読む

人気のエディタ「Sublime Text 2」

Sublime Text 2

「Sublime Text 2」はこの1・2年噂になってるエディタで豊富な機能拡張ができ特にWEB制作する人に人気のソフトですが、なぜか、ずっとMac用と勘違いしてスルーしていたがMac・Windows・linixのマルチプラットフォームと知って試してみることにした。

私はHTML等の編集はシンプルで人気なエディタ「TeraPad」を使っていていたが内部エンコードがShift-JISの為UTF-8の一部文字(〜など)が?に変わってしまう問題を発見してからは、同じくシンプルな「Mery」に切り替えた。Meryはユニコードで作成されたプログラムなので文字化けしない。
PHPは「PHPエディタ」を使っていてterapadと同じ問題を抱えていたがレアなケースだしPHPの場合プログラム的に回避できるので使い続けていた。

「Sublime Text 2」はユニコードで作られてるが標準ではShift-JISの表示も出来ないしメニューも英語で敷居が高い。
まずは本家Sublime Textからインストーラーをダウンロードしてインストール。

次に簡単にパッケージ(プラグインみたいなもの)をインストールするためのツール「Package Control」をインストール。
Installation – Package Controlにアクセスしタブ「SUBLIME TEXT 2」をクリックし、import~のテキストをコピペする。
Sublime Text 2に戻ってコンソールを開き(「Ctrl + @」を押す)、先ほどコピーしたテキストを張り付けて「Enter」を押す。
再起動後コマンドパレットを表示(「Ctrl + Shift + p」を押す)して「Package Control: Install Package」があれば正常にインストールされている。

あとは、お気に入りのパッケージをインストール。
ConvertToUTF8:Shift-JISやEUC-JPに対応
IMESupport:IMEを利用した文字入力をサポート
HTML5:HTML5の自動補完
CSS Snippets:CSSの自動補完
Phpcs:PHPの自動補完
SublimeLinter:HTML,CSS,JSの構文チェック
Goto-CSS-Declaration:HTMLからCSSの該当位置にジャンプ
Abacus:イコールとかコロンとかの面を合わせる
AutoFileName:ファイル名の自動補完

パッケージ「SublimeLinter」でPHPの構文チェックする為に
「Preferences」「Package Settings」「SublimeLinter」「Settings – User」を選択し
次のような感じでPHPの場所等を入力し保存する。
基本的に「Sublime Text 2」はJSONで設定する必要がある。

{
	"sublimelinter_executable_map": {
		"php": "C:\\XXX\\XXX\\php.exe"
		},
	"sublimelinter_gutter_marks": true,
	"sublimelinter_delay": 0.5
}

○○で始まる文字列検索の速度比較

PHPにて「○○で始まる文字列」を検索する場合、一番に思いつくのは正規表現だけど重いのでstrposで検索していたがstrposは検索位置を返すし全体を検索するのでなんとなく遅いかなと思い別の方法を模索してみた。

PHPのパフォーマンス改善(3) | Selfkleptomaniac
という記事にstrncmpを含んだ3つの方法が書かれていたので計5つの方法のベンチを取って比較してみた。
(各秒数は約8万行を検索したしたベンチの10回分の平均値。)

strncmp版(先頭から特定文字数分検索する関数)
if (!strncmp($myvalue, $searchstr, 5)) ~
0.0312 sec

substr版(文字列を部分抽出する関数)
if (substr($myvalue, 0, 5) == $searchstr) ~
0.0447 sec

preg_match版(正規表現を利用した検索)
if (preg_match(‘!^’.$searchstr.’!’, $myvalue)) ~
0.0578 sec

substr_compare版(特定部分から特定文字数分検索する関数)
if (substr_compare($myvalue, $searchstr, 0, 5) == 0) ~
0.0415 sec

strpos版(文字列の開始位置を検索する関数)
if (strpos($myvalue, $searchstr) === 0) ~
0.0297 sec

おっしゃる通り「strncmp」は速く「preg_match」は遅いが「strpos」が予想以上に速く、単純な文字列の検索も今回のような特定位置の文字列検索も「strpos」が最速という結果になった。