にたまごほうれん草ブログ

はてなダイアリーから移行したブログ。以前のはこちら→http://d.hatena.ne.jp/emergent/

clojureコマンド実行時のclasspathにはカレントディレクトリ+'/src'を含む

ようなので、複数ファイルでオレオレライブラリを作りたい場合は、[ライブラリを使う側のファイルのpath]+/srcとなるディレクトリにオレオレライブラリの.cljファイルを置けば実行時に読み込んでくれるよ。

確認

classpathの表示は、(pprint (seq (.getURLs (java.lang.ClassLoader/getSystemClassLoader))))を使う*1

環境はMacOS 10.14.1、Clojure 1.9.0のreplを使って確認します。(ユーザ名だけhogeに変えてます)

$ pwd
/Users/hoge/dev
$ clj
Clojure 1.9.0
user=> (pprint (seq (.getURLs (java.lang.ClassLoader/getSystemClassLoader))))
(#object[java.net.URL 0x3a0baae5 "file:/Users/hoge/dev/src"]
 #object[java.net.URL 0xdb57326 "file:/Users/hoge/.m2/repository/org/clojure/clojure/1.9.0/clojure-1.9.0.jar"]
 #object[java.net.URL 0x4b14918a "file:/Users/hoge/.m2/repository/org/clojure/spec.alpha/0.1.143/spec.alpha-0.1.143.jar"]
 #object[java.net.URL 0x6d1ef78d "file:/Users/hoge/.m2/repository/org/clojure/core.specs.alpha/0.1.24/core.specs.alpha-0.1.24.jar"])
nil

1つ目のパスがそうなってますね。念のため手元のLinux(ラズパイ)でもやっておきます。

$ pwd
/home/moge/dev
$ clj
Clojure 1.9.0
user=> (pprint (seq (.getURLs (java.lang.ClassLoader/getSystemClassLoader))))
(#object[java.net.URL 0xfdd473 "file:/home/moge/dev/src"]
 #object[java.net.URL 0x1b365ed "file:/home/moge/.m2/repository/org/clojure/clojure/1.9.0/clojure-1.9.0.jar"]
 #object[java.net.URL 0xbada02 "file:/home/moge/.m2/repository/org/clojure/spec.alpha/0.1.143/spec.alpha-0.1.143.jar"]
 #object[java.net.URL 0x525575 "file:/home/moge/.m2/repository/org/clojure/core.specs.alpha/0.1.24/core.specs.alpha-0.1.24.jar"])
nil

おんなじですね。

記録をつけるためのツール

なんで日記をサボるように?

最近は日報形式でその日やったことを記録している、いわゆる自己満足日記だったのです。

しかし、手動でMarkdownを書くのもいいのですが、諸々を記録するためのよいツールが他にあったのでそちらを使ううちに、二度手間となる日記の方をサボるようになってしまったのです。

これじゃいかん!というお声もありましょう(たぶんない)ので、「記録をつけるためのブログ・日記」に取って代わったツールを紹介したいと思います。

使うようになったツール

勉強・読書の記録と可視化、Studyplus(スタディプラス)

転職して勉強することがたくさん、さらに前職のころに比べて個人的な読書時間も取るようにしているため、教科書や本を決めて実施時間・ページの進捗を記録できるStudyplusはとても便利に使うようになりました。

勉強の開始時に、iPhoneまたはAndroidアプリで、教材(教科書)を決めてストップウォッチを開始→終わったら停止すれば、それで勉強を記録できる簡単設計。

ちなみに教材は必ずしも教科書でなくてもいいし、本でなくてもいい(自分で設定できる)ので、こまめに進めないといけない仕事がある人なども使えるのではないかと思います。

学習総合サイト Studyplusスタディプラス)

日常の習慣を記録 Toodledo Habits

タスク管理ツールToodledoはある程度有名かと思いますが、タスク管理以外のHabitsという機能が習慣の管理に便利です。

実施有無・数値・レーティングのどれで記録するかを選べるので、とりあえず毎日続けたいものができたらこれで記録すると便利です。

f:id:emergent:20181105011241p:plain

Habits Dashboard ✓ Toodledo

歩くときはウォーキングの距離・時間を記録

ご存知Runkeeperですが、Run以外にもWalkingやCyclingなどいろいろなActivityのモードを選べます。

私は通勤で少し長めに歩くようにしているので、毎日Runkeeperで記録をつけています。

Runkeeper - Track your runs, walks and more with your iPhone or Android phone

体重管理は、かんたんシンプル・ダイエット

iPhoneアプリでは以前から有名だったツール。最初はToodledo Habitsで体重を記録していましたが、体重は専用のツールを使ったほうがよさそうです。

シンプル・ダイエット 〜 記録するだけ!かんたん体重管理 〜

まとめ

記録つけてても、サボった記録がつくばっかりだと意味ない!ので、日々ツールに律せられながら生きましょう。

10月22日のあれこれ

今日のひとこと

  • 一週間ぐらい日記をサボってしまったがきっと仕事を一生懸命頑張っていたのだろう。

今日やったこと(仕事以外)

学んだこと・困ったこと・共有したいこと

  • 学)うーむ

10月14日のあれこれ

今日のひとこと

  • 5日間ぐらい日記をサボってしまったがきっと仕事を一生懸命頑張っていたのだろう。
  • 転職してから1ヶ月半ぐらい経って、以前より少し朝型の生活になったせいか、夜は12時を過ぎると非常に眠い。朝はそんなに早くはないのだけども。
  • ここのところClojureがすごく気になる。Clojureで何か作りたい。

今日やったこと(仕事以外)

学んだこと・困ったこと・共有したいこと

  • 学)Clojureas->とかforとか

10月4日のあれこれ

今日のひとこと

  • 仕事が忙しくなってきた(タスクがいっぱい積み上がった)

今日やったこと(仕事以外)

  • 運動
    • ラジオ体操

学んだこと・困ったこと・共有したいこと

  • 学)ラーメン食べ歩きをすると着実に体重が増える