メイン

@it アーカイブ

2004年08月06日

GREEの仲間入り

以前から連れ合いから、GREEというインターネットソーシャルワーキングの話を聞いていたんだけど、いまいちピンときていなかった。
先日、OFDMについてネット情報を集めていたら、松村さんが書かれているblog(tarosite.net)の投稿を発見し、そこにドリコムの内藤さんの名前が書かれてる。しかも、ドリコムはうちの連れ合いがお仕事をさせて頂いているところで、OFDMから連れ合いまでつながったことにびっくり。(勝手につなげちゃっていますが...)
急に興味を持ち出し、GREEの仲間入りをさせてもらいました。
勝手に名前を使っちゃった人、ごめんなさい。これからもよろしく!

2台のチューナでキャプチャテスト

DirectShowを使って2台のチューナをキャプチャしてみました。
ちょっとメディアっぽくなった気分!
2vi.JPG

2004年08月09日

さやか

今、Yahooオークションでデジカメを出品しているんですが、こんな質問メールが飛んできました。
「はじめまして。
もしよろしければxxxx円で即決していただけないでしょうか?
...(中略)...
お譲りできない場合は貴重な時間でしょうからお返事いただけなくても大丈夫です。
無視してください。
さやか 」
特に儲けるつもりもなかったから、別に即決してあげてもいいかなと思っていたのですが、どんな人なんだろうと思い、質問者のプロフィールを見てびっくり。性別が男だった。
可能性はいつくかある。
case1.本当にさやかという名前の男性
case2.さやかというHNの男性
case3.さやかという人に頼まれた男性
case4.女性名を使うことにより男性心がくすぐられると思った男性
case5.文章の締めくくりを「さやか」と書いている?(敬具みたいなもの?)
他にもあるかな...?

でも、とりあえず、即決する気はなくなりました。

どうなる800MHz帯

8/6、郵政省が800MHz帯におけるIMT-2000周波数の割当方針案についての意見募集をはじめた。ざっくり言うとこう...。
IMT-2000、つまり3G携帯電話サービスに800MHz帯に周波数を割り当ててあげたい。でも、そこは、KDDIの1xやDoCoMoのPDCが依然として残っている帯域、他にもいろいろと。
じゃぁ、どう周波数を再編成したら良いか、皆の意見も聞いてみようってこと。
800MHzは携帯電話にとっては宝の周波数。どうなるかが楽しみです。
郵政省の報道資料

2004年08月16日

今日から横浜

今日から、横浜に長期出張です。8月末までの2週間なんですけどね。
3434-3939で有名なウィークリーマンション東京に泊まることになりました。
さっそく、チェックインし部屋を拝見。
悪くはないけど、せまっ!しかたなく、アテネ五輪でも見てたら、SuicaのCMにきむきむにいやんがやってるじゃないですか。少しプロレスラーの蝶野に似ているきむきむにいさんでした。

2004年08月17日

技術畑と営業畑

昨日(16日)、Vodafoneは新社長に元ドコモの津田氏を迎え入れることを発表した。どうやら、津田氏はドコモの次期社長候補として名をあげられていた人らしく、ドコモエンジニアリングの社長をしていたみたいだ。結局ドコモの役員人事では中村氏が社長に就任し、少しすかしをくらった感があるのだろう。
それはともかく、津田氏の会見から...一言。

「ただ、中村社長と私の違いがあるとすれば、私は技術出身だということだ」。経営者は技術の知識にばかり偏っても、それ以外に偏ってもダメだが、携帯の業界ではテクノロジーを無視していては優れた経営は難しいと主張する。

 「グローバルな技術では、放っておくと追い越されたり、置いていかれたりするおそれがある。そうならないためには、技術を正確に把握しておく必要がある」

ぅむ。よく言われている事なのだけど、妙にひっかかった。
営業主体の経営がどこまで会社の成長発展に貢献するか考え直すべきなのかもしれない...(ちなみに私は経営者ではありません)

2004年08月18日

eラーニング共通仕様へ 総務省

携帯電話を利用したeラーニングの共通仕様策定に向け、総務省が携帯事業者、携帯電話機メーカー、コンテンツプロバイダらと実証実験を始めることを明らかにした。
毎日新聞より
携帯電話eラーニング市場は活性化されていない現状はその通りって感じですが、普及の足かせになっているのはパケ代じゃないかな?
もちろん、共通仕様が出来上がることにより、新興企業が増え活性化につながるかもしれないけどね。

2004年10月21日

pingサーバとJava

blogの利点というべきping機能。
pingといっても、ネットワーク上の相手ホストを見つけるpingじゃなく、XML-RPCというプロトコルを使っています。

XML-RPCメッセージはHTTP-POSTリクエストで、リクエストのbodyはXMLです。プロシージャはサーバ側で実行され、その結果もまたXML形式で返されます。
XML-RPC仕様書より)

