河野議員の業績:出張時のマイレージ関連ルールの見直し

ネ申エクセル問題への対応が再びありがたかったのでそっちメモしようと思っていたけど、そういえば、マイレージ周りも河野議員の仕事の結果だったなぁと思いそちらをメモ。

next49.hatenadiary.jp

出張でマイルがたまったら、そのマイルをどこかの出張に使えばそれでちゃらで良いと個人的には思っている。この話で私にとって何が面倒かといえば、出張関連のためにいちいちマイルをついていないカード用意しなければならないこと。マイルは日々のお買い物で貯めているので。組織全体にとっては、これを確認するのに費やす手間が無駄と感じる。

河野議員ら行革事務局の仕事結果。
www.taro.org

~前略~

つまり、旅費を百円安くするために時給千円の職員が莫大な時間をかけてチェックしているというのが実態でした。

そのため、付加価値の低い業務に要している時間をより付加価値の高い業務に振り向けることが真に国民のためになり、また、経済的でもあるとの理念に立ち、トータルコストを最小化するための職員の意識改革と業務処理の改善を行いました。

~中略~

航空機を利用した出張をするときには、職員に私用ではない公務向けのマイレージカードを作らせていましたが、職員の多くは公務出張で活用できるほどマイレージを貯められていませんでした。

しかし、それでもカードを作らせ、煩雑な管理が発生していました。

公務出張により取得したマイレージを次回以降の出張でも使用することが見込まれる者に限りマイレージカードを作成させることに統一します。

また、公務出張により取得したマイレージを私用カードに登録することは自粛するように求めますが、それをしていないことを確認することはやめます。

~後略~

たぶん、これに関係して以下のようになっていると思う。

長崎大は教職員に対し、出張でたまったマイルポイントは特典航空券に交換し、別の出張で利用するよう促していた。

せこい! マイル利用出張で旅費26万円受領 長崎大の50代准教授を停職1カ月 - 産経WESTより)

関連過去エントリー

next49.hatenadiary.jp

知らないことばかり:赤い宮様、核兵器禁止条約

Session 22聞いていると自分が知らないことは多いなぁと改めて感じる。

核兵器廃絶は世界世論だと思っていたので(アメリカもロシアも段階的に核の削減しているし)核兵器禁止条約がパワーバランスを崩す外交政策とは思わなかった。なんで、日本は棄権して、禁止条約の会合参加権を得なかったのだろう。
www.tbsradio.jp

www.asahi.com


三笠宮さまが亡くなったニュースは聞いていたけど「古いおじいちゃん皇族がまた一人亡くなったな。長生きだったな」ぐらいの感想だった。こんなエピソード満載な方だったとは。極力政治的発言をせずリアルアイドル(偶像)としての皇族のイメージが強かったのだけど、それはここ20~30年くらいの話だったのか。
www.tbsradio.jp

2017年度就職活動の開始時期(建前)

学内資料で知ったけど文科省のWebサイトでリリースされているのね。

平成29年度(2017年度)の採用スケジュールは今年と同じとのこと。

  • 広報活動の開始時期:3月1日
  • 採用選考活動の開始時期:6月1日
  • 正式内定開始時期:10月1日

今年から3年生の授業担当しているので実感ないのだけど、結構、受講しているのは時期の変更があるからなのか。確かに12月に活動開始とかの時期は3年後期は授業いれないのがデフォルトだった気がする。

なお、平成30年度以降の卒業・修了予定者の就職・採用活動については、今後検討していくことになるが、今般の時期変更により、学部3年次の授業への出席状況が改善した等の成果が現れていることを十分に踏まえながら経済団体等と意見交換を重ね、議論を積み上げていくこととする。
文部科学省:平成29年度大学、短期大学及び高等専門学校卒業・修了予定者に係る就職について(申合せ)より)

他にも内定を出した後に締切のある課題(最近はe-Learningとかが多い)とか、1週間ぐらいの研修とかを12月~2月にかけて課さないでほしい。まだ、給料払っていないのだから。卒業研究の追い込みと被ってしまって学生が大変そう

