Windows8の感想。

Windows8 Proをインストールして本格的に使い始めた。
簡単に個人的な感想とかレビューとか。

・起動が早い。
高速ではないハードディスク( 2.5インチ 5400rpm )でも 30秒以内に起動できるようだ。
(PCはノートPC Thinkpad X61 Core 2 Duo T7500 ( 2.2GHz ) RAM 2GB )

・スタート画面は使いやすい。Modern UI(Metro UI)のメニューはよい。スタートボタンがなくなったが,Windowsキーでスタート画面が出るし,左下にマウスを持って行ってクリックしてもスタート画面に行くのでスタートメニューを出す操作と同じ操作でスタート画面が出るので今までのWindowsと同じ感覚で使える。

・スタート画面でキー入力すればすべてのアプリから絞り込みをしてくれる。これもWindows7のスタートメニューと同じ機能。ただ文字の入力欄が表示されていないので入力で検索・絞り込みができることに気が付かない。

・全体的に動作は軽い。Windows 7よりは軽く感じる。

・全画面で動くアプリは狭い画面では快適だが広い画面でアプリ1つとか2つとかはちょっと実用的とは思えない。もうしばらく使ってみて感想が変わるかもしれないが今のところはまだまだ疑問だ。文字がでかすぎる。とっても読みやすいが画面の使用効率がわるい。。

・ショートカットキーとかマウス操作とかゼスチャー操作は覚えれば快適だが画面に何も表示されなさすぎで あらかじめ何も知らされずに使うのは厳しい。どのように操作すればよいか言われないとわからない場面が多い。

Windows 8になって追加された最低限必要なショートカットキーとマウス操作:
Win + C : チャーム表示(メインの操作メニュー) マウスなら画面右上隅とか右下隅でも出る。
Win + Z : サブメニュー等の表示(右クリックメニュー・ツール表示など)。右クリックでも出る。

Win + TAB : 起動中のアプリ切り替え(デスクトップアプリはウインドウ何個開いていても1つのアプリ扱い)単発で直前のアプリに切り替える。 マウスでは画面左上隅クリック
 Win + TABでWinキーをずっと離さずTABキーを何回か押すとアプリの変更を選択できる。Winキーを離せば決定。 マウスでは画面左上隅に移動してそのまま真下に移動か画面左下隅から真上に移動でも出る。

Windowsキー : スタート画面を表示する。ただしスタート画面表示中は直前の画面に戻る。 マウスでは画面左下隅でクリック。

Alt + TAB : 従来の起動中のアプリ切り替え(デスクトップアプリも複数アプリ扱い) 単発で直前のアプリに切り替える。
 Alt + TABでAltキーをずっと離さずTABキーを何回か押すとアプリの変更を選択できる。Altキーを離せば決定。

Windowsの終了は Win + C で「設定」から「電源」を押すと
シャットダウン とか 再起動 とか選ぶことができる。
コンピュータの電源ボタンの方が簡単かな・・・。

Windows 8になってなくなったもの:
DVD Player(DVDの映画とかを Media Player で再生できない)
 別途DVD再生ソフトとかが必要。

XPモード
 Virtual PCがなくなり XPモードもなくなった。WindowsXPを動かすには
 仮想マシンを入れてWindowsXPのライセンスも別途必要。
 仮想化ソフトは Hyper-V 3.0がついてくるが64bit版Windows 8のみ32Bit版の
 Windows8には付属しない。それと SLAT(Second Level Address Translation)をサポートするプロセッサが必須。

 32bit版Windows8とかSLATサポートしないCPUでは
 VMware Playerとかで回避するのがよいかと。

comments

Flexigrid for jQuery のサーバ側 PHPでMySQLからJSON出力をする汎用ライブラリを開発

Flexigrid for jQueryという ウェブページ上で表を
綺麗・簡単・高性能に表示できるJavaScriptライブラリ(jQueryプラグイン)がある
http://flexigrid.info/