つまり、blogの更新をpingするというのは、XML-RPCメッセージで更新された情報をpingサーバーに送っているだけなんですね。
XML-RPCはJavaやPerl、Cなどで実装することが可能になっており、実装方法はEric Kidd氏のXML-RPC HOWTOを見てもらったらいいと思う。
しかし、ここにはJava Servletでの実装方法が載っていないので、必要な場合は、「weblogの更新通知PingサービスをJava Servletで実装」を見ればわかると思います。

おそらく、このページをまねて実装した場合、2点修正しないといけない箇所があると思いますので、書いておきます。

PingRecieverクラスの
doGet->doPost
XML-RPCはHTTP-POSTリクエストなので...

PingRecieverクラスの
xmlrpc.addHandler("weblogUpdates", new UpdateHandler(xml_file));
->xmlrpc.addHandler("weblogUpdates", new UpdateHandler());
UpdateHandlerクラスに引数付きのコンストラクタがないので...

参考までに、修正済みソースを載せておきます。

==Pingクライアント==
public class PingClient extends HttpServlet {
String xmlrpc_url = "http://localhost:8080/xmlrpc/servlet/PingReciever";
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String name = request.getParameter("name");
String url = request.getParameter("url");

XmlRpcClient client = null;
try {
XmlRpc.setEncoding("UTF-8");
client = new XmlRpcClient(xmlrpc_url);
} catch (MalformedURLException e) {
System.out.println(e);
}

Vector vec = new Vector();
vec.addElement(name);
vec.addElement(url);

Hashtable result_hash = null;
try {
result_hash = (Hashtable)client.execute("weblogUpdates.ping", vec);
if (result_hash == null) System.out.println("No Result Back from execute");
} catch (IOException e) {
System.out.println("IOException" + e);
} catch (XmlRpcException e) {
System.out.println("XML-RPC Exception" + e);
}

response.setContentType("text/html");

try {
PrintWriter out = response.getWriter();
out.println("PING RESULT:
");

Enumeration e = result_hash.keys();

while (e.hasMoreElements()) {
Object k = e.nextElement();
out.println("KEY=" + k + " : VALUE=" + result_hash.get(k) + "
");
}
out.println();
out.println("");
out.close();
} catch (Exception e) {
System.out.println("Error : PrintWriter");
}
}
}

==Pingサーバ==
public class PingReciever extends HttpServlet {
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
XmlRpc.setEncoding("UTF-8");

XmlRpcServer xmlrpc = new XmlRpcServer();
xmlrpc.addHandler("weblogUpdates", new UpdateHandler());

try {
byte[] result = xmlrpc.execute(request.getInputStream());
response.setContentType("text/xml");
response.setContentLength(result.length);
OutputStream out = response.getOutputStream();
out.write(result);
out.flush();
} catch (IOException e) {
System.out.println("Servlet Error" + e);
}
}
}

==XML-PRCリクエストのハンドラ==
public class UpdateHandler {
public Hashtable ping(String name, String url) throws Exception {
/** nameとurlを使った処理をここに実装**/

/* Return Result of this Handler */

Hashtable result_hash = new Hashtable();
result_hash.put("message", "Thanks for the ping");
result_hash.put("error", Boolean.FALSE);
return result_hash;
}
}

==Java ServletでPingサーバーを実装する時に必要なもの==
Java SDK、Webアプリケーションサーバ、XML-RPCモジュール

2004年10月26日

ブログをやるなら

ホスティング型ブログサービスの比較をまとめたサイトがありました。
こちらです。
こんな比較サイトもあったけど、調べている数がちと少ない。せっかくだし、drecom Blogも調査対象にしてください。
なかなか、新しい情報までしっかり調べているみたいで、おもしろいです。

2004年10月27日

Blogmapper?

ブログに位置情報を結びつけてマップ上に展開するサービスを発見。
Blogmapperというらしい。ということでタグを埋め込んでみた。

35.02940135.9819

Blogmapper2

これではどうだ。
xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#">

34.98726
136.0891

2004年11月05日

携帯キャリア対応QRコード

QRコードには任意の文字や数字を入れ込むことが可能ですが、それを応用して携帯電話で電話を自動的にかけたり、アドレス帳に登録したりすることができます。詳しくは、各社の技術情報を見てください。
DoCoMo
au
Vodafone

2004年11月08日

GoogleがKeyhole買収

GoogleがKeyhole社を買収
Keyhole社は、人工衛星や航空機から撮影した地球全体の画像データベースをもとにサービスしている会社だそうだ。日本も東京であれば見れるらしく、Keyhole社のホームページに閲覧できる都市のリストが載っている。専用のビューアもGoogle買収により$29.95でリリースされ、個人レベルで楽しめるレベルのものになっているだろう。
ところで、GoogleはKeyholeをどう使うのだろう?
気になるスポットを検索し、地図上に落とす。さらにその地図がリアルな世界に直結し、さまざまな角度から見渡せる。そんな、検索サービスがでてくるのだろうか?
そこにFlashやSVGは関わってくるのだろうか?Internetの巨匠Googleであるからこそ、SVGに傾いて欲しいと思うのは私だけだろうか。

