<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Neo Inspiration</title>
	<atom:link href="http://neoinspire.net/feed" rel="self" type="application/rss+xml" />
	<link>http://neoinspire.net</link>
	<description>中の人:jakkrokk　が php,javascript,air,flex などなど好き勝手書いてます。仕事は主にWEBシステムの設計と開発、SEO全般など。</description>
	<lastBuildDate>Tue, 06 Mar 2012 02:01:27 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Android: ボタンをdrawable/xmlで作る</title>
		<link>http://neoinspire.net/archives/307</link>
		<comments>http://neoinspire.net/archives/307#comments</comments>
		<pubDate>Tue, 06 Mar 2012 01:54:37 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Android]]></category>

		<guid isPermaLink="false">http://neoinspire.net/?p=307</guid>
		<description><![CDATA[絵画センス０に自分にはフォトショやらイラレやらは操作はできても まともなボタンを作ることはできないので、 せめて単純な角丸グラデのボタンくらいXMLで作れないかということで。 結果こんなかんじになりました。 メインに配置 &#8230; <a href="http://neoinspire.net/archives/307" class="more-link">Learn more</a>]]></description>
			<content:encoded><![CDATA[<p>絵画センス０に自分にはフォトショやらイラレやらは操作はできても<br />
まともなボタンを作ることはできないので、<br />
せめて単純な角丸グラデのボタンくらいXMLで作れないかということで。</p>
<p>結果こんなかんじになりました。</p>
<p>メインに配置するボタン</p>
<pre>
#layout/main.xml
&lt;Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/submitButton"
    style="@style/myButton"
/>
</pre>
<p>ボタンのスタイル設定</p>
<pre>
#values/style.xml
&lt;resources>
&lt;style name="myButton" parent="android:Widget.Button">
        &lt;item name="android:textColor">#444444&lt;/item>
        &lt;item name="android:layout_margin">10dp&lt;/item>
        &lt;item name="android:padding">10dip&lt;/item>
        &lt;item name="android:background">@drawable/frame&lt;/item>
&lt;/style>
&lt;/resources>
</pre>
<p>#drawable<br />
frame.xml</p>
<pre>
&lt;shape xmlns:android="http://schemas.android.com/apk/res/android">
    &lt;stroke android:width="1dp" android:color="#cccccc" />
    &lt;corners android:radius="5dp" />
    &lt;gradient
        android:angle="270"
        android:startColor="#ffffff"
        android:centerColor="#dddddd"
        android:endColor="#eeeeee"
        android:type="linear"
        android:centerX="0.5"
        android:centerY="0.5"
    />
&lt;/shape>
</pre>
<p>これでiphoneっぽいアイコンになります！</p>
<p>デザインができない人用に<br />
こんな感じのXMLのテンプレートみたいなの公開してるとこないのかなぁ。。</p>
]]></content:encoded>
			<wfw:commentRss>http://neoinspire.net/archives/307/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>imageTTFText で縦書きにする方法</title>
		<link>http://neoinspire.net/archives/305</link>
		<comments>http://neoinspire.net/archives/305#comments</comments>
		<pubDate>Fri, 02 Mar 2012 10:35:38 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://neoinspire.net/?p=305</guid>
		<description><![CDATA[検索しても出てこなかったので、文字ごとにバラして 一つづつ書き出し＞高さ調整　を繰り返してたんですが、 その場合、一つ一つの高さを足していって合計を出したりとか 結構めんどくさいので、なんとかならんもんかと思ってたんです &#8230; <a href="http://neoinspire.net/archives/305" class="more-link">Learn more</a>]]></description>
			<content:encoded><![CDATA[<p>検索しても出てこなかったので、文字ごとにバラして<br />
一つづつ書き出し＞高さ調整　を繰り返してたんですが、<br />
その場合、一つ一つの高さを足していって合計を出したりとか<br />
結構めんどくさいので、なんとかならんもんかと思ってたんですが、<br />
実は単純に改行挟めばいいだけでした。</p>
<p>なので、こんな感じに</p>
<pre>
//文字列を1文字づつ配列にする。マルチバイトがないのであれば、str_splitでも可能
$l = mb_strlen($string,'UTF-8');
$chunked = array();
for ($i=0; $i<$l; $i++) {
  $chunked[] = mb_substr($string,$i,1,'UTF-8');

}

//配列を改行でjoin
$verticalString = join("\n",$chunked);

//指定のイメージデータに書き込み
imageTTFText($img,$fontSize,$angle,$x,$y,$color,$font,$verticalString);
</pre>
<p>単純にばらして改行でJOINしてからTTFTEXTにつっこめば問題なく改行してくれます。<br />
ただ等幅フォントじゃないと微妙に縦がおかしいかんじですが。</p>
]]></content:encoded>
			<wfw:commentRss>http://neoinspire.net/archives/305/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>今年もお疲れさまでした</title>
		<link>http://neoinspire.net/archives/300</link>
		<comments>http://neoinspire.net/archives/300#comments</comments>
		<pubDate>Mon, 26 Dec 2011 04:04:23 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Just A Scrap]]></category>
		<category><![CDATA[Lifehack]]></category>

		<guid isPermaLink="false">http://neoinspire.net/?p=300</guid>
		<description><![CDATA[今年は飛躍の年でした！ 技術的には半分PHP、半分FLEXってかんじでしたね。 まあFLEXで作ったSEOツール系はだんだんPHPに置き換わっていますが。 あと、諸事情でVPS系10台近く、専用サーバ、クラウドなどサーバ &#8230; <a href="http://neoinspire.net/archives/300" class="more-link">Learn more</a>]]></description>
			<content:encoded><![CDATA[<p>今年は飛躍の年でした！<br />
技術的には半分PHP、半分FLEXってかんじでしたね。<br />
まあFLEXで作ったSEOツール系はだんだんPHPに置き換わっていますが。<br />
あと、諸事情でVPS系10台近く、専用サーバ、クラウドなどサーバ周りをめちゃくさ触った1年でした。<br />
そういうの嫌いで前職やめたんですけどね。。</p>
<p>ってことで毎年恒例WEB履歴</p>
<p>去年:総検索回数：10888<br />
今年:総検索回数：10410</p>
<pre>
1月:1032
2月:828
3月:735
4月:742
5月:1165
6月:1340
7月:970
8月:824
9月:727
10月:826
11月:724
12月:497
</pre>
<p>トップサイト</p>
<pre>
livedocs.adobe.com
</pre>
<p>とうとうトップ10にhatenaもphp.netも入らなくなった。。<br />
前者は時代を感じるし、後者は成長を感じる！</p>
<p>ということで、今年1年お疲れさまでした！</p>
]]></content:encoded>
			<wfw:commentRss>http://neoinspire.net/archives/300/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ランキングチェックツールを自作してみたのでそのメモ</title>
		<link>http://neoinspire.net/archives/291</link>
		<comments>http://neoinspire.net/archives/291#comments</comments>
		<pubDate>Wed, 20 Jul 2011 03:53:58 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Google]]></category>
		<category><![CDATA[Seo]]></category>
		<category><![CDATA[Yahoo]]></category>

		<guid isPermaLink="false">http://neoinspire.net/?p=291</guid>
		<description><![CDATA[FLEX、PHP、その他もろもろでランキングチェックツールを構築したわけですが、 最近やっと安定稼働になったので、そこらへんのメモ。 サービスの規模 ・現在のワード数:1500前後 →通常のツールと違って、全SERPSを &#8230; <a href="http://neoinspire.net/archives/291" class="more-link">Learn more</a>]]></description>
			<content:encoded><![CDATA[<p>FLEX、PHP、その他もろもろでランキングチェックツールを構築したわけですが、<br />
最近やっと安定稼働になったので、そこらへんのメモ。<br />
</p>
<h3>サービスの規模</h3>
<p>・現在のワード数:1500前後<br />
→通常のツールと違って、全SERPSを取得してさらにキャプチャも取得するので、<br />
　google,yahooへのアクセス回数は大体普通のツールの7-8倍。<br />
　（なのでGRCとかフェレットとかでいったら12000キーワードくらいまわしてる計算）</p>
<p>・URLのチェック件数:1600前後<br />
→同時に競合調査とかもできるようになっているので、ワード数よりちょっと多い。</p>
<p>この規模感です。大きいような小さいような。<br />
まだ稼働して1カ月で個の規模は大きいというべきか。。。</p>
<h5>ハードウェア的には</h5>
<p>VPS4台という笑えない状況ｗ<br />
大体400ワードを1VPSで裁いてる感じです。。</p>
<h5>HDD的には</h5>
<p>キャプチャ含めて１日分のSerpsは大体3GB↑<br />
1か月分保存するだけで、100GB近くになる。<br />
HDDはいくらあっても足りない状況。</p>
<p>現在は前月分以外はtar.gzにしてローカル保存。<br />
スクリーンショットとかの関係で、<br />
DBに入れず全部ファイルにしてたのがあだになったかも。。</p>
<h5>CPU的には</h5>
<p>余裕すぎ。というかほぼ回線とHDDのためにVPSを分散させてる状況。</p>
<h5>回線的には</h5>
<p>1ワード10件表示で、100位までをGとYでやるので、20アクセス。<br />
それが1500ワードなので、3万アクセス<br />
それを4台で賄っているので、1台あたり7500アクセス。<br />
こんなの普通にG,YにアクセスしたらDOS攻撃になっちゃうので、<br />
それを24時間で分散してアクセスしてます。<br />
ちなみに最低7.5秒は感覚あけないと、Googleはすぐに弾いてきますので、<br />
24*60*60 / 7.5 = 11520ってことで、<br />
MAX1万ちょっとくらいしか1サーバ（てかIPかな）からはアクセスできない感じです。<br />
Yahooはたぶんそこまでチェックはしていなっぽいです。</p>
<h5>その他</h5>
<p>・なぜかVPS経由のIE8相当のアクセスだと、<br />
　ロケーション取得が日によってかなりばらつきがあって、<br />
　ある日は渋谷、ある日は目黒、ある日は愛媛、ある日は鹿児島<br />
　みたいな感じで、ばっらばらになります。</p>
<p>・HDDが一杯になると、VNCがつながるけど、画面が真っ黒なままなんだと初めて知りました。</p>
<p>・改めてランキングチェックツールの大変さがよくわかりました。。。</p>
<p>・とりあえず普通のランキングツールと違って全Serpsが手元にあるので、<br />
　分析し放題なのだけはメリットなのかな。</p>
]]></content:encoded>
			<wfw:commentRss>http://neoinspire.net/archives/291/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>LZTD機能追加(GoogleCalenderに対応)</title>
		<link>http://neoinspire.net/archives/287</link>
		<comments>http://neoinspire.net/archives/287#comments</comments>
		<pubDate>Thu, 02 Jun 2011 05:44:17 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Adobe]]></category>
		<category><![CDATA[Air]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[Lifehack]]></category>
		<category><![CDATA[自作]]></category>

		<guid isPermaLink="false">http://neoinspire.net/?p=287</guid>
		<description><![CDATA[Ver0.94 にアップしました。 変更点は ・GoogleCalenderへの登録を終日でしかできなかったのを時間指定でできるように EvernoteでTodo管理するアプリ Flexで時間指定まで含めたUIを考えるの &#8230; <a href="http://neoinspire.net/archives/287" class="more-link">Learn more</a>]]></description>
			<content:encoded><![CDATA[<p>Ver0.94 にアップしました。</p>
<p>変更点は<br />
・GoogleCalenderへの登録を終日でしかできなかったのを時間指定でできるように</p>
<p><a href="http://refeed.in/lztd">EvernoteでTodo管理するアプリ</a></p>
<p>Flexで時間指定まで含めたUIを考えるのはちょっと頭を使いました。</p>
<p><a href="http://joelhooks.com/2008/10/11/flex-date-and-time-datetime-picker-control/" target="_blank">Flex Date and Time (datetime) Picker Control</a></p>
<p>結局ここを参考にNumericStepper2個を時、分に適応させてやりました。<br />
本当はもっとスマートな形がいいんでしょうけど。。</p>
]]></content:encoded>
			<wfw:commentRss>http://neoinspire.net/archives/287/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>php で session_regenerate_id(true) でセッションが切れる問題</title>
		<link>http://neoinspire.net/archives/283</link>
		<comments>http://neoinspire.net/archives/283#comments</comments>
		<pubDate>Tue, 24 May 2011 03:20:31 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://neoinspire.net/?p=283</guid>
		<description><![CDATA[わざわざセキュリティリスクを上げるプログラムを書くとかどうかしてると思うけど。。 セッションハイジャックのために session_regenerate_id(true)を書くと リンクをダブルクリックしたときに高確率でセ &#8230; <a href="http://neoinspire.net/archives/283" class="more-link">Learn more</a>]]></description>
			<content:encoded><![CDATA[<p>わざわざセキュリティリスクを上げるプログラムを書くとかどうかしてると思うけど。。</p>
<p>セッションハイジャックのために<br />
session_regenerate_id(true)を書くと<br />
リンクをダブルクリックしたときに高確率でセッションが切れるようになります。<br />
たぶんセッションを保存するI/Oのあたりなんじゃないかなぁと思いますが、<br />
さしあたってこれでは色々と支障をきたすので、<br />
こちら側で session_regenerate_idのタイミングをコントロールしなければなりません。</p>
<p>でこんなかんじ。</p>
<pre>
//ログインするときexpireにtimeをいれてく
$_SESSION['expires'] = time();

//セッションのページを開くたびにこんなかんじ。
if ($_SESSION['expires'] < time() - <img src='http://neoinspire.net/wp-includes/images/smilies/icon_cool.gif' alt='8)' class='wp-smiley' /> {
    session_regenerate_id(true);
    $_SESSION['expires'] = time();

}
</pre>
<p>わざわざこんなこと書かないといけないなんて・・<br />
なので、セッション使うなら、<br />
ハイジャック対策は別の方法でやるほうがいいのかもしれないですね。<br />
やり方わかりませんが。</p>
]]></content:encoded>
			<wfw:commentRss>http://neoinspire.net/archives/283/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>LZTDバージョンちょいアップ</title>
		<link>http://neoinspire.net/archives/281</link>
		<comments>http://neoinspire.net/archives/281#comments</comments>
		<pubDate>Wed, 18 May 2011 04:14:34 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Adobe]]></category>
		<category><![CDATA[Air]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[Lifehack]]></category>
		<category><![CDATA[自作]]></category>

		<guid isPermaLink="false">http://neoinspire.net/?p=281</guid>
		<description><![CDATA[Ver0.93 にアップ 変更点は ・地味なボタンをちょっと鮮やかなアイコンに変更 ・Google CalenderにTodoを送れるように ・あと細かいけど、クリックするとリザイズできる範囲をちょっと広げました Eve &#8230; <a href="http://neoinspire.net/archives/281" class="more-link">Learn more</a>]]></description>
			<content:encoded><![CDATA[<p>Ver0.93 にアップ</p>
<p>変更点は<br />
・地味なボタンをちょっと鮮やかなアイコンに変更<br />
・Google CalenderにTodoを送れるように<br />
・あと細かいけど、クリックするとリザイズできる範囲をちょっと広げました</p>
<p><a href="http://refeed.in/lztd">EvernoteでTodo管理するアプリ</a></p>
<p>余談ですが、GoogleCalenderの設定はめちゃくちゃ苦労しました。。</p>
]]></content:encoded>
			<wfw:commentRss>http://neoinspire.net/archives/281/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FLEXで縦だけ、横だけにコンポーネントをドラッグしたいとき</title>
		<link>http://neoinspire.net/archives/275</link>
		<comments>http://neoinspire.net/archives/275#comments</comments>
		<pubDate>Wed, 27 Apr 2011 03:45:19 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Adobe]]></category>
		<category><![CDATA[Air]]></category>
		<category><![CDATA[Flex]]></category>

		<guid isPermaLink="false">http://neoinspire.net/?p=275</guid>
		<description><![CDATA[LZTDで今実装してるTODOのドラッグ機能ですが、 こんなかんじで実装してます。 public function mouseDown(e:MouseEvent):void { todo.startDrag(false, &#8230; <a href="http://neoinspire.net/archives/275" class="more-link">Learn more</a>]]></description>
			<content:encoded><![CDATA[<p>LZTDで今実装してるTODOのドラッグ機能ですが、<br />
こんなかんじで実装してます。</p>
<pre>
public function mouseDown(e:MouseEvent):void {
    todo.startDrag(false,new Rectangle(this.x,this.y,0,this.height)); //ドラッグ処理開始

}
public function mouseUp(e:MouseEvent):void {
    todo.stopDrag(); //ドラッグ処理終了
    //ドラッグ対象の中点が整列対象の一番上より下にきたら、ドラッグ対象はそれより下とみなす
    todo.y = todo.y - todo.height / 2;
    lineup(); //整列処理

}
</pre>
<p>開始処理はspriteにある startDrag() メソッドでOK。<br />
ただ、そのままだと、自由自在に動かせてしまうので、<br />
今回みたいな縦一列の画面の場合は、3つめの引数（width）を0にして<br />
横には動かせないようにしてあります。<br />
これはクリックしたところから、どれだけの幅で動かせるか、みたいな意味ぽいので、<br />
this.widthとかにすると、<br />
クリックしたところからwidth分横に動かせる＝クリック位置によっては画面外にもってける<br />
って感じになってしまうので。</p>
<p>横だけに動かしたいなら this.heightを0にして、横幅を指定すればOK。</p>
<p>あとなんか終了処理がややこしいですが、</p>
<p>1<br />
2<br />
3<br />
4<br />
5</p>
<p>ってあったとして、1をドラッグしたときに、<br />
1の高さの中央点が、2の一番上よりも下にきたら</p>
<p>2<br />
1<br />
3<br />
4<br />
5</p>
<p>になるようにする処理を書いてます。<br />
これ書かないと、1の一番上が、2の一番上よりも下に行かないと<br />
上のように並ばないので。</p>
]]></content:encoded>
			<wfw:commentRss>http://neoinspire.net/archives/275/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Evernoteでtodo管理するツールLZTDを軽くバージョンアップしました</title>
		<link>http://neoinspire.net/archives/273</link>
		<comments>http://neoinspire.net/archives/273#comments</comments>
		<pubDate>Mon, 25 Apr 2011 01:21:11 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Adobe]]></category>
		<category><![CDATA[Air]]></category>
		<category><![CDATA[素敵Webツール]]></category>
		<category><![CDATA[自作]]></category>

		<guid isPermaLink="false">http://neoinspire.net/?p=273</guid>
		<description><![CDATA[内部の処理をちょっと変えて、あと常に最前面に表示機能をつけました。 そのまま上書きインストールすれば、データロスなく使えます。 http://refeed.in/lztd ちなみに最前面に表示機能は チェックボックスにチ &#8230; <a href="http://neoinspire.net/archives/273" class="more-link">Learn more</a>]]></description>
			<content:encoded><![CDATA[<p>内部の処理をちょっと変えて、あと常に最前面に表示機能をつけました。<br />
そのまま上書きインストールすれば、データロスなく使えます。</p>
<p>
<a href="http://refeed.in/lztd" target="_blank">http://refeed.in/lztd</a></p>
<p>ちなみに最前面に表示機能は<br />
チェックボックスにチェックを入れた時</p>
<pre>
this.alwaysInFront = true;
</pre>
<p>こうなるように書いただけです。</p>
]]></content:encoded>
			<wfw:commentRss>http://neoinspire.net/archives/273/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>共起語検索ツールを作りました</title>
		<link>http://neoinspire.net/archives/270</link>
		<comments>http://neoinspire.net/archives/270#comments</comments>
		<pubDate>Fri, 15 Apr 2011 02:01:30 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Google]]></category>
		<category><![CDATA[Seo]]></category>
		<category><![CDATA[素敵Webツール]]></category>
		<category><![CDATA[自作]]></category>

		<guid isPermaLink="false">http://neoinspire.net/?p=270</guid>
		<description><![CDATA[共起語検索ツール http://refeed.in/collocation/ 今更感もありますが、SEO業界で割と最近ネタになっている共起語をピックアップするツールを作ってみました。 メインのワードを入れると、Googl &#8230; <a href="http://neoinspire.net/archives/270" class="more-link">Learn more</a>]]></description>
			<content:encoded><![CDATA[<p>共起語検索ツール<br />
<a href="http://refeed.in/collocation/" target="_blank">http://refeed.in/collocation/</a></p>
<p>今更感もありますが、SEO業界で割と最近ネタになっている共起語をピックアップするツールを作ってみました。<br />
メインのワードを入れると、Googleで検索し、その結果のTOP１０を引っ張ってきて<br />
本文と思われるものなどポイントが高そうな文を計算して、<br />
そこから引っこ抜くかんじです。</p>
<p>たとえばseoでやると</p>
<pre>
SEO	エンジン	サイト	上位	ページ	リンク	Google	Yahoo	サーチ	登録	キーワード	最適化	場合	情報	ユーザー	Web	ディレクトリ	猿	ビジネス
</pre>
<p>猿・・・？</p>
<p>まあおいておいて。</p>
<p>少なくともGoogle先生のTOP１０なので、<br />
Googleが高い評価をしているコンテンツに入っている共起語なのであれば<br />
それなりに意味があるのかなと。</p>
<p>共起語検索ツール<br />
<a href="http://refeed.in/collocation/" target="_blank">http://refeed.in/collocation/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://neoinspire.net/archives/270/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

