三つの「空(くう)」

今、100分de名著(NHK)で「般若心経」を放送しています。
先日「色即是空」の「空」の説明がありましたが、昨年同番組で放送された「ブッダ真理の言葉」の「空」の説明とあまりに違うので、両方のビデオを見直しました。
その結果、「空」には次の3種類あることが分りました。

(1)ブッダの「空」:
自分の見ているものは常に変化している仮そめの世界だと思いなさい。すべの物は常に移り変わっていて、形はあるがその中に本質はない(これが「空」)。この世のものは全て「空」であると見なさい。仮の世界を実際の世界と勘違いしてしまうために、自己中心的になり煩悩に取りつかれ苦しむのです。(ブッダ真理の言葉)

(2)大乗仏教(みんなの仏教)の「空」:
常に移ろいゆく世界には、全てを統括する法則があるはずで、その法則が「空」である。科学は「空」の一端であり、発見の喜びは「空」の一端に触れる喜びである。人は個で存在するものではなく「空」のもとですべての物につながっている世界の一部で、たまたま今は人間の形をして存在しているにすぎない。(般若心経)

(3)日本仏教の「空」:
これを知ることにより仏になる道が開かれる重い教え。(ガラパゴス的進化ですね)

最終講義に来ないで

最終講義の案内が関係者にいっているようです。元々最終講義をやらないつもりでしたが、今年は理学部で退職者が5人もいるので「追い出しパーティー」を学部単位で一緒にやってしまおうということになり、最終講義もセットされてしまいました。私は一応、お断りしたのですが足並みを揃えて欲しいという依頼があり、やることになりました。皆さんの期待されるような立派な内容はありませんので、来ていただく必要はありません。パーティー参加費も安くないようで、時間とお金を無駄にしないようお願いいたします。
(今後、何度かこのメッセージを張り付けます)

 ===
今日は卒論の締切です。私の研究室では今日最後の一通が提出され、無事提出が終わりました(ホッ!)。卒研のタイトルは次の通りです。
・音声認識機能を持ったTVML キャラクタの制作
・Google map を用いた足跡アプリの制作
・画面上にラクガキできるアプリケーションの開発
・打てば響くタップパネルの制作
・実際の楽器を用いた音階学習ゲームの制作
・Kinect を用いたセーリングゲームの作成
あとは2/12日の発表、うまくいって欲しいですね。

打てば響くタップパネル

卒研の紹介です。
厚いアクリル板をタップすると、叩いた場所によって異なるアルペジオ(和音を分散して演奏)が響きます。叩いた位置の検出は、アクリル板の周辺に5箇所貼り付けたマイクへ到達する音の時間差で行います。アクリル板には赤黄緑のシールが貼ってあります。この色は、叩く順序を誘導するもので、一定の規則に従って演奏することで簡単な作曲を行うことができます。音色は8種類の楽器が用意されていて、とても美しい響きです。

千葉市は雪

今朝のニュースで「千葉市は大雪」という話をしていたので、楽しみに出てきましたがキャンパスには雪のカケラもありませんでした。千葉と津田沼は柏から見ると同一地域ですが、随分違うんですね。
 今、佐倉市から来る学生さんが来て、「雪かきをしてて遅くなっちゃって」と言っていたので、佐倉は千葉市圏みたいですね。
(佐倉市)

==
1/26には、2006年卒が遊びに来てくれました。ついにお子様の登場です(少し不思議な感じです)。

今は昔(2010/9/14夕方)、この子のお母さんの結婚式のための撮影隊が来て「気まぐれロマンティック」に合わせてK先生と踊らされました。これはその時の写真で、老人の体操ではありません。早いものですね。

起雲閣・小田原城

1/10の起雲閣(室内)

小田原駅

小田原城
小田原城は室町時代に大森氏が築いた山城が前身で、その後戦国大名小田原北条氏の居城となってから関東支配の中心拠点として次第に整備拡張され、豊臣氏の来攻に備えた城下を取り囲む大外郭の出現に至って城の規模は最大に達し、前例を見ない巨城に発展しました。

 

 

添削

何だかまた膝の調子が悪く、昼ごろ大学へ着く。

今日は一日卒論の要旨と論文の添削に追われました。

訳あって、夕食を買って帰りましたが、高いのに驚きました。

すでに物価2%上昇を軽くクリヤしていますね。

 

ボキャブラり

(1)オバマ大統領のニュースで「office of president」と言っていたのに対し「大統領の職務」という字幕が出ていました。

調べてみると、officeには「事務所」だけでなく「職務」という意味もありました。