2004年11月10日

ApacheとTomcatの連動

Tomcatでの8080からおさらばする方法です。
環境は、
Windows2000 Server
Apache 2.0.52
Tomcat 5.0.16
です。

ApacheとTomcatのインストールは終わったものとして...

1.Tomcat Web Server Connectorsのダウンロード

http://jakarta.apache.org/site/binindex.cgiのページにTomcat Web Server Connectorsと書かれているところからJK 1.2 Binary Releaseを選択。 Win32ディレクトリにあるmod_jk_1.2.6_2.0.50.dllをダウンロードし、APACHE_HOME\modulesに保存します。

2.workers.propertiesの新規作成

APACHE_HOME\confディレクトリにworkers.propertiesというファイルを新規作成します。ファイルの内容は下記のようにする。
worker.list=ajp13 worker.ajp13.type=ajp13
workersの定義はhttp://jakarta.apache.org/tomcat/tomcat-4.1-doc/jk2/jk/workershowto.htmlに詳しい説明があります。

3.httpd.confの編集

APACHE_HOME\conf\httpd.confを開き、LoadModuleと書かれた行近辺に下記記述を追加します。
LoadModule jk_module modules/mod_jk_1.2.6_2.0.50.dll JkWorkersFile "C:\Program Files\Apache Group\Apache2\conf\workers.properties" JkMount /*.jsp ajp13 JkMount /examples/* ajp13

4.TomcatとApacheの再起動

Tomcatを先に再起動し、その後、Apacheを再起動します。 これにより、http://localhost/examples/ でJSPが表示されるようになります。

2004年11月12日

コグニティブ無線が始動

ちょっと前のニュースだが、郵政省がコグニティブ無線(cognitive radio)の技術的検討を2005年にも始める方針だとか。
米国でも2003年12月に米FCCが推進するとこを公表、IEEEも2004年11月にIEEE802.22を発足させるらしい。
IEEE802.22発足のアナウンスには

IEEE STARTS STANDARD TO TAP OPEN EGIONS IN THE TV SPECTRUM FOR WIRELESS BROADBAND SERVICES
と書かれている。
そっかぁ、地上波であまっている帯域を無線ブロードバンド通信に使っちゃえってことなんですね。日本でも、テレビに関して言えば、多くのチャネルが余ったままになっている。
お国としても、5年後には移動体通信システムで60~80MHzの帯域拡張が必要であると言われているだけに、地上波で余っている200~300MHzの幅は有効活用して欲しいですね。

Exif Reader for Java

最近のデジタルカメラや携帯電話はJpegファイルにExif形式でメタ情報が書かれている訳だが、このメタ情報の取り出しをJavaでテストしてみました。
でも一から中身を読み取っていると大変なので、そういうことに興味がある場合は、こっちを見ることし、今回は、こちらのライブラリを使うことにしました。

ということで、

1.ライブラリをダウンロード


こちらからmetadata-extractor-2.2.2.jarをダウンロードし適当なところに保存しておく。もちろんclasspathは必要であればとおしておかこう。

2.Jpeg metadataを読み込むための準備

File jpegFile = new File("mana.jpg"); Metadata metadata = JpegMetadataReader.readMetadata(jpegFile); 他にも方法はあるみたいなのですが、一番単純な方法で...

3.GPSのタグ情報を読み込む

Directory gpsDirectory = metadata.getDirectory(GpsDirecotry.class); String lat = gpsDirectory.getString(GpsDirectory.TAG_GPS_LATITUDE); String lon = gpsDirectory.getString(GpsDirectory.TAG_GPS_LONGITUDE); String datum = gpsDirectory.getString(GpsDirectory.TAG_GPS_MAP_DATUM); あら簡単。 でも、ここで取得される緯度経度はDMS形式な訳なんですが、例えばN35:01:51.07 E135:59:23.6であれば 35/1 1/1 5107/100 135/1 59/1 236/10 てな感じで出てくるみたいです。(au携帯の場合だから、他は知らんけど)

2004年11月20日

Google Scholar

米グーグルが、学術関係の論文や記事を検索できるGoogle Scholarを試験的に開始した。
ということで、さっそく「Blog」キーワードで検索してみた。検索結果の一番目は、
[Effects of aging and chronic sun exposure on melanocytes in human skin]
というページ。どうやら皮膚の老化についての論文らしい。どうしてBlogなのかとそのページを見てみたら、著者にFB Blogと...
Blogという言葉が学術用語ではないためなのか、Google Scholarの未熟さなのか?

2005年01月07日

個別アーカイブページに同じカテゴリアーカイブへのリンクを表示

MTで個別アーカイブのページに同じカテゴリのアーカイブページへのリンクをつけたいということがあると思う。そんな時は、個別アーカイブのテンプレートに
< a href="<$MTEntryLink archive_type="Category"$>"><$MTEntryCategory$> »</a>
を書くとできちゃいます。

2005年01月12日

stash

MTプラグインのソースを見ているといたるところに'shash'という関数が出てきます。
stashはMT::Template::Contextモジュールで提供されている関数で、MTが現在処理中の情報を取得することができるみたいです。一時保管庫のようなものだと思います。

#'sanga'をキーに、現在のコンテキストである$valueをstashに格納
$cts->stash('sanga', $value);

#'sanga'をキーに、値を取得
my $value = $ctx->stash('sanga');

メールの自動送信

/tools/run-periodic-tasksを以下のように改造すると、「概要(excerpt)」に概要が記述してある場合、通知リストの人に概要をメール送付することができる。
ついでにMT-Previewプラグインを導入すると、公開後の実際のイメージで確認を取ることができる。

2005年01月18日

埋め込みe-Words

IT用語辞典「e-Words」から埋め込みe-Wordsというサービスが提供されているという話を聞きつけ、早速MTに組み込みました。埋め込み方法は簡単。下記スクリプトをテンプレートに追加するだけです。

<script type="text/javascript" src="http://e-words.jp/embed.x"></script>

出力は、現状リスト(ul+li)のみみたいなのですが、リスト以外のフォーマットでの出力も実装予定にあるとか、いろいろを拡張される予定ら良いので楽しみです。
表示例は、このサイトのe-Words項目を見てください。

2005年01月21日

CPANの再設定

CPANモジュールを
perl -MCPAN -e shell
で設定していたら、HTTPプロキシを間違えてしまった。どうやって再設定しようかと思っていたら、このサイトに載っていました。

% perl -MCPAN -e shell
でcpan>のシェル状態になったところで、
o conf (現在の設定一覧が表示)
o conf オプション名 (オプションの設定が表示)
o conf オプション名 文字列 (オプション内容の変更)

2005年01月28日

輝く!日本ブログ大賞 2005

輝く!日本ブログ大賞 2005 に応募したんですが、よくみるとドリコムブログがないじゃないですか!?
問合せ先は
日本ブログ大賞事務局
info@blogaward.jp
ドリコムファンの方々、クレーム出しましょう。

2005年02月24日

DangerのSidekickⅡは危険

パリス・ヒルトンというセレブの携帯アドレス帳が流出した事件で、彼女の携帯がT-MobileのSidekickⅡであったことが明らかになった。パスワードを知っている第三者の疑いが強いらしい。
ところで、このSidekickⅡという携帯はDanger社という会社の製品だそうで、Danger社は3人の元Apple社員によって作られたということだ。まさに”危険”な端末という代名詞がつきそうだ。
30981614-2-120-0.gif

2005年03月09日

携帯電話でSXF図面閲覧

昨日、プレスリリースしたら結構いろんなところが取り上げてくれた。出てみると楽しいもんだね。

▼YAHOO NEWS 産業ニュース
http://headlines.yahoo.co.jp/hl?a=20050309-00000221-nkn-ind

▼日刊工業新聞社Business Line(企業発表から)
http://www.nikkan.co.jp/hln/index.html

▼CNET JAPAN
http://release.japan.cnet.com/article.php?id=1886

▼NIKKEI NET プレスリリース
http://release.nikkei.co.jp/detail.cfm?relID=95137&lindID=1

▼YAHOO NEWS コンピュータニュース (ITmediaエンタープライズ)
http://headlines.yahoo.co.jp/hl?a=20050308-00000056-zdn_ep-sci

▼ITmedia ビジネスモバイル
http://www.itmedia.co.jp/enterprise/mobile/articles/0503/08/news073.html

▼YAHOO NEWS コンピュータニュース (japan.internet.com)
http://headlines.yahoo.co.jp/hl?a=20050308-00000020-inet-sci

▼japan.internet.com
http://japan.internet.com/allnet/20050308/5.html

2005年03月29日

hibernate-mapping-3.0.dtd

Hibernateを使ってみようと@ITを参考にサンプル作成。
いきなり、変なエラーが出てきて四苦八苦。

ERROR XMLHelper:59 - Error parsing XML: XML InputStream(6) Element type "hibernate-mapping" must be declared.

どうやらマッピングファイルに書いているという要素が定義されていないらしい。んなわけないじゃん、サンプル丸写しだよと思っていたんだけど、落とし穴が。
Hibernate3.0を使っていたので、DTDの宣言部分がHibernate2.0の時と違うわけで、それを直す為に、hibernate.cfg.xmlのDTD宣言部分を変更し、そのままコピペしてしまっていた。それによって、DTD宣言が、hibernate-configuration-3.0.dtdとなってしまい(本来はhibernate-mapping-3.0.dtdでないとダメ)、が定義されていないってエラーになったみたいだ。(あたりまえといえばあたりまえ)

2005年04月15日

SXF図面を携帯電話の画面で表示する技術

ケータイビジネスを革新する技術BREW(ブリュー)という書籍を著作しておられる平野正喜氏のBlogに、SXF->SVG変換のニュースに関するエントリが載せられていました。なんと「KDDI研」でぐぐったら4番目に出てくる。こういう有識者から評価をいただけるって言うのはインターネットやBlogから得られるメリットなんだろうなと思いながら、エントリを読みました。
今まで、ビジネスソリューションから基礎技術の開発を考えていたのだが、基礎技術の開発からビジネスソリューションを考えるという動きもしないといけないと思った。よく、研究開発はビジネスを見ていないから、ニーズに合わないものをちんたらやっているという声を聞いたりもするが、基礎技術は、公開することにより数名のエンジニアでは想定していないようなビジネスソリューションを産み出すことがある。

2005年04月16日

Hibernate + Ant + XDoclet ①

楽々DBプログラミング!O/Rマッピングツール Hibernateを参考にHibernateを使ったORマッピングを体験してみた。環境はこんな感じ。
Hibernate 2.1.6
Ant 1.6.2
XDoclet 1.2.2
JDK 1.4.2
Eclipse 3.0.2
今日のところは、
1)AntとXDocletをインストール
2)マッピングファイルを作る為のJavaBeanクラスファイル(***.class)の生成
3)JavaBeanクラスファイルからマッピングファイル(***.hbm.xml)の生成
4)hibernate.cfg.xmlとマッピングファイルから、テーブル定義SQLを生成し、データベース上にテーブルを生成
までをやってみました。

1)AntとXDocletのインストール

Antはこちら、XDocletはこちらからダウンロードし、AntはbinをPATHに設定、XDocletは
xdoclet-1.2.jar
xdoclet-hibernate-module-1.2.jar
xdoclet-xdoclet-module-1.2.jar
xjavadoc-1.0.2jar
をプロジェクトのlibディレクトリにコピー。Hibernateで必要なjarファイルは追記参照。

2)マッピングファイルを作る為のJavaBeanクラスファイル(***.class)の生成

下のようなjavaファイルをコンパイルすればできあがり。 Javaファイルのコンパイルについては、build.xml内で以下のように記述すればいいみたい。
${src}、${output}などは事前にproperty設定しておく。

3)JavaBeanクラスファイルからマッピングファイル(***.hbm.xml)の生成

といいつつJavaBeanクラス用のJavaファイルから生成できるみたいだ。上と同じくAntでやると
として ant xdocletすればマッピングファイルが生成されます。
あと、hibernate version="3.0"とするとエラーになったので、hibernate3ではまだできないのかな?この辺わかる人がいたら教えて欲しいな。

4)hibernate.cfg.xmlとマッピングファイルから、テーブル定義SQLを生成し、データベース上にテーブルを生成

上でできた***.hbm.xmlとhibernate.cfg.xmlがあればデータベース上にテーブル生成可能になります。今回はMySQLを使ったので、こんな感じのhibernate.cfg.xmlになります。
Antには としてant schemaexportすれば、下記のようなschema-export.sqlが生成され、データベースにもテーブルが生成されます。
つまるところ、hibernate.cfg.xmlとマッピング用のJavaファイルだけ作っておけば、XDocletを使ってデータベーステーブルを生成することができちゃうんだね。すご。
最後に今回のサンプルのディレクトリ構成を書いておきます。
\HibernateSample
  |
  |-\classes (勝手に.classファイルと.hbm.xmlファイルができあがる)
    |-Customer.class
    |-Customer.hbm.xml
  |-\lib (HibernateやXDocletのjarファイルをおく)
  |-\src (javaファイルをおく)
    |-Customer.java
  |-build.xml
  |-hibernate.cfg.xml

次回はDAOを作成

続きを読む "Hibernate + Ant + XDoclet ①" »

2005年04月18日

@hibernate

一対多の関係を実現する場合の例
/**
* @hibernate.list
* @hibernate.collection-key column="「多」側のテーブルの外部キーカラム名"
* @hibernate.collection-index column="「多」側の要素のインデックスを保持するカラム名"
* @hibernate.collection-one-to-many class="「多」側のテーブルに対応するJavaクラス名"
*/

