ごらくらいふ

プログラミングしたりゲームしたり

dateコマンドで日付からミリ秒までフルに取りたい!

date +"%F %T.%N"
# 2017-11-09 12:35:31.678900889

%F%Y-%m-%dと同じで、%T%H:%M:%Sと同じ。 なので、「日付はスラッシュ区切り、時間はコロンなし」というフォーマットにするなら以下のように書く。

date +"%Y/%m/%d %H%M%S.%N"
# 2017/11/09 123531.678900889

雑感

man dateから/sameすると色々あった。

参照元

DDDエリック本を読んでいる:RepositoryとFactoryの関係

DDDについてEric本を読んでいたところ、オブジェクトの生成やシリアライズについての指針が参考にできそうだったので、メモ。

  • Factoryはオブジェクトのライフサイクルにおける始まりを処理し、リポジトリは中期から終わりを管理するのを助ける。
  • リポジトリはデータに基づいてオブジェクトを生成するので、多くの人はリポジトリのことをファクトリであると考える。
  • しかし、格納されたオブジェクトを再構成することは、新しい概念オブジェクトを生成することとは異なる。
  • リポジトリのクライアントには、オブジェクトがメモリにあると錯覚させなければならない。
  • リポジトリがオブジェクトの生成をファクトリに委譲すれば良い。

重要なのは末尾の項目で、リポジトリシリアライズされたデータを永続化媒体から(アダプタを介して)取得して、ファクトリに流し込んであげればよい。

雑念

  • (いや、アダプタを介して取得したデータが全て特定のシリアライズに統一して良いのだろうか…?)
  • (永続化媒体ごとにアダプタがあるなら、アダプタごとにシリアライズの方式が異なる…?)
  • (つまりアダプタがファクトリを持つ?)
  • (むしろリポジトリがアダプタ…?)
  • (ファクトリのパターンはファクトリクラスでもファクトリメソッドでもビルダーでも状況に応じてチョイスしてね、みたいな感じだった)
  • Kindleのハイライトめっちゃ便利だ…)

参照元

エリック・エヴァンスドメイン駆動設計

  • 第2部 モデル駆動設計の構成要素

より

エリック・エヴァンスのドメイン駆動設計 (IT Architects’Archive ソフトウェア開発の実践)

エリック・エヴァンスのドメイン駆動設計 (IT Architects’Archive ソフトウェア開発の実践)

Git Bash on Windowsでパス区切り文字をバックスラッシュに変換する(そしてExplorer.exeでカレントディレクトリを開く)

Git Bash on WindowsからExplorer.exeを呼び出す場合、パスの書式をWindowsに寄せておく必要がある。

結論

# aliases
alias convertFullPathToWindowsFormat='sed -e "s/^\\/\\([a-zA-Z]\\)\\//\\1:\\\\/" | sed -e "s/\\//\\\\/g"'
explorer /e,$(pwd | convertFullPathToWindowsFormat)

構成要素

/\に変換する。

cd ~
pwd | sed -e "s/\//\\\\/g"
# \c\Users\name

ドライブレター対応

/c/hogehogeからc:/hogehogeに変換する

cd ~
pwd | sed -e "s/^\/\([a-zA-Z]\)\//\1:\\\\/"
# c:Users/name

動いているプロダクトが正しい。

本当はこの硬いプロダクトをもっちり弄ってもちもちにしてやりたい。 でもそんなコードは他の人にとっては要らない。なぜなら金にならないから。 機能として売り込むこともできなければ、きっとコスト削減にもならないのだから。

issueがなければ書いてはいけない。課題でなければissueにしてはいけない。

書いたならばレビューを受けさせる必要がある。

金にならないコードを書くことと、ただツイートをすること、どちらが無害かと言えばツイートでもしてることだ。 同じ金にならないにしても、レビューコストをチームに払わせないのだから。

雑記:PSVRが欲しい。(せめて定価で。)

PSVR、ほしい。もう発売からどれだけ立つよ。(2016-10-13発売。もう1年!)

