prasinos' work memo

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

DB 移行計画

まともに手に附かないようになって数週間、そろそろ頭がパンクしてきたので整理しなくてはいけない。 続きを読む
スポンサーサイト

[RHEL4] kernel updated

Today I've updated the kernel of RHEL4 to 2.6.9-5. There was no update for RHEL3.

How to reconfigure the firewall

RHEL 4.0 has system-config-security command which does configure the firewall. RHEL 3.0 has redhat-config-security but it does not have "other protocols", so I had to use redhat-config-security-tui, which is text-based command to do it.

This solved the problem that MySQL on robin cannot be connected from the outside of robin.

MySQL・PostgreSQL の OpenGIS 対応

OGC (オープンGISコンソーシアム) は SQL を拡張して地理情報を表現する OpenGIS® Simple Features Specifications For SQL を制定している(参照)。1999 年というからえらく古い話だ。で、これが実際の DBMS にどの程度マジメにサポートされているかという話。

PostgreSQL には幾何データ型というのがあって、何やらえらく凝った機能が内蔵されているらしい (参照) がこれは OpenGIS ではない。PostGIS という追加パッケージが OpenGIS サポートを実現しているらしい(参照)。

MySQL 4.1.12 は直接 OpenGIS SQL をサポートしている(参照)。なにやら未実装機能が多くて怪しい地帯であるげではあるが、とりあえずこのコードくらいは動いた。

mysql> CREATE TABLE t(poly Polygon);
Query OK, 0 rows affected (0.04 sec)

mysql> INSERT INTO t(poly) VALUES(GeomFromText("Polygon((0 0,0 1,1 1,0 0))"));
Query OK, 1 row affected (0.00 sec)

mysql> INSERT INTO t(poly) VALUES(GeomFromText("Polygon((0 0,1 1,2 0,0 0))"));
Query OK, 1 row affected (0.00 sec)

mysql> SELECT AsText(poly) FROM t;
+

OOo にも BASIC あるよ

いちおう OpenOffice.org の名誉のために補足。OpenOffice.org にも BASIC マクロ機能がある。ピリオドをタイプしても VB みたいにメソッド一覧は表示されないが、ま、そんなことはいいじゃないか。

というか、バラバラとヘルプを見ていると、MsgBox の引数は VB 互換っぽいし、Declare Sub とかやって DLL も呼べるみたいだし、ま、頑張る予地くらいはあるようである。

DLL といえば OOo って Windows でも動くんだよね。安売り PC で MS Office がついていないのを買って来て、OOo インストールして使うというのはかなりイケそうだ。

Ajax について

なんだか知らんが Ajax が流行であるらしい。要はみんな Google Maps (と、みんなでないかもしれんが Gmail) を観てびっくりして真似をしたいと思うわけですよ。で、Ajax の本質と題した面白い記事を見つけたのでそれについて思うこと。

この記事では Ajax の本質を5項目挙げている。そのうち、「RPC ではなく、メッセージ」というところでなるほどと思った。

Ajax の A は Asynchronous の A であるように、非同期通信というのはとても大事だ。非同期に通信する、つまり、サーバとお話している間もユーザのお相手を怠らないようにすれば、そりゃユーザは待たされることが減ってよろしい。あったりまえの話だ。だが、それは今まであまりやられてこなかった。

なんでか。プログラムがとても複雑になるからだ。でも、やっぱりがんばったらその甲斐があるということがわかって、どうやらこれからはそれが主流になりそうだ。

この話は、HPF と MPI の話を思い起こさせる。並列コンピューティングをするのに、並列性なんて意識したくない。だからそんな面倒を隠蔽してくれる HPF だとみんな思ったのだが、いざやってみると全然性能が出なかった。で、並列性をばっちり意識してプログラムを書く MPI 路線が勝利した。

やっぱり時間がかかる事とかからない事の区別を無理に隠蔽したら時間がかかるのだよ。

あとは、アプリケーションのインストールがいらないこと、というのも応用範囲が広いかもね。