HibernateとDAOとSingleton

HibernateのAPIを使うデータベースの処理は、切り離しておく方が良い。データベース処理対して責任を持つオブジェクトDAOを作成しておく。DAOのオブジェクトはアプリケーションに一つであればよいので、Singletonパターンを用います。
ここでは、DAOクラスで最低限必要な、Singletonパターンによるインスタンス生成方法と、セッションの取得・開放メソッドの例を記しておきます。

2005年04月27日

待受Vアプリをエミュレータで

待受VアプリをV-appli Emulatorでテストしようとしたら、エミュレータの初期化のところ(initialize MA-x Emulator)でエラーがおきてしまった。待受の場合、ResidentMIDletを継承したクラスになるんだけど、いろいろ調べるとJADファイルにMIDlet-Application-Security: Yというのを加えないと動かないらしい。
このMIDlet-Application-Security属性をYにすると、下記のセキュリティ対象クラスメソッドを起動できるようになる。
DeviceControl public int getLatitude()
public int getLongitude()
public String getPlaceName()
public static void setMailListener(MailListener)
public static void setTelephonyListener(TelephonyListener listener)
MailAgent public void send(MailData data)
PhoneDataConnector public static PhoneData openPhoneData(String name, int index)
StorageConnection public java.io.OutputStream openOutputStream()
public boolean createFolder()
public java.io.InputStream openInputStream()
public boolean delete()
public boolean renameTo(String newName)

