今日学んだこと

読書感想文とか、勉強した内容とか

健康になろうと自転車通勤を始めたら、逆に不健康になった話

結論から先に書くと、横紋筋融解症なる病気になりました

自転車を買ったのです!

f:id:nakazye:20151108230202j:plain

少し前に引っ越したんですが、その理由が「駅前に住んでると、夜中まで酔っ払いがうるせえ!」だったので、できるだけ駅から遠いところに引っ越したんですよ。

で、引っ越したのが都内なのに駅まで4キロくらいかかるという超絶立地な場所。静寂を求めて引っ越したのにお隣のギシアンが毎晩聞こえてくる環境だったのは誤算でしたが(窓閉めれば聞こえないのが救い)。

そんな環境なので自転車が必要となり、毎日使うものなら少しは良いものをと購入したのが写真のクロスバイクです。
予算諸々込みで8万円でと自転車屋で伝え、オススメしてもらったこちらのTREK FX 7.2が我が愛車となりました。

お高いチャリすごい!

僕からしたら相当お高いチャリですが、この業界(?)の中ではエントリーモデル。だけど僕はそんなこと知りません。今まで乗ってきた自転車との違いに驚きました。坂道が楽!漕ぎ出しスムーズ!ペダル止めてもスピード落ちない!

そんな感じで駅まで片道4キロの通勤を楽しんでたんですが、ある日ふと思いました。

オフィスまでもチャリで行けるんじゃね??

そう思ったとある夏の日。Googleマップで調べてみると片道21キロ。「20キロ 自転車 時間」で検索してみると、1時間くらいが目安っぽい。アレ?電車で行くより早いじゃん?

さっそくAmazonで必要なグッズを買い揃え試してみました。

MINOURA(ミノウラ) スマートフォンホルダー [iH-400 STD] スタンダードサイズ 22.2mm/25.4mm/28.6mm

MINOURA(ミノウラ) スマートフォンホルダー [iH-400 STD] スタンダードサイズ 22.2mm/25.4mm/28.6mm

↑今の所落下どころか落としかけたことすらありません。オススメ

骨伝導ヘッドホン耳フリーAS400(AfterShokz)

骨伝導ヘッドホン耳フリーAS400(AfterShokz)

↑上で紹介したスマホホルダーと併用すると、iPhoneの場合若干干渉しますが使えます。
 なれない道走るにあたってスマホナビ見るのに視線を下げるというのを極力減らしたかったので、  耳を一切塞がない骨伝導イヤホン導入してナビ音声拾うのに使いました

↑チャリ用に買ったバッグ。ベルト調整が激しく便利。レビューの評価高いのも納得

↑あとはこのナビアプリを購入しました。

その他、自転車購入時に一緒に買った、チャリ用グローブとズボンの裾巻き込み防止バンド、もちろん帰り道に備えてライトも準備し、いざ出発です。

実際走ってみると

夏のとある日の朝6時。どんな不測の事態があるかわからなかったのと、涼しい時間にチャレンジしたかったのでこんな時間に出発しました。服装はチノパンとポロシャツ。

この時はまだ車道を走るのに慣れておらず、ビクビクしながら走ってたのを思い出す。こんな時間でも意外とチャリで走ってる人はいて、「あ、こんな感じで走れば良いんだ」と参考にしながら道路の端っこ走ってました。

途中、代々木公園の坂道と六本木ヒルズあたりの坂に死にそうになりながらも、また途中道に迷いながらも(乃木坂のトンネルに脇道あると信じたら階段で絶望した記憶が)1時間15分くらいで到着。しかもそこまで疲れてない。

アレ?初心者なのに楽勝だったぞ?

この時油断せず、もうちょっと気を引き締めておくべきでした。

俺氏、チャリ通が日常になる

といってもそれからずっとチャリ通し続けてた訳でもなく、梅雨に苛まされたり、ノートパソコン持ちはこばなきゃならなかったりで(万が一コケて壊したらと考えるとチャリ通は無理)、だいたい週1〜2回くらいで続けてました。

コンスタントに1時間5分くらいで到着してたので、1時間切りたいなぁと割と速度も意識してました。これも後の地獄の原因の一つ。

先月のこと

出張が重なり、1ヶ月くらいあまりコンスタントにチャリ乗れてなかったんですね。で、戻ってきたところ天気良い日が続いたり、気温も涼しくなったしとで今まで以上にチャリ通の頻度を増やした訳です。

週3〜週4くらい乗ってた気がします。調子が良い時に限って後半信号に足止めくらって1時間切ることはありませんでした。代田橋の踏切はマジ許さん

で、先々週くらいから、足のモモにつった様な痛みが突如発生する様になりました。

病院に行ってみた