(3)職業の選択の自由を妨げる行為やハラスメント的な行為について
 必要な人材確保に熱心になるあまり、
 1) 広報活動開始前又は広報活動期間中に早期に内々定を行うこと
 2) 正式内定開始日前に内定承諾書、誓約書をはじめとした内定受諾の意思確認書類の提出を求めること
 3) 6月1日以降の採用選考時期に学生を長時間拘束するような選考会や行事等を実施すること
 4) 自社の内々定と引き替えに、他社への就職活動を取りやめるよう強要すること
 等の学生の職業の選択の自由を妨げる行為や、学生の意思に反して就職活動の終了を強要するようなハラスメント的な行為は厳に慎むよう企業等に対して要請する。
 また、予め示された必要書類以外のものを選考の最終段階や内々定後に求めることがないように、必要書類を含む採用選考情報をあらかじめ明示することも要請する。
文部科学省:平成29年度大学、短期大学及び高等専門学校卒業・修了予定者に係る就職について(申合せ)より)

「error: object file .git/objects/~ is empty」の対処法

いろいろな方が書いているけど、自分用に書いておかないと忘れちゃうのでメモ

経緯

いつもどおり、作業開始前に「git pull」したら以下のエラーが表示された。

% git pull
error: object file .git/objects/f6/fac924ccdbc54addeadac5149bd3c45a45d7ad is empty
fatal: loose object f6fac924ccdbc54addeadac5149bd3c45a45d7ad (stored in .git/objects/f6/fac924ccdbc54addeadac5149bd3c45a45d7ad) is corrupt

状況としては、昨日は仕事場のPCで作業したあとにgit push、家に帰って追加作業した git push、で、今日、仕事場で上記のエラー。つまり、リモートリポジトリが最新状態で、ローカルリポジトリの方が古い状態。なので、リモートリポジトリからpullできるようにするのが今回の目標

対処法

日本語のページもいろいろあったのだけど結局以下のページのとおりに進めたら解決した。

Gitで管理しているディレクトリーを ~/WorkDirとする。まず、~/WorkDir/.gitをコピーして保存。

% cd ~/WorkDir
% cp -pr .git .git-old

続いて fsck を実行。

% git fsck --full
Checking object directories: 100% (256/256), done.
error: object file .git/objects/d5/eec8592ee4d8fb6a5e6293e3bcf8611c024882 is empty
fatal: loose object d5eec8592ee4d8fb6a5e6293e3bcf8611c024882 (stored in .git/objects/d5/eec8592ee4d8fb6a5e6293e3bcf8611c024882) is corrupt

emptyなobjectファイルを削除する。findコマンドを使ってまとめて消すことができる。

%  find . -type f -empty -delete -print
./FETCH_HEAD
./objects/f6/fac924ccdbc54addeadac5149bd3c45a45d7ad
./objects/d5/eec8592ee4d8fb6a5e6293e3bcf8611c024882

再び fsck。他のエラーはあるけどemptyファイルに由来するエラーはなくなった。

% git fsck --full
Checking object directories: 100% (256/256), done.
error: .git/objects/pack/pack-55bbe2351e8cd70def9bc91271a9d66be731ec66.pack SHA1 checksum mismatch
error: index CRC mismatch for object 8b06f3e6621e49ae6feefc517bd808fdf90d926b from .git/objects/pack/pack-55bbe2351e8cd70def9bc91271a9d66be731ec66.pack at offset 64243959
error: inflate: data stream error (invalid stored block lengths)
error: cannot unpack 8b06f3e6621e49ae6feefc517bd808fdf90d926b from .git/objects/pack/pack-55bbe2351e8cd70def9bc91271a9d66be731ec66.pack at offset 64243959
error: inflate: data stream error (invalid stored block lengths)
error: failed to read delta base object 8b06f3e6621e49ae6feefc517bd808fdf90d926b at offset 64243959 from .git/objects/pack/pack-55bbe2351e8cd70def9bc91271a9d66be731ec66.pack
error: cannot unpack 19b3bbceea4399c0c2d878701a846e9a4211f45e from .git/objects/pack/pack-55bbe2351e8cd70def9bc91271a9d66be731ec66.pack at offset 69361275
Checking objects: 100% (76960/76960), done.
error: HEAD: invalid sha1 pointer f6fac924ccdbc54addeadac5149bd3c45a45d7ad
error: refs/heads/master does not point to a valid object!
error: refs/remotes/origin/HEAD does not point to a valid object!
error: refs/remotes/origin/master does not point to a valid object!
notice: No default references
error: d5eec8592ee4d8fb6a5e6293e3bcf8611c024882: invalid sha1 pointer in cache-tree
missing blob 8b06f3e6621e49ae6feefc517bd808fdf90d926b

