2016年07月21日

何があったのか

レンタカーでホイールを破損すると本当に面倒なことになります。もともと装着していたホイールと別のものに交換すると、回転が偏るため、長距離運転には困ります。かといって、全部のホイールを交換するにはさらに費用がかさみます。
私はこのトラブルを奈良で起こしてしまい、やむなく旅行を打ち切って名古屋に引き返すことにしました。

経緯

7月16日〜18日の3連休で、レンタカーでの中国地方旅行をすることにし名古屋を出発したのだが、奈良の天理市内で道を間違えてUターンする際、道路の溝にタイヤが脱輪、その拍子でタイヤがパンク。
レンタカー付属のロードサービスに助けにきてもらえはして、そのときにスペアタイヤへの交換はしたのだが、スペアタイヤは長距離運転向けではなく、このままでは名古屋に帰るのも厳しそうという判断に。しかもその際、ホイールが大きく曲がっていることも判明。最悪、名古屋までのレッカーを依頼する可能性も考えた。
とりあえず、ホイールの取り扱いのある店がある近隣の都市ということで大和郡山市まで移動。しかしレンタカーのホイールは純正スチールホイールであり、基本的には取り寄せになるということが判明。さらに困る。しかし2軒目に行った店で、近い仕様でわずかにサイズの違うホイールがあったので、それを付けてもらえることに。とはいえ少しサイズが違うということで、旅行の続行は断念し名古屋に帰ることにした。
レンタカーでこういう事態のため、タイヤ・ホイール代の出費のほか休業補償も支払うことに。日帰りで帰ってきて交通費4万円程度(特にトラブルがなければ1万円程度になるところ)という非常につらい一日になりました。

反省と対応

このときは気持ちの浮つきがあったと思ってます。普段だったら「ここ一度でUターンしきれないかも」とか考えるところで何故かそういう考えにならなかった。今回は単独事故で人身の事故もなかったからよかったけど、もし人身事故や、他の車との接触その他他者の物品の損壊などがあればもっと大変だったわけで。

3月に北海道で運転した際、「このガソリンの量なら何とか次のガソリンスタンドまで行けるかな」という甘い判断でガソリンがなくなりロードサービスを呼んだというのがあり、自分に甘い判断をしてはいけないという反省があったのだが、それが全く生きなかった。

ということで、以下の条件が満たせない限り、自動車の運転は無期限休止します。

  • 明確にタスクが決められないような場合は、交通手段としてレンタカーは選択しない。距離によって公共交通機関ないし自転車で検討する。
  • 当日焦りを生まない程度には気持ちが準備できている。それができなければ直前であってもレンタカーでの旅行は取りやめる。具体的には、
    • 事前に旅行計画の大枠が立っている。長距離運転の場合であれば、少なくとも、どの都市を訪問する予定なのか、おおよその所要時間、もし予定が狂って訪問できない都市がある場合はどうするか、は決めておく。
    • 出発前日も仕事をかなりしないとならないことが見込まれる場合はレンタカーでの旅行は取りやめる。

補足1

上記と重なるのですが、今回気持ちが整理できていなかったのは、仕事が忙しくて準備を整えるのが難しく、にも関わらず旅行しようという計画を実行することを優先してしまったのが原因と考えています。今後は極力、旅行計画が立ってから日取りを決めるようにしたいところです。

補足2

今回行こうとして行けなかった中国地方は、別途列車で訪問することを考えています。また今回途中まで移動した地域(三重県内・奈良県内)についても大した観光ができなかったため、こちらについては上記の条件を満たす状況にてレンタカーで再訪問することを考えています(場所が場所なのでレンタカーでないと観光しにくい)。



maraigue at 23:50コメント(0)トラックバック(0)旅行 

2016年06月30日

※2016.7.22追記:ImageMagickについて追記(使い物にならなかった)

私はこれまで、Windows環境において、MinGW(Windows環境で、Unix系OS向けに書かれたソースコードをコンパイルできるようにする)やMSYS(MinGWによる、Unix系OSでよく用いられるコマンドラインツールをWindowsでも利用可能にしたもの)にお世話になってきた。具体的には、

  • WindowsでRubyを利用するにあたって、C言語で書かれたソースコードをコンパイルする必要のあるライブラリ(gem)を利用する場合、Visual Studioでもできないことはないが、対応していないライブラリが多数あったり、何かと面倒なこともあったりするため、MinGWが使えると便利であった。RubyInstaller for Windowsという、MinGWとの連携が容易なRubyインストーラが公開されていたので、それを利用していた。
  • Windowsでgitを利用するにあたって、MinGWを用いずに作られたものもあったのだが、Linuxなどと操作感が近いほうがよかったため、MSYSgit(現:Git for Windows)を導入していた。

