<?xml version="1.0" encoding="UTF-8" ?>
<rss version="0.91">
  <channel>
    <title>who7s</title>
    <description>http://who7s.blog.shinobi.jp/</description>
    <link>http://who7s.blog.shinobi.jp/</link>
    <language>ja</language>
    <copyright>Copyright (C) NINJATOOLS ALL RIGHTS RESERVED.</copyright>

    <item>
      <title>通知</title>
      <description>スパムコメントが付き出したため、コメント不可に変更いたしました。</description> 
      <link>http://who7s.blog.shinobi.jp/%E9%9B%91%E8%A8%98/%E9%80%9A%E7%9F%A5</link> 
    </item>
    <item>
      <title>[VB][SQLite][System.Data.SQLite]DataReaderを使った値取得</title>
      <description>&lt;p&gt;
System.Data.SQLiteを用いたDBプログラミング。&lt;br/&gt;
DBから値を取得するには、DataReaderとDataAdapterを用いた方法があるが、DataReaderを使った取得方法の自分メモ。
&lt;/p&gt;
&lt;pre&gt;
	Dim SQLString As String
	Dim MyConnectionString As String = &quot;data source={0}&quot;
	Dim MySQLiteConnection As New SQLiteConnection

	MyConnectionString = String.Format(MyConnectionString, _
	System.IO.Path.Combine(My.Application.Info.DirectoryPath, &quot;Hoge.db&quot;))

	Try
		MySQLiteConnection.ConnectionString = MyConnectionString
		MySQLiteConnection.Open()
		Debug.Print(&quot;DB Open&quot;)

		SQLString = &quot;SELECT * FROM EMP&quot;
		Dim MySQLiteCommand As New SQLiteCommand(SQLString, MySQLiteConnection)

		Debug.Print(SQLString)
		Dim MySQLiteDataReader As SQLiteDataReader
		MySQLiteDataReader = MySQLiteCommand.ExecuteReader()

		Dim i As Integer = 0
		Do While MySQLiteDataReader.Read
			Me.BoardDataGridView.Rows.Add()
			Me.BoardDataGridView.Rows(i).Cells(0).Value = MySQLiteDataReader.GetValue(0)
			Me.BoardDataGridView.Rows(i).Cells(1).Value = MySQLiteDataReader.GetValue(1)
			i = i + 1
		Loop
	Catch ex As Exception
		MessageBox.Show(ex.Message, &quot;DB Error&quot;, MessageBoxButtons.OK, MessageBoxIcon.Error)
	Finally
		MySQLiteConnection.Close()
		Debug.Print(&quot;DB Close&quot;)
	End Try
&lt;/pre&gt;
&lt;p&gt;
実際には、参考URLにあるように、Usingを用いたものの方が望ましいようだ。&lt;br/&gt;
&lt;a href=&quot;http://www.atmarkit.co.jp/fdotnet/vb2005/vb2005_05/vb2005_05_01.html&quot; target=&quot;_blank&quot;&gt;Usingステートメントで簡単、確実にファイルをクローズ － ＠IT&lt;/a&gt;&lt;br/&gt;
VisualStudioにて、DBファイルを追加するには、次URLにあるように、データソースを追加した後、プロジェクトに既存項目追加で設定する。&lt;br/&gt;
&lt;a href=&quot;http://blogs.wankuma.com/kazuki/archive/2009/06/14/175189.aspx&quot; target=&quot;_blank&quot;&gt;[C#][SQLite]System.Data.SQLiteを試してみた&lt;/a&gt;&lt;br/&gt;
VSのデータソースからDataGrid追加を用いれば、上ソースのように、自分でDataGridに行を設定する必要がなく楽である。&lt;br/&gt;
（どちらの方が、パフォーマンス優位かは不明）
&lt;/p&gt;
&lt;p&gt;参考：&lt;br/&gt;
&lt;a href=&quot;http://blogs.wankuma.com/hatsune/archive/2008/10/16/158915.aspx&quot; target=&quot;_blank&quot;&gt;SQLiteを使ったWindowsアプリを作成する&lt;/a&gt;&lt;br/&gt;
&lt;a href=&quot;http://floralcompany.jp/archives/2008/07/vbnet2.html&quot; target=&quot;_blank&quot;&gt;VB.Netでソート2 - FloralCompany.log&lt;/a&gt;
&lt;/p&gt;
&lt;!-- _VB_lang_ --&gt;</description> 
      <link>http://who7s.blog.shinobi.jp/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0/-vb--sqlite--system.data.sqlite-datareader%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%9F%E5%80%A4%E5%8F%96%E5%BE%97</link> 
    </item>
    <item>
      <title>PG・SE　新人から中級へのステップアップ　Clip</title>
      <description>&lt;p&gt;