単純なテーブルを簡単・綺麗に変換するだけではなく
サーバとAJAX通信してデータベース上のデータを
表形式で綺麗に表示できて並び替えや検索まで できてしまう。

しかしサーバ側の汎用的なコードが見つからない。
Flexigridが高性能で簡単なのにサーバ側汎用コードがないので
気軽に使えない。もったいなすぎる。

ということで作成してみた。

Flexigridで MySQLデータベースのテーブルを簡単に表示できる汎用のPHPのライブラリ。
http://www2s.biglobe.ne.jp/~satosi/soft/s_flexigrid_mysql_json.zip
からダウンロードできます。

これを使うとサーバ側は 以下の様なコードを書くだけで Flexigrid上で
MySQLデータベースのテーブルを表示・列ごとのソート・検索が可能になる。
データフォーマットはJSON形式。

<?php
require(‘s_flexigrid_mysql_json.php’);
s_mysql_connect(‘localhost’, ‘id’, ‘pass’, ‘db_name’);
s_flexigrid_json_from_mysql(‘table_name’, array(‘id’, ‘name’, ‘age’) );
?>

require(‘s_flexigrid_mysql_json.php’);
はライブラリの参照設定。

s_mysql_connect(‘localhost’, ‘id’, ‘pass’, ‘db_name’);
は MySQLサーバへの接続と データベース選択
localhostが接続先MySQLサーバ。id,passがログインIDとパスワード
db_nameは使用するデータベース名

s_flexigrid_json_from_mysql(‘table_name’, array(‘id’, ‘name’, ‘age’) );
は 表示したいテーブルが table_name で 表示したいフィールド一覧が id , name , age となっている。
だだし, 1つ目のフィールドはIDでユニークであること。

動作条件 PHP 4.0.3以上。PHPはMySQLへの接続などの mysql_*系の関数が使えること。

comments

IT大手はなぜ“訴訟戦法”に走るのか

Microsoftも、Appleも、Oracleも――IT大手はなぜ“訴訟戦法”に走るのか
http://www.itmedia.co.jp/enterprise/articles/1010/09/news002.html

Android の人気が気に入らないらしい。 

月曜日にブログ記事を書きかけて,うまく書けなかったので 書くのをやめたが その記事を書いたページを見つけたので紹介します。

技術の特許侵害かそれに近い事って結構ある。それらは単に訴えられないだけ。訴えてもメリットがないから。でも、自分たちが持っている特許などを使っていて別の会社が作ったものが非常に利益を得ているなら・・・。

昨日まで無料で使えていたのが 今日から有料になった。
しかも無料で便利だったので世界的に普及したもの対して
今まで訴えずに黙っていたものを突然,訴えて権利を主張しはじめる。

たとえば Linuxに使われている特許の使用料を突然主張したり,GIF画像の圧縮アルゴリズムやJPEG画像の圧縮アルゴリズムの使用量の特許の使用料金を突然主張したり。
これらは いずれも 消えましたが・・・。

特許を無料で公開か 無断使用されてしまい,特許を持っていた人は ひょっとしたら すごく儲かっていたのかもしれないと 思うだろう。
でも 最初から特許が有料だったら そこまで普及しなかったかもしれない。
でも 特許侵害されていていままで黙っていたという場合は?(我慢していたか黙認していた)

うーん,それは言わずにはいられないだろう。

他にも特許に近いものだと 無理やり訴えるケースもある。(特許侵害していない場合でも妨害をするために意図的に言いがかりをつける。)

しかしながらMicrosoftも、Appleも、OracleもIT最大手であるため,コンピュータ系の技術者ならば何が起こっているのかを知っておく必要があるだろう。

comments

GAE教材はまだ日本語のみ

GWTとGAE色々試し中・調べ中。

コンピュータの専門的な情報は通常,英語の方が早いのだが
Google App Engine をはじめてみよう の教材はなんと 日本語が最初。