筋肉痛かなと思いつつ午後休みとって木曜に病院に行ったところ、問診だけで筋肉痛と断定され、ロキソニン貰って終わり。ちなみにロキソニンは、痛みは体からのシグナルだろうから限界まで素直に受け止めよう(特に、膝を伸ばしていれば痛まないというのがあったので)と、処方されましたが飲みませんでした。

そこからが地獄の始まりです。金土日と日を追うごとに痛みの大きさ、痛む頻度が大きくなっていく。

足がつったときのMAXの痛みが15分とか続く。歩いてる時に両足に痛みが来た時は、本気で救急車呼ぼうかと思いました。家まで5メートルの距離だったので思い留まりましたが、30分くらい動けませんでした。一瞬で口の中がカラカラになるというのも、これが初めてな経験な気がします。

で、会社に休む旨伝えて月曜日に再度病院に行き、再度診てもらうことに。血液検査をした結果がこちらです。

f:id:nakazye:20151109000726j:plain

注目してほしいのがCK(CPK)なる値。

クレアチンキナーゼ - Wikipedia

230超えたら異常値とされているところが、35000と桁二つ飛び抜けてます。その他諸々もひどい値。

で、最初にお伝えした通り、横紋筋融解症と診断されました。

横紋筋融解症

横紋筋融解症 - Wikipedia

これの怖いところは、筋肉を酷使したりぶつけたりして壊れましたで終わらず、腎臓に影響を与えるところ。僕の場合は透析一歩手前と言われ、診断後は2日に1度血液検査して透析要不要を判断してる日々です。1週間経った今も続いてます。

数値の異常だけで済んでくれれば良いんですが、前述の通り痛みもハンパないです。まず、足を曲げるとスイッチが入った様につったような痛みが来る。15分くらい続く。

足を曲げることができないので、湯船に浸かることができない。(ホント辛い)

トイレに行くのが恐怖でしかない。(和式だったら入院するしかなかったと思う)

階段を上り下りできない。(特に下りは3段も歩こうものならしばらく動けなくなる)

ベッドで横になってる以外の選択肢はありません。スマホドラクエ4買って6章含めてクリアしましたが楽しめたどころかただただ辛かった。

今は負荷かけなければ曲げるくらいはできるという状態にやっとなってきて、こうしてブログ書いてみたりしてる感じです。

知ってほしいこと(この記事で伝えたいこと)

横紋筋融解症という症状を頭の片隅に置いておいてください

特に自転車に乗る人は、こういう病気(病気というか酷使した結果ですが)があることを知って下さい。

筋肉痛とはちょっと違った痛みがあるぞ?とか、変な痛みが続くな という時は、できれば病院に行ってみて欲しいです。放置してると要透析になる可能性があります。

また、病院によるかもしれませんが、僕の場合は整形外科では判断がつかず、内科の判断により症状が判明しました。「自転車やってて足に痛みがある」だけだと、状況判断で筋肉痛と診断されかねません(というかされました)。そんな時は「いつもと違うんで横紋筋融解症が不安です。血液検査できませんか?」と聞いてみても良いかもしれません。

いきなりスポーツマンにはなれない

敗因の一つに、普段運動しないくせに、「疲れも筋肉痛も無いしイケるやん」と思ってしまったところがあります。

自転車は、(初心者が)普通に乗ってる分には激しく筋肉を使うものでは無いと思ってます。少なくとも僕はそうでした。分かりやすいアラートが上がる様な筋肉の酷使の仕方はしません。

ただし、使ってない筋肉を使えば、当然消耗します。そのことを頭の片隅に置いて、「分かりやすく疲れ出てないけど、蓄積してないか?」と考えながら、徐々に慣れていってもらえればかなと思ってます。

特に、僕の様に初めてまもないのにタイムアタックしてみたり、坂道を全力で登ってみたりなどは注意しましょう。

準備は万全に

先に挙げた準備リスト。必要なものが2つ抜けてます。

  • ヘルメット
  • ドリンク

です。ヘルメットはわかりやすいんですが、今回においてはドリンクが重要です。1時間の距離という事もあり、無水分補給で片道走りきることも多かったんです。

横紋筋融解症の原因の一つに脱水があります。僕の場合、確実に原因の一つだと思ってます。

面倒くさがらずに、できるだけこまめに水分補給してください。じゃないと、僕の様に2週間地獄の痛みに苛まされることになります。

最後に

いろいろ書きましたが、特別気をつけなければならない点は無いんですね。いわゆる常識的な部分だったりします。

その常識的な部分をおろそかにすると、こんなことになる場合もある。

ということで、何事も、無理をせず、無茶をせず、その界隈のルールを遵守して楽しむべきなんだな、ということを身を持って体感した今日この頃でした

料理苦手なら金で解決!ヘルシオ使った簡単料理:ハンバーグ編

前回の更新からまた日があいてしまいました。
言い訳なんですが、引越しすることになりまして諸々忙しく・・・引越し自体は済んだんですが、まだ荷解きが終わってない様な状態です。

