Category ‘制作日記’

iPhoneに元号アイコン

元号アイコン
WEBは西暦表記が多いですが書類を書いたりする際には未だ元号(年号)で記入する事が多々あります。
Siriに「今年は平成何年?」と聞いたらも答えてくれますが恥ずかしいです。
IT4コマ漫画:今って平成何年だっけ? – ITmedia ニュース
によるとそういうアプリがあるとの事ですが年号がバッジ(右上の数字)で表現されていて見た目が微妙です。
そこで、巷にあるアイコンをカスタムするアプリの方法を使って元号の書かれたアイコンを貼れないか試してみた。
(さらに…)

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


このブログのソーシャルメディアボタンは数年前に導入した改造版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個のスプライトを描画させるのは難しいのかもしれない。

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


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

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

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

(さらに…)

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

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」が最速という結果になった。

いったいどこまで歩けばいいのか?

いったい どこまで 歩けばいいのか?
古い記事だが、神経学者が一週間に9マイル(1日約1km)歩くと記憶に良いという研究結果が出たそうだ。
Walking could protect brain against shrinking, US research says
日本では昔から「1日1万歩」が健康に良いとされてる。平均的な歩幅は「身長×0.45」との事なので8.1km(1.8*0.45*10000)になる。
他にもダイエットで言うと脂肪が燃焼するのが運動し始めて20分後との事で30分~1時間程度歩くことが薦められています。

これらをまとめると
記憶に良い距離:1km=15分の40kcal
ダイエットに良い距離:2km=30分の81kcal
健康に良い距離:8km=2時間の648kcal
(一般的な歩行速度は時速4Km、ぶらぶら歩きで1時間に約162kcalとして算出)

距離を算出してもぱっと分らないのでGoogle Maps APIを使ってツールを作ってみた。
いったい どこまで 歩けばいいのか?

パソコンだと現在位置が不明だったり不正確だったりするのでダブルクリックしてスタート地点を設定する必要があります。
スマホだと大抵は自動で現在位置をスタート地点と設定されています。

犬の散歩でちょっとは歩いてるつもりだったけど地図を見る限り大夫と運動不足でした。

PassBookに対応したペット用電子名刺「iPetcards」

PassBookでペット用電子名刺作成「iPetCards」
先日、ペット用電子名刺「iPetcards」を公開しました。

思いついたのは約一年前で最初はtenhp.comを間借りして細々とやろうと思ったのですが作っていくうちに「世界初(たぶん)のPassBookに対応したペット用電子名刺なので、iPetcardsの影響でペットを飼ったら電子名刺を作るのが当たり前の世の中になったりして、世界の常識をかいちゃうかもと」という気持ちが強くなり、独自ドメインでVPSを借りてSSL証明書も買ってと準備万端で、公開後も汎用のプレスリリースサイトやiPhoneアプリ系サイトとペット系のプレスリリースサイトなどに依頼した。
しかし、プレスリリースは結局ペット系のところしか掲載してもらえなかった。

PassbookのWEBアプリ開発は資料が少なく困難だったのに、
使いやすさも考慮し、かなり練って作ったのに、
無駄にそこそこの価格のサーバーも用意したのに、
利用者が増えない、昨日の電子名刺作成者ゼロ。

お金になる要素が無いのでどうしようか悩むところだけどネット広告やチラシを作ったりする事も考えてみます。

ちなみにPassBookの方はPassを作るのは簡単なんだけど更新を通知するサーバーを作るのが面倒で必要な情報は公式には日本語の解説PDFがあるが私は下記ブログの解説の方がわかりやすかった。
仕事たのしいなーもーの「Passbookの更新(アフターケア)。(1)
Ian Lewisの「Python でPassbookファイルを作成する

揺れるキリン

kirin朝のまどろみは時々アイデアが降りてくる。
大抵は意味不明で使えないアイデアで、今回も揺れるキリンのイメージが浮かんだので作ってみた。

手法はFlashではよく使われてるもので画像を1ピクセル毎にスライスしたものを用意して動かすのだけど最近はFlash使って無いのでjQueryで作ることにした。

手順は下記の様な感じ
・画像を読むのを待つ。
・ul&liのリストで縦ピクセル分にスライスする。
・スライスした画像を背景にして背景の位置を動かす。

やってみるとfirefoxではスローモーションになってるので背景の位置を変えず余白を変更する事で動かしてみたが解決しなかった。firefoxは苦手なのかもしれない。
kirin wave
※キリンの絵をクリックするとアニメーションが始まり、もう一回クリックすると止まります。

全く無意味だけどjQueryプラグイン化してみた。

更に世界一簡単なGithub入門を見ながら作ったライブラリをGithubで公開してみた。(Gitすら分ってないので怪しいですが)
https://github.com/uda2/kirinwave

最終的に一番時間が掛かったのはキリンの絵を描く行程でした。

android開発環境の再インストール2013

Android開発環境をインストールし直す事にした。
まず、今まで使ってたJDK6u29をアンインストール。ついでにその他のJavaもアンインストール。
eclipseもandroidSDKも削除し、設定フォルダの.androidも削除

■JDK(Java開発キット)のインストール
Java SE Downloadsから(2013年1月12日現在最新の)Java SE 7u10(JDK6u29)の64bit版「jdk-7u10-windows-x64.exe」をダウンロードしてインストール

■Eclipse(統合開発環境)のインストール
Eclipse Downloadsから「Eclipse IDE for Java Developers」の64ビット版をダウンロードして任意の場所に移動。
(さらに…)