http://googlejapan.blogspot.com/2010/03/google-app-engine.html
より引用

そして、いよいよこのコース教材「Google App Engine Code Lab for Java」を一般に公開することになり、3月11日に開催した「DevFest 2010 Japan」で発表しました。教材は、こちらから得ることができます。現時点では日本語のみの提供となります。
(今後、教材の英語化やさらなる改良を行う予定です。)

どうもGTUG( Google Technology User Group)という所が積極的に活動しているからみたいです。

京都にもあります。
京都GTUG
http://sites.google.com/a/kyoto-gtug.org/home/event
そういえば京都GTUGはオープンソースカンファレンス 2010 Kansai@KYOTO にも参加されていました。

頻繁に勉強会しているらしく
次回は 2010年10月16日(土)に京都リサーチパークにて
Google App Engine (Python/Java) の勉強会があるそうです。
http://sites.google.com/a/kyoto-gtug.org/home/event/appenginejanightinkansai3ajnk3wokaisaishimasu

日時: 2010/10/16(土) 17:00~19:00
会場: 京都リサーチパーク
定員: 100名
対象: GAE(Python/Java)に興味がある方
参加費: 社会人 1000円 学生 無料

comments

GWTのGUIデザインをマウスで

GWT UI

Javaを使ってウェブアプリが作成できる Google Web Toolkit (GWT)で色々試し中。
GMailやGoogleドキュメントなどのウェブアプリで使われている技術らしい。
Eclipseで開発ができる。

開発言語はJavaで行うがウェブブラウザ上で実行する時はJavaアプレット等ではなく JavaScript で実行する。そのためクライアント側にJavaランタイムなどが不要となり軽くなる。
GWTには JavaからJavaScriptに変換するコンパイラがある。
サーバ側もJavaで記述する。
Java同士で通信できるためRPCでオブジェクトを使ってスマートなやり取りができる。Java以外を使う場合は手間が少し増える。

そもそもJavaScriptとJavaは似て非なるものだが これを使うと JavaをJavaScriptに変換して実行できてしまう。JavaScriptからサーブレットへ通信(RPC)ができる仕組みも当然入っている。

GWTを要約すると
・GMail や Google Docsなどので使われているアプリ開発技術を使える。
・クライアント・サーバどちらも Javaで記述できる。
・クライアント・サーバ間通信は完全に抽象化されていて通信している的なコードは無い。データはオブジェクトでやり取りできる。
・クライアントコードはJavaScriptなのでウェブブラウザ以外ソフト不要。
・複数のウェブブラウザでテストしなくても ほとんど問題なく動く。理想的なクロスプラットフォーム。
・サーバ側はtomcat等のサーブレット環境が必要。Google App Engineを使えばサーバも無料で用意できる。
・Javaの開発環境を使える

これらについては 某ブログに色々書かれているのでそちらを参照

ここから本題:
GWTのGUIデザインをマウスで できないだろうか?
マウスでクリックして ボタン や テキストボックスを配置する Visual Basic の様な開発方法。

Eclipse で 普通のJavaアプリは Visual Editor http://www.eclipse.org/vep/ を使うとマウスでGUIデザインができる。

探してみるとGWT Designer GUI Builder 8.0 を使うとできることが分かった。

http://code.google.com/intl/pt-BR/webtoolkit/tools/download-gwtdesigner.html
どうも 64bit版のEclipseでは動かないみたい。(Eclipesは 32bit版を入れて設定する。)

メニューの ヘルプから 新規ソフトウエアのインストールを選んで 以下のURLを入れてやる。
http://dl.google.com/eclipse/inst/d2gwt/latest/3.6
URL末尾の数字は Eclipseのバージョン番号
これは Eclipse 3.6 (Helios)の場合。
Eclipse 3.5 (Galileo)なら
http://dl.google.com/eclipse/inst/d2gwt/latest/3.5
となる。