ヘルシオ様がやってきた

見出しの通り、引越しにあたってレンジを買い換えました。近日中に新しいモデルが出るとかで、あと数日間だけ最新モデルな機種達がものすごく安いです。

AX-SA100。ヘルシオは総じてでかいんですが、この子は割とコンパクト。もっとコンパクトなやつもあるんですが、タッチパネル付いてなくてダイヤル式なんですよね・・・ということでこれを選択。

f:id:nakazye:20150714221951j:plain

レンジでチンするだけじゃなくて、焼き料理や油を使わない揚げ物とかができる事で有名なヘルシオ様。昨日我が家にやってきたんですが、試しに唐揚げ作ってみたら油使わず普通に美味しい唐揚げができまして、ホント衝撃で。

f:id:nakazye:20150714222216j:plain

油使って料理するわけではなく、ボタン押して待つだけなので、見守ってる必要がない。ホント衝撃でした。

・・・

で、本日の晩御飯だったハンバーグを作ってみたの話につながるんですが、ヘルシオを筆頭にスキルを金で補ってる部分があります。というと聞こえが悪いですが、割と女子達に人気な便利調理アイテムを使って作ってる とも言えます。
調理器具の話って、通じる女の子割と多いんですよね。

料理好きな男はモテるとか聞きますが「俺みじん切りちょー早いよ」とか言っても盛り上がりません。それより「バーミックス買ったんだけど、みじん切りイマイチなんだよねー」とかの話の方が盛り上がります。

今回の主役のヘルシオ、ブレンダーのバーミックス(僕が持ってるのは他社のモドキだけど)、(今回出てこないけど)保温鍋のシャトルシェフ、とかとか、料理スキルあれば不要だけどあると便利系のアイテムって、自分が楽できるだけじゃなく、女の子との会話に使えたりする点でもオススメです。

で、それらのアイテムって、一人暮らしこそ便利なのが多いと思うのですよ。調理時間短縮できたり、放置できる時間が増えたり。
で、自炊だから基本外食よりも健康的&安上がりに済む。

という事で、僕同様に一人暮らし独身男性こそ積極的に導入していただけたらなと思ってたりします。

本題:ハンバーグ作ってみた

f:id:nakazye:20150714225011j:plain

まず、玉ねぎを半分に切って、皮を剥きます。

f:id:nakazye:20150714225102j:plain

続いてニンニクの皮を剥きます

f:id:nakazye:20150714225143j:plain

便利ツール

Panasonic  ハンドブレンダー ブラック MX-S300-K

Panasonic ハンドブレンダー ブラック MX-S300-K

にぶちこみます。

スイッチ入れるとこんな感じに

f:id:nakazye:20150714225251j:plain

これ、素晴らしく良いです。以前はドンキホーテで3000円位で買ったフードプロセッサー使ってたんですが、こっちの方が断然使いやすいし何より仕上がりが良いし早い。これ、10秒も回してないです。で、きれいにみじん切りされてる。これだけで買ってよかったと心から思ってます。
この手のってバーミックスが有名ですが、高いしみじん切りの(ネットでの)評判があまり良くなかったので僕はこっちにしました。
「バーミックスもどき買ったんだけどさー」と女の子に話したら、「ブラウンのやつ?それともティファールのやつ?」とか返されて話弾んだので、モドキだからバカにされるということもないかなと信じてます。

f:id:nakazye:20150714225347j:plain

で、パン粉と卵とひき肉と塩・胡椒とナツメグとをぶちこみます。
なお、こだわる人からすると「パン粉を牛乳に浸せや」とか「玉ねぎに事前に熱入れろ」とか言われてしまうかもしれませんが、良いんです。
男の料理なんてこんなもんです。これでも十分ガストの10倍美味しいハンバークになるんですから。

f:id:nakazye:20150714225630j:plain

そしてまぜまぜモミモミ。これでタネは完成です。ここまで手際良くやれば5分かからないんじゃないでしょうか。事実今日の僕がそうですが、仕事から帰ってきた後でも十分に作る気になるレベルです。

f:id:nakazye:20150714225804j:plain

そして、アルミホイルにタネを丸めたものを入れます。

f:id:nakazye:20150714225911j:plain

メニューにそのものズバリ「ハンバーグ」があるのでこれを選択。

f:id:nakazye:20150714225957j:plain

あとは20分ほど待つだけです!僕はこの間にタバコ買いにコンビニまで出かけた感じでした。

f:id:nakazye:20150714230110j:plain

出来上がりはこんな感じ。焦げ目がないのがちょっと寂しい感じですね。

f:id:nakazye:20150714230202j:plain

チーズ乗せて、市販のおろしだれかけて、付け合せつけて(漢らしくこちらも肉で!)完成です!

