参加記(5):博士ミーティングの位置づけに対する要望


最初にも書いたとおり、今回は参加するとき、大学教員であることを理由としてつるし上げにあうのではないかと思いびくびくものだった。実際に参加してみるとみなさんモノの分かった方々だし、前向きだし、面白いしでとてもよかった。

博士の地位向上を目指すというか、博士を日本の社会において有意味なものとして再配置するためには、博士ミーティングを労働争議にするべきでないと思う。大学教員やすでに職を得ている博士号取得者を敵にしてしまえば、博士ミーティングはうまく回っていかなくなると思う。それはそれ、これはこれ。過去は過去、未来が大事。

私の参加記を読んで博士ミーティングに参加したくなったかたは、ぜひ、次回開催されたならば参加してみることをオススメする。博士とは全く縁の無い人も参加してみると面白いと思う。多様性に寛容であるということこそが博士の生き残る道なので。

なお、産業総合研究所の方曰く、予算の申請が通ればまた博士ミーティングをやっていただけるということなので乞うご期待。

参加記(4):博士に対するスーパーマン幻想をいかに打ち破るか?


「今まで博士号取得者がいなかったコミュニティの中に新たに博士号取得者が加わったときの周囲の過剰な期待と大きな失望がつらい」と企業に就職された方がおっしゃっていた。

確かに博士就職難話の鉄板切り返し「そんなに優秀なら自分で起業しろよ」でも書いたように、Web上でも「博士=スーパーマン or 万能の天才」というとらえ方が多いもんなぁ。私も自分の親に「お前は博士課程を卒業して自分のことをえらいと思っているかも知れないけど、人のことをバカにするような態度はとるな」と言われたもんなぁ。いや、えらいと思っておりません。学生のみなさんに偉そうに振舞っているのはそれが仕事だからです。

またもやサイコムの富田さんの主張がよかった。「今まで博士号取得者がいなかったコミュニティの中に新たに博士号取得者が加わったときに、仲良くなろうとか努力するよりは、そのコミュニティに存在するニーズを探し出し、それを自分が満たせることをできる限り早く証明するのが、そのコミュニティにおいて自分の居場所を作る最良の方法だと思います。」とのこと。

ただ、そうは言っても失望されるのはしんどいので、身近な人に博士は専門家であって万能の天才やスーパーマンじゃないんだよと地道に伝えていきたい。

でも、博士に無縁の方々は、博士と言うのは

  • いつも白衣を着ていて
  • 頭はぐしゃぐしゃで
  • なぜか他人が聞いてもきっちり理解できる説明調の独り言をしており
  • なぜか助手がいて
  • 女性の博士はなぜか白衣の下が露出多めで
  • 女性の助手はもっと露出が多めで
  • 家には地下室があり
  • なぜか試験管がならんでおり、かつ、なんか煙が試験管から出ており
  • 二つボタンしかないリモコンでいろんなことができちゃったり
  • 秘密マシンが登場したり
  • 近所のプールから巨大ロボが発信する

と思っているんだろうなぁ。われながら、昔の戦隊もの or 仮面ライダーの影響だわ。

「# |ω・)……」が意味わかんないけどかわいい

一つ前のエントリーにはてなブックマークしてくれたtsugo-tsugoさんが使っている「# |ω・)……」というタグが意味わかんないけどかわいい。どういう意味なんだろう。良い意味だとよいけど。

余談ながら、ワクワクしている子どもを表現する顔文字(どういうのか忘れちゃったけど)もかわいい。あれどうやって作るんだろう?

追記

tsugo-tsugo # |ω・)…… は、わー2個も殆ど同じタグがある。おそるおそるもの申すときに使っております。 

ご教示ありがとうございます。なるほど。

ついでなので気に入っている顔文字をメモ。

( ゜д゜ ) ←本当にこんな顔した

あ、あれは氷なんだね? 冷たいんだね(・∀・)?!

