Hatena::ブログ(Diary)

理系学生日記 RSSフィード Twitter

2012-02-07

[]キャリアプランについての人事面談

先日、人事からキャリアプランに関するアンケートが来ていたので、面談希望ですというのを強く打ち出して回答さしあげた結果、本日がその面談日となりました。詳細は敢えて押し隠しますが、今の自分が他の会社に移ったとして、そこで戦力たり得るかという不安は常に、一時も離れることなく付き纏っており、その不安感が今回の面談希望のトリガです。

現在の職務の延長線上に垣間見えるのはプロジェクトマネージャとしてのキャリアパスですし、周りからもそれを期待されている感がしたりするのですが、自分にマネジメント志向はまったく無い、むしろ苦痛ですらあることなどは割と真剣に伝えられたかと思います。

最近の業務としては、プログラムに関わる部分はめっきり減って、強いて言っても後輩やパートナーさんのソースレビューに付き合ったりとか、SQL のチューニングをしたりとか改修設計をしたりとかそういう程度、お客さんとのやりとりやドキュメント作成、レビューなんてのがメイン業務になっていたりします。ぼく自身、リーディングを含めたそれらを満足にできているとは思いませんし、それができていない状態で選り好みするのもいかがなものかとも感じますが、年を経るごとに志向と実務の乖離は激しくなっているのは事実としてあり、そういう思いを切々と説明する 30 分でした。

マネジメント志向がないという話はわりとびっくりされた感があったので、伝えた意味はあっただろうと考えています。ぼくももうすぐアラサーですから、舵を切るなら今かなと考えているという話もしておきました。

明日から何かが変わるとか、来月から何かが変わるとか、そういう過度の期待はしていませんが、変えようというアクションだけはしておかないと、どう倒れたところで後悔してしまいそうですし。

2012-02-06

[]Python どうやってインストールするのがええんや…

Vimperator のソースをチェックアウトしようとおもったら Git じゃなくて Mercurial で、よーしパパおもいきって hg clone しちゃうぞーって思ったら Mercurial インストールしてなくて、よーしパパおもいきって brew install Mercurial しちゃうぞーって打ち込んだら pip install Mercurial しろやって怒られたけどそもそも pip インストールしてないしシステムの Python 環境をいじるの嫌だったから pythonbrew で Python 3.2 インストールしようとしたらなんかテストでコケるしじゃぁ Python 2.7 インストールするわって思ったら Python 2.7 もテストにコケるし、もう諦めて pythonbrew install --force 2.7 やってとりあえず Python をホームディレクトリにインストールしてようやく pip install Mercurial して Vimperator のソースを hg clone したら MBA のバッテリーがなくなったのでもう生きるのが嫌です。

2012-02-05

[]readitlater.js でエラーが発生

Vimperator から Read It Later を使おうという readitlater.js ですが、:ril get でエラーがでる。具体的には ListCache に update というメソッドが定義されていないという例外が出ている模様です。

ListCache は、内部的に Read It Later のエントリのリストをキャッシュするオブジェクトで、全リストと未読リストを保持しているのですが、保持している側のリストには update メソッドが使えます。設計としては未読リストしか管理しないように見えるので、おもいきって以下のような変更をしました。