ちなみにお味は、やっぱりフライパンで作った方が美味しいです。ただ、コレがまずいと言ってるわけじゃなくて、家庭で気合い入れて作ったハンバーグが最強すぎるんですよ。香ばしい焦げ目、良い感じで歯ごたえの残った玉ねぎ、そうったところがやっぱりどうしてもフライパンには劣ってしまいます。が普通に美味しいです。
昼まともな店に行く時間なくてガストでハンバーグ食べた日の夜とかに作れば、感動間違いなしです。手早くこれだけのもの自分で作れるなんて、と。

男の一人暮らしにピッタリでしょ?

拘束時間は洗い物とか含めても15分とかじゃないでしょうか。自炊面倒とかいう話は良く聞きますが、米も無洗米つかって炊けば拘束時間短いし、お金の力を使うことでぱぱっと作ることができてしまいます。

いかがでしょうか。レベルを上げて物理で殴るの真逆を行く、レベル上げるの面倒だからお金でなんとかする。 お金と言ってもそこまで大層なものではなく、十分回収可能な範囲のイニシャルコストです。特にヘルシオ今はアホみたいに安いし(普通のレンジと変わらないと言ったら言い過ぎだけど近いレベル)。

と、いうことで、ヘルシオユーザーな独身男性が増えたらなぁと思っている今日この頃です。漢の料理レシピについて情報交換したいのです!

〜以下、持ってると女子と話の弾むアイテム達〜

※キッチン狭い場合は、こっちのヘルシオの方が良いかもしれない

THERMOS 真空保温調理器 シャトルシェフ 2.8L アプリコット KBF-3000 APR

THERMOS 真空保温調理器 シャトルシェフ 2.8L アプリコット KBF-3000 APR

LE CREUSET ココット・ロンド 20cm オレンジ

LE CREUSET ココット・ロンド 20cm オレンジ

staub ココット ラウンド 20cm ブラック 40509-487(1102025)

staub ココット ラウンド 20cm ブラック 40509-487(1102025)

FizzBuzzで学ぶProlog

そういえば記事にするの忘れてた。

ちょっと前に、CodeIQにてこんな設問がありました。

codeiq.jp

ふむふむ・・・コレならネタ枠として、あまり技術力無い僕でも参加できそうだ・・・ということで参加してみました。

Prologってコード見たことある?

そういう言語があるっていうのを聞いたことがある人は多いと思います。
ただ、実際にコード見たり書いたりしたことある人って少ないんじゃないかなーと思ってます。

僕も、気になってはいたものの、実際に手を動かした事がなかったので、コレは良い機会だと作ってみました。

実際のコードがこちら

% fizzbuzzの仕様
% 15 で割り切れる場合は FizzBuzz を出力する
% 5 で割り切れる場合は Buzz を出力する
% 3 で割り切れる場合は Fizz を出力する
% その他の場合は入力した数値をそのまま出力する
% 
% 参考文献
% http://ja.wikipedia.org/wiki/Prolog
% http://wiki.bit-hive.com/y10/pg/Prolog%B4%F0%C1%C3
% http://stackoverflow.com/questions/16776166/create-something-like-a-for-in-swi-prolog

% 条件定義
'15で割り切れる'(X) :- X mod 15 =:= 0.
'5で割り切れる'(X)  :- X mod 5 =:= 0.
'3で割り切れる'(X)  :- X mod 3 =:= 0.
'その他の場合'(X)   :- \+'15で割り切れる'(X), \+'5で割り切れる'(X), \+'3で割り切れる'(X). % 処理上無くても良いけど、言葉の定義に合わせる

% 結果定義
'FizzBuzzを出力する'(_)     :- print('FizzBuzz').
'Buzzを出力する'(_)         :- print('Buzz').
'Fizzを出力する'(_)         :- print('Fizz').
'数値をそのまま出力する'(X) :- print(X).

% 処理定義
'Fizz?Buzz?FizzBuzz?'(X) :-
    '15で割り切れる'(X) -> 'FizzBuzzを出力する'(X);
    '5で割り切れる'(X)  -> 'Buzzを出力する'(X);
    '3で割り切れる'(X)  -> 'Fizzを出力する'(X);
    'その他の場合'(X)   -> '数値をそのまま出力する'(X).

% 1〜100を渡す
:- forall(between(1,100,I), 'Fizz?Buzz?FizzBuzz?'(I)).

・・・Prologっぽくないかもしれないけど、なんかすごくきれいじゃない?
最終的にこの形になったとき、思わず感動してしまった。

学習の友として主にWikipediaを利用しており(何故かすごく充実している)、そこにあるサンプルに従い日本語を多用したこともあるんだけど、なんだかいつも書いてるコードより読みやすいし論理的な気もしてくる。

<参考文献>
Prolog - Wikipedia

実用的なものが作れるのか、まだ僕にはわからないけど

