THE えのき

えのきです。

ペヤング 獄激辛やきそばを食べて敗退した話

Youtuberがこぞって食べていたのでほんまにからいのか?と思いつつ見かけたら買おうと思っていました。

そして今日。近所のコンビニで売っているのを発見。食べることに。

正直この時点では余裕だな。と思っていました。

一口目を食べて焼きそばの味を感じた瞬間痛みが襲ってきました。

これ書いたとき昔作ったデスソース入りカレーより痛くね?と思っていました。

お茶飲んだり冷蔵庫にあったあまいやつ(ほろよい)飲んでも痛みが引かないので諦めました。

おなかはすいていたので非常食用のUFOを食べました。

美味しく食べれたので満足です。

何かできるようになりたい

昨年母親がアルツハイマー認知症に診断されてから将来的に認知症になりたくないと思うようになった。 アルツハイマー認知症の予防の一つに刺激を与えるのが良いというのを見たので、刺激のために今できないことをできるようになればいいんじゃないかと思い、新しいことを始めることにした。

別途脳の血管を詰まらせないために運動を継続して行う。今年は85キロが目標。

やること

今できないことをできるようになる

ルール

  • 1年で完了できる難易度にする
  • 目標を立ててそれを満たすことができればできるようになったとする
    • 目標の再設定は可能
  • 沢山金を使うものは避ける
  • ブログやらYoutubeやらに記録していく
    • 何がどこまでどうできるようになったのか記録したい

2020年やること

ルービックキューブの種目3x3x3のAverage of 5で60秒を切る

計測ルール

現状

数分かけてルービックキューブの1面を揃えられる

2019年振り返りと2020年目標とか

2019年振り返り

去年は目標ブログ書いてなかったので、記憶を頼りに軽く書いていく

  • おかんが認知症になった
    • おとんが見てくれてるので助かっている
  • 夏に仕事で大きな損失を出してしまった
    • サポートしてくれたチームメンバー各位には感謝してます
  • 彼女と別れた
  • Ryzen3でPCを組んだ
    • 良さげなファンガードがあれば完成する…
  • とあるランクの成長限界に達した
  • ランクを上げて限界を伸ばした

2020年目標

達成をするために意識的に行動するもの

献血に行けるだけ行く

5回くらいは行って来年に30回記念品を手にしたい。5回って書いたけど、体調やらタイミングやらで行けないことも多々あるので目安程度。普段うんこを垂れ流しているだけなので、こんな自分の血でも役に立ってるならそれはそれで嬉しいですね。

体重を85キロまで落とす

スカイダイビングに行きたいと思ってすでに2年経過している。都内近郊のスカイダイビング体験の体重制限が90キロ制限だった記憶があり、まだスタートラインにすら立てていない状態だ。
着衣分やら当日の胃袋分も加味して最終目標は85キロにしている。

個人サービスを3つリリースする

設計と実装を回して自分の引き出しを増やしたい。

月1000円の定期的な副収入を得る

方法は未定。業務委託とかそういうのではなくて、仕組みを作ったらあとはちょいちょいメンテすればOKみたいなのをイメージしてる。アフィブログではない。
12月に1000円

ブログを書く

月1記事書いて文字を書くこととアウトプットをすることに慣れていきたい。

今できないことをできるようになる

何でもいいけど目標立ててそれを達成したい。今の所ルービックキューブ

2020年やりたいこと

達成しなくてもいいけどできたらいいな〜って思ってるもの

  • スカイダイビング
  • 彼女作る
  • 国内旅行行く
  • 海外旅行行く
  • ソロキャン行く
    • 2回以上行きたい
  • グルキャンに行く
    • いろんな人誘うぞ!
  • 部屋をシンプルにする
  • ソファを買う

xargsって便利だなって改めて思った令和元年

この記事は CyberAgent Developers Advent Calendar 2019 - Adventar の19日目の記事です。紆余曲折あって28日に書いています。遅くなって申し訳ありません。
来年は期日どおりに記事公開することを目標にします。

ところで皆さんxargsってコマンドご存知でしょうか? ARG_MAX に合わせて引数調節してコマンド実行してくれるアレです。

今回は当然っちゃ当然な動きなんだけど、見方を変えたらますます便利なコマンドだなと改めて思ったという話を書きます。

環境

これからの話はAmazon Linux 2で動作を確認しています。

$ uname -r
4.14.138-114.102.amzn2.x86_64

$ xargs --version
xargs (GNU findutils) 4.5.11
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by Eric B. Decker, James Youngman, and Kevin Dalley.

本題

手癖になってしまってるんですが、シェル(bash)で何かの入力を元に繰り返し処理を行う場合 for を使ったワンライナーをよく書きます。

例えばこんな感じのファイルがあるとします。

3
7
8
4
5
10
9
1
2
6