全然話題はそれるのだけれど、ArcMap のマクロとしての VBA でプログラムを書いて嬉しいことは、その VB スクリプトが入った MXD ファイルを送るだけで ArcMap を持っている人なら必ずアプリケーションが使えるようになるということ。これが DLL をインストールして ArcMap から呼ぶスタイルだと、使ってくれる人は間違いなく 1/10 以下になる。コンピュータを管理する方だって、一部の機械に変なものをインストールされるのは迷惑だから一律禁止にしたいし、そういう環境でも「何でも出来る」というのはとても嬉しい。

ところでだ。Gmail を使っていて、書きかけのメールを時々勝手に(それこそ非同期に)セーブしてくれるのがとても嬉しい。ココログでもやってくれんだろうか。実はこの記事も書きかけで一度なくしていて... 無理ですかそうですか。

VBA・ArcObjects を使ってみて

ArcObjects つまり GIS 業界で圧倒的なシェアを誇る ESRI 社の ArcGIS を構成する COM オブジェクトたちを使ってVisual Basic とかでプログラミングするという実習をやってみて。これって本当にすごいことだと思う。

アプリケーションのほとんどがプログラムから操作できるというだけでもすごいことだと思うが、そういってしまうと「それってマクロ機能があるってことだけじゃん」と言われておしまいになってしまいそうだが、それだけではないのだ。

ArcGIS だけではなくて、Word, Excel, Internet Explorer (= Windows シェル), その他いろんなプログラムが、というか Windows は OS まるごと COM オブジェクトのかたまりである。だから、ArcGIS の [Tool(T)]->[Macro(M)]->[Visal Basic Editor; Alt+F11] でマクロを書き始めたはずが、いつのまにやら Internet Explorer にウェブのアクセスをやらせて、何か文書は Word のファイルにセーブというような芸当ができてしまう。インターフェイスがみんな COM だということで、いろんなアプリケーションの部品をかき集めて新しいアプリケーションを作る、というソフトウェア工学の夢が実現しているのだ。

UNIX の世界ではそういうことはまだ当たり前ではないGNOME が頑張って Bonobo という COM 相当品を作ってくれたわけだが、OpenOffice.org はまた別に UDK とやらいうものを作っているようであるし、さてそれがどのくらいのことができるのか、またどのくらい将来性があるのかよくわからない。

ま、まだ素人さんが手を出すのには早いのだろう。Ruby-GNOME でプログラムを頑張って書いたのに GNOME 2.0 になって全部オシャカになったような目にあうのが嫌なら、様子を眺めるほかない。


[warning db CGI] q=range added

I decided to add "q=range" option to "wpolygon" CGI. It gives dates of the first and the last records.
2005-09-22 17:32:00
2005-10-29 03:40:00

This kind of feature is needed in order to create a dialog to select warnings. Firstly I used a TextBox to input year, but it would be more user-friendly to inform which years are available. Another benefit is that the application doesn't have to check whether the TextBox value is numeric string or not.

[robin] kakasi just copied from finch

I've just copied an RPM package of kakasi from finch. The 2.3.4 was the newest version. It worked. That should be okay while it works.

gempak is copied too.

dcl and vsh are rebuilt and installed.

netcdf isn't built successfully. I have to inspect what causes the error.

[robin] g95 installed

g95 (2005-10-06 version based on gcc 4.0.1) was installed firstly for robin and as update for finch.

Writing shapefile

I've wrote a VBA script to write polygons into (not create) a shapefile. ArcMap screenshot showing warning polygons
Using data layers, we can examine the properties of the polygon feature interactively on ArcMap display.

Findings on warnings

Oops! Some bulletines issued by San Juan PR is in Spanish.

I don't have map of Puerto Rico, do I? Probably I have to find it and let it be on SDE server.

Format of bulletines are in crazy variety. I am working with a decoder CGI, and it will give us practical syntax on it after enough time of operation with careful monitoring.

Flood warning bulletines don't have polygon info. Flood statements do, but they are issued for different time and region.

[MySQL] 外から接続できん

今頃になって robin の MySQL に外から接続できないことに気がついた。