学生がはてなダイアリーを使うときに気をつけるべきこと

教育ソリューション:授業で使うはてな

  • 本名はとりあえず明かさない。
  • 先生や同級生の本名も明かさない。
  • あなたが渋谷のスクランブル交差点の中央で行って恥かしいことはネットでも行ってはいけない。
  • 文章能力が上がるとは期待しない。文章は添削されなければうまくならない。自分の考えを文章に綴る練習であると割り切る。
  • スタイルや書き方は一貫していなくても良いのでとりあえず続ける。今日は武士語、明日はギャル語、あさっては英語でOK。
  • どうしても誰かを批判したくなったら、オフラインで批判する。ブログに書かない。
  • ネガティブな意見があったとしても、それは「あなた自身」に対するネガティブな意見ではなく、「書いた事柄」に対する意見なので理解したら流す。初めてのネガティブ意見は心臓を殴られたような気分になるが慣れると案外流せる。
  • 怒りが頂点に達しているときは寝る。
  • 悲しみが頂点に達しているときは書き綴る。そこから文学が生まれるかもしれないという幻想が湧くまで書き綴る。
  • 喜びが頂点に達しているときには友達や家族と喜ぼう
  • 誰かを誉めたくなったら全力で誉める。世界は賞賛に飢えている。
  • コンピュータ関連のTipsやプログラムのTips、歴史ネタについては全力で書く。私がそれらに飢えている。

追記

  • あと、むやみに通りすがらない
  • すべての人から賞賛されることはないことを理解する。10人に好いてもらえたら十分じゃない。

Rails 2.3RC1で”Restful Authentication with all the bells and whistles”をやってみる

本文

Restful Authentication with all the bells and whistlesにしたがうと、ザリガニが見ていた...。:railsforumのrestful_authenticationは素晴らしい!それを見てRESTfulの理解も深まるで紹介されているような機能ができるらしい。

Restful Authentication with all the bells and whistles (new 9/05/08)#246がスタートみたいなのでここからスタートしてみる。

% rails myproject -d mysql
% cd myproject
% ruby script/plugin install http://svn.techno-weenie.net/projects/plugins/restful_authentication/

restful_authenticationを使ってセッション管理を作成。

% ruby script/generate scaffold Page title:string body:text
% ruby script/generate authenticated user sessions --include-activation

config/initializersにmail.rbというファイルを作成。例が載っているのでそれいしたがって作成してみる。以下を変更。

# Email settings
ActionMailer::Base.delivery_method = :smtp
 ActionMailer::Base.smtp_settings = {
 :address => "mail.yourapplication.com",
 :port => 25,
 :domain => "yourapplication.com",
  :authentication => :login,
  :user_name => "mail@yourapplication.com",
  :password => "yourapplicationpassword"  
 }

次に、config/environment.rbの"Rails::Initializer.run do |config|"の後ろの行に"config.active_record.observers = :user_observer"を付け加える。これによって登録やアクティベーションが終わった後にメールが利用者に送られるようになるらしい。

次にapp/model/user_mailer.rbを修正する。パスワードの再発行を付け加えるみたい。

% diff user_mailer.rb.org user_mailer.rb
5,7c5,7
<   
<     @body[:url]  = "http://YOURSITE/activate/#{user.activation_code}"
<   
---
> 
>     @body[:url]  = "http://localhost:3000/activate/#{user.activation_code}"
> 
9c9
<   
---
> 
13c13
<     @body[:url]  = "http://YOURSITE/"
---
>     @body[:url]  = "http://localhost:3000/"
15c15,26
<   
---
> 
>   def forget_password(user)
>     setup_email(user)
>     @subject    += 'You have requested to change your password'
>     @body[:url]  = "http://localhost:3000/reset_password/#{user.password_reset_code}"
>   end
> 
>   def reset_password(user)
>     setup_email(user)
>     @subject    += 'Your password has been reset'
>   end
> 
19,20c30,31
<       @from        = "ADMINEMAIL"
<       @subject     = "[YOURSITE] "
---
>       @from        = "hogehoge@jp"
>       @subject     = "YourApplication - "