&lt;a href=&quot;http://builder.japan.zdnet.com/news/story/0,3800079086,20393301,00.htm&quot; target=&quot;_blank&quot;&gt;システム開発の入門者から中級者にステップアップするための10のティップス - builder by ZDNet Japan&lt;/a&gt;&lt;br/&gt;
&lt;a href=&quot;http://d.hatena.ne.jp/aureliano/20090423/1240454590&quot; target=&quot;_blank&quot;&gt;新人プログラマーがプロのプログラマーとして独り立ちするための7つの条件 - ハックルベリーに会いに行く&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
35年定年説はどうかと思うが、ずっとプログラマーではいられないと私は思っている。&lt;br/&gt;
残念ながら私には天才的なコードを書くセンスもなければ、仕事としてプログラミングを続けていく気概が端から無い。&lt;br/&gt;
ならば、ステップアップして上流工程に関わっていくしかない。&lt;br/&gt;
なにより、上に行きたいという向上心は大切だろう。&lt;br/&gt;
仮にPGであり続けるとしても、早くの段階から上を意識しているのとそうでないのでは、伸びしろが明らかに異なる。
&lt;/p&gt;
&lt;p&gt;
&lt;a href=&quot;http://d.hatena.ne.jp/jyukutyo/20090416/1239970660&quot; target=&quot;_blank&quot;&gt;エンジニアがタイトル買い、著者買いすべき本 - {Fight the Future =&gt; じゅくのblog}&lt;/a&gt;
&lt;/p&gt;</description> 
      <link>http://who7s.blog.shinobi.jp/clip/pg%E3%83%BBse%E3%80%80%E6%96%B0%E4%BA%BA%E3%81%8B%E3%82%89%E4%B8%AD%E7%B4%9A%E3%81%B8%E3%81%AE%E3%82%B9%E3%83%86%E3%83%83%E3%83%97%E3%82%A2%E3%83%83%E3%83%97%E3%80%80clip</link> 
    </item>
    <item>
      <title>JavaVMのメモリ管理</title>
      <description>&lt;p&gt;
&lt;a href=&quot;http://www.itmedia.co.jp/enterprise/articles/0905/27/news002.html&quot; target=&quot;_blank&quot;&gt;Java Review：JavaVMのメモリ管理をマスターする (1/2) - ITmedia エンタープライズ&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
オブジェクト指向が浸透して随分経つ。&lt;br/&gt;
オブジェクト指向において、ガベージコレクションは切っても切れない概念であり、メモリを有効に使うには、その仕組みを知ることも大切である。&lt;br/&gt;
普段プログラミングをしていて、特に意識するものではないが、だからこそ、見落としてしまう点も多い。&lt;br/&gt;
教養の一つとしてクリップしておく。
&lt;/p&gt;
&lt;!--_Java_lang_--&gt;
&lt;br /&gt;&lt;a href=&quot;http://who7s.blog.shinobi.jp/clip/javavm%E3%81%AE%E3%83%A1%E3%83%A2%E3%83%AA%E7%AE%A1%E7%90%86&quot; target=&quot;_blank&quot;&gt;続きを読む&lt;/a&gt;</description> 
      <link>http://who7s.blog.shinobi.jp/clip/javavm%E3%81%AE%E3%83%A1%E3%83%A2%E3%83%AA%E7%AE%A1%E7%90%86</link> 
    </item>
    <item>
      <title>ウォルシュ・アダマール変換</title>
      <description>&lt;p&gt;直交変換として有名なフーリエ変換は、変換核として三角関数を用いる。&lt;br/&gt;