最近良く聞くWatsonなんかもPrologが使われている(もしかすると過去形?)なんて話も聞く

Watsonは、こんなふうにかんがえる―日本IBM 武田浩一氏に訊く、旧来AIとコグニティブの違い (1/3):EnterpriseZine(エンタープライズジン)

(非手続き型プログラミング言語の)Prolog中心の推論エンジンを作ろうというものでした

なんで、使おうと思えば使えるだろうし、他の言語より適してる場面もあるんだと思う。

だからと言って僕がProlog使って何か作るかというと、多分つくらない気もする。

ただ、いつも使ってるJavaなりPythonなりなんなりと別のパラダイムの言語、たとえばLispとかPrologとか、そういうのを触るのは純粋に面白い。まだ入り口しか見てない訳だけど。

こうやってプログラムの面白さを再認識する為にも、いろんな言語を触ってみるのはいいかもなーと思った次第です。

楽しくなる前の壁で挫折する症候群を何と呼べばいいんだろう

進捗が出ていないので今日もポエム。

楽しくなる前の壁

例えばプログラミング言語の基本的文法を理解するまで。例えばスケボーのオーリーができるようになるまで。例えばサーフィンで立てる様になるまで。例えばギターでセーハーできるようになるまで(クラギの人なのでFの壁は未経験)。例えばFPSでマップ覚えるまで。

楽しくなるなる前に壁があるものって結構多い。最近、歳のせいなのか、その壁を前に諦める事が多くなってきた気がする。

自分に合わないものに対して早めに見切りをつける事はいい事だと思うけど、見切りとかの前に頑張るのが面倒だから撤退という戦略を多く取っているような今日この頃。

今、electron使って遊んでるんだけど

ついでだしintelliJ試用版入れて使い勝手みてみるかーと、仕事終わってから今まで色々作業してたりしたんだけど。

なんか警告が消えない。electronのライブラリを認識できてなくて、そんな関数ねーよと言われて。

解決策を色々探してみたんだけど、コレ!というものは見つからず、今も解決せぬまま。

で、さっき心の中で「うん、もういいや。こんにちは世界出せたし。」と諦めて。

なんか違和感

最近、なんかこんなパターンが多い気がして。

ここから楽しくなるぞーってポイントがあるはずなのに、その前に諦めてることがここ最近多くなった。
昇竜拳がいつまでたっても波動拳になる。もういいよ格ゲー糞だな と言われたら「ちょっと待って、そこ乗り越えればもうちょっと面白くなるから!」と僕は言うと思う。
ただそれは、僕がそこを乗り越えて面白さを知ってるから言える台詞であって。

現実はゲームじゃないから、解りやすいチュートリアルや徐々にステップアップできるゲームバランス調整がされている訳でもない。

ちょっとした壁があれば後回しにしたり、誰かに聞いたり、まぁ色々やり方はあって、自分のペースで進めればいいと思んだけど最近それができてねぇな、と。ずっと歯を食いしばってるのは問題だけど、楽しみながらやればいいじゃない、と。

intelliJの警告が気になるならoffにするなりvimなりemacs使えばいいだけなんだけど、なんでその前に全部諦めてるの俺、と。

自己分析

なんで最近そんな傾向にあるのかと考えると、1つは暇だから。
最近、毎日仕事が定時で終わってるから、まぁ暇なんだよね。だからなんか集中力無くダラダラやってるし、暇だから諦めるところまで到達しちゃう。忙しい時だと諦める前にその日のタイムアップ来るから、寝て起きて次の日になると気分切り替わったりいい案出たりする。

もう一つは、やってることがなんと無くだから。
ちょっと前まではよくわからん成功イメージを元に割と勢いで物事進めるタイプだったので、勢いで乗り越えてこれたんだけど、最近そういうイメージないな、と。
別に具体的に無くても、例えばプログラムであれば他の人のソース見るだけでも「俺もこんなコード書きてー!」となるんじゃなかろうか。

ここまで書いたけど、どうやってオチつけよう・・・

カテゴリをポエムとしている通り、「お前もうちょっと頑張ってみ。多分そのうち楽しくなるし、些細な問題なら無視すりゃええやん」という自分へのポエムであり、今日は進捗出てないのでブログのネタないしついでに公開しちゃえという試みであって、オチも何もない訳だけど。

まー、ただ、オーリーできないけどプッシュしてるだけでスケート楽しい!みたいな時期も僕には確かにあった訳だし、まだ領主の時代なのに攻め込まれて負けるけどAoC楽しい!みたいな時期もあったし、hello worldって出たプログラミング楽しい!といった時期もあった訳で。

なんにせよ、何事も楽しんで人生過ごしていきたい限りですね。

その技術、あなたのWebサービスに導入する必要ありますか?

