2011年5月21日土曜日

Mono の現状と今後

Mono の現状と今後 作者 Jonathan Allen , 翻訳者 吉田 英人
http://www.infoq.com/jp/news/2011/05/Mono-Future [infoq]
「Mono が Web サイトやバックエンド処理サービスなどのサーバサイドアプリケーションで良好に動作することによって,
SUSE Linux Enterprise を Windows Server の代替とする上で一役買う存在になっているのだ。」
この部分は、大いに期待しています。ある案件で、本当は最終Linuxサーバで作成予定しているのですが、
既存がWindowsサーバでそれに一時的に組み込む必要があり、.NETベースで作成して、
最終それをそのまま、Linuxのmonoで動作させようと思ってます。
幸い、opensim(OpenSimulator 3D のアプリケーションサーバ)のLinux mono 上での
動作経験や実証テストコードも作成して経験がありますので、まずは大丈夫かと。
がしかし、
「Attachmate が Novell を買収したことによって,Mono プロジェクトの今後に暗雲が立ち込めている。」
2011年4月27日 Attachmateはノベルの買収を完了したようで、
Monoプロジェクトメンバーの解雇とのうわさも出ているようです。
「Miguel de Icaza 氏によれば,"このような数字はでっち上げで,何の根拠もない"。同氏は Mono の創立者というだけでなく,Novell の開発プラットフォーム担当副社長という役職にもある。」
とのことですが、今後の動向が気になります。Monoプロジェクト継続されますように。
あるいは、どっか別の安心できるデベロッパーに移管とかでもいいです。
先行きが不透明かつメジャーになりそうにないオープン・ソース開発プラットフォームを
案件に使うなんてどうかしてるってよく私は、他の開発者に言ってましたが、
新技術的な開発案件なら使用トライしても良いですが、今回 自分自身がこれに直面することに・・・。どうしようか。

2011年5月15日日曜日

Googleペナルティ解除 再審査リクエスト送信その後

http://www.picolix.jp/で、2,3月ぐらいに、ページランク4からページランク2
へのGoogleからペナルティを受けておりました。
有料リンク広告が災いしていたようで、リンクを削除後、google ウェブマスターツールの再審査リクエストから
"違反内容の詳細と修正点"の記載内容は、"有料リンク広告を削除しましたので、再審査をお願い致します。"と1行記載し、送信、4日後にページランク4に復帰確認しました。
(まだgoogleのデータセンターにより2と4が混ざっていますが。)
googleからペナルティーを受けると、googleから連絡が来ると言われていますが、ありませんでしたが、(見逃したかも・・)再審査リクエストを受け付けたメールはありました。
やっぱり、よくある有料リンク広告はもうだめかな?
ちなみに、googleデータセンターによってまだPR2,PR4でふらついています。
そのうち、PR4に統一されると思います。
最近のGoogleのデータセンターのIP一覧がないので、nslookupでIPを取得し、ページランクチェックツール(ずーーと昔に作った)にて確認。
C:\>nslookup www.google.co.jp
名前: www.l.google.com
Addresses: 74.125.153.147
74.125.153.99
74.125.153.103
74.125.153.104
74.125.153.105
74.125.153.106
C:\work\contents\pagerannk_check>C:\work\contents\pagerannk_check\grank.pl
74.125.153.147 http://www.picolix.jp/ Rank=4
74.125.153.99 http://www.picolix.jp/ Rank=2
74.125.153.103 http://www.picolix.jp/ Rank=2
74.125.153.104 http://www.picolix.jp/ Rank=2
74.125.153.105 http://www.picolix.jp/ Rank=4
74.125.153.106 http://www.picolix.jp/ Rank=4
C:\work\contents\pagerannk_check>nslookup toolbar.google.co.jp
74.125.235.137
74.125.235.138
74.125.235.139
74.125.235.140
74.125.235.141
74.125.235.142
74.125.235.143
74.125.235.128
74.125.235.129
74.125.235.130
74.125.235.131
74.125.235.132
74.125.235.133
74.125.235.134
74.125.235.135
74.125.235.136
Aliases: toolbar.google.co.jp
toolbar.google.com
C:\work\contents\pagerannk_check>C:\work\contents\pagerannk_check\grank.pl
74.125.235.137 http://www.picolix.jp/ 6984028747 Rank=2
74.125.235.138 http://www.picolix.jp/ 6984028747 Rank=2
74.125.235.139 http://www.picolix.jp/ 6984028747 Rank=4
74.125.235.140 http://www.picolix.jp/ 6984028747 Rank=4
74.125.235.140 http://www.picolix.jp/ 6984028747 Rank=4
74.125.235.142 http://www.picolix.jp/ 6984028747 Rank=2
74.125.235.143 http://www.picolix.jp/ 6984028747 Rank=4
74.125.235.128 http://www.picolix.jp/ 6984028747 Rank=4
74.125.235.129 http://www.picolix.jp/ 6984028747 Rank=4
74.125.235.130 http://www.picolix.jp/ 6984028747 Rank=4
74.125.235.131 http://www.picolix.jp/ 6984028747 Rank=2
74.125.235.132 http://www.picolix.jp/ 6984028747 Rank=4
74.125.235.133 http://www.picolix.jp/ 6984028747 Rank=4
74.125.235.134 http://www.picolix.jp/ 6984028747 Rank=2
74.125.235.135 http://www.picolix.jp/ 6984028747 Rank=4
74.125.235.136 http://www.picolix.jp/ 6984028747 Rank=4
74.125.153.147 http://www.picolix.jp/ 6984028747 Rank=4
C:\work\contents\pagerannk_check>C:\work\contents\pagerannk_check\grank.pl
74.125.153.147 http://www.picolix.jp/ Rank=2
74.125.153.99 http://www.picolix.jp/ Rank=4
74.125.153.103 http://www.picolix.jp/ Rank=4
74.125.153.104 http://www.picolix.jp/ Rank=4
74.125.153.105 http://www.picolix.jp/ Rank=4
74.125.153.106 http://www.picolix.jp/ Rank=4
C:\work\contents\pagerannk_check>C:\work\contents\pagerannk_check\grank.pl
74.125.153.147 http://www.picolix.jp/ Rank=4
74.125.153.99 http://www.picolix.jp/ Rank=4
74.125.153.103 http://www.picolix.jp/ Rank=2
74.125.153.104 http://www.picolix.jp/ Rank=2
74.125.153.105 http://www.picolix.jp/ Rank=4
74.125.153.106 http://www.picolix.jp/ Rank=4
同じIPでも,PR2,PR4で時間によりふらつくのは、ロードバランスされているため。