(2)背中に「FIRST DOWN」というロゴの入ったダウンジャケットを着ている人がいました。羽毛のダウンは、アップダウンのダウンと同じ綴りなのかと思って調べてみたら同じでした。FirstDownって洒落たネーミングですね。

(3)「功徳(くどく)」には一見反対に見える2つの意味があることに気づきました。
(1)よい果報を得られるような善行。普通、供養(くよう)・布施(ふせ)の類をいう。
「―を施す」
(2)以前によいことをしたために、実現したよい報い。神仏が与えるよい報い。

GoogleAppEngineとAppInventor

AppInventorにはTinyWebDataBaseという機能があります。これは、AppInventorからGoogleAppEngine上のTinyWebDataBaseにデータを書いたり読んだりします。

これを実現するには、GoogleAppEngine上にTinyWebDataBaseを準備する必要があります。
以下では、TinyWebDataBaseの立ち上げ、次にAppInventorのプログラムを示します。

(A)Tiny Web Databaseの実装

step1:
http://beta.appinventor.mit.edu/learn/reference/other/tinywebdb.html

■Download this sample code . のsample codeをダウンロード

step2:customtinywebdbが降りてくるので、解凍するとcustomtinywebdbというフォルダーができる。

step3:自分のPCでテスト1
GoogleAppEngineLauncher(いつの間にかデスクトップにアイコンができていた)を起動。

step4:File->AddExistingApplicationを選び「browse」ボタンでcustomtinywebdbフォルダーのパスを指定。
(私の場合:C:\Users\tohojoho\Desktop\customtinywebdbでした)

step5:上のパスをハイライトすると「RUN」ボタンが現れるので押す。
これでtinywebdbが動き出す。

step6:http://localhost:8080でデータの書き込みと読み出しをチェックできる。

step30:自分のPCでテスト2
> cd “c:\Program Files\Google\google_appengine”
次の命令でアプリを実行
> dev_appserver.py <配置ディレクトリ>\customtinywebdb

==公開(デプロイ)するには==

step1:customtinywebdbフォルダーのapp.yamlを開き、「application:アプリ名」のアプリ名を書き込む。

(アプリ名をtohotinywebdbとし、フォルダー名もtohotinywebdbにして、“c:\Program Files\Google\google_appengine”に入れた)

(もしかすると、アプリ名とフォルダー名が違ってもいいかも、試してないが)

step2:GoogleAppEngineLauncherで、

File->Create an Applicationとすると、
ApplicatinNameとParentDirectoryを聞いてくる。
ApplicatinNameをtohotinywebdbとし、
ParentDirectoryを「Browse」でc:\Program Files\Google\google_appengineにする。
(Launcherに正しく表示される)

(アプリ名をハイライトすると「Dashboard」が現れるので)
step3:「Dashboard」を開くと「Create an Application」があるのでクリック。

step4:ApplicationID(アプリ名)とタイトルを入力し
「CheckAvailability」ボタンでアプリ名のダブリをチェック

step5:「CreateApplication」ボタンを押す

(Application Registored Successfullyと表示される)

step6:「Deploy」を押すとメールアドレスとパスワードを聞いてくるので入れる。

(エラーなしで、You can close this window now.と出て終わり)

step7:確認
http://tohotinywebdb.appspot.com/
にアクセスすると、Appinventor for Androidという画面になり、データの保存を確認できる。

(B)Appinventorのプログラム
上の二つのテキストボックスにタグとバリューを書き込んで上のボタンを押すと、タグとバリューがGoogleAppEngine上のwebdatabaseに格納される。
一番下のテキストボックスにタグを入力し、下のボタンを押すとタグに対応するバリューが表示される。
データの保存を確認するため、Notifierに「格納終了」の表示を出す。
画面設計

プログラム

Google App Engineとは

App Engineというネーミングが本質を分りにくくしています。分り易い名前に変えると「Google アプリ広場」だと思います。誰でもGoogleのサーバー上に、自分のアプリを公開することができます。アプリはアプリ名で識別され、アプリ名ごとにURLを取得できます。そのため、アプリ名は既に公開されているアプリと異なっている必要があります。
 
アプリの構成:
アプリはPythonまたはJavaで書き、アプリ名のフォルダーに次のように格納してアップロードします。
 
図の~.pyがPythonのプログラムで、app.amplがコンフィグファイルです。図の様に、app.yamlファイル内でアプリ名とプログラム名を指定します。フォルダー名はapp.yamlファイルで指定するアプリ名と同じにします。
 
アプリの制作:
アプリは、各自のPCで行います。GoogleはSDK(ソフト開発キット)というアプリ開発環境を用意しており、ユーザは、これをダウンロードして使います。SDKには次の機能が用意されています。
*作成したアプリを各自のPCで動作確認するエミュレータ
*アプリにGoogleの機能を組み込む仕掛け
*アプリをアップロードするインタフェース(Lancher)
 