※この記事は、JavaScript使った開発に明るくない僕が挫折した記録であり、本職の方が見れば「お前が使いこなせてないだけだ」と思う可能性を大いに含んだ記事です。
という「初心者だから変な事書いてても許してねっ☆」な免罪符にならない免罪符を最初に置いておきます。

リニューアル作業中の拙作WebサービスProgrammer Profile

www.programmerprofile.net

せっかくリニューアルするんだから、最新技術満載にして、特にUIは流行りの諸々導入してやるぜ!と息巻いてました。

nakazye/ProgrammerProfile at renewal · GitHub

いろんな技術の導入だ!

まずはUIだ!と

  • Coffee Scriptで記載して
  • gulp入れて
  • bower入れて
  • mochaだったりPhantomJS入れてテスト動く様にして
  • BackboneとMarionette入れて
  • あれやって
  • これやって・・・

・・・環境作るだけで1週間くらいだったか。ものすごく疲れたのを覚えてる。

なんでこれらを導入したかと言うと、一言で言えば流行っているからやってみたかった。

で、流行ってるからにはできる、すごいあんなことやこんなことを取り入れて画面作るぞー!と頑張ってたんですが・・・

どんな画面にするか、全然きまらねぇ・・・

BackboneやMarionette入れたし、よーしパパSingle Page Applicationで作っちゃうぞー!と色々デザイン案を出してみたんですが、どれもしっくり来ないんですよね。

モックアップ作ってもしっくりこない。紙に書いてみてもしっくりこない。あれれ?って

そういえばこの技術、どんな画面やアプリにマッチするんだろ

そんな中考えてみた。とりあえず流行ってるからと環境を整えてみたものの、この技術ってなんのために必要なんだっけ?どんなのにマッチするんだっけ?と。

SPAで作るぞーと息巻いてたけど、今作ってるサービスってSPAだと使いやすくなるんだっけ?下手したらライブラリロードに時間かかるだけで逆に使いづらくなったりしね?とか

個人が勢いで作ってる弊害なんだろうけど、なんか流行ってるしで取り入れてみても、それが自分のサービスにマッチするとは限らない。

導入する当初は「SPAでかっちょいーサービス」と漠然なイメージで進めてしまっていた。 実際に、導入した後のイメージを紙なり絵なりモックに落としてみること無しに。

後になって考えれば当たり前なんだけど、この技術で何ができるんだろうワクワク を、いきなりサービスに適用するんじゃなかった。まず技術検証すべきだった と。

これ、個人でやってるからかすり傷だけど、組織でやったら致命傷だよな・・・気をつけよう と思った次第で。

技術的負債という言葉に煽られて

○○は古いよね、これからは○○だよね、とか、まぁよく聞く話。 その言葉に乗せられて、あまり考えずに導入してみるというのは、ぼくがバカなだけで世間的には少数だと思うんだけど、「○○のサービス、変にリッチ化されて使いづらくなった糞が」というのも、またよく聞く話。

表現の幅が広がったことや、もっと簡単なやり方が出てきたのは良いかもだけど、それがサービスにマッチしてるとは限らない。

少なくともProgrammer Profileについては、ページ全部をJavaScriptで何かがにゅっと出てきたり、うにょうにょ動いたりするのは合わないなぁと思った次第です。
部分部分というのは、まぁありなのかもしれないけどね。ちょっといったん仕切り直して考え直します。

まとめ

新しい技術を取り入れる場合、流行ってるからで導入すると悲しい思いする。
自分なりに考えたつもりでも、(SPAとか)キーワードだけ頼りに作ろうとしても悲しい思いする。完成系イメージできてるつもりでも、いざ作ろうとすると全然できてない事が多い。
少なくとも、リリース予定のアプリケーションにいきなり適用してしまうのは危険。

もし、ちゃんとイメージができているとしても、いきなりがっつり作るのは危険だと思う。 例えばReact使ってリニューアルじゃとか新規アプリ作るぜとなったとしても、gulpだbowerだその他○○だをいきなり環境作ると、万が一合わないとなった時に徒労感で終わるんだろうなぁと。 ちょっと作ってみて、それでイケると思えたなら、補助ツールを順に試してみたほうがいいと思う。

そんな、自分への教訓と、リニューアルが遅れている言い訳記事でした。

やりがいとは何かを考える

最近、「日々時間の使い方を無駄にしないぞー!」と息巻いて、勉強したりプログラムを書いたり、いわゆる意識高い生活を送ろうと必死になってる。

お前ってそんな優秀な人間だっけ?

「頑張りたい」と思う事は簡単でも「頑張る」事は難しい。多分それは皆誰しも経験してること。

「頑張りたい」と思ったから頑張れたかというと、少なくとも僕はそんなに良くできていなくて、結局怠けてしまう。

基本は「寝てしまう」「無駄にネットで時間を使ってしまう」が時間の無駄遣い2強なんだけど、3つ目に「ゲームしてしまう」 っていうのがあって。

