おふくろさまより愛をこめて

mmmpa ふとしです。誠実なプログラミングを心がけたい。

日記 entries

2018/08/01 10:25:49

株式会社 HeartRails に就職して丸 2 年が経過しました

株式会社 HeartRails に就職して丸 2 年が経過しました。 就職できました。 - ンンンパ 業務 サービス 担当箇所 技術 期間 (わたしの) 担当範囲 EC サイト A 表サイト SPA Vuejs v1 5 months 部分 検索サイト A Ajax 単ページ 生 JS (CoffeeScript) 0.5 month

2018/01/27 17:23:56

父の命日

父の命日である。先日は七回忌の法事をした。だからなんとなく命日にあわせて父がよく飲んでいた角瓶を飲んでいる。これを飲むと結構な割合で翌日に頭痛になるんだけど、父が飲んでいたというのがあるので時々買って飲んでいる。 父は食道癌がステージ 4 の段階で発見され、食道の大部分を切除する手術を受けた。手術はとても上手くいったと医者が自賛していた。その後、肝臓に転移が見つかり、3 年ぐらいで死んだ。5

2018/01/06 11:41:56

わたしが喉が痛い場合に飲む薬

風邪を治す薬はないことが知られていますが、喉の痛みはやわらげることができます。今回の喉風邪で特に以下の二つを飲むことによって喉の痛みを非常にやわらげることができました。 ペラック T 錠 主成分であるトラネキサム酸が腫れなどの痛みを改善します。 患部 (今回の場合、喉) に以上が発生するとプラスミンが発生し、プラスミンが炎症の原因のヒスタミンやプロスタグランジンなど痛みの原因物

2017/12/25 09:22:02

今年の洗濯回数は 9 回でした。

去年 今年の洗濯回数は 8 回でした。 - ンンンパ 1 回目 2017 年 1 月 25 日 いい感じに作業も進んだし洗濯行くか — プログラマーふとし (@mmmpa) 2017年1月24日 2 回目 2017 年 3 月 2 日 洗濯開始でーす — プログラマーふとし (@mmmpa) 2017年3月1日 3 回目 2017 年 4 月 8

2017/12/23 10:38:45

外出時作業用にサブディスプレイを買った

Diginnos (amazon リンク) 8.9 inch のバッテリー駆動する、WUXGA (1920x1200) で表示できるディスプレイです。14,580 円で小型ディスプレイとしては安い部類に入ると思います。 色 結構どぎつい色が出ます。わたしは目が弱いので常に輝度を下げて使っているせいもあるんですが、デフォルトの表示ではかなり目が痛くなりました。現状ではコン

2017/11/08 03:45:36

リクエスト成功時のレスポンス

「成功」という結果を返ってきた場合でもそれがエラーであることがある。本来なされるべき処理ではない処理を行ってしまったり、意図しないリクエストを投げてそれが完了してしまった場合だ。 レスポンスの簡略化のためにステータスコードのみで body を空にすることがあるが、これはあまりよくないのではないか。求められているレスポンスがありそれを返す場合はその内容でまちがったリクエストをしたことに気づきうる

2017/11/07 12:09:06

不親切な返信

入力を求められていてその内容がわからないというコメントがあり、必要な内容を知る人間が単に文字列を返信していた。わたしはその文字列がどう用いられるか知っているのでどう入力するかわかったのだが、その入力内容がわからない人にはわからなかった。 実は入力先は 2 つあって、空白で区切られたその文字列を分けて入力する必要があったのだが、わからない人は文字列を 2 つの入力欄にそのままそれぞれ入力したのだ

2017/11/07 07:28:30

エラーをエラーとして扱う

エラーをエラーとして扱う 発端となるエラーがあって、それ単体で大事故になることはない。そのエラーに気づかない、あるいは復旧できない、あるいはまちがった復旧により致命的なエラーとなる場合がある。そこで起こりうるエラーに対してどうしておくのがいいかというと エラーをエラーとして認識できる エラーを観察できる エラーからのリカバー動作をそうであると認識できる リカバー動作は

2017/09/23 10:06:39