「error: HEAD: invalid sha1 pointer f6fac924ccdbc54addeadac5149bd3c45a45d7ad」HEADで削除したコミットを参照している。エラーがでることを確認する。

% git reflog
fatal: bad object HEAD

「f6fac924ccdbc54addeadac5149bd3c45a45d7ad」の直前のコミットを探す。

% tail -n 2 .git/logs/refs/heads/master 
97c909ae5ec753483681864415646bec2375bf33 950b6e5b37e239dd8948b5e23807701dbd7abcea next49 <next49@dummy.com> 1477839127 +0900	commit: Dummy message1
950b6e5b37e239dd8948b5e23807701dbd7abcea f6fac924ccdbc54addeadac5149bd3c45a45d7ad next49 <next49@dummy.com> 1477839162 +0900	pull: Dummy message2

2行目の最初のハッシュ値が直前のコミットを指すもの。コミットの内容を確かめる。

% git show 950b6e5b37e239dd8948b5e23807701dbd7abcea
~内容略~

実際に存在するコミットなので、HEADをこのコミットに置き換える。

% git update-ref HEAD 950b6e5b37e239dd8948b5e23807701dbd7abcea

もう一度 fsck

% git fsck --full
Checking object directories: 100% (256/256), done.
error: .git/objects/pack/pack-55bbe2351e8cd70def9bc91271a9d66be731ec66.pack SHA1 checksum mismatch
error: index CRC mismatch for object 8b06f3e6621e49ae6feefc517bd808fdf90d926b from .git/objects/pack/pack-55bbe2351e8cd70def9bc91271a9d66be731ec66.pack at offset 64243959
error: inflate: data stream error (invalid stored block lengths)
error: cannot unpack 8b06f3e6621e49ae6feefc517bd808fdf90d926b from .git/objects/pack/pack-55bbe2351e8cd70def9bc91271a9d66be731ec66.pack at offset 64243959
error: inflate: data stream error (invalid stored block lengths)
error: failed to read delta base object 8b06f3e6621e49ae6feefc517bd808fdf90d926b at offset 64243959 from .git/objects/pack/pack-55bbe2351e8cd70def9bc91271a9d66be731ec66.pack
error: cannot unpack 19b3bbceea4399c0c2d878701a846e9a4211f45e from .git/objects/pack/pack-55bbe2351e8cd70def9bc91271a9d66be731ec66.pack at offset 69361275
Checking objects: 100% (76960/76960), done.
error: refs/remotes/origin/HEAD does not point to a valid object!
error: refs/remotes/origin/master does not point to a valid object!
error: d5eec8592ee4d8fb6a5e6293e3bcf8611c024882: invalid sha1 pointer in cache-tree
missing blob 8b06f3e6621e49ae6feefc517bd808fdf90d926b

「error: d5eec8592ee4d8fb6a5e6293e3bcf8611c024882: invalid sha1 pointer in cache-tree」は削除したコミットに由来するものと思われる。確認する。

% git status
~内容略~

現在ステージ上の変更(git add の後)を削除する。

% rm .git/index
% git reset

また、fsck