何で俺、こんな黙々とゲームやってるんだろ?

ふと考えてみた。当たり前なんだけど、熱中する様にデザインされてるからであって。

それはスコアだったり、ランキングだったり、Kill/Death数だったり、ご褒美ムフフ画像だったり。

まー、プレイ結果が(オンラインゲームで相手がチートでも使ってない限り)正直に数値だったりご褒美で評価されるからであって。

あれ?俺って何で今意識高く勉強しようとしてるんだっけ?

じゃぁ、今やってる勉強なりなんなりも、ゲーミフィケーションとか呼ばれる仕組み作って、頑張るぞーと一瞬考えたけど、そもそも俺って何で勉強してるんだっけ?

知的好奇心からーとか言えればカッコイイんだけど、「技術つけてお仕事できる様になってお金ガッポリだぜ!」とか「英語できる様になって海外プロジェクトやって評価されるぜ!」とか、簡単にいうと「努力を換金したい」んだろうな、と。

仕事ってそんなに単純だっけ?

頑張った、品質のいいコードを書いた、難しい問題を解決した、外人ともコミュニケーションできる。

で、評価も上がれば給料もあがる。これぞやりがい

...

......

世の中そんなに単純じゃ無いよね?もっと色々理不尽だよね?

糞みたいな言い方すれば「いかに上司にゴマ擦って、いかに人に仕事押し付けて、以下に自分の功績をアピールするか」が多分近道。
認めたく無いし、そんな行動したくないし、社会全体から見ればレアケースだとは思うけど。
まぁ、良く見るパターンだし、それに勝て無い自分や周りの力のなさ、コミュ力とでも言うのだろうか、それも仕事のスキルだと思うし、負けを認めるしかない。

で、自分もおっさんになり、そういう経験を多々してくると、「仕事の為に」というモチベーションは続か無いんだよね。

ゲームでのスコアが、仕事をモチベーションにすると役職や給料になると思うんだけど、ゲームバランス調整されたルールは無いから、例えばコミュ力の様な別属性で攻撃されるとあっさり負けちゃう。
なんだこのクソゲー と。

しかも、1年間貯めてきたスコアが最後に罰ゲーム付きで無駄になったりすると、そりゃコントローラー放り投げるだろうなぁと思う次第で。

生きてるからには、何かにやりがい見出したいよね

最近すごく良く考える。僕はいつからポエマーになったんだってレベルで良く考える。 「最近やりがい感じて無いな」って。

当たり前だけど、僕は苦痛に耐えて生きたいわけじゃなくて、楽しく充実した生活を送りたい。何かにやりがいを感じて、生きていたいと思う。

「そんな事ばっかり考えていたら疲れるよ」と言われたらそそりゃそうだし、家庭持ったりすれば変わるんだろうなーとかも考えたりする。

僕の好きな本に、「海が聞こえる」という本がある。

海がきこえる (徳間文庫)

海がきこえる (徳間文庫)

海がきこえる〈2〉アイがあるから (徳間文庫)

海がきこえる〈2〉アイがあるから (徳間文庫)

この中で、こんな一節があって。

小学生のころ、嫌いなコが隣の席になると、もう絶望しちゃって、学校にいきたくなることもあるじゃない。世界が狭いから、クラスの嫌いなコがそばにいると、キリキリしちゃって。あんがい、塾とかピアノとか、学校以外の世界があると、嫌いなコのひとりやふたり、どうでもよくなるのにって

これはイジメの回想シーンみたいな話なんだけど、なんか今の僕に通ずるものがあるなぁと。

なんでこんな事を考えてるのかというと、仕事が楽しくなくて絶望して、他の諸々にも絶望しかけてる。

別のポエムとして書こうかなとかも思ってるけど、最近引っ越し考えてて、もうちょっと職場に近い所に住もうかと家賃相場を見て「俺はどれだけ社畜を続ければいいんだ」と絶望に拍車をかけたのもあって。

世界を広くする

じゃぁ、仕事とは関係なしで、別の世界でやりがい感じるようにすると考える。

例えば個人のアプリ開発。使われる使われないは全て自分の責任だし、ダウンロード数やアクセス数でダイレクトに反応が返ってくる。

例えばブログ。これもアクセス数だったり、ソーシャルボタンの数だったりでダイレクトに反応が返ってくる。

そんな仕事とは別の事として注力した方が、今の僕にとってはやりがいを感じられるし、楽しく生きられるんだろうなーと思った次第で。

何かにやりがいを感じられないなら、別の何かでやりがいを感じればいいじゃない、と。

さっさと転職しろよと言われたらごもっともなんだけど、そんなに適応能力高ければ苦しんでない訳で。

で、何が言いたい?

これはポエムであって、残念ながら「人生がやりがいに満ち溢れる○○の方法」という記事ではない。