Nもしくは記述なしの場合は、セキュリティ対象クラスメソッドは起動できなくなる。

2005年05月07日

NHK テレビやラジオをネット配信計画

W31Sも発売されたことだし、携帯+音楽プレーヤーを楽しんでみようかなと思ってたら、古いニュースなのですが、NHKがテレビ・ラジオのインターネット配信を検討しているという記事がありました。
NHKの教育番組はインターネット配信により恩恵を受ける人が多いと思うし、日本人の学力向上を、日本人が得意としている携帯電話市場で向上できるのではないでしょうか?
ニュースソース

2005年06月08日

WindowsでUnicodeテキストファイル

WindowsでUnicodeテキストファイルをRead/Writeする場合、「UTF-16」と「BOMがリトルエンディアン」ということを知っていないといけない。
BOM(Byte Order Marker)というのは、ファイルの先頭2バイトであらわすもので、後に続くテキストがリトルエンディアンかビックエンディアンかを識別するものです。
BOMが 0xFF 0xFEの場合リトルエンディアン。0xFE 0xFFの場合ビックエンディアンとなります。

さて、Microsoft C/C++でUnicodeを使えるようにするためには、


  • _UNICODEを定義(もし、_MBCSが定義されていたら外す)

  • リテラル文字列をL_Tを使うようにする

  • 文字列関数はWideもしくはTCHARバージョンを使う

  • APIで使う文字列長はバイト長を使う

  • mainの代わりにwmainを使う

  • MFCアプリケーションの場合、エントリポイントにwWinMainを使う

  • などなど...