インストールできたら
Eclipseのパッケージエクスプローラなどの Javaソース一覧の

public class クラス名 implements EntryPoint {
 public void onModuleLoad() {
 }
}

なJavaソースファイル右クリックして
「アプリケーションから開く」の中の「WindowBuilder Editor」を選ぶと
このページの最初の画像の様なGUI編集ができるウインドウが出てきます。
もちろん ボタンなどを配置するとJavaのソースコードが連動して変更されます。import com.google.gwt.user.client.ui.Button; などの必要な参照設定も自動で追加されます。

ちなみに GWTのEclipse開発プラグインはセットは
http://dl.google.com/eclipse/plugin/3.6
をダウンロードURLにする。
こちらも URL末尾の数字は Eclipseのバージョン番号

comments

最近の自宅とモバイル環境

iPod Touch Thinkpad X61 Pocket WiFi eneloop

最近の自宅及びモバイル環境はこんな感じになりました。
自宅とモバイルはほぼ兼用です。

Apple
iPod touch 8GB
iPhone 3Gの電話3GとGPSとカメラがないもの。iPhoneより薄い。PDAとして使用。現在,新品で2万円以下のPDA中で最強性能(?)とiPhoneと同じ高い操作性と高い携帯性を誇る(iPhoneより薄く高さが短い)。
10万本を越える数のiPhoneアプリの大半を利用できるのは,他のPDAには無い利点。
コストパフォーマンスが抜群によい。
ただし次期iPhone OS 4.0のマルチタスク機能には対応していない。
Pocket WiFiと併用することでどこでもネットが使える。iPhoneの3G通信より快適に使える。(ほとんどの場合EMOBILEの方が速い。)もちろん定額。最近定番の使い方。
http://www.apple.com/jp/ipodtouch/

ノートPC
Lenovo
ThinkPad X61 (Core2 Duo T7500(65nmプロセスの2.2GHz) RAM 2GB)
Ubuntu 10.04 LTS(32bit)をUSBメモリブート(実際はmicroSDカードリーダ。microSD 4GBに入っている。本体右側面についている。)
 ハードディスクにはWindows XP(32bit), Windows vista(32bit), Windows 7(64bit)の3つが入っている。
以前から使っている。最近はワイドディスプレイが標準なので時代遅れ感があるが,性能的には不足はあまりない。メモリが少ない目だが,そんなにメモリが必要な場面はあまりない。
このThinkPadは発表時はまだIBMだったが,途中から販売がLenovoになった。
http://www-06.ibm.com/jp/pc/notebooks/thinkpad/x-series/x61_lineup_4x.shtml

E-MOBILE
Pocket WiFi D25HW
モバイル無線LANダイヤルアップルータ
現在,買い増しで1円で買える。
http://emobile.jp/products/hw/d25hw/

SANYO
eneloop USB出力付き リチウムイオンバッテリー KBC-L2AS
ケータイ, Pocket WiFi, iPod touch用の予備電源。
Pocket WiFiのバッテリーはすぐに切れるので,これで大幅に延長。
これも定番らしい。
http://products.jp.sanyo.com/products/kbc/KBC-L2AS/index.html

comments

Ubuntu 10.04 LTS リリース

Ubuntu 10.04 LTS リリースされました。
日本語 Remix CD も本日リリースされました。
http://www.ubuntulinux.jp/News/ubuntu1004-desktop-ja-remix
日本語 Remix CDとは日本語環境を改良したカスタムCDです。
本家のCDでも日本語などでインストールできますが、この日本語 Remix CDを使うと日本語環境がさらに整備されていて快適に使うことができます。

こんかいは LTSなので3年間セキュリティなどのサービス期間があります。

とりあえずリソースノートを一通り見ます。
https://wiki.ubuntu.com/LucidLynx/ReleaseNotes/ja
ファイルシステムの ext4 はまだ 問題がいくつかあるみたいです。デフォルトで ext4 フォーマットされますがまだ ext3 の方がよさそうです。