一方、ウォルシュ・アダマール変換（Walsh Hadamard Transform: 以下WHT）は、矩形関数を変換核として用いる。&lt;br/&gt;
アルゴリズムを最後に述べるが、矩形関数を用いるため、定数倍を除いてWHTは加減算のみとなり、実際はフーリエ変換等より高速に処理を行うことができる。&lt;br/&gt;
そのため、一時期は熱心に研究された。&lt;br/&gt;
しかし、昨今のハードウェアの進歩により、今日ではそれほど魅力的ではなくなっている。&lt;/p&gt;
&lt;p&gt;それでも、幾らかは利用価値はあるし、知識の一つとしても損は無いと思える。&lt;br/&gt;
また、WHTはインターネット上で調べても、あまり資料が発見できない。&lt;br/&gt;
よって、少しでも必要とするものの助けになれば幸いである。&lt;/p&gt;
&lt;br /&gt;&lt;a href=&quot;http://who7s.blog.shinobi.jp/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0/%E3%82%A6%E3%82%A9%E3%83%AB%E3%82%B7%E3%83%A5%E3%83%BB%E3%82%A2%E3%83%80%E3%83%9E%E3%83%BC%E3%83%AB%E5%A4%89%E6%8F%9B&quot; target=&quot;_blank&quot;&gt;続きを読む&lt;/a&gt;</description> 
      <link>http://who7s.blog.shinobi.jp/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0/%E3%82%A6%E3%82%A9%E3%83%AB%E3%82%B7%E3%83%A5%E3%83%BB%E3%82%A2%E3%83%80%E3%83%9E%E3%83%BC%E3%83%AB%E5%A4%89%E6%8F%9B</link> 
    </item>
    <item>
      <title>Google SEO スターターガイド</title>
      <description>&lt;p&gt;&lt;a href=&quot;http://www.socialmediamarketing.jp/2008/11/google-seo-starter-guide.html&quot; target=&quot;_blank&quot;&gt;GoogleのSEOスターターガイドの翻訳 - ソーシャルメディアマーケティング(SMM).jp&lt;/a&gt;&lt;br/&gt;
&lt;/p&gt;
&lt;p&gt;最近はすっかりHTMLを触らなくなった。&lt;br/&gt;
もう少し時間が出来れば、新しいブログテンプレートも作成してみたいものだ。&lt;/p&gt;
&lt;!-- _HTML_CSS_lang_ --&gt;</description> 
      <link>http://who7s.blog.shinobi.jp/clip/google%20seo%20%E3%82%B9%E3%82%BF%E3%83%BC%E3%82%BF%E3%83%BC%E3%82%AC%E3%82%A4%E3%83%89</link> 
    </item>
    <item>
      <title>画質指標PSNRを求める</title>
      <description>&lt;p&gt;画像の圧縮等を行い、その変換後の画像がどれ程劣化したかを客観的に評価する指標の一つにPSNR(Peak Signal-to-Noise Ratio)というものがある。&lt;br/&gt;