うぁ。なんか大変そう。なんかよくわからんし、その度ごとに考えよう。ということでUnicodeファイルを読み書きするクラスがあったので、こちらからダウンロードしてみよ。

2005年07月15日

ライブドア iBurstを採用し2GHzの割当に参入

ライブドアがiBurstを採用し、2GHzの事業者割り当てに名乗り出た。
iBurstは京セラが推奨する無線方式で1Mbpsのデータ通信が可能になる(ベストエフォートじゃないよ)。
2GHz帯の参入には京セラ配下のウィルコムも参画を表明しているだけに、京セラとしてどのような事業戦略を組むかが注目。

2005年08月04日

W32S blog

auのソニエリ端末W32Sのblogがスタートしました。
ジョグダイアルもなくなり、ソニエリっぽくなくなってきましたねぇ。
W32Sプレスリリース

2005年08月06日

auが純増トップ ウィルコムは7万増 (7月契約者数)

7月の携帯者数が発表された。auは純増数23万500人で純増トップになった。DoCoMo、Vodafoneも純増だが、ITメディアの記事に面白い内容が。

キャリアカメラムービーアプリGPS着うたWeb
NTTドコモ集計中集計中非公開4485万8900
au(KDDI)1802万1730万1233万(BREW)1334万1725万(うち着うたフル310万)1726万2200
ボーダフォン1263万6400610万5700974万7200非公開1279万0500

ドコモとボーダフォンの着うた台数が非公開になっている。これは、あきらかにauに対する比較を恐れての行動ですね。着うたフル端末も両社出遅れが見られauの健闘は続きそうだ。

ITメディア

2005年08月22日

tdf.comにジャンプするソフト

クリップボードにコピーした英単語をもとにtfd.comに接続するソフトです。マウス右クリックのショートカットなんかに設定したらいいかも。

tfd.exe

2005年08月25日

電気通信主任技術者資格者証

やっとこ、資格者証がきました。
住所確認の資料で免許書コピーを出したら、受け付けてもらえなかったり、切手貼り忘れたりで。
次は陸上無線技術士とるぞぉヽ(^o^)丿
shikaku.PNG

2005年09月15日

GoogleがBlog Search

米GoogleがBlogの検索サービスをはじめた。
http://blogsearch.google.com/

検索オプションはいくつかあるみたい。
inblogtitle:
ブログタイトル名での検索
inposttitle:
エントリタイトル名での検索
inpostauthor:
エントリ著者名での検索(dc:creatorだと思う)

hiberenate.cfg.xmlを自動生成する

build.xmlでxdocletをクラスパスに通しておいて

2005年10月20日

MCPCモバイル技術者認定試験

MCPCモバイル技術者認定試験というものがあるらしい。
どうやら、モバイル系のシステムエンジニア、営業担当者を対象とした資格みたいなんですが、どうなんでしょう?「モバイル技術者認定試験」でぐぐったら1件もヒットしなかったので心配です。
締め切りは今日までということなので、興味のある人は受けてみては。
http://www.mcpc-jp.org/new-kentei/index.htm

2005年11月16日

JavaScriptでオブジェクトプログラミング1