とりあえず、ローカルホスト内の場合は使えるのだが、これは UNIX ドメインソケットを使っているらしいので、全く方法が別である。

何が悪いんだろう? 考えられるのは、TCP ファイヤウォール、MySQL の設定、MySQL の init スクリプトを使わなかったことが悪い、まあそんなところか。いずれにしてもよくわからん。TCP 3306 ポートを使っているのだと思っていたが、動いているホストでも接続できないこともあるみたいだし、ますますわからなくなってきた。風呂入って寝よう。

倫理の原理

GISCI 倫理綱領の講義をきいたら、いちおうセオリーの話もちょっとくらいはあった。倫理体系の原理を何にするかで流派があって

  • 家族に価値をおくもの
  • 宗教に価値をゆだねるもの
  • 主観主義 subjectivism: 本人がいいと思えばいい
  • 功利主義 utilitarianism: 功利が害悪を上回ることがよい
  • カント主義 Kantianism: 絶対に守るべき規則を定めて従う (例: 嘘をつくな)
  • Virtue Ethics: 高徳の人に見習えという
  • 義務論 Deontology: 他人を手段でなく目的と観よ。より具体的には Golden Rule つまり論語の己の欲せざるところ人に施すなかれ

で、その、最後の Deontology がいちばん一貫しているのだということで GISCI 倫理綱領は誰を他人と思うかによって対社会・対顧客・対同業・対自己(ここはちょっと対応悪いけど)に章立てしている。


ところで、功利主義は、なんかすべての社会問題を経済学に落とし込むための論理みたいな感じがするが、倫理として実用になるところもやっぱりあるのだった。今日は圏外からのひとことでそういう議論をみつけた。

ArcMap crashes when I try to create a Shapefile

Why? I can't spend much time to debug, so I just save the text for now. 続きを読む

DEM to watershed algorithm - Jenson and Domingue 1988

The algorithm to extract watershed from a DEM, described in Jenson and Domingue 1988. 続きを読む

ArcMap reads polygon data

I've wrote a VBA/ArcMap code to read warning polygon dumped by a CGI (I mentioned in previous article). Weather warnings Sep 22 - Oct 19 2005. Yellow polygons are severe storm warning, and red ones tornado. Source: NOAA/NWS via IDD.
Weather warnings Sep 22 - Oct 19 2005. Yellow polygons are severe storm warning, and red ones tornado. Source: NOAA/NWS via IDD. It is obvious that numerous tornado warnings are issued at the time of hurricane Rita.

Simple interface to retrieve warning polygons

I've created a CGI to retrieve weather warning polygons in plain text. It produces a sequence of records like
Time: 2005-10-19 20:17:00
Type: SVR
Titl: SEVERE THUNDERSTORM WARNING
From: NATIONAL WEATHER SERVICE DODGE CITY KS
NPnt: 4
   3733  10024
   3721  10007
   3765   9955
   3785   9980

I hope it is convenient for analyzing by Visual Basic.

Gmail すごい

Gmail すごい。感動した。これはもうやめられませんな。

すごい1。スパムをほぼ(95%くらい)完全によけてくれる。Yahoo! Japan メールにも迷惑メールを報告・識別する機能があるけれど、そんなに頭よくないからほとんど素通りである。結果として自分でホワイトリストの (ブラックリストが特定の送信者からのメールを削除するのの反対で、特定の送信者しか通さない) フィルタをかけざるを得ない状況に追い込まれていたのであるが、これも維持管理に相当手間がかかっていた。 ホワイトリストの管理を怠って誰か新しい人から送られて来たメールを無視してしまうという心配からこれで解放される。

すごい2。スレッド表示。普通のメールクライアントやウェブメールでは受信箱にはメールが列んでいて、スレッド表示といってもせいぜいメールをスレッド別にツリー状に並べてくれるくらいの話だ。ところが Gmail は違う。受信箱にはスレッドしか並んでいない。馬鹿な機械が1時間に1回とか定期的に送って来る「ほとんど同文」のメールなんかに表示面積を占拠されないというのがこんなにも有り難いこととは思わなかった。で、開くとメールが1ページにガシガシ並んでいる。ま、このへんは Google グループみたいなもんだと思って戴きたい。で、個々のメールは collapse 最小化することもできるんだけど、例の ajax テクノロジーでとても速い。