ただ思った事をうわーっと書き殴ってみただけ。

ただ、また僕が急に「あー、なんか色々嫌だ。辛い」と月曜にありがちな憂鬱に苛まれた時に、「まー、仕事が全てじゃないよ。もちょっと別の事楽しんでみ。建設的な事がいいとは思うけど、もう最悪ゲームでもいいよシビライゼーションやろうぜ!」と、読み返して鎮痛剤になってくれればなぁと思った次第です。

herokuのDBアップグレード方法

先日、herokuさんからこんなメールを頂きました。
要約すると、「DBが無料枠超えそうだからどうにかしてね」と。

f:id:nakazye:20150523190207p:plain

以前このブログで公開させて頂き、それなりの反響を頂いたProgrammer Profile。その後更新があまりできていないにもかかわらず、アクセス頂きホント嬉しい限りです(リニューアル作業中ですが、デザイン面で色々難航しており…)

www.programmerprofile.net

せっかくアクセス頂いているのに、DB容量制限でエラーとなるのもしょんぼりなので、現在の無料プランから月額9$の有料プランに変更しました(広告入れてる訳ではないので、ちょっと辛いですが・・・)

で、実際にネットの情報を元に作業してみると、上手くいかない点があったり、良く分からない点があったので、今後同様のアップグレードをする人の助けになったらいいなと思い、作業ログをまとめてみました。

DBの追加

まず、アップグレードを行うにあたって、herokuでは既存のDBを拡張するというやり方ができません。新たに新しいDBを作成し、そこにデータを移し、DBを切り替えるという作業順序になります。

ここで、いきなりトラップが待ち構えています。

f:id:nakazye:20150523190656p:plain

herokuのpostgres管理画面があるんですが、その管理画面から「Create Database」を選んじゃダメです。

既存のアプリケーションと紐付かないDBが作成されてしまいます。
なお、間違って作成してしまった場合は、削除すれば9$まるまる課金されるという事はありません。時間割で課金される様です。

上はherokuの中の人@ayuminさんからの情報。

では、どこから作れば良いかというと、アプリ管理画面からとなります。 アプリ管理画面から、「Find more addons」を選び

f:id:nakazye:20150524221913p:plain

プランを選ぶと、必要なコマンドが出てきます(説明続きます!このまま入力しない様に注意)

f:id:nakazye:20150524222303p:plain

先ほどこのまま入力しない様にといいましたが、最後に「--app <追記先のアプリケーション名>」を付け加える必要があります。

僕の場合だとこんな感じ

heroku addons:create heroku-postgresql:hobby-basic --app programmerprofile

すると、アプリケーション管理画面からDBが追加された事を確認できます。

f:id:nakazye:20150523191450p:plain

コマンドラインからも確認可能です。

heroku config --app <アプリケーション名>

f:id:nakazye:20150523191925p:plain

データをコピーする

まず、DBをコピーするにあたり、コピー中にアプリケーションの操作が行われDBの内容が変わってもしょんぼりなので、アプリケーションをメンテナンスモードにします。

heroku maintenance:on --app <アプリケーション名>

続いて、DBをコピー。heroku config --app <アプリケーション名>で確認した、新しいDBの名称を利用して

heroku pg:copy DATABASE_URL <新しいDB名称> --app <アプリケーション名>

を入力します。

コマンド入力時に「本当にOKなら、アプリケーション名を入力して(最後にEnter押して)ね」と確認が出てくるので従います。今後、同様の確認が出てきますが、同様にアプリケーション名入れてEnterでOKです。

僕の場合だとこんな感じ。

f:id:nakazye:20150523192407p:plain

なお、注意点というかポイントとしては、コピーにそれなりに時間がかかります。
pending...という表示のまましばらく応答がなくなりものすごく不安になりますが、大丈夫です。

DBの向き先を新しい方に変える

まだ、DBを作成してコピーしただけで、アプリケーションは古い方を見続けています。コレを、新しいDBに向き先を変更してあげます。

heroku pg:promote <新しいDB名称> --app <アプリケーション名>

僕の場合だとこんな感じです。

f:id:nakazye:20150523192903p:plain

アプリケーションのメンテナンスモードを解除する

最後のコマンドです。

heroku maintenance:off --app <アプリケーション名>

メンテナンスモードにした時のコマンドのonをoffに変えるだけです。
僕の場合はこんな感じ

f:id:nakazye:20150523193008p:plain

以上です!
最後に動作確認し、試しにデータを入れてみて、新しくしたDBのデータ数が増える事を確認しましょう。

なお、この記事ですが、似たような感じでここまで書いたタイミングで、ブラウザが落ち、記事の復旧ができなかったという悲しい目にあってます。
だからという訳でもないですが、同じ様にDBをアップグレードしようとしてるけどやり方がわからないという人の助けになれば嬉しいなぁと思った次第です。