式にすると以下のようになる。&lt;br/&gt;
&lt;a href=&quot;http://file.who7s.blog.shinobi.jp/psnr.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://file.who7s.blog.shinobi.jp/psnr2.png&quot; border=&quot;0&quot; alt=&quot;PSNR&quot; /&gt;&lt;/a&gt;&lt;br/&gt;
単位はデシベル[dB]&lt;br/&gt;
MAXは元画像がとりうる最大画素値のことである。&lt;br/&gt;
また、この式の中であらわされるMSEとは平均二乗誤差(Mean Squere Error)のことであり、以下の式になる。&lt;br/&gt;
&lt;a href=&quot;http://file.who7s.blog.shinobi.jp/mse.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://file.who7s.blog.shinobi.jp/mse2.png&quot; border=&quot;0&quot; alt=&quot;MSE&quot; /&gt;&lt;/a&gt;&lt;br/&gt;
m, nが画像の縦、横のサイズ。&lt;br/&gt;
Xが元画像、X'が劣化画像を示す。
&lt;/p&gt;
&lt;p class=&quot;enclose&quot;&gt;平均二乗誤差 = ((原画の輝度 - デコード後の輝度) ^ 2) の総和 / 画素数&lt;br/&gt;
PSNR = 10 * log(255*255 / 平均二乗誤差)&lt;br/&gt;
引用：&lt;a href=&quot;http://ageha909.blog121.fc2.com/blog-entry-469.html&quot; target=&quot;_blank&quot;&gt;PSNRとは - Mov日記 - Fraternity7&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;一般に高画質とされるのは35～40dB以上とされている。&lt;br/&gt;
また0.2dB違えば、主観的にみても変化があるとされる。
&lt;/p&gt;
&lt;p&gt;参考：&lt;a href=&quot;http://forum.tobinaka.com/viewtopic.php?f=6&amp;p=31#p30&quot; target=&quot;_blank&quot;&gt;tobinaka's forum • トピック表示 - 画質指標 PSNR, SSIM と psy 的オプションと&lt;/a&gt;&lt;/p&gt;

&lt;!-- _C_lang_ --&gt;&lt;!-- _Algorithm_ --&gt;&lt;br /&gt;&lt;a href=&quot;http://who7s.blog.shinobi.jp/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0/%E7%94%BB%E8%B3%AA%E6%8C%87%E6%A8%99psnr%E3%82%92%E6%B1%82%E3%82%81%E3%82%8B&quot; target=&quot;_blank&quot;&gt;続きを読む&lt;/a&gt;</description> 
      <link>http://who7s.blog.shinobi.jp/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0/%E7%94%BB%E8%B3%AA%E6%8C%87%E6%A8%99psnr%E3%82%92%E6%B1%82%E3%82%81%E3%82%8B</link> 
    </item>
    <item>
      <title>VMware PlayerによるUbuntu体験</title>
      <description>&lt;p&gt;今更ながら、仮想マシンというものを体験してみようと思い、VMware Playerをインストールしてみた。&lt;br/&gt;
Download URL: &lt;a href=&quot;http://www.vmware.com/jp/products/player/&quot; target=&quot;_blank&quot;&gt;VMware Player、仮想マシン、仮想 PC - VMware&lt;/a&gt;&lt;br/&gt;
インストールしたUbuntuはUbuntu 8.04 LTS(ubuntu-ja-8.04-vmware-i386.zip)&lt;br/&gt;
Download URL: &lt;a href=&quot;http://www.ubuntulinux.jp/products/JA-Localized/vmware&quot; target=&quot;_blank&quot;&gt;VMware用仮想マシン | Ubuntu Japanese Team&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Windowsとの連携ツールとして、VMware Toolsというものが用意されているらしい。&lt;br/&gt;
これは上記Ubuntuには標準でインストールされていた。&lt;br/&gt;
しかし、標準ではToolのオートオンetcのスクリプトに対応していないらしく、VMware Playerの実行段階でエラーが発生する。&lt;br/&gt;
このエラーの取り方は以下のWebページに詳しく書かれている。&lt;br/&gt;
参考URL: &lt;a href=&quot;http://bach.istc.kobe-u.ac.jp/lect/tamlab/ubuntu.html&quot; target=&quot;_blank&quot;&gt;VMware PlayerでUbuntu Linux&lt;/a&gt;&lt;br/&gt;
導入諸々についても上記Webページを始めから順番に習っていくだけで完了する。&lt;br/&gt;
（もし、一番最初にこのページを見つけられていれば、私の苦労は10%で済んだ）&lt;/p&gt;
&lt;p&gt;ただ、ファイル共用に関しては、私の環境では上手く設定することができなかった。&lt;br/&gt;
本来なら、WinXPからネットワークドライブの割り当てによって、ubuntu-vm-serverが表示されるらしいのだが、一向に見つからなかった。&lt;br/&gt;
恐らく長年の設定変更etcによって、設定が隠されているのかもしれない。&lt;br/&gt;
そのため、ファイル共用については、FTPを用いて外部サーバーを経由している。&lt;br/&gt;
普段使用するファイルならば、それほどセキュリティは求められないからだ。&lt;/p&gt;
&lt;p&gt;Ubuntuを体験してみた感想としては、中々作業しやすい印象だ。&lt;br/&gt;
メモリには512MBを設定しているが、多少のもたつきはあるものの、不快に感じないレベルで動作している。&lt;br/&gt;
これからのプログラミング等の作業に利用していくのも良さそうだ。&lt;/p&gt;
</description> 
      <link>http://who7s.blog.shinobi.jp/%E9%9B%91%E8%A8%98/vmware%20player%E3%81%AB%E3%82%88%E3%82%8Bubuntu%E4%BD%93%E9%A8%93</link> 
    </item>
    <item>
      <title>au Music Port の誤動作</title>
      <description>&lt;p&gt;元々あまり使用していなかったau Music Port（以下aMP）を久しぶりに起動してみると、全く動作しない状態になっていた。&lt;br&gt;