ビデオカード系は相変わらず問題が残っているみたいです。基本的な事柄なのですが なかなかすべての問題が解決しません。

ウインドウなどの標準の GUIが また変わったみたいです。

リリース直後は色々と問題が出てくるので もうすこし落ち着いてから メイン環境用としてインストールしたいと思います。

とりあえず動作テスト用環境をUSBメモリやSDカードにインストールして動かしています。結構動作の遅いUSBメモリに入れても今までのUbuntuよりも快適に動いているみたいです。USBメモリで動かす事を考慮してあるのかもしれません。

comments

人気のプログラミング言語 ランキング

人気のプログラミング言語 Cが4年ぶりに1位に返り咲く
http://slashdot.jp/developers/10/04/10/0252206.shtml

TIOBE Programming Community Index for April 2010
http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
より上位を抜粋すると

1位 C言語
2位 Java
3位 C++
4位 PHP
5位 (Visual) Basic

となっています。 久しぶりにC言語がJavaを抜いたようです。

しかし Basicは相変わらず根強い人気ですね。

comments

今年のエイプリルフールRFCは顔文字

今年のエイプリルフールRFCは

RFC 5841 – TCP Option to Denote Packet Mood

和訳している人がいた:
2010年のジョーク RFC:パケットに気分を表現するTCPオプション

だそうです。

顔文字を使って 気分を表すオプションみたい。チャット専用?

comments

エイプリルフールRFC

今日から新年度です。

で,4月1日といえば,エイプリルフールです。
わたしは,エイプリルフールといえば,RFCを連想してしまいます・・・。

RFCとは Wikipedia ( http://ja.wikipedia.org/wiki/Request_for_Comments )から引用すると

Request for Comments(略称:RFC)はIETF(Internet Engineering Task Force)による技術仕様の保存、公開形式である。内容には特に制限はないが、プロトコルやファイルフォーマットが主に扱われる。RFCは日本語では「コメント募集」の意味であり、もともとは技術仕様を公開し、それについての意見を広く募集してより良いものにしていく観点から始められたようである。全てのRFCはインターネット上で公開されており、誰でも閲覧することができる。

簡単に言うとインターネット関連のいろんな技術仕様とかそれに関する内容,実験的なものを書いて保存したもの。

毎年 4月1日に発表される普通のRFCにまぎれて2,3個ほどエイプリルフールネタがはいっている。

 ただ,読むにはある程度のインターネット関連の技術を理解していないと,どういうジョークなのか分からないものも多い。(専門用語を使ってジョークがかかれている。)

私のお気に入りは RFC 1149の鳥類キャリアによるIP
http://ja.wikipedia.org/wiki/%E9%B3%A5%E9%A1%9E%E3%82%AD%E3%83%A3%E3%83%AA%E3%82%A2%E3%81%AB%E3%82%88%E3%82%8BIP
伝書鳩にデータをくっつけて,データ転送をする方法のことらしい。

で,エイプリルフールRFCは,明らかにジョークなのだが,RFCが仕様書とか実験的内容という性格上,本当にそれを試す人がいる。

たとえば,RFC 2322 : 洗濯ばさみ DHCP による IPアドレスの管理 とかは,ジョークなのに,普通使っている人もいる。

洗濯バサミDHCPは,簡単に言うと,各コンピュータで手動でIPアドレス設定をするのだが,紙にIPアドレスと対応するコンピュータのメモを書いて,洗濯バサミでとめておいて,IPアドレスを管理するというもの。

なので,そこそこ出来てしまう。

遠距離のコンピュータに対しては RFC 1149の鳥類キャリアによるIPを使って設定する方法をとるらしい。

参考:
RFC1149の和訳 : http://www.imasy.or.jp/~yotti/rfc1149ej.txt

comments