Farfetch で返品した

Farfetch で十数万のレザーパーカーを買ったんだけど微妙にシルエットに不満があった。本当に微妙な不満だったので、一度試着してから一晩置いて、翌朝また試着した。そして、やっぱり不満だったので返品手続きをした。 通販でそんな高い服を買ったのは返品もサービスに含まれているのが大きな理由だった。連絡して、当日に DHL の回収担当がやってくる。書類と商品を確認して持ち帰ってそれで終わり。 翌日

2017/08/31 13:27:28

IntelliJ IDEA の右クリックから Atom でファイルを開けるようにする (ついでに Thunar からも)

IntelliJ IDEA File > Setting > Appearance & Behavior > Menus and Toolbars に各ポップアップメニューの項目があるので、そこの任意の位置に External tools に登録 (後述) しておいた Atom を配置します。 External tools に登録 File &

2017/08/29 13:11:41

Terminator (ターミナル拡張) のタイトル部を、ウィンドウごとに任意のものに変更する (bash)

ターミナルを立ち上げまくっていると上のようなことになってどれがどれだかわからず大変につらい。 このタイトルはプロンプトの変更と同じく PS1 に食わすことで変更できます。プロンプトを生かしたままで変更しなければならないので ~/.bashrc などに関数を定義して一発で変更できるようにします。 set_title () { ORIG=$PS1 TITLE="\e]2;

2017/08/26 14:30:20

Amazon Linux で普通に yum install した Nginx の auth_request_module を有効にしたい

現在の設定をそのままにコンパイルし直すという手を使いました。 nginx -V で現在の configure を得る 1 で得た configure に --with-http_auth_request_module を加える Nginx 同バージョンのソースを得る ./configure が通るまで足りないライブラリを追加する make && make

2017/08/24 18:32:05

Nginx で print デバッグ

そもそもきちんとログに出してログを見ろという話ですが、 return を使えばどの変数になにが入っているかを簡易に確認できます。 server { listen 9998; location = /check-header { add_header Content-Type text/plain; # ステータスコードとボディ文字列 return 2

2017/08/18 04:03:37

特に夏だからというわけではないが体重を 10 kg 減らしたのでグラフ

減りました。 2017/3/27 開始の本日までのグラフです。(記録がとんでる部分があるので日数は一致しない) test なぜ? 2017/3/27 に行った人間ドックの最後の説明で空腹時血糖値が境界を超えてアウトだったので「ヤバいマジ糖尿」という雰囲気のことを言われた。 (なお HbA1c は普通で、しかも後日普通の健康診断で普通に血液検査をしたところ、ちょっと高

2017/08/18 01:06:01

Rails の ActiveRecord での lock! の細かい話

前プロジェクトでログを眺めていて気づきました。仕組みを考えれば確かにという感じだった。 class User < ApplicationRecord after_initialize -> { logger.info('Instantiate!') } end User.find(1).lock! # User Load (0.2ms) SELECT `use

2017/05/30 04:00:25

騒がしい社内で心穏やかに仕事するためのセット

みなさん、静かな環境で心穏やかにお仕事されていますでしょうか? わたくし、前職は非常におしゃべり好きな人間がおおい職場で、さまざまな会話音声により集中力をそがれておりました。他人のくだらない音声ほど集中力をそぐものはないと思います。 そんなわたくしに心の平穏をもたらした 2 つの道具を紹介させていただきます。 ぶっちゃけた話、耳栓 イヤホンなどで大音量で音楽を流すという手

2017/03/11 21:32:11

3.11

あの震災から時間が経つうちに、身の回りで人間結構死んだな〜みたいな感慨があった。 (先週ぐらいに震災と人間が紐づく品が出てきたのだった)

2016/12/25 15:27:03

Ruby on Rails + webpack-dev-server で Development.

Rails で JavaScript が必要なプライベートプロジェクトでは、ながらく Npm + Watchify + Gulp + Rails を手動起動などしながらすすめていましたが、最近、意を決して Yarn + Webpack + Rails に変更しました。そこで、Rails と JavaScript の接合点も Railsway にのった設定に変えようと思いました。(今までは pub

2016/12/22 03:00:44

今年の洗濯回数は 8 回でした。

一人暮らしももう 20 年に近くなりますが、洗濯機が家にあったことがありません。家に洗濯機がないので、コインランドリーを利用しています。利用料金は洗濯に 1,200 円、乾燥機に 700 円ほどです。 15kgの洗濯物も22kg対応の横ドラムで一発よ — おふくろさま (@o296sm) February 7, 2016 乾燥機は 25 kg対応の大型のものが 700 円で 5

2016/12/12 05:47:02

top コマンドで得られる結果をどう見ていけばいいのかわからないので、とりあえず視覚化した

もともと一つの処理であるとか、一つのメソッドであるとかの処理時間には興味があって、測定などをしていました。ActiveRecord を使うにあたって発行クエリを抑えることにより、本当に早くなるのか確かめたりするのがすきです。 全体的なパフォーマンスを測定し、改善に繋げる知識がない そういう局所的なものは何度もまわして処理時間を取って、という方法でなんとなく測定をできるのですが、Web

2016/12/03 05:35:13

Go 言語でつくったもののメモリとかをなんとなく見れるようにする

pprof を用いた詳細な情報を得る方法はさんざん紹介されており、しかしその詳細の情報のどこを見ればいいのかわからないので、とにかく簡単に見れるような施策を打ってみました。 これは社の Slack で動いてるボットの一つの強制停止画面ですが、ボットは継続して動いているので、メモリリークなどが気になるところです。ということで、グラフかつ、前後の増減がスッと把握できるようにしました。(

2016/11/24 04:28:48

Go 言語で struct を url.Values に展開した

現在勉強用に作っているボットでは、Slack の API を使います。勉強用なので、ライブラリを使わず、独自に実装しています。API ではエンドポイント毎にさまざまな要求パラメーターがあって、その引数を自由な形式にすると間違いのもとになるので、専用の struct を用意して間違いが起こらないようにしています。 func (a *API) ChatPostMessages(p ChatPo

2016/11/23 20:13:24

Go 言語でつくったボットを GitHub -> CircleCI -> Bluemix と自動デプロイできるようにした

Golang でのボット作成では、1 個目は自 PC で動かすことしか考えていませんでしたが、2 個目はきちんとどこかにデプロイすることを目標に作成していましたので、ついでに自動でやれるようにしました。 Heroku では 24 時間稼働のボット用途には不向きだと思われたので、IBM Bluemix にデプロイ先に選びました。Bluemix もデフォルトで Golang をサポートしていま

2016/11/20 15:02:08

Slack で動いてるボットの処理が長い場合、フィードバックとしてインジケーターを出すということをやった

いま golang の練習用に作成しているボットには、URL をわたすと、そのサイトのキャプチャを撮影する機能があります。諸事情からボットのいるマシンとは別の場所、Heroku に設置していますが、起動が遅かったり、キャプチャ自体が遅かったりするので、ちゃんとやっていってるのかわかりません。そこで、ローディングインジケーターを出すことにしました。 できあがり 「こはる」とは社

2016/10/30 22:35:11

siege をラップして多少細かい情報をまとめる gem 書いた。

github.com Usage たとえば Rails 内でこうやる。 re = SiegeSiege.run( time: 20, concurrent: 4, user_agent: false, urls: [ "http://localhost:3002#{students_path}"

2016/08/20 13:40:22

npm run scripts で current directory を参照したい。

環境変数を使います。 $PWD ではダメ npm run foo は常に基準となるディレクトリで実行されるので、たとえば以下の npm run here は、配下のディレクトリに潜っても同じ結果を返します。 "scripts": { "here": "echo $PWD" } これは current directory を考慮せずに node_modules を一定

2016/08/01 19:58:42

就職できました。

ところで先日カピバラ神に詣でた時の写真です。これもうあれでしょ、完全に俺のための俺視線。 pic.twitter.com/kDkHs39mlH — おふくろさま (@o296sm) May 18, 2016 前いったときおもくそケツむけてお食事中だったけど時期が悪かったんや。いまこそ就職活動をはじめる時期だという啓示かなんかだろこれわ。 — おふくろさま (@o296sm) Ma

2015/05/24 21:13:45

ババ抜き駆動開発

最後に担当した人が負け。

2015/04/12 14:44:45

Linux + IntelliJ IDEA + 4K 液晶で使ってたらフォントが細すぎて目が潰れた

debian とか ubuntu なんですけど、小さい字でアンチエイリアスをかけてくれないので、リフレッシュレート 30 Mhz のちらつきと相まって本当に見えなくなった。 小さいフォントでもアンチエイリアスしてくれるように設定するには、IDEA のインストール先の bin にある idea.vmoptions もしくは idea64.vmoptions をエディターで開いて -Da

2015/03/14 23:01:22

Ubuntu 14.04 で Nginx upload module 付きでコンパイルできないのとそのアップロードの進捗をとれる Nginx upload progress module の設定で詰まった話

はい。 Ubuntu では --add-module=nginx_upload_module-2.2.0 でのコンパイルが失敗する。 <a href="https://github.com/vkholodkov/nginx-upload-module/issues/26">2.2.0 build problems on ubuntu 11.10 (gcc-4.6.1) ·

2015/03/12 15:02:15

Heroku のファイル永続化用に Nginx nginx-upload-module でアップローダーを用意する

おはようございます。 先週末にはじめて Heroku にデプロイして以来その便利さのとりこになってとにかく何でもつくってはあげつくってはあげしています。自前のサーバーにあげるとリソースを食いあって残念なことになりますが、これなら多くても安心で文明を感じました。 アップロードしたファイルを Nginx に投げて保存してリネームして名前を返してもらって Heroku 側で保持する

2015/02/12 06:39:14

学習意欲の足しになるんじゃないかと思って、学習メモのページのソースも github で管理しはじめた

http://mp.mmmpa.net/ みんなも大好き Contributions の緑色がモチベーションの足しになるんじゃないかと思って。 題材は数学と物理で、本当に完全にわかってないんです。もとは Flash の Actionscript もメシの種であったりして、数式にお世話になる機会は多かったのです。必要に応じてさまざまなところからコピペしておりました。 しかし理解せ

2014/08/15 05:48:11

弊社、アジャイルっぽいことをしたいらしい。

テスト一枚も書かない文化の弊社でそれやると、サイクル毎に臨死体験が楽しめると思う。 おれも頭数で聴衆として参加した Ruby ビジネスフォーラムで、講師 matz さんがアジャイル推ししていたのをきいて思いついてしまったのだろうか。同時に、テストあってこそアジャイルでまわせる、すなわちテスト文化がある Ruby 最高と言っていたのだが(たぶん)、そういうことはおろか弊社の現状もわかっていな

2014/03/16 01:34:22

過労

長期的にクソ忙しいけどめっちゃ充実してて全く疲れ感じてなかったときに寝失禁かまして、後日「ああ、やばいぐらい疲れてたんだな」と思ったことがある。 その時点ではなにも思わなかったので、けっこうやばかった気がする。

2014/01/27 03:35:52

再就職していました。

いまは手持ちの武器でお仕事している状態ですが、状況を考えるとこれだけをやっていては社内での仕事がなくなりキビシイことになるので、社が扱ってる仕事に関連する武器を手に入れねばなりません。 さいわい、前の会社とちがって仕事はあっちから来るような盛況ぶり。かつ多岐にわたっているのでとにかくその中から先があるもの + 興味あるものをえらんでさっさとまじめに勉強します。 いまはとりあえず Ruby

2013/11/17 00:35:22

監視カメラの楽しさ。

することがないのでマンションの廊下とバルコニーから見える道路を web カメラで眺める生活をしているんだけど、特にかわった風景ではないのに、ぼーっとみててもなにか楽しい。 自分が不在でありながら視点だけそこにあるっていうのが、かなりよい。 できれば賑やかな通りに面した家に引っ越して、人々や車を web カメラで眺めていたいんだけど、そういう場所はなかなか空かないし価格も高い。 手が届かな

2013/11/03 21:48:45

社外ニートになった。

いわゆる失職。

2013/09/29 14:44:32

遺産相続が進行している。

祖父より先に親父が死んだので、代襲相続人となった。親父には兄弟、俺からみれば叔父である人物がいて、彼と分割することになる。財産の管理は彼が行っていた。 祖父の死後、彼は遺産相続に関する最初の話し合いで、金で人間関係が壊れることはよくある、金は人を狂わせる、金なんてなかった方がよかった、としみじみと言った。俺は金が大好きなので、最後の 1 つは全く賛成できなかった。 その話し合いの場で彼は祖父

2013/09/25 05:20:16

なぜ社内ニート化するに至ったのか。

すぐれた技術者の手厳しい部分 *だけ* を見習ってバンバン言いたいことを言っていたら、技術的には特に必要とされていなかったらしくて特定の上司から仕事を振られなくなった結果、ニート同然の生活になったというわけですね。 俺を黙らせようとしてパワハラ同然の発言をしてきたのが最後で、「パワハラ」という言葉を使ってそれを指摘すると抜き差しならなくなると思い遠回しに指摘したら切れられました。

2013/09/25 00:05:54

FlashBuilder のカラーリングを変更したい。

クリック一発で変更したい……。 楽しめなかった夏を取り戻すために SummerFruit256 にしたい……。

2013/09/18 16:19:10

冷えたむね肉がおいしい。

鍋に水をはって肉を投入し、湯が沸きたたない程度の中火で 15 分間煮る。火を止めて好きなだけ待つ。やわらかく、肉の味がしておいしい。 冷めた肉をジップロックスクリューなどに山盛り入れ、圧をかけながら閉める。冷えるまで冷蔵庫に入れる。肉はギュッとするが繊維が切れて食べやすい。これもまたおいしい。 そんな感じで毎日 2kg のむね肉を食べている。

2013/09/17 13:35:21

本当に単調な毎日です。

なにも起こらないわけではなくて、予定のゆらぎがほぼない毎日をすごしている。 朝の 5 時に起床して、夜の 11 時には就寝する。出社、退社はほぼ定時でずれがない。人付き合いがないので時間をとられない。本屋にもいかなくなった。 朝食、昼食、夕食の時間は 30 分以上ずれない。食べるものも毎日毎食ほぼ同じで、実家にもどる時以外、外で食事をしたりお酒をのんだりすることもない。

2013/09/16 04:47:51

死んだ父の夢をみた。

父は末期の食道がんが発覚して手術し、3 年生きて、肝臓に転移したがんで死んだ。 死ぬ半年ぐらい前に抗がん剤治療もやめた。ひどい副作用を目の当たりにしていたしがんの縮退もみられなかったので、誰もとめなかった。外出する元気があるうちは釣りなどにでかけ、肝機能が落ちて動けなくなってくると、自宅のリビングのソファで本などを読みながら一日をすごした。 死ぬ直前の 2 ヶ月ほどの間、会うたびに肌が黄色く

2013/09/15 01:00:18

社内で仕事を干されるとけっこう困る。

業務でプログラムをしていると、半ば強制的に考えたこともないような問題の解決が必要になり、能力アップにつながると思う。 社内で仕事をほとんど干された状態の俺が学習を進めようとすると、自分で問題を設定して自分で解決しなくてはならない。どうにかこうにか問題を用意しても、どうしてもこれをクリアしなくちゃ~というモチベーションがないのでだらだらする。 なんだかゆっくり死んでいってるような気がしてよくな

2013/09/10 00:57:09

仕事なし

社内ニートという立場が存在するとニュースで知ったときは「最高じゃねぇか」と思ったけど、実際自分がその立場におかれてみるとあまり最高でもない感じがする。 なにしろ自分がのほほんとやれてきたのは他の社員の技術レベルが低いからであって、世間に放りだされたら再就職先が見つかるよりもそのままのたれ死ぬ可能性の方が高い。小さな会社なので、いつでもクビになる可能性がある。 HTML と Flash