人力はてなの質問数の推移



2001年7月 183
2001年8月 207
2001年9月 101
2001年10月 140
2001年11月 104
2001年12月 163
2002年1月 214
2002年2月 196
2002年3月 168
2002年4月 194
2002年5月 186
2002年6月 165
2002年7月 187
2002年8月 149
2002年9月 180
2002年10月 198
2002年11月 216
2002年12月 191
2003年1月 227
2003年2月 355
2003年3月 459
2003年4月 738
2003年5月 790
2003年6月 830
2003年7月 946
2003年8月 924
2003年9月 907
2003年10月 1113
2003年11月 1509
2003年12月 1651
2004年1月 1318
2004年2月 1533
2004年3月 1658
2004年4月 1664
2004年5月 2183
2004年6月 2287
2004年7月 2843
2004年8月 2854
2004年9月 3240
2004年10月 3292
2004年11月 3753
2004年12月 3274
2005年1月 3706
2005年2月 3152
2005年3月 3236
2005年4月 3164
2005年5月 3353
2005年6月 3741
2005年7月 3867
2005年8月 3794
2005年9月 3906
2005年10月 3781
2005年11月 3644
2005年12月 3558
2006年1月 3531
2006年2月 3496
2006年3月 3645
2006年4月 3190
2006年5月 4871
2006年6月 4372
2006年7月 4228
2006年8月 4539
2006年9月 4256
2006年10月 4072
2006年11月 3832
2006年12月 3498
2007年1月 3605
2007年2月 3571
2007年3月 3594
2007年4月 3319
2007年5月 3541
2007年6月 3150
2007年7月 3062
2007年8月 3228
2007年9月 3114
2007年10月 2912
2007年11月 2993
2007年12月 2550
2008年1月 2969
2008年2月 2811
2008年3月 2686
2008年4月 2563
2008年5月 2480
2008年6月 2523
2008年7月 2467
2008年8月 2305
2008年9月 2221
2008年10月 2101
2008年11月 2143
2008年12月 2252
2009年1月 2195
2009年2月 2127
2009年3月 2202
2009年4月 1930
2009年5月 2093
2009年6月 2029
2009年7月 1946
2009年8月 1944
2009年9月 2069
2009年10月 2369
2009年11月 1914
2009年12月 1752
2010年1月 1975
2010年2月 1872
2010年3月 1814
2010年4月 1736
2010年5月 1764
2010年6月 1683
2010年7月 1702
2010年8月 1478
2010年9月 1553
2010年10月 1555
2010年11月 1316
2010年12月 1341
2011年1月 1428
2011年2月 1404
2011年3月 1587
2011年4月 1423
2011年5月 1843
2011年6月 3357
2011年7月 2585
2011年8月 2909
2011年9月 2913
2011年10月 2728
2011年11月 2349
2011年12月 2218
2012年1月 2010
2012年2月 2269
2012年3月 2406
2012年4月 488

WEBからののPEARインストール

以下の質問を見て、ちょっといじってみました。

http://q.hatena.ne.jp/1324957466

結果としては、go-pear.phpにちょっと手を加えて、CoreServerでのWEBからのPEARのインストールが可能になりました。

変更したものを、

http://test.fr-soft.com/files/go-pear.phps

に置きました。このファイルをダウンロードして、go-pear.phpとリネームして使ってもらえれば動くと思います。

中身に興味がない人はここまで読んで、頑張ってください。


では、何をしたか?
パッチも、
http://test.fr-soft.com/files/go-pear.patch
として置いておきますが、一番の原因は、http://q.hatena.ne.jp/1323623815 のコメントで、rouge_2008さんがおっしゃっていることそのままです。

go-pear.phpの115行目以降で定義している「http://svn.php.net/viewvc/pear/pear-core/branches/PEAR_1_4/PEAR.php」にアクセスできない為、発生しているエラーのようです。
http://svn.php.net/viewvc/pear/pear-core/」が空になっています。アクセスして確認してみてください。
※他に「http://svn.php.net/viewvc/pear/pear-core/branches/PEAR_1_4/Console/Getopt.php」が必要ですが、こちらもありません。

調べてみると、pear-coreのソース管理は、php.netのSVNではなく、GitHubに移行したみたいです。
https://github.com/pear/pear-core

そんな訳で、上記のダウンロードするURLをGitHubのものに書き換えてあげました。
つまり、
http://svn.php.net/viewvc/pear/pear-core/branches/PEAR_1_4/PEAR.php
ではなく、
https://raw.github.com/pear/pear-core/master/PEAR.php
です。

これで動くかと思いきや、go-pear.phpの中でファイルをダウンロードしている関数が、httpsに対応していない模様。作ったパッチはここが結構いい加減なのですが、fopen_wrappersが有効だと仮定して、file_get_contentsでダウンロードさせてしまいました。もし、fopen_wrappersが無効な環境ではこの部分を手を加える必要があります。

Console/Getopt.phpは、SVN内で管理されているものの場所が変ったみたいですね。
http://svn.php.net/viewvc/pear/pear-core/branches/PEAR_1_4/Console/Getopt.php?view=co

http://svn.php.net/viewvc/pear/packages/Console_Getopt/trunk/Console/Getopt.php?view=co
と書き換えて終了。

さて、これで必要なファイルもダウンロードできて完璧かと思ったら、PEAR5がないとおっしゃる。
という訳で、こいつもダウンロードするファイルのリストに追加してやりました。

以上で、動作するようになりました。