% git fsck --full
Checking object directories: 100% (256/256), done.
error: .git/objects/pack/pack-55bbe2351e8cd70def9bc91271a9d66be731ec66.pack SHA1 checksum mismatch
error: index CRC mismatch for object 8b06f3e6621e49ae6feefc517bd808fdf90d926b from .git/objects/pack/pack-55bbe2351e8cd70def9bc91271a9d66be731ec66.pack at offset 64243959
error: inflate: data stream error (invalid stored block lengths)
error: cannot unpack 8b06f3e6621e49ae6feefc517bd808fdf90d926b from .git/objects/pack/pack-55bbe2351e8cd70def9bc91271a9d66be731ec66.pack at offset 64243959
error: inflate: data stream error (invalid stored block lengths)
error: failed to read delta base object 8b06f3e6621e49ae6feefc517bd808fdf90d926b at offset 64243959 from .git/objects/pack/pack-55bbe2351e8cd70def9bc91271a9d66be731ec66.pack
error: cannot unpack 19b3bbceea4399c0c2d878701a846e9a4211f45e from .git/objects/pack/pack-55bbe2351e8cd70def9bc91271a9d66be731ec66.pack at offset 69361275
Checking objects: 100% (76960/76960), done.
error: refs/remotes/origin/HEAD does not point to a valid object!
error: refs/remotes/origin/master does not point to a valid object!
missing blob 8b06f3e6621e49ae6feefc517bd808fdf90d926b

さきほどの「invalid sha1 pointer in cache-tree」というエラーが消えているのがわかる。

念のため、gc を実行。

% git gc
error: refs/remotes/origin/HEAD does not point to a valid object!
error: refs/remotes/origin/master does not point to a valid object!
error: refs/remotes/origin/HEAD does not point to a valid object!
error: refs/remotes/origin/master does not point to a valid object!
error: refs/remotes/origin/HEAD does not point to a valid object!
error: refs/remotes/origin/master does not point to a valid object!
warning: reflog of 'refs/heads/master' references pruned commits
warning: reflog of 'refs/remotes/origin/master' references pruned commits
warning: reflog of 'HEAD' references pruned commits
Counting objects: 77162, done.
Delta compression using up to 2 threads.
error: bad packed object CRC for 8b06f3e6621e49ae6feefc517bd808fdf90d926b
error: failed to read object 8b06f3e6621e49ae6feefc517bd808fdf90d926b at offset 64243959 from .git/objects/pack/pack-55bbe2351e8cd70def9bc91271a9d66be731ec66.pack
fatal: packed object 8b06f3e6621e49ae6feefc517bd808fdf90d926b (stored in .git/objects/pack/pack-55bbe2351e8cd70def9bc91271a9d66be731ec66.pack) is corrupt
error: failed to run repack

ここまでで対応終了。参考元だとcommitしているのだけど、私の目的はリモートリポジトリからのpullなのでコミットしない。

pull してみる。

% git pull
error: refs/remotes/origin/HEAD does not point to a valid object!
error: refs/remotes/origin/master does not point to a valid object!
Enter passphrase for key '/home/next49/.ssh/id_rsa': 
error: refs/remotes/origin/HEAD does not point to a valid object!
error: refs/remotes/origin/master does not point to a valid object!
error: refs/remotes/origin/HEAD does not point to a valid object!
error: refs/remotes/origin/master does not point to a valid object!
error: refs/remotes/origin/HEAD does not point to a valid object!
error: refs/remotes/origin/master does not point to a valid object!
remote: Counting objects: 22, done.
remote: Compressing objects: 100% (22/22), done.
remote: Total 22 (delta 14), reused 0 (delta 0)
Unpacking objects: 100% (22/22), done.
From ssh://192.168.11.1/home/next49/workfiles
 * [new branch]      master     -> origin/master
Updating 950b6e5..21c20e2
error: Your local changes to the following files would be overwritten by merge:
	/path/to/hogehoge.pptx
Please, commit your changes or stash them before you can merge.
Aborting

バイナリーファイルがコンフリクトしている。これは git reset した影響。リモートリポジトリを優先する。

% git checkout --theirs /path/to/hogehoge.pptx

再びpullすると無事に成功。念のため、もう一度fsck