新モデルも発売間近。各地の予約はとうに枯れ果ててる。

ソフトメーカーにはもう少し耐えていてほしい。売上が上がらないことに、イベントトラッキングがインストール指標ばかりであることに。 ハードだけ確保して使用しない購入者から、ユーザーに浸透するときが来る…はずだから…。

ハードが売れてもソフト側にお金が回らずに萎えてしまったらプラットフォームとして死んでしまうのではよ、浸透はよ。俺のVR体験を奪わないでくれ。

とりあえずユーザーとしてできることとして、ソフトだけ先に買っておこうって。 PSVRを買う意思があることを、ソフト購入という形で示しておけば、粘り強くPSVRを出荷してくれると思う。

デレマスVRをはやくやりたいんだよ!!!

あと近年まれに見る完成度の釣りゲーin VR。楽しみです。とりあえずソフトだけは買います。

Logicoolの新作トラックボールマウス「MX ERGO」買った。このシリーズ好き過ぎるから最高以外の感想が出ない。

これ

www.logicool.co.jp

LogicoolトラックボールM570(t)の信者なのでほいほいと。

特徴

  • トラックボール
  • m570と比べ、ボタンが3つ増えた
    • ボール脇に1つ(精度切り替え用)、スクロールホイールを左右に傾けるスイッチ
      • Logicool Optionsでカスタマイズ可能
  • 従来(m570)と同じ使用感の角度と、そこから20度ほど傾斜をつけた角度で使用できる
    • 地板の鉄板とマグネットでこの角度調整を実現しており、切り替えは少し力をいれて傾けるだけ
  • バッテリー内蔵、充電式
    • microUSB端子
  • m570は全体がプラスチック製だったが、MX ERGOでは手のひらが当たる部分がラバーで手に馴染むようになった
    • 手が吸い付く感じで収まりがよい

所感

  • 精度切り替えボタンは親指の関節で押す感じ
  • 左クリックの脇にある2ボタンは、細く・固くなったため、しっかり指を乗せて押す感じ
    • m570は人差し指の腹で押す/関節で押す、と押し分けることができたが、MX ERGOでは辛い
    • 誤爆は抑えられたが、コピー&ペーストを割り当てるにはしんどいかな
  • スクロールホイールの左右にもボタンが増えた
    • macではデスクトップの切り替え(左・右)を割り当てた
  • クリックボタンのスイッチ音は、特段かわりなく煩いとは思わなかった(耳が遠くなっただけかも
  • m570はトラックボールを下部の穴から指で押して取り出せたが、MX ERGOは距離がのびて手で取り出せないと思う。
    • 細いボールペンや、鉛筆の尻で押し出すことになりそう
    • まだガツガツ使ってないので、ボールを取り出したい局面に至っていない。もしかしたらボールを回して汚れを剥がすことを想定しているのかも。
  • 乾電池方式じゃなくなったので、一緒にunifiliyngレシーバーのしまう場所がなくなった!(とりあえずm570に収納した)
  • Logicool Flowの体験が良すぎる
    • 対応のキーボードも買って連動したい

従来と同じ角度のモード(以下、0度)での所感

  • 俯瞰したフォルムはあまり変わらない
  • 角度切り替えギミックが付いた関係か、高さが増した
    • m570を上から覆うように持っている人は、違和感なく使えると思う。パームレストと椅子の高さで調整してもいい
    • 手首の付け根を机にべったり付けて持っていた人は、ちょっと違和感があるかもしれない。

エルゴノミクスに配慮した傾斜増しモード(以下、20度)での所感

  • ただでさえ手首の負担に配慮したトラックボールが更に配慮してしまった
  • 手の重心がMX ERGOに乗らなくなるので、肘置きのある椅子かパームレストがあるとなお良いと思う

画像

上から撮影(MX ERGO 0度)

地板

0度

20度

一週間くらい使った感想としてはやっぱりいい感じだよ。