<?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>devneko is not cat.</title>
	<atom:link href="http://devneko.net/blog/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://devneko.net/blog</link>
	<description>simple is cat.</description>
	<lastBuildDate>Fri, 03 Sep 2010 15:35:49 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>今更だけどjavaのString#replaceAll()/String#replaceFirst()、String#split()が遅い</title>
		<link>http://devneko.net/blog/?p=53</link>
		<comments>http://devneko.net/blog/?p=53#comments</comments>
		<pubDate>Fri, 03 Sep 2010 15:35:49 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[未分類]]></category>

		<guid isPermaLink="false">http://devneko.net/blog/?p=53</guid>
		<description><![CDATA[JavaのStringのreplaceとsplitは正規表現文字列を使用する。
柔軟ではあるけれど、通常の文字列でreplace/splitしたい場合は速度が低下してしまう。
そこで自作replace/splitの出番ですよ。下記のreplace/splitは実測で５倍くらい早かったです。


public class FastStringUtil {

	public static List split(String text, String splitter) {
		ArrayList items = new ArrayList();

		int spIndex = text.indexOf(splitter);
		int index = 0;
		while (spIndex >= 0) {
			items.add(text.substring(index, spIndex));
			spIndex += splitter.length();
			index = spIndex;
			spIndex = text.indexOf(splitter, spIndex);
		}
		if (index < text.length() ) {
			items.add(text.substring(index));
		}

		return items;
	}

	public static String replace(String text, String target,
			String replacement, boolean all) {
		StringBuilder out = new StringBuilder();
		int spIndex = [...]]]></description>
			<content:encoded><![CDATA[<p>JavaのStringのreplaceとsplitは正規表現文字列を使用する。<br />
柔軟ではあるけれど、通常の文字列でreplace/splitしたい場合は速度が低下してしまう。<br />
そこで自作replace/splitの出番ですよ。下記のreplace/splitは実測で５倍くらい早かったです。</p>
<p><code>
<pre>
public class FastStringUtil {

	public static List<String> split(String text, String splitter) {
		ArrayList<String> items = new ArrayList<String>();

		int spIndex = text.indexOf(splitter);
		int index = 0;
		while (spIndex >= 0) {
			items.add(text.substring(index, spIndex));
			spIndex += splitter.length();
			index = spIndex;
			spIndex = text.indexOf(splitter, spIndex);
		}
		if (index < text.length() ) {
			items.add(text.substring(index));
		}

		return items;
	}

	public static String replace(String text, String target,
			String replacement, boolean all) {
		StringBuilder out = new StringBuilder();
		int spIndex = text.indexOf(target);
		int index = 0;
		while (spIndex >= 0) {
			out.append(text.substring(index, spIndex));
			out.append(replacement);
			spIndex += target.length();
			index = spIndex;
			if (!all) {
				break;
			}
			spIndex = text.indexOf(target, spIndex);
		}
		if (index < text.length() ) {
			out.append(text.substring(index));
		}
		return out.toString();
	}
}
</pre>
<p></code></p>
]]></content:encoded>
			<wfw:commentRss>http://devneko.net/blog/?feed=rss2&amp;p=53</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>clojureでファイル処理</title>
		<link>http://devneko.net/blog/?p=48</link>
		<comments>http://devneko.net/blog/?p=48#comments</comments>
		<pubDate>Thu, 02 Sep 2010 22:24:22 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[未分類]]></category>

		<guid isPermaLink="false">http://devneko.net/blog/?p=48</guid>
		<description><![CDATA[clojureはrubyと比べるとファイル処理というかテキスト処理が面倒な気がする。
contribとかもっと調べればいいライブラリがあるのだろうか。
とりあえずユーティリティを書く。
IO.foreachより短いタイプでテキスト処理したいがためにeach-linesアナフォリックマクロを作成。


(defn reader-from-path [path]
  (BufferedReader. (InputStreamReader. (FileInputStream. path))))

(defmacro read-lines [path]
  `(with-open [r# (reader-from-path ~path)]
     (loop [coll# [] line# (.readLine r#)]
       (if line#
         (recur (conj coll# line#) (.readLine r#))
         [...]]]></description>
			<content:encoded><![CDATA[<p>clojureはrubyと比べるとファイル処理というかテキスト処理が面倒な気がする。<br />
contribとかもっと調べればいいライブラリがあるのだろうか。<br />
とりあえずユーティリティを書く。<br />
IO.foreachより短いタイプでテキスト処理したいがためにeach-linesアナフォリックマクロを作成。</p>
<p><core>
<pre>
(defn reader-from-path [path]
  (BufferedReader. (InputStreamReader. (FileInputStream. path))))

(defmacro read-lines [path]
  `(with-open [r# (reader-from-path ~path)]
     (loop [coll# [] line# (.readLine r#)]
       (if line#
         (recur (conj coll# line#) (.readLine r#))
         coll#))))

(defmacro each-lines [path &#038; body]
  `(doseq [~'line (read-lines ~path)]
     ~@body))
</pre>
<p></code></p>
]]></content:encoded>
			<wfw:commentRss>http://devneko.net/blog/?feed=rss2&amp;p=48</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>clojureで数学</title>
		<link>http://devneko.net/blog/?p=44</link>
		<comments>http://devneko.net/blog/?p=44#comments</comments>
		<pubDate>Thu, 02 Sep 2010 21:13:41 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[未分類]]></category>

		<guid isPermaLink="false">http://devneko.net/blog/?p=44</guid>
		<description><![CDATA[バグってても知らない。


(defn ! [x]
  (loop [val x n (- x 1)]
    (if (> n 1)
      (recur (* val n) (- n 1))
      val)))

(defn ** [x n]
  (reduce * (repeat n x)))

(defn **2 [x]
  (* x x))

(defn combination [n m]
  [...]]]></description>
			<content:encoded><![CDATA[<p>バグってても知らない。<br />
<code>
<pre>
(defn ! [x]
  (loop [val x n (- x 1)]
    (if (> n 1)
      (recur (* val n) (- n 1))
      val)))

(defn ** [x n]
  (reduce * (repeat n x)))

(defn **2 [x]
  (* x x))

(defn combination [n m]
  (if (< n m) (throw (ArithmeticException.)))
  (/ (! n)
     (* (! m)
        (! (- n m)))))

(defn average [seq]
  (/ (reduce + seq) (count seq)))

(defn variance [seq]
  (let [avg (average seq)]
    (average (map (fn [x] (** (- avg x) 2)) seq))))

(defn stddev [seq]
  (Math/sqrt (variance seq)))

(defn correlation [seq]
  (let [col1 (map first seq), col2 (map second seq)]
       (let [avg1 (average col1)
	    avg2 (average col2)]
	    (/ (reduce + (map
			   (fn [d]
			       (*
				(- (first d) avg1)
				(- (second d) avg2))) seq))
	        (count seq)
         	(* (stddev col1) (stddev col2))))))

(defn vector-length [vec]
  (Math/sqrt
    (reduce + (map **2 vec))))

(defn vector-from-points [p1 p2]
  (map (fn [x] (- (first x) (second x))) (map list p1 p2)))

(defn distance [p1 p2]
  (vector-length (vector-from-points p1 p2)))
</pre>
<p></code></p>
]]></content:encoded>
			<wfw:commentRss>http://devneko.net/blog/?feed=rss2&amp;p=44</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>サイトをインラインフレームで表示するのを禁止するJavaScript</title>
		<link>http://devneko.net/blog/?p=41</link>
		<comments>http://devneko.net/blog/?p=41#comments</comments>
		<pubDate>Thu, 15 Apr 2010 15:18:35 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[未分類]]></category>

		<guid isPermaLink="false">http://devneko.net/blog/?p=41</guid>
		<description><![CDATA[なんとなくtwitter.comのHTMLソースを見てみたら変なJavaScriptコードを見つけた。
なるほど。インラインフレームとかを使ってトップウィンドウ意外でtwitterを開くのを禁止しているので。
念のためローカルでiframeを使って試してみたらtwitterのホームに飛ばされた。
よく知られた方法なのかもしれないけど初めて知った。
以下ちょっと見やすくしたコード。


if (window.top !== window.self) {
  document.write = "";
  window.top.location = window.self.location;
  setTimeout(function(){document.body.innerHTML='';},1);
  window.self.onload=function(evt){document.body.innerHTML='';};
}


]]></description>
			<content:encoded><![CDATA[<p>なんとなくtwitter.comのHTMLソースを見てみたら変なJavaScriptコードを見つけた。<br />
なるほど。インラインフレームとかを使ってトップウィンドウ意外でtwitterを開くのを禁止しているので。<br />
念のためローカルでiframeを使って試してみたらtwitterのホームに飛ばされた。<br />
よく知られた方法なのかもしれないけど初めて知った。<br />
以下ちょっと見やすくしたコード。</p>
<pre>
<code>
if (window.top !== window.self) {
  document.write = "";
  window.top.location = window.self.location;
  setTimeout(function(){document.body.innerHTML='';},1);
  window.self.onload=function(evt){document.body.innerHTML='';};
}
</code>
</pre>
]]></content:encoded>
			<wfw:commentRss>http://devneko.net/blog/?feed=rss2&amp;p=41</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>web sql database を使ってみる</title>
		<link>http://devneko.net/blog/?p=33</link>
		<comments>http://devneko.net/blog/?p=33#comments</comments>
		<pubDate>Thu, 15 Apr 2010 13:15:22 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[未分類]]></category>

		<guid isPermaLink="false">http://devneko.net/blog/?p=33</guid>
		<description><![CDATA[web sql databaseを少しだけ触ってみた。
まだ日本語の情報がほとんどないのでw3cの仕様書を参考にする。
Introductionにコードサンプルがあるけど、そのままだと動かない罠。
chrome5で試しているのだけれど、changeVersion()がどうも動かないみたい。中途半端にエラーがでるけど期待通りに動かないので使わないことにする。
あと、当たり前かもしれないけど、openDatabase()は１回だけ呼ぶものみたい。なんどもopenDatabase()するとchromeの要素検証画面にあるDatabaseタブに
たくさんDBのアイコンがでてくる。内部的に複数のDBオブジェクトが作成されているっぽい。とりあえずグローバルスコープに専用の変数を用意して回避。
そんなこんなで出来上がった、ただ書いて読むだけのコードが下記。


      var g_db = null;
      function prepareDatabase() {
        if ( g_db != null ) { return g_db; }
        return g_db = openDatabase("testdb05", '1.0', "testdb", 1024*1024*5, function (db){
   [...]]]></description>
			<content:encoded><![CDATA[<p>web sql databaseを少しだけ触ってみた。<br />
まだ日本語の情報がほとんどないので<a href="http://dev.w3.org/html5/webdatabase/#introduction">w3cの仕様書</a>を参考にする。<br />
<a href="http://dev.w3.org/html5/webdatabase/#introduction">Introduction</a>にコードサンプルがあるけど、そのままだと動かない罠。<br />
chrome5で試しているのだけれど、changeVersion()がどうも動かないみたい。中途半端にエラーがでるけど期待通りに動かないので使わないことにする。<br />
あと、当たり前かもしれないけど、openDatabase()は１回だけ呼ぶものみたい。なんどもopenDatabase()するとchromeの要素検証画面にあるDatabaseタブに<br />
たくさんDBのアイコンがでてくる。内部的に複数のDBオブジェクトが作成されているっぽい。とりあえずグローバルスコープに専用の変数を用意して回避。<br />
そんなこんなで出来上がった、ただ書いて読むだけのコードが下記。</p>
<pre>
<code>
      var g_db = null;
      function prepareDatabase() {
        if ( g_db != null ) { return g_db; }
        return g_db = openDatabase("testdb05", '1.0', "testdb", 1024*1024*5, function (db){
            db.transaction(function (t) {
            t.executeSql("CREATE TABLE mytable(id,name)");
          });
        });
      }
      function writeDb() {
        var db = prepareDatabase();
        db.transaction(function (t){
          t.executeSql("INSERT INTO mytable(id,name) values(1,2)");
        });
      }
      function readDb() {
        var db = prepareDatabase();
        db.readTransaction(function (t){
          t.executeSql("SELECT id,name FROM mytable", null, function (t,r){
          alert(r.rows.item(0).name);
        }, function (t,e) {
            alert(e.message);
          });
        });
      }
</code>
</pre>
]]></content:encoded>
			<wfw:commentRss>http://devneko.net/blog/?feed=rss2&amp;p=33</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SVGで電卓</title>
		<link>http://devneko.net/blog/?p=29</link>
		<comments>http://devneko.net/blog/?p=29#comments</comments>
		<pubDate>Mon, 12 Apr 2010 15:48:40 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[未分類]]></category>

		<guid isPermaLink="false">http://devneko.net/blog/?p=29</guid>
		<description><![CDATA[勉強がてらSVGで電卓。月並み過ぎる。chrome5で動作確認したので他のブラウザで動くかは謎。
imgタグだとなぜかうまく表示されないので直接リンク。
SVG電卓
]]></description>
			<content:encoded><![CDATA[<p>勉強がてらSVGで電卓。月並み過ぎる。chrome5で動作確認したので他のブラウザで動くかは謎。</p>
<p>imgタグだとなぜかうまく表示されないので直接リンク。<br />
<a href="http://devneko.net/files/calculator.svg">SVG電卓</a></p>
]]></content:encoded>
			<wfw:commentRss>http://devneko.net/blog/?feed=rss2&amp;p=29</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>無線LANルーター3製品の消費電力を比較</title>
		<link>http://devneko.net/blog/?p=23</link>
		<comments>http://devneko.net/blog/?p=23#comments</comments>
		<pubDate>Tue, 08 Dec 2009 14:00:56 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[未分類]]></category>

		<guid isPermaLink="false">http://devneko.net/blog/?p=23</guid>
		<description><![CDATA[購入検討中の無線LANルータの消費電力
BUFFALO WLR300GNH	　12W
NEC WR8300N 9W
corega WZR-HP-G300NH 14W
どれも凝った使い方をしない人には似たり寄ったりな機能しかないので
消費電力の一番低いWR8300Nに決定。WR8300Nはエコモードというのがあって
待機時などの消費電力はさらにぐっと低い。
]]></description>
			<content:encoded><![CDATA[<p>購入検討中の無線LANルータの消費電力</p>
<p><a href="http://buffalo.jp/products/catalog/network/whr-g300n/">BUFFALO WLR300GNH</a>	　12W<br />
<a href="http://121ware.com/product/atermstation/product/warpstar/wr8300n/index.html">NEC WR8300N</a> 9W<br />
<a href="http://corega.jp/prod/wlr300gnh/">corega WZR-HP-G300NH</a> 14W</p>
<p>どれも凝った使い方をしない人には似たり寄ったりな機能しかないので<br />
消費電力の一番低いWR8300Nに決定。WR8300Nはエコモードというのがあって<br />
待機時などの消費電力はさらにぐっと低い。</p>
]]></content:encoded>
			<wfw:commentRss>http://devneko.net/blog/?feed=rss2&amp;p=23</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Public DNSを使用してみる。</title>
		<link>http://devneko.net/blog/?p=16</link>
		<comments>http://devneko.net/blog/?p=16#comments</comments>
		<pubDate>Fri, 04 Dec 2009 15:31:48 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[未分類]]></category>

		<guid isPermaLink="false">http://devneko.net/blog/?p=16</guid>
		<description><![CDATA[Googleの無料パブリックDNSサービス「Google Public DNS」を使ってネットのアクセス速度を上昇させる方法
早速設定してみる。
ルータのDNS設定をGoogle Public DNSに向けてみるも何故かあまり速度変わらず。
Googleのチュートリアルどおりに端末に設定してみると一気に速度が倍に！
60～150ms くらいだったのが 30～60msくらいになった。
ウェブも体感で若干早くなったような。。。
とりあえず常用する。
]]></description>
			<content:encoded><![CDATA[<p><a href="http://gigazine.net/index.php?/news/comments/20091204_google_public_dns/">Googleの無料パブリックDNSサービス「Google Public DNS」を使ってネットのアクセス速度を上昇させる方法</a></p>
<p>早速設定してみる。<br />
ルータのDNS設定をGoogle Public DNSに向けてみるも何故かあまり速度変わらず。<br />
Googleのチュートリアルどおりに端末に設定してみると一気に速度が倍に！<br />
60～150ms くらいだったのが 30～60msくらいになった。<br />
ウェブも体感で若干早くなったような。。。<br />
とりあえず常用する。</p>
]]></content:encoded>
			<wfw:commentRss>http://devneko.net/blog/?feed=rss2&amp;p=16</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>install google go  to ubunt8.04</title>
		<link>http://devneko.net/blog/?p=11</link>
		<comments>http://devneko.net/blog/?p=11#comments</comments>
		<pubDate>Sat, 21 Nov 2009 06:29:59 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[未分類]]></category>

		<guid isPermaLink="false">http://devneko.net/blog/?p=11</guid>
		<description><![CDATA[google go を Ubuntu8.04にインストール。
基本的にgoogleのインストールページ通りにインストールできた。
ただ、分散バージョン管理システムのmercurialをインストールするところで
エラーが発生。
「sudo easy_install mercurial」をする前にg++をapt-get install しておく
必要があった。
あと、環境変数のGOBINは最初はOptionalと書いてあるから無視していたが
結局インストール手順内に必要な場所があったので設定した。
なお、GOBINはPATHに含める必要がある。
僕の場合、環境変数は.bashrcに下記のように設定した
（32bitインテルCPUにUbuntuの環境）
GOROOT=$HOME/go
GOBIN=$HOME/bin
GOOS=linux
GOARCH=386
export GOROOT
export GOOS
export GOARCH
export GOBIN
PATH=$PATH:$GOBIN
export PATH
インストールが完了すると$GOBINのディレクトリにコンパイラのバイナリが
入っている。
お決まりのHello Woldでテスト。

// file name: test.go
package main
import fmt "fmt"
func main() {
  fmt.Printf("Hello world\n");
}

32bitインテルCPU向けのコンパイラは 8g  だけどリンクは勝ってには
してくれない。なのでコンパイルとリンクで2回コマンドを実行する。
8g test.go
8l test.8
すると実効バイナリの 8.out ができたので
./8.out してみると「Hello world」が表示された。
]]></description>
			<content:encoded><![CDATA[<p>google go を Ubuntu8.04にインストール。<br />
基本的に<a href="http://golang.org/doc/install.html">googleのインストールページ</a>通りにインストールできた。<br />
ただ、分散バージョン管理システムのmercurialをインストールするところで<br />
エラーが発生。<br />
「sudo easy_install mercurial」をする前にg++をapt-get install しておく<br />
必要があった。<br />
あと、環境変数のGOBINは最初はOptionalと書いてあるから無視していたが<br />
結局インストール手順内に必要な場所があったので設定した。<br />
なお、GOBINはPATHに含める必要がある。</p>
<p>僕の場合、環境変数は.bashrcに下記のように設定した<br />
（32bitインテルCPUにUbuntuの環境）<br />
GOROOT=$HOME/go<br />
GOBIN=$HOME/bin<br />
GOOS=linux<br />
GOARCH=386<br />
export GOROOT<br />
export GOOS<br />
export GOARCH<br />
export GOBIN</p>
<p>PATH=$PATH:$GOBIN<br />
export PATH</p>
<p>インストールが完了すると$GOBINのディレクトリにコンパイラのバイナリが<br />
入っている。</p>
<p>お決まりのHello Woldでテスト。<br />
<code><br />
// file name: test.go<br />
package main</p>
<p>import fmt "fmt"</p>
<p>func main() {<br />
  fmt.Printf("Hello world\n");<br />
}<br />
</code></p>
<p>32bitインテルCPU向けのコンパイラは 8g  だけどリンクは勝ってには<br />
してくれない。なのでコンパイルとリンクで2回コマンドを実行する。<br />
8g test.go<br />
8l test.8<br />
すると実効バイナリの 8.out ができたので<br />
./8.out してみると「Hello world」が表示された。</p>
]]></content:encoded>
			<wfw:commentRss>http://devneko.net/blog/?feed=rss2&amp;p=11</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iphone VS wimax+ipod touch</title>
		<link>http://devneko.net/blog/?p=4</link>
		<comments>http://devneko.net/blog/?p=4#comments</comments>
		<pubDate>Wed, 18 Nov 2009 11:10:15 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[未分類]]></category>

		<guid isPermaLink="false">http://devneko.net/blog/?p=4</guid>
		<description><![CDATA[首都圏ではwimaxが開始し、２３区内では大体どこでもwimaxで通信できるようになった。
主に首都圏で活動する人でiphoneを使いたいけれど契約の２年縛りが気になる場合などは
iphoneの代わりにwimaxとipod touchという組み合わせも検討できる。
そこで、UQ WimaxとiPod Touchの組み合わせとiPhoneでホワイトプランにした場合を比較してみた。


比較項目
iPhone (8GB)
UQ Wimax + iPod Touch


通信費用

      ホワイトプラン 980円
      パケット定額 4410円
      S!ベーシックパック 315円
      合計: 5705円
    

      UQ Wimax 4480円
    


初期費用
なし

   [...]]]></description>
			<content:encoded><![CDATA[<p>首都圏ではwimaxが開始し、２３区内では大体どこでもwimaxで通信できるようになった。<br />
主に首都圏で活動する人でiphoneを使いたいけれど契約の２年縛りが気になる場合などは<br />
iphoneの代わりにwimaxとipod touchという組み合わせも検討できる。<br />
そこで、UQ WimaxとiPod Touchの組み合わせとiPhoneでホワイトプランにした場合を比較してみた。</p>
<table border="1">
<tr>
<th>比較項目</th>
<th>iPhone (8GB)</th>
<th>UQ Wimax + iPod Touch</th>
</tr>
<tr>
<td>通信費用</td>
<td>
      ホワイトプラン 980円<br />
      パケット定額 4410円<br />
      S!ベーシックパック 315円<br />
      合計: 5705円
    </td>
<td>
      UQ Wimax 4480円
    </td>
</tr>
<tr>
<td>初期費用</td>
<td>なし</td>
<td>
      iPod Touch 8GB 20000円<br />
      wimaxルータ 20000円
    </td>
</tr>
<tr>
<td>初期費用+2年間の<br/>通信費用</td>
<td>136920円</td>
<td>145720円</td>
</tr>
<tr>
<td>その他メリット</td>
<td>
<ul>
<li>首都圏以外でも使える</li>
<li>通話もできる</li>
</ul>
</td>
<td>
<ul>
<li>契約の２年縛りがない。</li>
<li>ノートブックなどPCでも使える</li>
</ul>
</td>
</table>
<p>
２年間の費用としてはiphoneの方が１万円お得だけれども大きな差とは言えない。<br />
iPod Touchをすでに持っている場合はwimaxを一旦試してみて駄目ならiPhoneに乗り換え<br />
という手もあるかもしれない。wimaxルータの分は無駄になるけれど。</p>
]]></content:encoded>
			<wfw:commentRss>http://devneko.net/blog/?feed=rss2&amp;p=4</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