このまえ、妻とはなまるうどんに言ってたときにJavaScriptのオブジェクトについて話していた。prototypeプロパティとかいう話になっていたのだけど、その時、よくわかんなかったから、調べてみた。
JavaScriptを使ってそんなに高度なプログラミングを考えたことなんてなかったのですが、最近Ajaxなんかが流行りだしてきてもんで、30過ぎの私にはついていくのが必死です。

1.JavaScriptでクラス作成
クラスを作るのはいいが、慣れ親しんだものでないと理解しにくいので、サッカー選手クラスを作ってみました。
サッカー選手のプロパティは「年齢」と「ポジション」としておきましょう。
さて、サッカー選手クラスはこんな感じで書きます。

function Player( _age, _position )
{
this.age = _age;
this.position = _position;
}
なんとも理解し難い書き方、なんでクラス宣言なのに「function」やねん!と思っちゃいます。
でも、よく見たら、これはコンストラクタなんだよね。ということで少し納得するものの、じゃ、クラス宣言部分はって思っちゃいます。
納得のいかないまま、このクラスの呼び出し方は、
var Suzuki = new Player("26", "MF");
になるみたいです。これは引数付コンストラクタと考えれば納得。
これをつかうサンプルは以下のとおり

実行結果
25 MF
26 DF
true
age
position

確かにSuzuki選手とTeshima選手ができていますし、プロパティにageとpositionがあることが確認できます。

2.prototypeプロパティ
JavaScriptでは、prototypeプロパティを使って動的にプロパティやメソッドを追加できると書いてあったので、試してみました。
先ほどのPlayerオブジェクトに対して「ゴール数」プロパティを追加してみます。

function Player( _age, _position )
{
this.age = _age;
this.position = _position;
}
Player.prototype.goalOK = 5;
Player.goalNG = 30;

これを実行するとgoalNGプロパティはundefinedとなります。

3.メソッドの追加
prototypeプロパティを使えば、メソッドを追加することはできそうだとわかってきました。
それじゃ、Suzuki選手とTeshima選手に相手の攻撃から守ってもらいましょう。

function Player( _age, _position )
{
this.age = _age;
this.position = _position;
}

function Player_Defence()
{
if (this.position == "DF") {
return true;
} else {
return false;
}
}
Player.prototype.defence = Player_Defence;

var Suzuki = new Player(25, "MF");
var Teshima = new Player(26, "DF");