2011年5月5日木曜日

CrenCam Xperia arcのフラッシュライトサポートしました。

CrenCamアプリで、Xperia arcでフラッシュライトが点灯しませんでしたが、点灯するようになりました。試してないですが、Galaxyも点灯するはずです。
Xperia arcでフラッシュライトの点灯方法をネットで調べてもわからず、Xperia arcでフラッシュライトが点灯するアプリをリバースエンジして分かりました。
簡単すぎです^^。そんなモードがあったのか・・。OFF/ONしか知らなかった。
mCameraPreview.mCamparam.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH);
mCameraPreview.mCamera.setParameters(mCameraPreview.mCamparam);
これだけで点灯します。
ちなみに、Xperia arcは、getSupportedFlashModesで調べるとoff,auto,on,red-eye,torchの5つをサポートしています。
Xperiaは、従来の非公開APIを利用し、SHARPに至っては、SHARPから公開されているAPIを利用しています。

2011年5月4日水曜日

Xperia Arcになりました。

会社から支給してもらっていたXperiaを途中解約して、Xperia Arcにしてもらいました。(感謝^^)
早速、使ってたアプリをインストールしました。Xperiaと比べて動作は体感できるほど早くなっています。
==インストールしたもの。==
1.GingerBreak
 (ルート化用です。)
2.BusyBox installer
 (各種コマンド)
3.アストロ
4.shootme
5.乗換案内
6.HootSuite
7.K-9 Mail
8.RealCalc
9.S2カレンダー
10.My Tracks
11.QRコードスキャナー
12.Compass3D
http://android20092009.blog67.fc2.com/blog-entry-41.html こちらのコードをコンパイルして使ってます。
13.年間カレンダー
 自作。自分用。公開予定なし。
14.XPERIA arc FlashLight
  以前は、XPERIA FlashLightでarcでは動かず、そのかわりにarc専用が出ていました。
15.McCoupon
16.Task Manager
17.CrenaCam
  自作。marketで公開中です。Xperia arcで動くようになりました。
  ただし、フラッシュライトの制御はできず。>< arcでは制御方法 が違うようです。>< 
  XPERIA arc FlashLightはどうやっているのか?
18.Wifiティザーは、こちら。
http://komugi.net/archives/2011/04/25192138.php
<<<メモ>>>
Xperia arcでCrenaCamが落ちていたところは、setParameterでした。
いろいろ調べた結果、surfaceChanged渡ってきた値、854 x 480をセットすると落ちます。そんな~。。
getSupportedPreviewSizes()でサポートされているサイズ以外は落ちるようです。
で、リストアップしてみて、864 x 480にすると動作するようです。
でも、その取得データをビットマップにしてimgview.setImageBitmap(mBitmap);
で表示すると、854 x 480で表示されます。(隙間が・・)まあ特に問題ないのでこのままで。 CrenaCam 0.9.2.5
//---
private Camera mCamera;
private Camera.Parameters mCamparam;
public void surfaceChanged(SurfaceHolder holder,int format,int width,int height){
mCamparam = mCamera.getParameters();
List sizes = mCamparam.getSupportedPreviewSizes();
Size selectSize = selectPreviewSize(sizes, width, height);
mCamparam.setPreviewSize(selectSize.width, selectSize.height);
try{
mCamera.setParameters(mCamparam);
}catch(java.lang.RuntimeException e){
//
}
mCamparam.setFocusMode(Camera.Parameters.FOCUS_MODE_AUTO);
mCamera.setParameters(mCamparam);
startCameraPreview();
}
//一番近いサイズを選択する。
private Size selectPreviewSize(List sizes, int w, int h) {
Size selectSize = null;
long x;
long y;
long scxy = Long.MAX_VALUE;
long tmp_scxy;
for (Size size : sizes) {
x = size.width - w;
y = size.height - h;
tmp_scxy = (x * x) + (y * y);
if (tmp_scxy < scxy){
scxy = tmp_scxy;
selectSize = size;
}
}
return selectSize;
}