% git fsck --full
Checking object directories: 100% (256/256), done.
error: .git/objects/pack/pack-55bbe2351e8cd70def9bc91271a9d66be731ec66.pack SHA1 checksum mismatch
error: index CRC mismatch for object 8b06f3e6621e49ae6feefc517bd808fdf90d926b from .git/objects/pack/pack-55bbe2351e8cd70def9bc91271a9d66be731ec66.pack at offset 64243959
error: inflate: data stream error (invalid stored block lengths)
error: cannot unpack 8b06f3e6621e49ae6feefc517bd808fdf90d926b from .git/objects/pack/pack-55bbe2351e8cd70def9bc91271a9d66be731ec66.pack at offset 64243959
error: inflate: data stream error (invalid stored block lengths)
error: failed to read delta base object 8b06f3e6621e49ae6feefc517bd808fdf90d926b at offset 64243959 from .git/objects/pack/pack-55bbe2351e8cd70def9bc91271a9d66be731ec66.pack
error: cannot unpack 19b3bbceea4399c0c2d878701a846e9a4211f45e from .git/objects/pack/pack-55bbe2351e8cd70def9bc91271a9d66be731ec66.pack at offset 69361275
Checking objects: 100% (76960/76960), done.
missing blob 8b06f3e6621e49ae6feefc517bd808fdf90d926b

相変わらずエラーはでているけれども「~ does not point to a valid object!」というエラーは消えた。以上で無事解決。

研究が好きでないなら博士課程に行くのはお勧めしない

(2015年版)博士進学が決まったあなたが今すぐに始めるべきこと - 発声練習id:lloyzさんから相談いただいた。

初めまして。博士課程に行くか、就職するかどうか悩んでいろいろ検索していたら、このサイトに当たりました、修士1年のものです。理系の実験系です。この質問はこの記事の内容から外れてしまいますが、ご了承ください。

この間、指導教員と将来のことを話したのですが、指導教員の方から、研究者にはならなくてもいいから博士課程まで行ってほしい、と言われました。その理由を尋ねましたら、あなたには自己主張が足りない、修士の間では自己主張できるように教育は出来ない(博士までの間だったら教育できる)、就職したらそういった自己投資は出来なくなる、と言われました(その後に、辛いことがあったらいつでも言いに来て、とも言われました)。私としては、大学院に入ってからは、精神的にまいることが多くなってきて(涙が出る回数が月に一度くらいです)、その度に研究やめたい、と思うことが何回もあります。研究者になる気持ちは全くありません。また、研究室では、人手不足のせいか、博士課程の人らが、研究や実験装置の管理等で忙しそうな様子を見てますと、私には到底出来ない、と考えています。

この場合、自分が自己主張できるようになるまでのモラトリアムとして博士課程に行くのは有効な手段なのでしょうか?それとも、就職してからでも、自己主張できるようになれるものなのでしょうか?
もうすぐ就活が始まりますので、お忙しいところすみませんが、一度ご意見をお聞かせ下されば、と思います。

理工系の場合、修士課程までは就職などに負の影響与えませんが、博士課程に進むとてきめんに負の影響がでてきます。このため、本人が「博士課程で**をしたい/得たい!」というポジティブな要素を持たない限り、博士課程にいっても素敵なことにはならないと思います。

まず、現実的な問題として博士課程の後の進路を検討した方が良いと思います。具体的には以下を行ってみてはいかがでしょうか。

  1. 自分の分野の博士号取得者に民間企業から求人があるかどうかを確かめる(大学、学科、専攻に届いている求人票を見てみてください)
  2. 自分の分野のアカデミックポストおよび企業・国公立研究所のポストにはどんなものがあるか調べてみる
  3. 自分の所属専攻の博士号取得者の進路を調べる

続いて、博士課程に在籍している間の学費や生活費がどれくらいかかるか試算し、どうやってそれらを賄うか検討した方が良いと思います。もちろん、親に払ってもらうというのも立派な選択肢です(あるいは、親に借りる)。

最後に、博士課程に進んで「自己主張の訓練」以外にやりたいことがないかどうかを検討してみた方が良いです。個人的には、自己主張の訓練ならば、修士の残り1年強を費やせば結構できるようになると思います。