document.write("鈴木選手の守備 : " + Suzuki.defence() + "
");
document.write("手島選手の守備 : " + Teshima.defence() + "
");


実行結果
鈴木選手の守備 : false
手島選手の守備 : true

みごと、手島選手は相手の攻撃から守ってくれました。
じゃ、もし、相手がアラウージョだったらどうなるでしょうか?
function Player( _age, _position )
{
this.age = _age;
this.position = _position;
}

function Player_Defence( _playername )
{
if (this.position == "DF") {
if ( _playername == "アラウージョ" ) {
return false;
}
return true;
} else {
return false;
}
}
Player.prototype.defence = Player_Defence;

var Suzuki = new Player(25, "MF");
var Teshima = new Player(26, "DF");

document.write("鈴木選手の守備 : " + Suzuki.defence("アラウージョ") + "
");
document.write("手島選手の守備 : " + Teshima.defence("アラウージョ") + "
");


あらま、アラウージョはだれも止められませんでした。
さて、話をもどして、JavaScriptにはオブジェクトにメソッドやプロパティを追加できるみたい。もうわけわからんようになってきたので、次回に。(次回があれば...)

2005年11月18日

携帯エリアの不満が少ないのはau

MM総研が携帯の電波接続状態の調査結果を公開したことがITMediaに載っていた。

ドコモFOMAに対しては音声通話31%、データ通信25%が不満に思っていたのに対し、auに関しては音声通信20%、データ通信18%と、ドコモよりも満足度が高くなっている。
Vodafoneは音声通信42%、データ通信41%と一番不満に思っている。

ITmedia +D

2005年12月27日

Bindows

会社の同僚に教えてもらったのですが、Bindowsというものが出てきたそうだ。

The leading object-oriented platform for developing AJAX applications
プラグインなしでデスクトップアプリケーション並みのUIをWebアプリケーションに提供できるAPIだそうだ。フリーじゃないので、爆発的な普及はしないだろうが、$695だとすると企業レベルでは容易くトライできますね。
Bindows

Ruby on Rail インストール

Ruby on Railをwindows環境にインストールしてみた。
インストールは
・Ruby
・Rails framework (RoR)
・MySQL
をインストールする訳ですが、その方法は、こちらかこちら(日本語訳)
を見れば普通はわかるのですが、会社でやる場合など、プロキシやファイアウォールなどの関係でRoRのリモートインストールがうまくいかない場合があります。私もうまくいきませんでした。
エラーが出ます。

gem install rails --remote
...(中略)...
ERROR: While excuting gem ... (Errno::ECONNREFUSED)
対象のコンピュータによって拒否されたため、接続できませんでした。 - connect(2)

Proxyだけの問題であれば、RoRのインストールの際に
gem install rails -p http://[PROXY]:[PORT]
コマンドを入れればできるそうですが、それでもできない場合は、RoRの依存ファイルをダウンロードしローカルインストールをする必要があります。方法はこちらに書かれています。

2006年01月01日

平野正喜氏ブログで...

平野正喜氏のブログ「2005年の私選BREW関連30大トピック」で、KCCS・戸田建設・KDDI研のSVG CADサービスが選ばれていました。
ありがとうございます。_(._.)_

2006年01月04日

Movable Type 3.121から3.2へのアップグレード

Movable Type3.2 Release2がリリースされ、おくればせながらアップグレードしてみました。
念のため現行バージョンはバックアップしておき、3.2のmt-config.cgi-originalを書き換え、その他ファイルとともにアップ。
あとは、mt.cgiを実行して、インストール。Berkeley DBを使っていたみたいのなので該当するデータベースファイルを移行して終了!!!
...
これでアップグレードはうまくいった。んですが、サイトの再構築やエントリの追加をしてみると「500エラー」が発生してしまいました。(lolipopサーバーです)
調べてみたら、どうやらBerkeley DBでMovable Type3.2を動かそうとするといくつかのエラーがあるみたい。
そこで、Berrkeley DBからSQLiteへ移行することにしました。移行方法はmt-db2sql.cgiというのでできるはずなのですが、これまたうまくいかない事例が多く、こちらのサイトにあるmt-db-convert.cgiというのを使いました。

2006年02月03日

vi

vi(vim)でUTF-8ファイルを利用する
vi(vim)では、6.x系以上でUTF-8ファイルを利用できます。
利用するには、~/.vimrcの以下の行を編集(追加)

syntax on >--文字の色分けを実施
set nobackup >--バックアップファイル(file~)を作らない指定
set fileencoding=japan >--デフォルトの保存エンコード。[japan]はeuc-jp、UTF-8の場合は[utf-8]
set fileencodings=iso-2022-jp,euc-jp,utf-8,ucs2le,ucs-2,cp932 >--読み込むことのできるエンコードを列挙。

2006年02月08日

イントラネット・ホームページの標準形

このサイトで有名イントラネット10社のホームページを比較し、その共通点を書いている。

* 最上部の横棒部分:背景は有色で、高さ100ピクセル程度。ロゴやグローバルナビゲーション(タブを使っている場合が多い)、検索ボックスなどが置かれるのが一般的である。
* 左側のコラム:背景は有色で、幅200~250ピクセル。下位階層までを含むナビゲーションとイントラネット上のサブサイトを一覧できるリスト、あるいは、そのどちらかが置かれるのが一般的である。
* 中央部分:背景は白で、幅400~600ピクセル。幅いっぱいに(2列に分けている場合もある)、写真やイラスト、見出しの一覧や、イントラネット上にある重要な機能やアプリケーションへと繋がる“ポートレット”などが並べられるのが一般的である。
* 右側のコラム:背景は白で、幅200~250ピクセル。箱をいくつか並べて、時には、色味のあるコンテンツや写真が置かれる場合もある。

2006年03月01日

Movable Type Enterprise発表

シックスアパートさんが企業利用を目的としたMovable Type Enterpriseを発表されました。
ユーザーの登録機能がアップ、LDAPサポート、タギング対応、ポータル装備、Oracle10gをサポートしてきたりしていますね。もっと協力したかったのですが、すいません。_(._.)_
がんばって欲しいですね。
あと、タギングは一般ユーザーでも欲しいところだろうし、MTの次期バージョンにでも入れて欲しいな。

2007年04月11日

Ruby会議2007

Ruby会議2007が6月9日、10日に開催されます。
協賛企業でASTERISKってあったので、オープンソースPBXのことかなっと思ったら、SaaS事業を主体としたサービス会社だった。気になったので、商標登録見てみたら、ビールから時計から靴やら、いっぱいありますねぇ。ちなみにASTERISKは「星印」っていう意味らしいです。だから、サッポロビールなんですね。
http://jp.rubyist.net/RubyKaigi2007/

2007年07月23日

Revlayer

テストです

2007年12月07日

ポットワン実験

今日は京都駅東広場でポットワン実験のアテンドしてました。
ポットワンというのは、造語ですが、スポットワンセグ放送の続きを自宅PCでも見れるっていうサービス実験です。スポットワンセグが観光地なんかで見れるようになっても、その場にいるのは、結構短い時間だったりするので、番組の続きを見たくることがあると思う。そんなときに、現地で登録しておけば家に帰ってからでもWebで見れるっていうやつです。
12月16日まで、京都駅東広場、高台寺、嵐山でやってます。
お暇な方は見に行ってやってください。
http://www.pot1.jp
pot1.jpg

About @it

ブログ「SANGA2000」のカテゴリ「@it」に投稿されたすべてのエントリーのアーカイブのページです。新しい順番に並んでいます。

次のカテゴリはRubyです。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

Powered by
Movable Type