すごい3。速い。アメリカから Yahoo! Japan を見ているとちょっとやりきれないことがある。ま、でもこれはお互い様で、日本から Gmail を見ていると遅くてたまらんのかもしれない。

でだ、いままでのメール環境はどうしようか。微妙だなあ。

Note - ArcObjects Project

Note on my project for IES400 ArcObjects class. 続きを読む

Solution was Workspace

I finally understood that the Solution in MS Development Environment 2003 is equivalent to Workspace in older MS Developer Studio. Confusing name change!

HTTP access in VB.NET

This reads a html from a website. 続きを読む

generic CGI interface for SQL

I wrote a generic CGI interface for SQL. It is very useful.

It can save a query (without user and password) as a GET method URL. So we can write a link, for example, to the latest warning issued by NWS Milwaukee. I have to acknoledge the great idea to save the status of the application is taken from a weblog.

Sylpheed updated (1.0.4 -> 2.0.2): so easy! Japanese input works!

I've updated sylpheed from 1.0.4 to 2.0.2. I had to change very little of the original packaging of Fedora Core 3. The only things I did were: (1) replace the tarball, (2) change the version number in the specfile, (3) remove some patch hunks that fail, and (4) watch the build process and change some filenames in the %files section.

And the good news is I am able to input Japanese text now.

databasing on finch has stopped for 4 days

I found that text messages databasing has been dead for 4 days. It was due to misconfiguration. I realized that the dual system (finch and robin) really helps. I was able to mirror database from robin. The database copy tool I posted yesterday was useful too. I should package it properly.

By the way, both finch and robin had to be updated for some packages. I found that up2date can be invoked via ssh connection.

GISCI 以外の倫理綱領

またコピペ。


  • Edson, Curtis, Brian Garcia, Jordan Hantman, Nicole Hartz, Hannah Jensen, Jill Leale, Kelley Lewelling, John Marks, Jeff Maxted, Bruce Moore, Brendan Vierk Rivera, Anna Weitzel. 2001. “Code of Ethics for GIS Professionals,” paper for IES 400, GIS and Society, Institute for Environmental Studies, University of Wisconsin-Madison. Online at [Link (PDF)]
  • Craig, William J. "A GIS Code of Ethics: What Can We Learn from Other Organizations?" Journal of the Urban and Regional Information Systems Association, V(2), Fall 1993, pp. 13-16 (also published in an earlier form in Proceedings of the 1993 URISA Conference, 2:1-9 ). Online at [Link]
  • American Society for Photogrammetry and Remote Sensing, 2004. Code of Ethics. Online at [Link]
  • Center for the Study of Ethics in the Professions. Online at [Link]


プロたるの要件

ある専門職業が確立しているなら具備しているもの、というのがあるらしい。

  • 特化した知識体系
  • 使命
  • フォーマルな団体
  • 共通言語
  • 特化したトレーニング
  • 文化と lore
  • 倫理綱領
  • 免許・資格


Pugh, D. L. 1989. "Professionalism in Public Administration", Public Administration, vol. 49, pp. 1-8.
が原典だけど Obermeyer, Nancy J. 1993, "Certifying GIS Professionals: Challenges and Alternatives". URISA Journal. vol. 5, no. 1. で引用されてさらに講義ノートに転写されたもんの孫引き。

Copy of RDB database

I wrote a program to copy MySQL database tables on different hosts. I don't want to use intermediate files.

After that, I found that mysqlhotcopy might be able to do the same job. But (I'm sorry if it is my misunderstanding) I don't like touching database as a directory tree. It sounds so dangerous. 続きを読む

ruby for HPC

MySQL/Ruby must be 2.7 or later

I found that MySQL/Ruby must be 2.7 or later to use MySQL::Stmt features. It's fantastic to try brand new function.

FC2Ad

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。