続いて、app/model/user_observer.rbを編集。user_mailer.rbの変更に対応。

% diff user_observer.rb.org user_observer.rb
7c7
<   
---
> 
9c9,10
<   
---
>     UserMailer.deliver_forgot_password(user) if user.recently_forgot_password?
>     UserMailer.deliver_reset_password(user) if user.recently_reset_password?

続いて役割と実行権限を付け加える。

% ruby script/generate scaffold Role rolename:string
% ruby script/generate model Permission

db/migrateにあるXXX_create_permissions.rbを編集。adminを用意する。

diff 20090209105435_create_permissions.rb.org 20090209105435_create_permissions.rb
4c4
< 
---
>       t.integer :role_id, :user_id, :null => false
6a7,21
>     #Make sure the role migration file was generated first
>     Role.create(:rolename => 'administrator')
>     #Then, add default admin user
>     #Be sure change the password later or in this migration file
>     user = User.new
>     user.login = "admin"
>     user.email = "info@yourapplication.com"
>     user.password = "admin"
>     user.save(false)
>     user.send(:activate!)
>     role = Role.find_by_rolename('administrator')
>     permission = Permission.new
>     permission.role = role
>     permission.user = user
>     permission.save(false)
10a26,27
>     Role.find_by_rolename('administrator').destroy
>     User.find_by_login('admin').destroy

XXX_create_users.rbを編集する。

% diff 20090209102704_create_users.rb.org 20090209102704_create_users.rb
14c14,15
<       
---
>       t.column :password_reset_code, :string, :limit => 40
>       t.column :enabled, :boolean, :default => true

app/modelのファイルを修正し、モデル間の依存関係を定義する。まずは、role.rb

% diff role.rb.org role.rb
1a2,3
>   has_many :permissions
>   has_many :users, :through => :permissions

次、permission.rb。この微妙な単数と複数形の違いは難しい。

% diff permission.rb.org  permission.rb
1a2,3
>   belongs_to :user
>   belongs_to :role

続く。

Debian GNU/Linux LennyへのRails 2.3RC1導入メモ

いっつも忘れちゃうのでいつものとおりメモ。Ruby Study Go:Ruby on Rails 2.3.0 RC1をインストールするにしたがいインストール。 環境はDebian GNU/Linux Lenny。

最初に依存性に泣かないためにDebainのパッケージを最新に。

% sudo apttitude update
% sudo aptitude safe-upgrade

まずは、gemのアップデート。バージョン確認をする。私の環境だとgemはaptでいれたのでgem1.8としてインストールされている。

% gem1.8 -v
1.2.0
% sudo update-gem
1.3.1

次にRails2.3のインストール。

%sudo gem1.8 install rails --source http://gems.rubyonrails.org
ERROR:  Error installing rails:
	actionpack requires rack (>= 0.9.0, runtime)

探していれる。

% aptitude search rack | grep ruby
p   librack-ruby                    - A modular Ruby webserver interface        
p   librack-ruby1.8                 - A modular Ruby webserver interface   
% sudo aptitude install librack-ruby

でも、失敗。

%sudo gem1.8 install rails --source http://gems.rubyonrails.org
ERROR:  Error installing rails:
	actionpack requires rack (>= 0.9.0, runtime)

gemでいれる。

% sudo gem1.8 install rack
% sudo gem1.8 install rails --source http://gems.rubyonrails.org
% rails -v
Rails 2.3.0

実際に動くかどうかをチェック。

% mkdir Rails2.3
% cd Rails2.3
% rails demo
% cd demo
% ruby script/server

ブラウザでhttp://localhost:3000にアクセスしてみる。ちゃんと表示されて入れば動いている。