このファイルに1行ずつ何かしらの処理をしたいというときにはこんな感じのワンライナーをよく書きます。今回の処理は「受け取った数字分sleepしてその数字を出力する」ということにします。

$ for i in $(cat /tmp/awesome.txt); do sleep $i; echo $i; done
3
7
8
4
5
10
9
1
2
6

これはこれで動作確認しながらワンライナーを組み立てていけるので便利ですが、 並列で実行したい時に困る…!

ということで xargs の出番です。

まずは直列に実行をしてみます。 xargs には -P というオプションがあるんですが、これを指定しないとデフォルトの1が設定されるため、コマンドが直列で実行されます。 よくある xargs の使い方だと ls /path/to/dir | xargs rm みたいなものが多いですが、今回みたいに複数のコマンドの実行をしたいときにはbashなどを起動してコマンドを実行させる事もできます。

$ cat /tmp/awesome.txt | xargs -L 1 -I {} bash -c "sleep {}; echo {}"
3
7
8
4
5
10
9
1
2
6

次に -P を 3 に設定します。この場合だと、xargsがbashを最大3プロセス起動してコマンドを実行します。

$ cat /tmp/awesome.txt | xargs -L 1 -P 3 -I {} bash -c "sleep {}; echo {}"
3
7
4
8
5
1
2
9
10
6

順番が変わりましたね。次に10プロセス起動するようにしてみました。

$ cat /tmp/awesome.txt | xargs -L 1 -P 10 -I {} bash -c "sleep {}; echo {}"
1
2
3
4
5
6
7
8
9
10

ほぼ同時に10プロセス起動するので、数字が小さい順に出力されていますね。

記事の行数稼ぎのために実行時間を計測してみました。

直列 - for

直列なので55秒かかっています。

$ time for i in $(cat /tmp/awesome.txt); do sleep $i; echo $i; done
3
7
8
4
5
10
9
1
2
6

real    0m55.010s
user    0m0.009s
sys 0m0.001s

直列 - xargs

$ time cat /tmp/awesome.txt | xargs -L 1 -P 1 -I {} bash -c "sleep {}; echo {}"
3
7
8
4
5
10
9
1
2
6

real    0m55.019s
user    0m0.016s
sys 0m0.004s

並列 - xargs -P 10

10並列なので10秒で終わりましたね。

$ time cat /tmp/awesome.txt | xargs -L 1 -P 10 -I {} bash -c "sleep {}; echo {}"
1
2
3
4
5
6
7
8
9
10

real    0m10.005s
user    0m0.017s
sys 0m0.006s

bashのプロセスが10個起動しているので、その分マシンリソースを使います。

root      1179  0.0  0.1 160780  8840 ?        Ss   16:44   0:00  \_ sshd: enoki [priv]
enoki  1184  0.0  0.0 160780  4560 ?        S    16:44   0:00      \_ sshd: enoki@pts/1
enoki  1197  0.0  0.0 125024  4376 pts/1    Ss   16:44   0:00          \_ -bash
enoki 27028  0.0  0.0 115092  1868 pts/1    S+   17:23   0:00              \_ xargs -L 1 -P 10 -I {} bash -c sleep {}; echo {}
enoki 27029  0.0  0.0 119880  3000 pts/1    S+   17:23   0:00                  \_ bash -c sleep 3; echo 3
enoki 27034  0.0  0.0 114636   756 pts/1    S+   17:23   0:00                  |   \_ sleep 3
enoki 27030  0.0  0.0 119880  3000 pts/1    S+   17:23   0:00                  \_ bash -c sleep 7; echo 7
enoki 27035  0.0  0.0 114636   776 pts/1    S+   17:23   0:00                  |   \_ sleep 7
enoki 27031  0.0  0.0 119880  2904 pts/1    S+   17:23   0:00                  \_ bash -c sleep 8; echo 8
enoki 27037  0.0  0.0 114636   768 pts/1    S+   17:23   0:00                  |   \_ sleep 8
enoki 27032  0.0  0.0 119880  2936 pts/1    S+   17:23   0:00                  \_ bash -c sleep 4; echo 4
enoki 27038  0.0  0.0 114636   804 pts/1    S+   17:23   0:00                  |   \_ sleep 4
enoki 27033  0.0  0.0 119880  2860 pts/1    S+   17:23   0:00                  \_ bash -c sleep 5; echo 5
enoki 27040  0.0  0.0 114636   776 pts/1    S+   17:23   0:00                  |   \_ sleep 5
enoki 27036  0.0  0.0 119880  2908 pts/1    S+   17:23   0:00                  \_ bash -c sleep 10; echo 10
enoki 27043  0.0  0.0 114636   720 pts/1    S+   17:23   0:00                  |   \_ sleep 10
enoki 27039  0.0  0.0 119880  3000 pts/1    S+   17:23   0:00                  \_ bash -c sleep 9; echo 9
enoki 27045  0.0  0.0 114636   688 pts/1    S+   17:23   0:00                  |   \_ sleep 9
enoki 27041  0.0  0.0 119880  2884 pts/1    S+   17:23   0:00                  \_ bash -c sleep 1; echo 1
enoki 27046  0.0  0.0 114636   796 pts/1    S+   17:23   0:00                  |   \_ sleep 1
enoki 27042  0.0  0.0 119880  2892 pts/1    S+   17:23   0:00                  \_ bash -c sleep 2; echo 2
enoki 27047  0.0  0.0 114636   808 pts/1    S+   17:23   0:00                  |   \_ sleep 2
enoki 27044  0.0  0.0 119880  2956 pts/1    S+   17:23   0:00                  \_ bash -c sleep 6; echo 6
enoki 27048  0.0  0.0 114636   772 pts/1    S+   17:23   0:00                      \_ sleep 6