index 3a17329..680a394 100644
--- a/readitlater.js
+++ b/readitlater.js
@@ -98,7 +98,7 @@ let PLUGIN_INFO =
 
                        new Command(["get","g"], "Retrieve a user's reading list",
                                function (args) {
-          ListCache.update(true, function(data) echo(countObjectValues(data.list) + " found."));
+          ListCache.unread.update(true, function(data) echo(countObjectValues(data.list) + " found."));
                                },{
                                options : [
                                        //[["num"],commands.OPTION_INT],

これでいいのかな…。

2012-02-03

[]弊社セミナーへの参加

就職活動シーズンではございますし、セミナーに参加して自分の業務について就活生に話をしてくれというご相談を頂いたので、お話などさせて頂きました。本音ベースで構わないというのが前提としてあったので、

などという計画を Twitter でツイートなどしておりましたが、まぁこれはぶっちゃけ言うとギャグみたいなものです。

仕事にはもちろんやり甲斐もありますし、責任もありますし、ぼくがリードする方々をスケジュールによって阿鼻叫喚の地獄絵図に突き落すこともあるわけです。深夜残業もありますし、昼飯食えないときもありますし、エンドユーザの喜ぶ声もあるわけです。良いところも悪いところもあって、酸いも甘いも、アメとムチも、表と裏、本音と建前もあって、世の中というのはそういう二面性を持って成り立っているわけですから、できるだけその両面を伝えてあげたいなっておもってがんばりました。

  • だいたい 23 ~ 24 時くらいに帰ってるよ。
  • いまが一番忙しい時期かな(フォロー)。
  • いつもこんなに忙しいわけじゃないよ(フォロー)。

というわけで、だいたいツイート当初の計画は達成できたとおもいます。

2012-02-02

[]電気双極子

wikipedia:電気双極子を見ると、

次の式で示される、p を電気双極子モーメント(或いは単に双極子モーメント)と言う。

¥mathbf{p} = q ¥mathbf{d}

ここで、 d は負電荷 -q から正電荷 q へ向かうベクトルである。

原点に存在する電気双極子 p が距離 r の点に作る静電ポテンシャルφ(r)は、

¥phi(r) = - ¥frac{1}{4 ¥pi ¥epsilon_0} ¥mathbf{p} ¥cdot ¥nabla ¥left({1 ¥over r} ¥right) = -{1 ¥over {4 ¥pi ¥epsilon_0} } { ¥mathbf{p} ¥cdot ¥mathbf{r} ¥over {r^3} }

となる。ここでε0は真空の誘電率である。

この式は原点近傍に集中した任意の電荷分布の作る静電ポテンシャルの距離 r の点における第一近似の式となっている。

という記述があります。今日はこれを導出してみたいと思います。

まず、電荷を結ぶ z 軸を考え、その中点に原点を取ることにします。そうすると、2 つの電荷のポテンシャルは

¥phi(x,y,z)=¥frac{1}{4¥pi¥epsilon_0}¥left[¥frac{q}{¥sqrt{(z-d/2)^2+x^2+y^2}}+¥frac{-q}{¥sqrt{(z+d/2)^2+x^2+y^2}}¥right]

と表せます。

dについて第一近似を行うと、¥left(z-¥frac{d}{2}¥right)^2¥approx z^2-zdとなります。また、今は 3 次元を考えているので、r^2=x^2+y^2+z^2。これらを合わせると、¥left(z-¥frac{d}{2}¥right)^2+y^2+z^2¥approx r^2-zd=r^2¥left(1-¥frac{zd}{r^2}¥right)となります。

結果として、¥frac{1}{¥sqrt{(z¥pm (d/2))^2+x^2+y^2}}¥approx ¥frac{1}{¥sqrt{r^2(1¥pm(zd/r^2))}}¥approx ¥frac{1}{r}¥left(1¥pm¥frac{zd}{r^2}¥right)^{-¥frac{1}{2}} (複合同順)。

これをさらに近似してやると、¥frac{1}{r}¥left(1¥pm ¥frac{1}{2}¥frac{zd}{r^2}¥right)となります。

結果として、ポテンシャルは¥phi(x,y,z)=¥frac{1}{4¥pi¥epsilon_0}¥frac{z}{r^3}qdとなり、双極子モーメントp=qdを使うと、¥phi(x,y,z)=¥frac{1}{4¥pi¥epsilon_0}¥frac{z}{r^3}pとなります。

ここで、点(x,y,z)と z 軸との為す各を¥thetaとすると、¥mathrm{cos}¥theta = ¥frac{z}{r}ですから、¥phi(x,y,z)=¥frac{1}{4¥pi¥epsilon_0}¥frac{p¥mathrm{cos}¥theta}{r^2}p¥mathrm{cos}¥theta=¥frac{¥mathbf{p}¥cdot¥mathbf{r}}{r}なので、これを使えば¥phi(x,y,z)=¥frac{1}{4¥pi¥epsilon_0}¥frac{¥mathbf{p}¥cdot¥mathbf{r}}{r^3}=-¥frac{1}{4¥pi¥epsilon_0}¥mathbf{p}¥cdot¥nabla¥left(¥frac{1}{r}¥right)

電気双極子を議論することのよろこび

電気双極子は電磁気学で習ったけど何が嬉しいのかよくわからないという話もありますが、電気双極子の考え方は、電気的には中性だけれど、わずかに分極しているようなミクロな物体(例えば水分子)の考えを単純化します。

例えば、一定の大きさがあり電気的には中性ですが、その内部にたくさんの正電荷負電荷q_iがあるような物質を考えましょう。各電荷q_iへの原点からベクトルを¥mathbf{d_i}とし、原点からスッゴい遠い点 P を考えて電荷q_iからPへのベクトルを¥mathbf{r_i}とすると、全電荷が点Pに作るポテンシャルは¥phi=¥frac{1}{4¥pi¥epsilon_0}¥sum_i ¥frac{q_i}{r_i}と表されますね。

電荷q_iと点Pとの距離r_iは、ほぼR-¥mathbf{R}¥cdot ¥mathbf{d_i}ですから、逆に¥frac{1}{r_i}¥approx ¥frac{1}{R}¥left(1+¥frac{¥mathbf{d_i}¥cdot¥mathbf{R}}{R^2}¥right)

したがって、¥phi¥approx ¥frac{1}{4¥pi¥epsilon_0}¥left(¥frac{¥sum_i q_i}{R}+¥sum_i q_i ¥frac{¥mathbf{d_i}¥cdot ¥mathbf{R}}{R^3}¥right)となり、第一項は全電荷の和として0(電気的に中性)なので、結局このときのポテンシャルは、¥phi¥approx ¥frac{1}{4¥pi¥epsilon_0}¥frac{¥mathbf{d_i}¥cdot ¥mathbf{R}}{R^3}。結果として、双極子モーメント¥mathbf{p}=¥sum_i q_i¥mathbf{d_i}の電気双極子と見做すことができます。

2012-02-01

[]就活面談 2012

今年は大学まで帰ってリクルータ活動する時間がなかなか取れなかったのですが、それだったら就活生との面談に協力してくださいという話になり、今日は今年度はじめての面談を担当してまいりました。

何日か前から、学生さんとは電話とメールでコンタクトを取っていたのですが、やっぱし学生さんからみるとぼくは社会人ですしアラサーですし人間のクズみたいな感じですから、学生さんはとても緊張のご様子。

こちらとしても、緊張を取ってほしいのはヤマヤマなのですが、対面していないときから「(笑)」なんてのをメールに記載とかしてしまい「社会人のクズ…ッ!! 圧倒的クズ…ッ!!!!!」とかいう印象を万が一与えてしまうと弊社的にもマイナスですから、一貫して礼節を保ち今日に至りました。

就活に挑むにあたり、学生さんは何を求めているんだろうなというのが、前日に考えたことでした。

企業というのは多数の人で構成されていますし、その多数の中の人の一人をサンプリングしたところで、全体が見えてくるかというとそういうことはまずありません。同じ大学であっても、文学部の人を掴まえて工学部の雰囲気を理解できるかというと、その望みは決して大きくありませんし、マンションの 101 号室に住んでいる人が良い人だからといって、そのマンションに住んでいる人がみな良い人とは限りません。むしろこのような木を見て森を見ないのは、ある種の危険性すら存在します。

一方で学生さんから見た場合、会社の中というのはほぼブラックボックスですし、それを覗く穴が空いていれば、その隙間から見える部分だけでも見て数多ある会社を取捨選択する判断材料としたいという気持ちもよくわかります。どんなに足掻いたって全てを知ることができないのだから、自分ができるだけの知る努力をした上で、そのなかで手に入れた知識を判断材料とすれば後悔だって少ないでしょう。

そういうなかで、今日お会いする学生さんにぼくがしてあげられることというのはなんだろうなー、それはやっぱり、ぼくが知っている限りの情報を正直にお話することくらいだなー、あとは学生さんががんばって判断してくれるんじゃいかなー、というところに落ち着いて会ってきました。ここでおわり。

2012-01-29

[]書き初め大会に行きました

今日はともだちの家で書き初め大会ありましたけど、友だちの家に行こうとしたらやっぱし迷子になりました。

大塚駅おりて左手にあるスタバの近く通ってーみたいなスゴい親切なメール頂いたし、ほぅほぅこういう情報があれば絶対に迷わないしマジ余裕だし、これで迷う方が難易度高いわー、スゴい難易度高いわーとか思ってたけど全部まちがってた。認める。ごめん。ごめんなさい。素直に認める。ぼくがわるかったです。

大塚駅降りてっていう前提だったのに赤羽駅で降りてた。大塚にある友だちの家を、赤羽で探してた。もうなにがなんだかわからない。ぼくが分からないんだから、もう誰も分からないと思う。人類じゃ解けないとおもう。しょうがないと思う。

でもなんで赤羽で降りたんだろ。路線違うし。わざわざ違う路線に乗ってちがう駅に降りたし。でもねでもね、赤羽にはスタバあるのよ。駅の左手にあるの。ほら友だちからのメールでスタバの通りをーとか書いてもらってたから。もうしょうがない感じするよな。あそこにスタバ立てたら誰だって迷うと思う。うん。あれがドトールだったら迷わなかったと思う。あそこにスタバがあるのが悪い感じもしてきた。でもフラペチーノは好きです。大好き。フラペチーノ好き。ドトールでもフラペチーノ置けばいいとおもう。

みんなあんまし知らないかもしれないけど、大塚にある家を赤羽で探しても見つかりません。これは仕方ないことです。大塚にある家をさがすにはどうすればいいか。大塚にある家をさがすには大塚に行かないとダメなんですね。だからぼくは大塚に行きました。大塚ね。もう道がわからなくなったから、タクシーに乗った。タクシーな。タクシーのおじさんはエラいです。大塚駅にいってくださいって頼んだら、マジで大塚駅に行ってくれた。ぼくは大塚駅で降りてくれって言われてたのに赤羽に降りたけど、タクシーのおじさんは余裕で大塚駅に行ってくれます。タクシーのおじさんはエラい。ホントスゴいと思う。みんなタクシーのおじさんちゃんと拝んだほうがいいとおもう。

2012-01-28

[]Vimperator の設定変更

気が向いたので Vimperatorのマニュアルを読んでいたら、諸々が変更されていること、および、このマニュアル基本的に読んでないことに気付きました。

" hint をアルファベットで表示
set hintchars=abcdefghijklmnopqrstuvwxyz

なんてのは、以前は特定のプラグイン(?)を読み込まないとできなかったのですが、いまは設定を 1 行追加するだけでできるようになるんですね…。

画面を広く使いたい!

" スクロールバーを表示させない
set noscrollbars

" タブバー以外何も表示させない
set gui=none,tabs

タブ番号数えるのがメンドくさい!

set tabnumbers でできるって書いてあるんだけど、これ使うと全タブの番号が 1 になってしまうので全く意味がわからない。

vimperator3 で TabNumber が正常に表示されない問題の対策 - memo に書いてある方法使ったら確かに直ったので、深く考えずにこの方法使わせてもらっています。

" タブ番号をタブ上に表示
set tabnumbers
style -name fix-tabnumbers chrome://* #TabsToolbar { counter-reset: tabnumber !important; }

片手だけでブラウジングしたい!

Vimperator はデフォルトで j/k キーで上下移動ができるのですが、ぼくはタブ移動を <C-n>/<C-p> で行っていました。しかし Ctrl は左手を使う。マジめんどい。

Twitter 上から h/l で移動させろやバカか、みたいな天啓を受けたので、そのように変更。

" Normal mode のタブ移動を hl で
nmap l gt
nmap h gT

コマンドラインモードに入るのに Shift キー押したくない!

コマンドラインモード、デフォルトで : (コロン)キーにバインドされているんですが、英字キーボードだと Shift キーが必要になる。これメンドくさいので、: と ; を交換した。

" コマンド入力を ; で
nnonremap ; :
nnonremap : ;

2012-01-25

[]¥mathbf{E}=-¥nabla ¥phi

クーロンの法則からはじめましょう。

クーロンの法則は、2 電荷間に働く力を表したもので、2 電荷の間には電荷の積に比例し、距離の二乗に逆比例する力が働くというものですね。

¥mathbf{F}=¥frac{1}{4¥pi¥epsilon_0}¥frac{q_1q_2}{r_{12}^2}¥mathbf{e_{12}}

ここで、q_1,q_2はそれぞれの電荷r_{12}電荷1、電荷2間の距離、¥mathbf{e_{12}}電荷2から電荷1に向かう単位ベクトルです。

電荷1以外の全ての電荷によって、電荷1に働く単位電荷あたりの力を電場とかいいます。上の例だと¥frac{¥mathbf{F}}{q_2}とシンプルですが、もっと電荷が多ければ、その電場は¥mathbf{E}=¥sum_j ¥frac{1}{4¥pi¥epsilon_0}¥frac{q_j}{r_{ij}^2}¥mathbf{e_{1j}}なんてかんじで、全ての電荷による電場の総和になります。いわゆる重ね合わせの定理ってヤツですね。

静電ポテンシャル

さて、ここで静電位(静電ポテンシャル)の概念を取り入れましょう。

まず、ある電荷をある道筋に沿って運ぶとき、電気力に対してする仕事は、W=-¥int_a^b¥mathbf{E}¥cdot d¥mathbf{s}と表せます。ここでは、点 a から点 b に移動させるこおを考えていて、d¥mathbf{s}は、その道筋に沿う微分変位ベクトルです。この仕事というのは、両端の点にしか関係しませんから、W=-¥int_a^b¥mathbf{E}¥cdot d¥mathbf{s}=¥phi(b)-¥phi(a)という、空間の任意の点で決められる¥phiというスカラー場が存在することがわかります。これが静電ポテンシャルで、基準点を無限遠に取るとき¥phi=-¥int_{¥infty}^P¥mathbf{E}¥cdot d¥mathbf{s}となります。

原点にただ 1 つの電荷qがあるときの静電ポテンシャルは¥frac{q}{4¥pi¥epsilon}¥frac{1}{r}ですね。

¥nabla¥phi

いまここで、点(x,y,z)から点(x+dx,y,z)まで単位電荷を動かすときの仕事を考えましょう。

これは簡単で¥Delta W=¥phi(x+dx,y,z)-¥phi(x,y,z)=¥frac{¥partial ¥phi}{¥partial x}dxですね。また、¥Delta W=-¥int¥mathbf{E}¥cdot d¥mathbf{s}=-E_xdxでもありますから、両者を比較してE_x=-¥frac{¥partial ¥phi}{¥partial x}が分かります。y,z軸についても同様に考えると、¥mathbf{E}=-¥nabla ¥phiってことになります。

2012-01-24

[]そろそろまた人事から怒られる季節がくる

今日も出社の打刻をし忘れたので、あとで打刻修正をしなければなりません。

ぼくはちゃーーーんと定時には出社して、ちゃーーーーんと仕事をしていたのに、打刻という作業を忘れたばっかりに打刻修正という面倒な作業が生じ、打刻を忘れたのは今月で 3 回目になったのであと 1 回か 2 回やらかしてしまうと、人事部から「おまえは遅刻だか打刻わすれだか何度もやらかしてるし、なっとらん、いつか殺す」みたいな内容の書物がぼくに宅配されることになります。とてもこわい。ちなみにいつか殺すっていう文言はウソです。クリーンな会社でよかったですね。

先月もなんかそんな書物で怒られたばかりなので、ここでストップをかけないと「社会人としてマジなってないし、いいかげんにしろや、いつか殺す」みたいな書物がぼくに宅配される可能性もあります。時間に厳しく、人に厳しく、自分に厳しく生きていかなければなりませんね。世知辛い世の中ですが、みなさん明日もがんばって生きましょう。