はぜにっき

日記です。(毎日更新ではない)

体調

GWが明けてから体調がズタボロで無になっている.
9連休で社会復帰だししんどいのかな〜〜とか思っていたけど, そういう感じでもなさそう.
割と本気で何も考えられなくなってきたので今日は早退して身体を休めている.

そういえば, 病気になったり体調を崩した時に薬を飲んだり病院に行く習慣がないことに気が付いた.
元々かなり貧相な生活をしていたこともあって, 病院に行く/薬を買うお金を気にしている.
行っていたのはインフルエンザの時とか副鼻腔炎のとき, あと盲腸ぐらいだった気がする

社会人になってからは「金で解決できる時間短縮は多少無理してでも使って行く」方針でやっているので, 身体のことでもこれを適用していきたいなあと思ったりするなど.
あと, 自分を大切にしていきたい. 自分をボロ雑巾みたいな使い方しているのが自分だということを最近気づいた. よくない.

まともな文章が書けてないような気がするけどがんばっていく

やっていき

9連休(完)

hazediary.hateblo.jp

割とまじで無の9連休だった. つれえ.

やったこと

  • 飲み
  • 部屋の整理(片付け)
  • macbook pro 初期設定
  • 髪を切る
  • カラオケ
  • 飲み(2)
  • 日常品買い物
  • 飲み(3)
  • カラオケ(2)
  • ジョジョ5部を漫画喫茶で読む
  • カラオケ(3)
  • 引っ越し先を探す(HOME'S)
  • 飲み(4)
  • カラオケ(4)

 以上です. 完全に普段通りの土日を拡張しただけになってしまった. ゴールデンとは.
あと飲み4つのうち3つがサイゼリヤです. 安いし美味いから良い. 男同士だし.

上記以外にはちょっとRailsの本を読んだりとか自転車漕いだりとか走ったりもした.
来年はもうちょっとゴールデンっぽいことをしたい. それっぽいことがなさすぎて黄金の風を読んだけど虚しくなっただけだった.
まあ, 毎年GWには遠出を避けているので仕方ないと言えば仕方ないんだけども.
地元の京都には来月いくし. 旅行も先の話はあるけど死ぬほど空港とホームが混む時期にわざわざ行きたくないし...

というわけでGWでした. 明日から仕事だけど休む前何してたか何にも思い出せない. やばい.

9連休

GWですね. GWしてますか?僕はしてないです

 GWの予定が飲み会と髪切るのと飲み会と飲み会しかない. あとヒトカラ. 険しい.
後半になってつらくなってきたら自転車で鎌倉まで飛ばしていこうと思っています.

連休2日目に家の整理をした

22歳独身の一人暮らしなのに押入れの整理するだけでこうなるの意味わかんなくないですか


Macbook Pro買いました. 12万円ぐらい
外部接続端子がUSB-Cしかないけど外に持っていく時以外使わないから全然問題なかった.
それよりバッテリ持ちが最高. 余裕で12時間とか持つ
スペースキーがパッチンパッチンなってうるさい以外は特に文句がない. 良かった.


幸せになっていきたいし周りの人も幸せにしていきたい. がんばっていきたい.

「プロを目指す人のためのRuby入門」読んだ

はぜです. 「プロを目指す人のためのRuby入門」という本を読んだ.

 Rails, 「めっちゃ高速にWebサービスを作りまくれる未知のWebフレームワーク」という認識しかなかったものの, 興味は結構あった.
ここ数年, Twitterとかで超高速で作りまくる人たちは大体GAEかRailsな気がする(観測範囲は狭い)

元々RubyとかRailsには興味はあって, 俺も高速にバンバン作れるようになってハッカソンで一山当てたいという気持ちも湧いてきたのでやるか〜〜〜〜となりました.
いやまあ最近Node.jsとかは触ってるけど結局俺何ができるんだろうという感じになって, ちゃんとWeb技術を勉強する上で抑えておかないとなあ という思いが強い. それ以上に意味は特にないです.

 Rubyそのものは去年にたのしいRubyの第4版を読んで, 仕事でChefを触り始めたこともあって雰囲気ではあるけど触ってはいました.
で, Railsを触るとかそれ以前に「ちゃんと言語のことは最低限理解してからフレームワーク触ろう」ということもあって, ひとまず題名の本を買ったという流れです.

その辺やるのと一緒にフロントエンドも多少は触れるようになりたいね という気持ちもあります.

hazediary.hateblo.jp

 

買う本はAmazonでレビュー読んだり本の概要とかを読んで決めた.
最高にわかりやすい+他の入門書には書いてなさそうな感じの説明が多くて良かった.

本がでかい+内容が詰まってる+実際に写経したりとか丁寧めにやってた こともあって想定以上に時間掛かった. 大体1週間半ぐらい?そんなもんか


個人的に面白いなーって思ったところとか, 知らなかったところを適当にメモしておく.

return あんまり使わない

  • まだ慣れない
  • 理屈はわかる

暗黙的な型変換が無い

  • 型推論ではあるけど, 変換はない
  • 1 + '10' が死ぬ
  • めっちゃ良いと思う

引数のデフォルト設定

  • def method(str = 'default', nums = 0 ) みたいな感じ
  • 引数を指定せずに呼び出したらデフォルトの設定が適用される
  • 便利っぽい

メソッド名の ! とか ? とか

  • ? == 他言語でいう is***
  • ! ... 注意事項有
  • わかりやすくて良い

インクリメントとデクリメントが無い

  • なんで?
  • まあメソッドの機能でカウンタみたいなの付いてくること多いし使い道少なさそうだし別に問題ない気がするな

Minitest

  • 便利
  • この本のTDDの導入説明めっちゃ良いと思う
  • テスト駆動開発も読もうと思った

配列周り

  • メソッド多すぎ
  • * ポインタみたいなやつ結構わかりやすいと思うのはCやってたからだろうか
  • 可変長引数作るの便利 def method(a, b, *c)

ループ周り

  • メソッド多すぎ
  • 使って覚えていく感ある
  • さらーっとメソッド一覧みたいなのを一回読んでおいて, 都度調べ直すみたいな感じで最初は良さそう. 暗記するようなものでもないし

inject

  • 畳み込み演算のやつ
  • 競プロで似たようなのを見た気がするけどこういうの慣れるまで時間かかりそう(苦手)

Range

  • 1..3 : 1~3
  • 1...3 : 1~2
  • これ絶対いつか間違える

SymbolとStringの使い分け

  • シンボルは内部的には整数値で管理されてるらしい. 大体納得した
  • =同一の値のシンボルは同一オブジェクト
  • 破壊的な変更ができない

#### キーワード引数

  • def method( str, isNum: false, keyword1: 'keyword' } ...
  • 良さそう

正規表現

  • 半分ぐらいperlと同じ
  • & 使った表記は大体書き換えができるようになっていて最高. 黒魔術みたいなのは書きたくないし見たくないんや

Object-Oriented周り

  • attr_**** 便利
  • className.methodNamemethodName が何を表しているかを瞬時にまだ把握できないのでやっていくしかない
  • 自動で色々メソッドが定義してくれるのは有難いんだけど大規模になればなるほど混乱しそう
  • 慣れ

  • protected 公開レベル大事

freeze

  • const とか final とかの代わりみたいな
  • 最初から固定じゃなくて, ある段階の処理をしたら固定させられるのは便利

クラス変数

  • @@name みたいに定義
  • クラスメソッド/インスタンスメソッド/スーパ.サブクラスで共有される変数
  • config値で使う. 便利

undef

  • メソッドを消せる
  • いつ使うんこれ

module

  • extend めっちゃ便利

::.

  • ドットは右辺がメソッドのみ
  • ::名前空間区切ったり定数の時に使うのが一般的
  • 慣れたら良さそう

例外処理

  • retry と 修飾子の rescue 便利だなーって思った

yield / Proc

  • つよい
  • 無名関数を定義したり投げ合うみたいな感覚で覚えてしまったけど多分大丈夫
  • ブロックの認識をまだちゃんとし切れてない気がする. 慣れたい

&:

  • 右辺のシンボルに対して to_proc メソッドを呼び出してProcオブジェクトにして左辺に返す
  • 左辺のメソッドがそれを受け取って内部で .call とか使って処理する

  • なにこの...なにこれ...

tap

  • メソッドチェーンの途中に入れて値を出力させたりできる
  • 便利

半分ぐらい便利としか言ってない.
全部を正しく理解できた気がしないので, 来月あたりにまたさらっと読み直してみようかなあと思った.
分かりやすいし内部のことも意識させるような書き方をしていて良かった. 自分もこういう説明できるようになりたいし中のコード読んだりしていきたい


次はこの本をやります

Ruby on Rails 5アプリケーションプログラミング

Ruby on Rails 5アプリケーションプログラミング

おわり

「ノンデザイナーのための名刺デザイン」を読んで2時間ぐらいで名刺を作った

はぜです. 名刺作りました.


c-mitsuba.hatenablog.com

⬆︎本を書いた蜜葉さんのブログはこちら

去年転職をしたのですが, 退職が決まった後とか有休消化中とか, 新しい会社に入って名刺をもらうまでの間, 渡せるものが無くて困っていたので, 名刺作りたいなあとは前々から思ってはいた.
TwitterとかFacebookを共有できれば良いんですが, 割とハードルが高いんですよね.

ただ, いざ作るとなると, 正直デザインに関する知識もなく, やったこともないという状態. 作り方を軽く調べて まあ後で良いか...という感じで忘れてました.


hazediary.hateblo.jp

 本を買ったのは先日行った技術書典4.
元々目当ての本は違うものだったのですが, 人混みを避けながらふらっと会場を歩き回っていたら見つけて, すぐ購入.
帰ってすぐイラストレータを入れて数時間で出来上がり.
すぐ完成してびっくり. (入稿は2回失敗したけど)
高いと思っていた障壁は, 思っていただけでした.
大切な部分だけがシンプルに小さくまとまっていて, とても良い本でした.


出来としては, まあ...初めてだったしこれで良いか っていう微妙な感じ.
よくデザイナーの人たちから聞く, @ディスプレイ上で見るのと実際出来上がったものはかなり違う」ことを実感した.

具体的には

  • 思いの外小さい. アイコンのサイズは大体イメージ通りだけど文字がちょっと読みづらい.
  • 割と暗い. iMac明るいんだなあ と思った
  • 背面に色つけるとめちゃくちゃ文字読みづらい(裏面の話, 裏には本名とかが書いてあります)

といったところ.

 おもて面は文字が小さい気がするけど, それなりに悪くない出来かなあと思うので, 100枚なくなるまではこれを使っていこうかなあと思います.
次はもっと良いデザインにしたい.



体験版は7日間使い放題なので, 欲しい人は作ってみると良いかと思います.
名刺自体も送料込みで1000円ぐらいで作れるし.

以上

GW!!9連休!!!!やったー!!

技術書典4 一般参加してきた

techbookfest.org

いってきました.

そもそも「同人誌即売会」というイベントに行くことが初めてで, 更に言うと「同人誌」を初めて買った.
手作り感の溢れる会場だったり, そうと思ったら異様に完成度の高い本が多かったり, 開く直前のディズニーみたいな待機列だったりと驚きがたくさんでした.

どう動けば良いのか全くわからなかったこともあって開場前の割と早い時間に行ったけども, それでもめちゃくちゃ並んでいて驚いた.
整理券をもらうための列が死ぬほど長く, まじか....まじか...とか思っていたんだけども全然待ち時間は短いほうだったっぽい(整理券番号は400台前半)

QR決済は便利というよりも面白かった. 決済処理後に出てくるマークで正しい処理かどうかを判別するのはよく思いついたなーという感じ.
ただ, 多少確認に時間が取られるというのも事実で, 混みまくってるところでど真ん中に置いてあるQRコードを読み取って画面を見せて...みたいなことをするのは大変だった.
特に待機列の間で販売されていた公式ガイドブックは丁度1000円だったこと, 人が並んでいて画面を見せるのが大変だったことからQRではなく現金での決済にした.

あと, 全店舗がQR決済に対応しているわけではないので, ブースをさらっと見て決済が対応しているかどうかを見て財布を出すか出さないかを判断しなければならないのは微妙につらかったかも.
常にアプリを立ち上げておいて, それだけで完結できるようになるともっと良いんじゃないかなあ. それをやるのは簡単じゃないんだろうけど.


もともと書いたかった本以外にも, その場で軽く読んでよさそうなものをいくつか追加購入.
逆に混みすぎてて断念したブースもあって, ちょっと残念.
YATTEIKI projectのPodcast本とニッチ技術本が本命だったので買えて良かった.
可視化法学は公式ファンブックに特別寄稿があって, 待機列が止まっている間に読んでいて面白かったので買ってみた.

...

 たった1時間しか中にいなかったけど, 色々と面白い体験が多くて良いイベントだった.
次は秋?にあるらしい. LINE Messaging APIのこととか, 情報処理技術者とかの話で本を書いて売る側に回って見るのも面白い気がするなあ.

あと灼熱だった. 完全に夏の格好で行ったので丁度良かったけど, 長袖だったり二枚来てる人が結構多くて暑そうにしていた.
昨日今日みたいな初夏の雰囲気は大好きだから嬉しいんだけど, それでももう少しゆっくり暖かくなってきてほしい. 頼むぞ.


米の食べる量を減らす

hazediary.hateblo.jp

今週に入ってからほとんど米を食べていない.
その分多めに肉とか野菜類を食べるようにしている.
昼過ぎの眠気が食べていた頃と比べると明らかに減っていて, いい感じ. ただしその代わり食費が上がる.
米は安いなーというのを実感.
あと, サラダというものがあんまり好きじゃないことに気付いてしまって野菜をどう取ろうか悩んでいる.
基本的に炒めるか煮るでなんとかやっているけど来月になる前に飽きそう. どうしようかな.

上の記事の生活リズムは, 多少前後はあれど一応うまいことやっていけている.
ただ睡眠時間は6時間あれば良い(というか自動的に起きる)ので, その空いた分を朝に本を読んだり, インターネットをして過ごしている.
GWは特に予定がなくて, 生活環境の改善とかバランス調整をやっていけたらいいなと思う.

追記

独り言

昔から自己分析をしていて思うのは,自分は
 基本的にどんなに良い状態でも危機感を持って生活をしている.
言い換えればどれだけ恵まれていようが辛い気持ちになる人間で.

焦燥感 とか 危機感 とかを原動力として動くので, 自分を追い詰めれば追い詰めるほどアウトプットが出てくるようになる.
情熱プログラマでいう「一番下手くそなプレイヤーでいろ」っていう考え方を極限まで突き進めたような状態になっている.

自分に限らず似たような性質の人はいるだろうけども この性質はかなり危うい,
具体的に言うと
 歯止めが効かない っていう危うさ  環境による依存が大きすぎる っていう危ういさの
2つの危うさがある.

歯止めが効かないっていうのは, パフォーマンスが最高の状態っていうのは本当にやばくて危機的な状態だということなので, その状態の時はうまくコントロールができなくなるということ.
そしてその歯止めが効かない状態っていうのも, 結局は環境によってヤバイとかやばくないが決まるので, 自分の想定外のことが起きて環境が激変するとそれに耐えきれない可能性があるということ.

これらをまとめると, 現状自分は自分の中だけでパフォーマンスを上げる方法を持っていなくて, 周りへの依存度が大きいということ.
最初にまとめてあるツイートにアイデンティティという言葉を入れているが, それが無いからこうなっているのではないかと思う.

で, 一番問題なのはこれを解決する方法が全く浮かばないところ.
その状態でも頑張り続けるしか無いっていうのはよくわかっていて, その状態でまあ2年間働いて来たわけなんだけども
一向に改善をする感覚はないし, むしろ悪化の一方を辿っている.
半年前ぐらいからは何かきっかけが欲しくてIT系の専門職大学院を行こうと考えたり, 最近は全く手を触れられなかった学術的な研究に関わりたいと思い始めて夜間大学を探し出したりしている.
別にその選択肢が悪いことではないんだけども, 進学の選択肢は本来そういう理論で行くところではなくて, ちゃんと具体的にやりたいことが決まった状態でないと行くべきではないだろうし, 行っても無駄になるんじゃないかなと思う.
ただそういって, そのまま仕事を続けて行くのもなんだかなあという感じではある.
最近は色々と動いていて, 関わったことのない会社の考え方を聞いたりとか, 昔憧れていたような文化を持つところで互いに話をしてみたりとかしているのだが, そういうことをすればするほど自分の大元の考えとか理念というのがわからなくなってくる.
今まで頭の中で考えて来たものも, その場その場の環境下での最適解を探し求めていただけな気がしないでもないし, もっと先を見据えて走り続けていきたい.

なんか思ってた方向とはだいぶ違うところに飛んで行った気がするけどつらくなってきたので寝ます.

生活リズムを正しい方向に持っていく

はぜです.

先月微妙に忙しかったり色々あったりで睡眠時間がバラけたり土日昼寝しまくってたりで, なんとかしていきたいという話.

6:50起床  
→  
朝ごはん作ったりシャワー浴びたりコーヒー飲んだり本読んだりインターネットしたり  
→  
準備  
→  
出社(8:30~)


→  
退社  
→  
晩御飯作って食べる  
→  
インターネットか本読む  
→  
22:00に風呂  
→  
音楽とか聞いたり静かに過ごす  
→  
23:00 寝る

こんな感じで生きていきたい. 最近は6時台に自動的に目が覚めてけど8:00ぐらいまで布団から出られない. とてもつらい.

hazediary.hateblo.jp

先日バリスタも買ったことだし, 朝にパン焼いてコーヒー飲みながらゆっくり買った本を読む時間を作りたい. 最近本を読むペースが落ちてきているのをなんとかしたい.
ということでうまく生きていくための方法を考えていきたい


指定の時間に音楽をかける

基本的に家にいるときは音楽をかけっぱなしにしているのだが, 4月に入ってからは寝るときは消すようにしている.
これをスイッチとして, 6時40分〜50分ぐらいから自動で音楽を流すようにすれば起きやすくなるのではないかという考え.

自動で流すのは, iMacを指定時間に自動で起動するように設定して, Automatorで起動時にitunesの音楽を再生するようにした.
PCを落とし忘れた時が最悪だが, 最近は毎日消して寝ているのでなんとかなるだろう.
落とさなくても指定時間に再生する機能があるのなら教えてほしい.

どうでもいいけど, 朝になったら機械が自動で色々動いてくれるの近未来感があって良い. バリスタの起動とか電気周りとか風呂とか全部自動で動いて欲しい.
俺...お金いっぱい稼げるようになったら電気をHueにしたりタイマー付きの良いバリスタ買ったり風呂が指定時間に自動で湧いてくれる家に引っ越すんだ.......

コーヒー / 食パン

買ってからは毎日朝にコーヒーを飲んでいる. 割と良い.
ネスカフェは結構好きで, UCCとか他のその辺に売ってるやつよりは全然うまいと思う. 次点でカルディ.
全然詳しくないので基本的に飲み比べとかはできないし高いコーヒーの味とかわかんないけど気にしない. ネスカフェはブラックでも美味いしこれでええんや.

食パンはかなりの頻度で買い忘れるので気をつける. 今日も買い忘れたのでさっき買ってきた.
健康診断で引っかかって以降, ほとんど米を食べていないけど割と健康. そろそろラーメンを減らさないといけない.

運動

なんてことはないただの運動不足. 先月はほとんど運動もしていなかった. というか秋〜冬の終わりまでは全く運動しなくなる. 良くない.
最近は少しずつ暖かくなってきていて, 運動をするようになってきた.

先週末は少し走ったり自転車で横浜まで行ったりした. あとカラオケ. カラオケは運動.
この調子で毎週1回ペースぐらいでちゃんとした運動をしていきたい.


上記以外にも寝られるように23時超えたらスマホの通知全部消したり とか シャワーじゃなくてちゃんと風呂に入るとかできる範囲でやっていきたい.
目的としては 本を読む時間を増やしたい / 布団にこもる時間をなんとかして減らしたい / 健康になりたい とか.
精神的につらくなってきた時に生活リズムが崩れているとぶっ壊れるので, それをなんとか回避したいというのもある.

がんばっていきていこうな

「LINE Pay APIによる決済機能を実装しよう」勉強会に行った

はぜです. いつもの雑な日記です.

【東京】LINE Pay APIによる決済機能を実装しよう というLINE Payの勉強会に行ってきました.

内容としては,

  • LINE Payの仕組みや概要の説明
  • Web上でLINE Payを実装する
  • Bot上でLINE Payを実装する
  • 懇親会

といった感じでした.
かなり細かい説明してもらいつつ, 参考のQiita記事を眺めながら進められたので特に問題なく実装ができました.

以下は自分用のメモです.


決済の流れ

  • 1: 決済予約

    • ユーザが決済手続きを始める動きをした際に行われる
    • サービスプロバイダがLINE Payに決済予約を行うリクエストを送信する
    • そのレスポンスとして, 「トランザクションID」と「決済URL」が返却される
    • トランザクションIDは, その決済手続き一つを表すためのIDで, 決済URLはその決済手続きをユーザが行うためのURL
  • 2: ユーザの決済承認

    • サービスプロバイダがユーザに決済URLを渡し, リダイレクトするとかしてそのページにアクセスをする
    • LINE IDによるアカウント認証を行い, 決済の承認を行う(=PAY NOWボタンを押す)
  • 3: 決済の実行と通知

    • ユーザによる決済の承認が行われると, LINE Payに承認したことが通知される
    • その際に送られるトランザクションIDを元に, 承認したトランザクションを特定し, サービスプロバイダに決済が行われたことを通知をする

テスト用のアカウント

  • 実際に決済を行うことができるようにするには「加盟店登録」が必要
  • この辺の手続きは飛ばしているのでわからない.
  • テストとして決済を行いたい場合, 開発用の環境が欲しい場合はサンドボックスを用意することになる
  • LINE Pay Developers : Sandbox creation

実装する上での気をつける点

  • nodeのバージョンが古いと動かないことがある
  • (ハンズオンでは)環境変数で設定するCHANNEL ID, SECRET, CONFIRM_URLは当たり前だけど間違えないこと
  • サンドボックス生成時に設定するIPアドレスも間違えると死ぬ. 2桁ずつ入力欄が分かれているためコピペしづらい
  • トランザクションIDは消失すると最悪なので気をつける.

所感/感想

仕組みとしてはかなりシンプルで, 実装が簡単.
LINE上で何か取引をする上では間違いなく最高の選択肢になるかとは思うが, Web上ではどうかはわからない. どうであれ楽に運用できるような仕組みはなっている
実際使う際の加盟店登録がどれだけ面倒臭いか, 登録に当たっての条件や制限事項によって実用性は大きく変わりそう. ひとまずやってみないとわからない

初めてherokuを使ったが, クラウドサーバとサーバレスの中間ぐらいのものでとても良い. 適当にサクッと物を作る時には最高っぽい.
色々ぐぐりながら何ができるかを調べる

LINEはセミナールームが綺麗でよかった.

LINE Community lab なる, 個人orチームで数ヶ月ぐらいでLINEを使ったアプリケーションを作るプロジェクトみたいなものが立ち上がるらしく, 面白そうなので参加しようと思っています.

おわり