厳密には動作しているような気配はあるが、画面に表示されない症状だった。&lt;br&gt;
何度かアンインストール＆インストールを繰り返してはみたが一向に改善されなかった。&lt;/p&gt;
&lt;p&gt;以前は重いまでも使えたものが使えなくなったので、その時と現在の環境の違いを探ってみると、どうやらWindowsのスタイル変更によって、aMPが誤作動を起こしているようだった。&lt;br&gt;
私の環境ではStylerを使用して、スタイルを変更しているが、試しにデフォルトのWinスタイルに戻してみると、aMPが正常に動作した。&lt;/p&gt;
&lt;p&gt;aMPは独自のUI（それもとびっきり使い勝手の悪い）にこだわるばかりか、動作条件の範囲を狭めているのかもしれない。&lt;br&gt;
SonicStageというSONY製のソフトも同じようにウィンドウ表示でおかしな挙動をしていたので、これも同じようにWindowsのスタイルが関係していたのかもしれない。&lt;br&gt;
（SonicStageはアンインストールしてしまった。)&lt;br&gt;
出来うる限りデフォルトの状態に一度戻してやる必要があることは、更に使いにくさを際立たせる限りだ。&lt;br&gt;
（スタイルの方が悪さをしていた可能性もあるが）&lt;/p&gt;
&lt;p&gt;また、aMPは標準でMP3を取り込むことができないという不思議な仕様になっている。&lt;br&gt;
それについて、MP3取り込みパッチが有志の手によって公開されている。&lt;br&gt;
非公式のものなので、自己責任で。&lt;br&gt;
&lt;a href=&quot;http://reiven0.hp.infoseek.co.jp/&quot; target=&quot;_blank&quot;&gt;reiven's Homepage&lt;/a&gt;&lt;/p&gt;</description> 
      <link>http://who7s.blog.shinobi.jp/%E9%9B%91%E8%A8%98/au%20music%20port%20%E3%81%AE%E8%AA%A4%E5%8B%95%E4%BD%9C</link> 
    </item>
    <item>
      <title>行列の確認</title>
      <description>&lt;p&gt;行(row)と列(column)の定義について確認するメモ。&lt;/p&gt;
&lt;a href=&quot;http://file.who7s.blog.shinobi.jp/matrix.png&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://file.who7s.blog.shinobi.jp/Img/1225193300/&quot; border=&quot;0&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;p&gt;参考：&lt;a href=&quot;http://shigihara.hp.infoseek.co.jp/mx11.htm&quot; target=&quot;_blank&quot;&gt;行列&lt;/a&gt;&lt;/p&gt;
</description> 
      <link>http://who7s.blog.shinobi.jp/%E9%9B%91%E8%A8%98/%E8%A1%8C%E5%88%97%E3%81%AE%E7%A2%BA%E8%AA%8D</link> 
    </item>

  </channel>
</rss>