開発手順でいうと:
step1:Pythonをダウンロード
step2:SDKをダウンロード
step3:アプリ開発
step4:自分のPCで動作確認
step5:アプリの公開(デプロイ)
です。
 
==

「C++のクラス」で大学での学習は終了した、と思っていましたが最後の最後さらにGoogle App Engineという話が飛び込んできました。当然、私は知っていなくてはいけないサービスでした。私が利用しているクラウドは、このサイト用のレンタルサーバーと、通勤途中で文書作成に使うEvernoteだけでしたが、知らない内に(といっても4,5年前から)Google App Engineのようなサービスが色々でているようで、驚きました。大変な変革ですですね。誰でも、アイデア次第で世界最先端に到達できるチャンスが広がっています。
==

Google App EngineでHelloWorldをやってみた。
Step1:Pythonをダウンロード
http://www.python.org/download/releases/2.7.3/
で、
Windows x86 MSI Installer (2.7.3)
をダウンロードして「実行」

PythonフォルダーはCドライブの直下にできた。

Step2: Google app engineのSDKをインストール
https://developers.google.com/appengine/downloads?hl=ja
から
GoogleAppEngine-1.7.4.msi
をダウンロードしてインストール。

Step3:プログラム作成
google_appengineフォルダーに次のmyappフォルダーを入れる。
myappフォルダーに次の2つのファイルを入れる。
(ネットに出ていたものをそのまま借用)
==Pythonプログラム(helloworld.py)==
import wsgiref.handlers
from google.appengine.ext import webapp

class MainPage(webapp.RequestHandler):
  def get(self):
    self.response.headers['Content-Type'] = ‘text/plain’
    self.response.out.write(‘Hello, World!’)

def main():
  application = webapp.WSGIApplication(
                                       [('/', MainPage)],
                                       debug=True)
  wsgiref.handlers.CGIHandler().run(application)

================================
==コンフィグファイル(app.yaml)==
application: myapp
version: 1
runtime: python
api_version: 1

handlers:
- url: /.*
  script: helloworld.py

================================

Step4:自分のPCで動作確認
コマンドプロンプトでアプリフォルダーのある場所に移り:
> cd “c:\Program Files\Google\google_appengine”
次の命令でアプリを実行
> dev_appserver.py myapp
これでサーバーが立ち上がる。

何か聞いてくるので、「Y」を打つ。

Step5:確認
ブラウザを立ち上げて”http://localhost:8080“にアクセスすると、結果が見られる。

Step6:アプリの公開
(1)Google App Engineのページに行ってログイン(メールアドレスとパスワード記入)
(2)「Create Application」ボタンが現れるので押す。
(3)携帯メールアドレスを聞いてくるので記入
(4)携帯に数値が送られてくる。
(5)この数値を入力して「確認」ボタンを押す。
(6)アプリ名とタイトルを聞いてくるので、
ApplicatinIdentifireには、アプリ名(ファルダー名)
ApplicationTitleには適当な名(何でも良い)を入れる。
(7)何かの条項をAcceptにして「Create Application」ボタンを押す。
(8)Application Registered Successfullyと来るので登録成功。
(9)アプリのアップロード
コマンドプロンプトでアプリフォルダーのある場所に移り:
> cd “c:\Program Files\Google\google_appengine”
アップロード実行
>appcfg.py update myapp
(9)Emailアドレスを聞いてくるので、
google accountに登録してあるアドレスとパスワードを記入。
(10)ブラウザでどうさ確認

http://アプリID(今回ならmyapp).appspot.com/

で確認。

膝痛の話

昨年末、膝の激痛に襲われ、その後回復してきてはいますが、膝にじん帯が引っかかる現象と膝がポキポキいう現象は続いています。

来週からウオーキング通勤ができるといいなと思っています。本格的な運動は、まだ先のようですが。

今回のトラブルで気付いたことが2つあります。

(1)炊事は膝の負担になる:このところ、食器洗いを手伝う機会が増えました。それで気付いたのですが、食器洗いなどの時、体を前に倒すため膝に逆曲げの力が入り(左図)、痛みが出ます。
中高年の女性に膝痛が多いと聞きますが、炊事のせいではないかと思います。炊事の時は、膝を少し曲げた方がよいのではないかと思います(右図)。
 

(2)力士には膝のトラブルを抱えた人が多く、解説者は「膝をかばわず、前に出るようにしろ」なんて言っていますが、とても無理です。膝が痛いと一歩も歩けなくなるので、その恐怖心を克服するのは無理です。