Hatena::ブログ(Diary)

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

2013-05-19

[]何かを達成した充実感によって人は生きていける

昨晩からの深夜作業により、ついに 14 連勤が達成された!!!!死だ!!!!!!!

2013-05-18

[]自転車を購入しました

自転車かいました。

ロードバイクほしいほしいって思ってたんだけど、自転車屋さんに歩いて行くのダルいし、通販だとロードバイクけっこう納期かかるところが多くて、クロスバイクにしました。クロスバイク、納期 1 週間とかで届いて手軽でした。この自転車を使い、疾風のようなスピードで東京のビルの谷間を駆け抜け、襲い来る労働からの逃走を画策する次第です。


自転車、通販で買うと 90 % 完成状態で届きますとか意味不明なかんじだったんですけど、届いたのみたらマジで 90 % 完成状態で届きました。

どういう感じかというと、ハンドルが付いてない、前輪がついてない、前輪のブレーキがついてない、サドルが付いてない、ペダルが付いてない、みたいな状態です。それぞれパーツとして組み上がったものを梱包してもらえるんだけど、そこからは自分で組み立てないといけない。

ぼくの家 4 階にあって、4 階に届けてもらったんですけど、わざわざ外で組み立てるために 1 階まで降りるのスゴいダルかったから、絨毯の上で自転車を組み立てるみたいな残虐なことをしました。おかげで絨毯がおかしなかんじになりまして、大変もうしわけなくおもっております。また、最終的に完成したものを 1 階に持っていくより、小さなパーツごとに 1 階に運んだ方が楽だったのではないかとおもいます。階段にガシャン、ガシャンみたいなかんじでぶつかりまくって、最新鋭ノイズジェネレータみたいなかんじになっておりました。大変反省しております。

組立の方ですが、ハンドルの組立、だいたいこういう突起のところにハンドルとりつけてネジ締めするみたいなかんじ。

f:id:kiririmode:20130519191842p:image