ただ、そのたびに別個にMSYS環境が導入されるというのが面倒になってきて、PATH環境変数もごちゃごちゃしてきた。そこで以前教えてもらった、MSYS2を導入することに。

MSYS2は、単にMinGW(ビルドツール)やMSYS(コマンドラインツール)として使ってもよいのだが、一つの強みはPacmanというパッケージ管理システムが利用可能なこと。これで必要なツールをインストールしてしまえば、ツールごとに個別にMSYS環境を導入するなどの手間は当然不要。
これでひとまず、Rubyとgitをインストールしたほか、ffmpeg(動画変換)とImageMagick(画像変換)もWindows版を個別にインストールしていたものを消してMSYS2(Pacman)でインストールした。

【2016.7.22追記】ImageMagickを使ってみたのですが、まったく機能していないことが判明。例えばJPEG画像に対してidentify(画像情報を取得)を打つと、「no decode delegate for this image format `JPEG'」というエラーメッセージが出てしまう。これはImageMagickがライブラリの所在地を見つけられない場合に出るエラーらしいのだが、MSYS2やpacmanでこれといった対策は見つからなかった。結局、Windows版をインストールし直した。

MSYS2の環境構築はこのあたりが参考になります。

余談

MSYS2には標準でBashが使えるようになっており、またPacmanでインストールすればzshなども利用できる(参考:MSYS2でWindowsにzsh環境を導入する - Qiita)。ただ私は普段は、不都合がない限りコマンドプロンプトで作業をしている。シェルのキーに対する反応がこっちのほうが速いし。
で、なのだが、コマンドプロンプトでもMSYS2で導入したツールはそのまま利用可能なのである。単に環境変数PATHに追加しておけばよい。私の環境だと、C:\msys64\usr\bin, C:\msys64\mingw32\bin, C:\msys64\mingw64\binの三か所を追加している。

20160630-cmd
↑こんな具合に普通に使える



maraigue at 00:19コメント(0)トラックバック(0)コンピュータ全般 

2016年04月26日

一人暮らしをし始めてから1年。
最初、生活における消耗品を「これくらい買って使い切れるだろうか…」とか考えながら買ったり、最小の量のものを買ってもなかなか使い切らなかったりと、状況をまとめてみました。

生活の状況

  • だいたい1日2食を自炊する(平日昼は食堂が主)
  • 1年のうち家で寝た日数:320日くらい(帰省や長期出張などのぶんが減っている)

消費状況

有料の可燃ゴミのゴミ袋(10リットル):3週間くらいに1枚
がさばるゴミはプラスチックゴミとして出せるものが多いため、食品くずやティッシュなどが主なゴミなわけだが、それだけだとそんなに増えない。なお食品くずは、臭いが出ないよう、ゴミ捨て場に出すまでは冷凍庫保管している。
キッチンペーパー:9か月くらいに1ロール
電子レンジで、冷凍の肉やスーパーで買った揚げ物を温める際に敷いている。あってほしいものであるのだが、そこまで頻繁には使わない。
ラップ(22cm×50m):4か月くらいに1本
作り置きしたものを冷蔵庫に入れるのが主。
食器洗剤:6か月に1本
案外減らないと感じたもの1。自炊するので食器だけでなく調理器具を洗うぶんの消費もあるのだが、それでもなかなか減らない。
ボディーソープ、シャンプー(リンスイン):5か月くらいに詰め替え用1袋
案外減らないと感じたもの2。
洗顔フォーム(180ml):1年1か月くらいに1本
案外減らないと感じたもの3。引っ越してすぐに買ったものがもうすぐ使い切りそうというところ。
衣料洗剤(液体):3か月くらいに詰め替え用1袋
これは結構減っていったこともあり、安売りのときにまとめて買うようにした。


maraigue at 23:58コメント(0)トラックバック(0)随想 

2016年04月03日

去る3月19日(土)に、札幌C++勉強会 #11 - connpassを開催しました。

現在、主に運営をしているメンバーが札幌にいない状況ではありますが(私と@ignis_fatuusさん)、二人が時折札幌に戻るときに実施しています。その前の第10回(2015年12月26日)も、二人が帰省するタイミングを狙って計画したものでした。
※なお、「札幌やその周辺に住んでいて、C++勉強会を計画したい!」という方がいましたら歓迎ですのでご一報ください。

私の発表

名古屋に移って研究の内容が大きく変わったわけなのですが、そこで行うようになったことをテーマに話しました。

「関数の最小化」は、中学や高校を含め、数学ではよく出る問題です。これはより一般には「最適化」と呼ばれる問題にあたり、機械学習の分野でもこれは非常に重要な考え方であるという話です。

最近「ビッグデータ」などと呼ばれるように、データがたくさん手に入るようになったことから、それを分析する手段の開発も重要となっています。人間は「事例を見て、行うべき判断などを知る」という「学習」を行いますが、コンピュータ上で手段は違えど「事例を見て、行うべき判断などを知る」ということを行わせる、というのが「機械学習」です。例えば迷惑メールフィルタを作ることを例に取ると、迷惑メールになる条件を人手で記述するのではなく、ユーザの迷惑メール報告をもとに構築するのが機械学習の考え方ということになります。

機械学習の実際の計算においては、手法によって違いはありますが、簡略化して書くと以下のような手順を踏むことになります。

  • 結果(上記の例でいえば「迷惑メールであるか否か」)を表現する関数やデータ構造の形(例えば、「データを x, y としたとき、 p(x, y) = ax + by + c の形で書ける関数」)を決める。
  • 関数 p(x, y) が、すでに持ち合わせているデータ(訓練データという。上記の例でいえば「すでに報告されている迷惑メール」)からどれだけ離れているかを表す関数 f(a, b, c) を作る。
  • f(a, b, c) を最小化するような a, b, c を求め、p(x, y) に適用する。これが「訓練データをもっともよく反映した、結果を表現する関数」となる。

特に機械学習を行うという観点では、その関数 f(a, b, c) の最小化が実際に計算できないのでは、学習結果も得られないことになってしまうため、どんな関数であれば計算が容易なのか判断することは非常に大事です。詳細は資料中で解説していますが、この問題を考えるにあたって重要なキーワードとして、「極小値」や「凸関数」というものがあります。

C++のソースコードも用意しています(github: maraigue/sapporocpp-20160319)。簡単な実装ではありますが、機械学習の簡単な例である線形分類(「男性と女性」など2種類に分けられるデータ点を、2次元なら直線、3次元なら平面…で分ける最良のものを出力する)のサンプルも用意しています。



maraigue at 01:52コメント(0)トラックバック(0)イベントプログラミング 

2016年03月29日

学生時代の研究室所属当時を含めてずっと、職場/研究室にペットボトルのお茶を常備している私。
お茶は普通の緑茶が中心だったのだが、昨年12月ごろから試験的に、ノンカフェインのお茶(具体的な商品名で言えば爽健美茶や十六茶)を飲んでみることにした。

理由は、「最近、お手洗いに行く頻度が多くなったかな?」と感じたため。それだったらノンカフェインのほうがいいのかな?と思い。

結果としては、
  • お手洗いに行く頻度は実際減った。
  • ただ、お茶を飲む量自体が増えた。(カフェインが入っていない→薬理的に気分に影響しにくいから?)
    • 「人工甘味料の入った食べ物を、物足りなくて過剰に食べてしまう」という話を聞いたことがあるが、それに似ているのかも。
  • しかもそのおかげで、胃に空気がたまりやすくなった。
ということで、結局2月下旬ごろから普通の緑茶に戻しました。

いい経験ではあったかなと思います。自分は結構カフェインに依存してるのかも…ってこともわかりましたし。

maraigue at 01:36コメント(0)トラックバック(0)一般随想 

2016年01月16日

DSCN3566x

昨年4月に引っ越してから今までは、譲り受けた冷蔵庫(90リットル)を使っていたのだが、もう少し大きいものがほしくなり、中古家具の店で146リットルの冷蔵庫を購入。

秋から仕事の進みが速くなってきて忙しい時期も増え、
● 買い物に行くのが面倒なので、まとめて買っておきたい
● 何度も調理をするのが面倒なので、何食分か作り置きしたい
ということも多くなってきた。
しかしそれまでの冷蔵庫では、食材を入れておける量についても、作り置きした食事を入れておける量についても、制約が大きいと感じるようになってきた。

これで食事についての手間を和らげて、仕事だったり趣味だったりにもっと力を注げるようにしたい。

maraigue at 21:49コメント(0)トラックバック(0)随想 

2015年12月20日

ビエネッタ チョコレート | アイスクリーム | 商品紹介 | 森永乳業株式会社

ケーキ型のアイス「ビエネッタ」。

これのCMを小さい頃に見て(小学校に上がるか上がらないかの頃)、「食べてみたい!」って思ったのをよく覚えている。当時は「エスキモー」ブランドだった。
CMで出てきた、これの切り口が「おいしそう!」と思わせてくれた。
ただ、当時はおねだりとかしたわけでもなく。

その後も、ビエネッタの印象こそ心に残り続けていたが、食べる機会はなかった。

おととい、近所のスーパーを見ていると、クリスマス向け商品のコーナーにこれが並んでいた。しかもポイント還元で実質3割引。買うしかなかった。

20151220_002522
20151220_002629

実際おいしかった。チョコが層になっているのがなかなかいい。
という、二十数年越しで味わったという話でした。

maraigue at 00:46コメント(0)トラックバック(0)随想 

2015年12月02日

Firefoxでは「スマートキーワード」といって、アドレスバーに「キーワード 単語」と入れることで対応するサイトに移動できる、というものがある。例えば「https://www.google.co.jp/search?q=%s」というURLに対して「g」というキーワードを割り当てておくと、アドレスバーに「g Firefox」と入力することでGoogleで「Firefox」が検索できるようになる。

さて、登録したスマートキーワードはブックマークとして見られるようになるため、ブックマークのオプションから変更できる。
20151202Firefox
しかし先日、なぜかキーワード欄が消えたブックマークがあったためにそれを再度設定しようとしても、設定ができないという状況に見舞われた。別のキーワードを設定すれば大丈夫ではあったのだが。ブックマークをバックアップして出力されたJSONファイルを編集し、それを再度読み込んでもだめだった。

でMozillaのサポートサイトで調べてみたら、現在のFirefoxはどうやらスマートキーワードのキーワード一覧を別途管理しているようで(参考:Bookmarks keyword content missing. | Firefox Support Forum | Mozilla Support)、そこと整合性が取れないのが問題だったのだと推測。このページにあった解決策のうち、ブックマーク関連のデータベースを修復してくれる「Places Maintenance」を使うと問題が解決した。
【簡単な使い方の説明】上記ページでアドオンをインストールしたら、「アドオンマネージャ」→「拡張機能」→「Places Maintenance」→「設定」 ここでウィンドウが表示されるので、「Preset」を「All」にしてから「Execute」を押す。これで修復が実行される。

maraigue at 01:43コメント(0)トラックバック(0)コンピュータ全般 

2015年11月23日

20151123_002135

実家に住んでいた当時は、パソコンの音は基本的にイヤホンで聞いていたのだが、今年4月に一人暮らしを始めてからは、家ではイヤホンを基本的には使わなくなった。

今まではずっとパソコン(ノート)から流れる音をそのまま聞いていたのだが、

  • 音量に限りがあるので、音を聞きながら料理等の作業をすると音が聞こえにくかった(これは一人暮らしを始めてまもなく気づいた問題点だった)
  • そろそろ音の貧弱さをどうにかしたくなった(最近)
ということで、個別のスピーカーを購入。

結論から言うと、かなり快適になった。3,000円くらいのスピーカーだが、目立って音が違うし、音量も出せるようになったし。ちなみに、机の上にはスピーカーを置くちょうどいいスペースがなかったので、座席真後ろのカラーボックスの上に置くことにした。

【余談】

ところで、店でスピーカーを選んでいて、「アクティブスピーカー」「パッシブスピーカー」って呼び方があるのだということを知った。前者は電源に繋いで音を大きくできるもの、後者はそうでないもの。



maraigue at 01:31コメント(0)トラックバック(0)コンピュータ全般 

2015年10月21日

知っている方には何のことはないのでしょうけど、「ぐぐれなくて困った案件」として。

PHPでは通常、<?phpで始まって?>で終わる部分をPHPのプログラムが書かれた部分として実行し、残りの部分(典型的にはHTMLを書く)をそのまま出力するのだが、以前使っていたPHPの設定では、それに加えて<??>でもPHPのプログラムと扱っていたのである。

VPSでPHPを別途インストールした際、この後者の方法が使えなくなっており、本来PHPプログラムであるものがそのまま出力されたりなど困ったことになった。

その際、最初は「PHP クエスチョン」などでぐぐってみたのだが(「<?php」でぐぐっても「php」とみなされてしまう)それらしい答えは見つからなかった。ではどうしようと次に見たのがPHPの公式マニュアルだったのだが、そこで「言語リファレンス」→「PHP タグ」を開くとちゃんと書いてあった。
PHP では、短い形式の開始タグ <? も使えます (しかしこれはおすすめしません。というのも、この形式のタグは php.ini で short_open_tag を有効にするか --enable-short-tags オプションつきで PHP を configure した場合でないと使えないからです)。
PHP: PHP タグ - Manual
ということで、php.ini中に「short_open_tag = On」という一行を加えて解決。

maraigue at 00:40コメント(0)トラックバック(0)プログラミング 
livedoor プロフィール
  • ライブドアブログ