しかし、大した変更ではないにしろ、PEAR5.phpがないとか、GitHubに管理場所変わってるのに対応してないとか、まともにgo-pear.phpは管理されてない感じですね。


2012/05/18追記:

coffeさんからのご指摘頂きましたように、Archive_Tarもgithubに管理を移行した模様です。
http://test.fr-soft.com/files/go-pear.phps
も動作するように書き換えました。

形態素解析

なんちゃって形態素解析

<?php
class MorphologicalAnalysis
{
  private $yahooApplicationId_ = null;

  function setYahooApplicationID($id)
  {
    $this->yahooApplicationId_ = $id;
  }

  function parse($text)
  {
    $url = 'http://jlp.yahooapis.jp/MAService/V1/parse' 
      . '?appid=' . $this->yahooApplicationId_
      . '&results=ma'
      . '&response=surface,reading,pos,baseform,feature'
      . '&sentence=' . urlencode($text);

    $contents = file_get_contents($url);

    $document = new DOMDocument();
    $document->loadXML($contents);

    $maResult = $document->getElementsByTagName('ma_result');
    if ($maResult->length != 1) {
      return false;
    }
    $maResult = $maResult->item(0);
    $maResult = $this->__parseMaResult($maResult);

    return $maResult;
  }

  function __parseMaResult($maResult)
  {
    $count = 0;
    $list = array();

    $item = $maResult->firstChild;
    while (!empty($item)) {
      if ($item->nodeName == 'total_count') {
	$count = $item->textContent;
      }

      if ($item->nodeName == 'word_list') {
	$word = $item->firstChild;
	while (!empty($word)) {
	  $entry = array();
	  $node = $word->firstChild;
	  while (!empty($node)) {
	    $entry[$node->nodeName] = $node->textContent;
	    $node = $node->nextSibling;
	  }
	  $list[] = $entry;
	  $word = $word->nextSibling;
	}
      }

      $item = $item->nextSibling;
    }

    if (count($list) != $count) {
      return false;
    }

    return $list;
  }

}
?>

こんな風に使えます。

<?php
require_once('MorphologicalAnalysis.php');

$analyzer = new MorphologicalAnalysis();
$analyzer->setYahooApplicationID(アプリケーションID);
$result = $analyzer->parse('庭には二羽ニワトリがいる。');
print_r ($result);
?>

その結果

Array
(
    [0] => Array
        (
            [surface] => 庭
            [reading] => にわ
            [pos] => 名詞
            [baseform] => 庭
            [feature] => 名詞,名詞,*,庭,にわ,庭
        )

    [1] => Array
        (
            [surface] => に
            [reading] => に
            [pos] => 助詞
            [baseform] => に
            [feature] => 助詞,格助詞,*,に,に,に
        )

    [2] => Array
        (
            [surface] => は
            [reading] => は
            [pos] => 助詞
            [baseform] => は
            [feature] => 助詞,係助詞,*,は,は,は
        )

    [3] => Array
        (
            [surface] => 二
            [reading] => 2
            [pos] => 名詞
            [baseform] => 2
            [feature] => 名詞,数詞,*,二,2,2
        )

    [4] => Array
        (
            [surface] => 羽
            [reading] => わ
            [pos] => 接尾辞
            [baseform] => 羽
            [feature] => 接尾辞,助数,*,羽,わ,羽
        )

    [5] => Array
        (
            [surface] => ニワトリ
            [reading] => にわとり
            [pos] => 名詞
            [baseform] => ニワトリ
            [feature] => 名詞,名詞,*,ニワトリ,にわとり,ニワトリ
        )

    [6] => Array
        (
            [surface] => が
            [reading] => が
            [pos] => 助詞
            [baseform] => が
            [feature] => 助詞,格助詞,*,が,が,が
        )

    [7] => Array
        (
            [surface] => いる
            [reading] => いる
            [pos] => 動詞
            [baseform] => いる
            [feature] => 動詞,一段,基本形,いる,いる,いる
        )

    [8] => Array
        (
            [surface] => 。
            [reading] => 。
            [pos] => 特殊
            [baseform] => 。
            [feature] => 特殊,句点,*,。,。,。
        )

)

人力はてな 非公式利用者検定

人力はてな 非公式利用者検定なるものを立ててみました。
http://q.hatena.ne.jp/1317732658
その問題の一環です。

では、問題です。
次のリストのうち1つを選んで回答に追記してください。ただし、他の回答者の回答を確認して回答が被らないように注意してください。

  • 食う
  • 寝る
  • 遊ぶ
  • 走る
  • 滑る
  • 転ぶ

好きなミュージシャンもこっそり追記してくれたら、ボーナスです!
行間を読んでくれると、うれしいです。

C00D11B1の対処方

Windows Vista上のWindows Media Playerで動画が再生できなかった。
誘導されるエラーページを見ると、C00D11B1とかいうエラーコードらしくサウンドドライバのエラーらしきことだけが分かる。

Googleで検索して見つかる内容としては、

の3つだった。

ところがどれも該当しない。

英語サイトで検索したら、一発で解決。
参考までに。

http://forums.techarena.in/media-player/717317.htm

AndroidのHT-03A上のデバッグ覚書

HT-03Aでの実機デバッグ手順

1.端末側で、デバッグ機能をON、および、サードパーティ製のアプリの受付をON
2.PC側のドライバをインストール
  HTCのサイトより、HTCSyncとDiverUpdateをインストール
3.USBで接続
4.adb devicesで検出されることを確認
5.eclipseから通常通りにデバッグ実行