(http://item.rakuten.co.jp/artcycle/c/0000000335/#handle より)

この突起、本当は進行方向に向けとく必要あるんだけど、逆方向にも取り付けることができて、そういうことすると曲がれない自転車を作成することができてシブいかんじになります。例えば左方向への 90 度ターンをキメようとすると、左側に向いた前輪と自分の足がぶつかって転倒するみたいなかんじ。未来っぽいかんじです。

最初逆方向に取り付けてしまってたことに気付いてなくて、ほほぅロードバイクはそういう乗り物なのか、乗車する人間のスキルが要求されるわけだなフンフンみたいなことを思っていて、後から振り返るとぼくはとても素直なんだなとおもった次第です。よろしくおねがいします。

2013-05-17

[]力を抜けというアドバイス

力を抜けみたいなアドバイス、最近になってよくもらうんだけど、力の抜き方がわからないからどうしようもないかんじになってる。

頑張ることが正しい、手を抜かないことが正しい、そうやって教えられてきたしそうやって今まで生きてきたから、手を抜くみたいなのよくわからない感が出てきてる。敢えて手を抜くとか、敢えてがんばらないとか、そうやって幸せになる人間いない気がする。クオリティはさがる。罪悪感は溜まる。がんばらないことで、なんであのとき頑張らなかったんだろうとか絶対思う。自分で自分を責めるかんじになる。不健康な気がする。

自分で自分を責めるよりか、がんばった自分に対してがんばったなって褒めてあげたいかんじある。

でもアレです、がんばりまくって自分を追い詰めてる感もなくはない。たぶん、そういうところあるんだとおもう。あるから何度も力を抜けみたいなの言われるんだとおもう。だからってどうすればいいのかっていう感じ。手を抜け、力を抜けみたいなの、本当に必要なんだったら義務教育で教えるべきだとおもう。道徳あたりで教えるべきだとおもう。道徳だめなんだったら保健とかで教えるべきだとおもう。

2013-05-12

[]今日の一日

主に労働を行っておりました。

2013-05-11

[]今日の一日

主に労働を行っておりました。

2013-05-10

[]徹夜して仕事したのでテンションだださがりだった

かなしみがつのった。

よくない。ほんとうによくない。

2013-05-09

[]人を動かす、マネジメント

人を動かす 新装版

人を動かす 新装版

人を動かす、名著名著って評判高くて、確かに良いこと言ってる感あるんだけど、あんまし心に響かなかった。

人に重要感を持たせるみたいな話で一貫してて、それはそれで、まぁそうですねという感じだったんだけど、なんか自分の本心を隠してそういう対人関係築いても、つらそうなかんじがした。一応フォローしとくと、カーネギーは「嘘をつけ」って言ってるわけじゃなくて、本心からそうしろっていう話をしてる。でも、やっぱし人間だから、そういうの完璧にはできないとおもう。

完璧にできないからこそ努力することが尊いんだって解釈もあるけど、それだったら結局ずっとウソをつく羽目になって、呵責とかいろいろ出てくるかんじがする。ずっと呵責に耐えながら、努力しつづけろって話なら、何のモチベーションも湧かない。読んでて終始、それでいいのかっていう感じだった。

マネジメント[エッセンシャル版] - 基本と原則

マネジメント[エッセンシャル版] - 基本と原則

一方、マネジメントの中で、ドラッガーがいいこと言ってた。

これにたいして Y 理論と名づけた見方は、人は欲求を持ち、仕事を通じて自己実現と責任を欲するとする。

(略)

産業心理学は、そのほとんどが Y 理論への忠誠を称する。自己実現、創造性、人格をいう。だが、その中身は心理操作による支配である。

(略)

しかしいかに進化したといっても、これが支配であることには変わりない。そのような支配は、進化していると否とにかかわらず、心理学の濫用である。

心理的支配が有効たりえないのは、200 年前の啓蒙主義が政治的に有効たりえなかったのと同じである。その原因も、同じである。ともに支配する側に万能の天才を必要とするからである。

(略)

仕事のうえの人間関係は、尊敬に基礎を置かなければならない。これに対し心理的支配は、根本において人をばかにしている。伝統的な X 理論以上に人をばかにする。心理的支配は、人を怠惰で仕事を嫌う存在とは仮定しないが、マネジメントだけが健康で、他の者はすべて病気であると仮定する。(略)まさに傲慢で、ばかげた仮定である。

カーネギーの言う態度を、真摯に心からそう思える人間になれるなら、それはすごく美しいとはおもう。みんなが相手に重要性をもたせるように動いて、みんなが自分は重要なんだって意識して、それでみんなでハッピーになりましょう、みたいなの、ずいぶん美しいけど、やっぱりこわさがある。不完全な人間に完全性を求めている気がして、宗教的なかんじがする。理想世界だけど、生きやすくなさそう。白河の 清きに魚も 住みかねて もとのにごりの 田沼恋しき、みたいなかんじがした。

いかに愛想がよく、助けになり、人づきあいがよかろうと、まかにいかに有能であって聡明であろうと危険である。そのような者はマネジャーとしても、紳士としても失格である。

(略)

しかし、学ぶことのできない資質、後天的に獲得することのできない資質、始めから身につけていけなければならない資質が一つだけある。才能ではない。真摯さである。

2013-05-08

[]tortoiseSVN の diff で空白の差分を無視したい

ソースレビューする際、ベースの revision との差分チェックをすることになったりしますが、コマンドラインの svn とか、あるいは Eclipse を立ち上げるのとかがメンドくて、tortoiseSVN でサラっと確認しようということが多々あります。

でそういうとき、空白文字系の差分が大量にあったりしてウガーってなります。おまえ何処を変更したんだよ的な。空白っぽい差分の中にコードの変更分も紛れ込んでるんじゃね的な。

svn とか Eclipse とかで diff をとる場合は空白の差異は無視できるんですが、tortoiseSVN は無視できないものとばかり思い込んでてこれまでの人生を過ごしてきたのですが、しかし、まぁやっぱり、空白の差分を無視する設定項目ちゃんとあったんですね、はい。当然か。今日知りました。探す努力してなくてすみませんでした。まことに申し訳ありませんでした。


で、その設定方法なんですが、

大前提として、tortoiseSVN での差分比較用プログラムとして TortoiseMerge を使うものとします。初期設定ですね。TortoiseMerge の実体は、tortoiseSVN のインストールディレクトリの bin フォルダにあります。

でまぁ、どんな方法でもいい、tortoiseMerge を立ち上げたら、メニューバーから View → Settings でボックスが表示されます。

f:id:kiririmode:20130508023340p:image

この General タブの下部のラジオボタンに "Ignore all whitespaces" というのがあるので、これ選んでおけば良さげ。タブも含めて、空白文字の差分を無視してくれます。


この歳になるまで気付かなかった。、。。人生を無駄にした。。。

2013-05-07

[]Vagrant + Sahara メモ

Vagrant とは

もはやおなじみかもしれませんが、vagrant はコマンドラインから仮想マシンを作成したり破棄したり、プラグインと連携させることで特定時点の仮想マシンの状態にロールバックさせたりすることができるツールです。

公式ページはこちらですが、まぁなんというか、vagrant が何かがよくわからないですね。

Vagrant provides easy to configure, reproducible, and portable work environments built on top of industry-standard technology and controlled by a single consistent workflow to help maximize the productivity and flexibility of you and your team.

Vagrant Documentation

仮想マシンの構築は従来、OS をダウンロードして、VM に OS をインストールして、一々構築して…という作業で数時間かかっていましたが、vagrant を使うと、マジメに数分で終わります。

インストール

最初は gem で vagrant 入れてたんですがなんかそれバージョン 1.0 らしくて、今の vagrant は 1.1 *1 です。1.1 は gem ではなく、pkg からインストールするので、以下から最新版をダウンロード+インストールしましょう。

仮想マシンを立ち上げる

vagrant がインストールされたら、次は box ファイルのダウンロードです。

box ファイルというと新出の単語ですが、仮想マシンの素といいますか、仮想マシンのスケルトンとなるファイルです。

Boxes are the skeleton from which Vagrant machines are constructed.

Vagrant Documentation

ぼくはこちらから CentOS をダウンロードしました。後述しますが、vagrant 自体にダウンロードさせることもできますが、何回か失敗しており、何回もダウンロードする羽目になったのでブラウザでダウンロードしました。余談ですが、ファイルサイズは 500 MB くらいなのに、ダウンロード速度がかなり遅いです。


その後ですが、

### box ファイルを "centos" という名前で登録
$ vagrant box add centos ~/Downloads/CentOS-6.4-x86_64-v20130309.box

### 仮想マシンの初期化 -> カレントディレクトリに Vagrantfile というファイルができる。
### これがこの仮想マシンの設定ファイル
$ vagrant init

### 仮想マシンの起動!!
$ vagrant up

これで仮想マシンが立ち上がります。簡単ですね。実際に ssh ログインも当然可能です。vagrant ssh でログインしていますが、通常の ssh コマンドでもログイン可能です。

$ vagrant ssh
Last login: Mon May  6 11:22:50 2013 from 10.0.2.2
Welcome to your Vagrant-built virtual machine.
$ cat /etc/redhat-release 
CentOS release 6.4 (Final)

仮想マシンの commit/rollback

冒頭に述べたロールバックやコミットといったものは、Sahara と呼ばれるプラグインで実現します。

Sahara の公式はこちらですが、開発が止まっており vagrant 1.1 には対応していません。fork された Sahara で 1.1 に対応していますので、こちらをインストールしましょう。

$ git clone https://github.com/ryuzee/sahara
$ bundle install
$ bundle exec rake build
$ vagrant plugin install pkg/sahara-0.0.14.gem

これにより、vagrant で sandbox コマンドが使用できるようになります。

sandbox コマンドで実際に rollback を使用した例が次になります。ここでは、rollback.txt というファイルを仮想マシン上に追加した後、rollback させています。rollback した後、当然 rollback.txt はなくなっています。

### サンドボックスモードに入る
$ vagrant sandbox on
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%

### 仮想マシンにログイン
$ vagrant ssh
Last login: Mon May  6 11:53:05 2013 from 10.0.2.2
Welcome to your Vagrant-built virtual machine.

### 仮想マシン内で rollback.txt つくる
$ touch rollback.txt
$ ls -l rollback.txt
-rw-rw-r-- 1 vagrant vagrant 0  5月  6 12:16 2013 rollback.txt
$ logout

### ロールバックや!
$ vagrant sandbox rollback
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%

### 仮想マシン上のファイルを確認
$ vagrant ssh
$ ls -l
合計 0
$ logout

### サンドボックスモードから出る
$ vagrant sandbox off

*1:公式ページのパスが /v2/ で切られているので、もしかしたら ver.2 の扱いかもしれませんが

2013-05-06

[]simple-hatena-mode で HTML テンプレートが自動挿入される

ストレス発散のため暗黙裏に iMac 購入しメインマシンとなっていたのですが、Emacs をセットアップして simple-hatena-mode でエントリを書こうとすると、なぜか HTML のテンプレートが自動挿入されて逐一消去を余儀なくされるという憂き目にあっていました。

調べるのメンドいのでセットアップ後ずっと放置していたのですが、このまま墓場まで持っていこうという気概はなく、ゴールデンウィークなので simple-hatena-mode.el のソースを読んでいた結果、フラグで制御できることがわかってこのエントリに至ります。

(setq html-helper-build-new-buffer-flag nil)

ところで html-helper-build-new-buffer-flag を describe-variables すると

*If not nil, then insert `html-helper-new-buffer-strings' for new buffers.

という記述があり、新規にバッファを作ったときに変数 html-helper-new-buffer-strings が自動挿入されることがわかります。

ついでに html-helper-new-buffer-strings はどういう風に定義されてるんだろうとか思ってソース見ていったけど諸々マクロ使っててゴールデンウィークに苦しみを募らせそうなのでやめました。