最後に

マシンリソースが少ない場合にxargsを使って並列化をするのはおすすめできません。 並列した数分のリソースが増えてしまうので、例えば本番環境のデータを何かしら処理したい場合は稼働中のサーバに影響を与えないように工夫してください。

他にもこういうのあるよ!っていうのがあればぜひコメントください!

気がついていた山崎実業に侵略され始めてきた我が家の話とおすすめの雑貨紹介

こんばんは。

わいわいたさんとはいつまでたっても知り合いレベルのえのきです。二日後に健康診断を控えているけど温野菜でたらふく肉を食ってきたあとにこの記事を書いています。
去年の尿酸値は9.4でしたが、今年はいくつなんでしょうね。痛風発作経験はまだありません。

この記事は whywaita Advent Calendar 2019 whywaita Advent Calendar 2019 - Adventar の24日目の記事です。

実は10日くらい自席から見えるわいわいたさんを盗撮して「これが本当のわいわいたアドカレじゃ〜」って言いたかったんですが、毎日撮影しても同じ絵しか撮れないので、途中で飽きたのでデータを全部消しました。 頑張ってネタを探していたけど特にないので、最近気がついたことを書いていきます。

皆さんは山崎実業って会社ご存知ですか?

www.yamajitsu.co.jp

Amazonでインテリア雑貨を検索すると必ずと言っても過言ではないほヒットします。

我が家にも山崎実業の雑貨が多数あるのですが、5つ目を買うまでは山崎実業と知らずに買っていました。 気がついたら増えていたパターンです。恐ろしい。 キッチン周りの雑貨の充実具合がとんでもないんですよね。

ストアのページもちゃんと運用しており、運用力の高さが垣間見えます。 www.amazon.co.jp

新製品の宣伝にもぬかりがないですね。 www.amazon.co.jp

細かいカテゴリの数が多すぎて把握ができません。流石です。

f:id:k_enoki:20191224232300p:plain

基本的に値段も安く、品質は個人的にはお値段以上だと思います。 全体的にスタイルが統一されているのでまとめやすいと思うので、みなさんもインテリア雑貨に悩んだら山崎実業で探してみましょう!

最後に今年買って大満足している商品の紹介をします。

このスポンジホルダーは商品写真を見てもらうとわかるんですが、蛇口に挟むこむだけでしっかりホールドしてくれます。水に濡れてもホールド力が落ちないし、簡単に取り外せるのでいつでも洗うことができます。 今まで散々吸盤に裏切られてきた私を救ってくれた救世主です。

北陸新幹線(かがやき)でいつ車内販売があるのかを調べてみた

2020/02/26 時点で情報源としていたNREのサイトから車内販売のことについて調べることができないため、直接問い合わせるしかなさそうです。

乗る前に時間が無くて崎陽軒のシュウマイしか買えなくて、車内販売でビールを買おうかなと思っていたら車内販売が無いというアナウンスがあった。 シュウマイは美味しかったけどビールが飲めなかった悲しみが残ってしまったので調べてみた。

かがやき501号 - 519号 だと車内販売があって、臨時列車の かがやき520号 - 545号には車内販売がない模様。

今日乗ったかがやきは533号だった。

下り
車両名 東京発 金沢着
かがやき501号 06:16 08:46
かがやき503号 07:20 09:51
かがやき505号 08:36 11:06
かがやき507号 09:20 11:54
かがやき509号 10:24 12:52
かがやき511号 16:24 18:54
かがやき513号 17:24 19:58
かがやき515号 18:24 20:55
かがやき517号 19:24 21:54
かがやき519号 21:04 23:35
上り
車両名 金沢発 東京着
かがやき500号 06:00 08:32
かがやき502号 07:00 09:32
かがやき504号 07:48 10:20
かがやき506号 08:48 11:20
かがやき508号 09:46 12:20
かがやき510号 15:55 18:28
かがやき512号 16:47 19:20
かがやき514号 17:55 20:23
かがやき516号 19:18 21:56
かがやき518号 21:00 23:32

ソース (2019/08/25現在)

車内販売がある列車番号の一覧

どうやら株式会社日本レストランエンタプライズ(NRE)という会社に委託をしているみたいで、この会社のサイトに書いてあった。

株式会社日本レストランエンタプライズ 2020/02/26現在このリンクURLは有効ではなく、サイト内検索にも引っかからないので気軽に調べる手段がなさそう。

どうやら列車番号には意味があって、臨時列車には車内販売が無い模様。

北陸新幹線 - Wikipedia

新幹線の時刻表

列車名だけだと何時の新幹線なのかわからないからこれも調べてみた。

下り (東京 -> 金沢)

平日と土曜・休日でページが別れてるけど、時間は同じみたい。

平日 https://www.jreast-timetable.jp/1909/timetable/tt1039/1039060.html

土曜・休日 https://www.jreast-timetable.jp/1909/timetable/tt1039/1039061.html

上り (金沢 -> 東京)

JR西のサイトにいい感じの時刻表がなかった。

金沢から東京 時刻表(JR北陸新幹線) / 新幹線チケット予約 - NAVITIME

中古のオフィスデスクを買った

会社においてあるデスクがよくある長方形の形をしていなくて、への字みたいな形をしているんですがミラチェアに座りながら机に向かうと、エッジ部分が斜めになっているおかげなのか凹んでいる部分がすごくお腹にフィットするので気に入っている。

f:id:k_enoki:20190720212306g:plain Pro Unit  (プロユニット)|デスク・テーブル|株式会社オカムラ

他に何が嬉しいかと言うとこのデスクはめちゃくちゃ頑丈だということ。サイバーエージェントさんのオフィスでプロレスが行われていたみたいなんだけど、プロレスラーが技をかけてもびくともしていないw(👇の7分50秒あたりから) abema.tv

家でもこれが使えたら嬉しいなと思い、調べてみるとオカムラのプロユニットというシリーズということがわかり、カタログを見ていたら求めていたものがあった。 オフィスファニチュア 総合カタログ 2019 | カタログビュー

L字デスクはだと天板の表面積以上にスペースを確保する必要があるので自宅の狭いスペース(5.5畳の寝室)には置けなさそうだけど、

f:id:k_enoki:20190720213906p:plain
L字デスク 120°デスク

両ラウンドデスクは長方形で、真ん中が凹んでいる形をしているので自宅の狭いスペースにも置けそうだ。

f:id:k_enoki:20190720214048p:plain
両ラウンドデスク

これはほしい!という感じになり中古を調べたらすぐ見つかった。定価が106,575円で中古価格が11,880円。安いぞ。 www.raku1.co.jp

会社においてあるL字デスクは茶色なので両ラウンドデスクも茶色が欲しくて他にも探したけど、そもそも両ラウンドデスクが全然中古市場にないようなので諦めて購入した。 組み立てた状態で配送してもらうこともできたけど、マンションのエレベーターに入らなさそうだったので分解して配送してもらうことにした。追加費用無し。

指定日に到着しなかったり西濃運輸の対応が微妙な感じもあったけど無事届いた。(記事下部にタイムラインを書いた)

組み立て途中の写真を取り忘れていたけど、三十路の男性が一人で1時間ほどで組み立てることができた。 すべての部品が重いので男性でもある程度力自慢じゃないと一人で組み立てられないんじゃないかと思う。天板が一番重い。

あと組み立てには六角レンチが必要だけど、自転車メンテナンス用の小さい六角レンチだと不便だったのでドンキで六角レンチのセットを買った。

一ヶ月くらい使ってるけど予想通り体にフィットしていて最高という感じ。どこかに引っ越すときも分解も容易そう(重いけど)なので長く使えそう。

パイプ椅子を使っていて高さ調節ができないので次は良い椅子を買いたい。

届くまでのタイムライン

  • 2019年05月27日 00:57 楽市のWebサイトで見積もりを依頼
  • 2019年05月27日 13:39 楽市から見積もりが来る -> 注文する
  • 2019年05月28日 09:31 楽市から注文確認メールが来る
  • 2019年05月30日 14:49 クレカ決済
  • 2019年06月07日 17:25 楽市から商品発送のお知らせ
  • 2019年06月09日 10:00 ごろ西濃運輸から指定日配達不可のお知らせ
  • 2019年06月11日 18:00 ごろ 西濃運輸から午前中配達不可のお知らせ
  • 2019年06月15日 13:00 ごろ 西濃運輸から委託されたっぽい運送業者が配達しに来る