Arch (Manjaro) Linux の日本語入力環境について

単純に自分のMacが古いというのもあって何をするのも動作が重いMacに嫌気が差したので、Linuxデスクトップ環境でちゃんと開発環境を作ってみようとしてManjaroというUbuntuにとってのMintのような、デフォルトである程度気を利かせときましたというディストリビューションがあったのでこれでやってみた。

Manjaroは日本ではマイナーだと思うけどDistrowatchではほぼ常にUbuntuよりも人気のディストリビューションである。僕にとってはGentooは面倒すぎて、Archなら何でもかんでも自分でビルドするわけでもないから時間もかからないし少し慣れてるし良いんだけど労力は減らしたい→Manjaroにたどり着くという感じ。

Archの資産もそのまま使えるし、パッケージ体系ももちろん同じ。ローリング・リリースで常に新しい環境に追いつきやすい。自力でパッケージ作るのも簡単というわけで、Ubuntuとかの不満を解消してくれる感じ。個人ユースだと良さしか感じないが逆にビジネスユースだと嫌われるだろうか。

インストールしただけで使いやすい気の利いた環境になっていたが、日本語の表示はデフォルトでインストールされていたフォントで問題なかったが入力は何も用意されていなかった。

これはLANGを日本語に設定してインストールしてもそうだったのでそういうものなんだろうというわけで日本語入力環境をなんとかしてみた。

なおデスクトップ環境はXfce、変換エンジンはmozc前提である。

fcitx

Ubuntuでもデフォルトで採用されるようになったという今人気が出てきていると聞くIM。

yaourt -S fcitx-mozc fcitx-im

すれば大抵問題なく日本語が入力できるようになる。

ただArch関連パッケージのメンテナ達の歴史的事情による問題がある。Emacsユーザーはこれをまともに食らう形になる。この問題がこの記事を書かせた原因。

ain0204.hatenablog.com

パッケージを直すことも考えたがメンテナとかできないと思ったのでおとなしく引き下がる。参照記事では力技で解決されているが、僕は将来にもこれを自分でやっていくのかと思うと面倒に感じたので別の回避策を考えた。

Emacsが自力で変換エンジンを実装するという変態でなければこんなことで困らなかったのに…

ibus

少し前に次世代Linux IMとして出てきた気がするIM。今はあまり聞かないので永遠の次世代な気がしている。

fcitxのパッケージに問題があるんだから違うIMを使おうという単純な発想。

詳細は割愛するがまともに動いてくれなかったのでボツ。

uim

ずっと一番手にはなってない感じのある歴史あるIM。メンテされている歴史は長くて枯れている感がある。確かDebianのデフォルトとして採用されている。Vi協調モードとかがもしかすると聞いたことある人はいるかもしれない。

結論としてはこれに落ち着いた。

これを

yaourt -S uim-mozc-ut2

するんだけども、PKGBUILDを編集する必要がある。先頭周辺に何をビルドするかの設定がある。uimのパッケージにかかわらず_ibus_mozcだけが有効な状態になっているので、_ibus_mozcの行をコメントアウト、逆に_uim_mozc_emacs_mozcのコメントを外そう。もちろんEmacsを使わない人はいらない。

##
## Build configuration 
##
## You can choose the input method framework to use either ibus and/or uim.
## If you will not be using ibus, comment out below.
#_ibus_mozc="yes"
## If you will be using uim, uncomment below.
_uim_mozc="yes"

## If you will be using mozc.el on Emacs, uncomment below.
_emacs_mozc="yes"

こうすると結果としてはmozc-ut2 uim-mozc emacs-mozcの3つのパッケージがインストールされる。ArchWikiにはIMに関する環境変数を設定せよとも書かれているが書かなくても大丈夫である。

IMの自動起動についてはデスクトップ環境ごとのスタートアップに

uim-toolbar-gtk3 &

と書いておけばIMツールバーが起動してIMも管理できる。というかツールバーなしにはIMも使いにくいのでこうなるのが自然だと思う。

こうしておけばEmacsからもmozc.elやuim.elを通して普通に使えるし、今のところ入力できないアプリケーションがあるとかの問題もない。

これもそもそもパッケージ直しとけやって感じもするんだけど元になっているリポジトリが複数のパッケージから参照されているようで面倒くさくなってやめてしまった。あとGithub以外でのOSSへの関わり方を忘れてしまった感がある。

ちなみにフォントはIPAEx系が思ったよりも美しく見やすいのでプロポーショナルはそちら、等幅にはRictyを使っている。Noto Sans等もあり、一昔前のLinuxデスクトップ環境に比べるとフォントの選択肢も随分と増えたなあという感じ。

システムワイドなフォントの変更や色々なことが簡単にいじれるので、技術にハマるきっかけになったときのOSとかいじるのが楽しかった初心を思い出して思わず日本語環境とか以外にも色々と時間をめっちゃ使ってしまった。

今年の予定(だいたい日本にいない)

ちょこちょことTwitterやリアルに会った人にも話していますが、しばらく東京というか日本を離れる予定です。

具体的には5月のGW空けには今のマンションの部屋を引き払い、荷物を京都の実家に預けに戻ります。そのままだいたい1ヶ月ほど実家に滞在の後、6月頭にはバンクーバーに出発する予定です。

バンクーバーには観光ビザで入るので6ヶ月は基本的にいるつもりで、あとは2回伸ばせると聞いている観光ビザがどこまで伸びるか次第で滞在期間を変える予定です。とはいえ1年以内には帰ってきたいなあと思っています。向こうには日本酒がほとんどない & なんちゃって日本食が溢れているので日本食大好き人間としてはずっとは耐えられないだろうという見通しです。

目的は言語習得のためというのもありますが向こうの人間たちの感覚を掴んで文化を理解したいというのがあります。ジョークとかのセンスを理解したい。たった半年から1年でどこまで理解できるものかは分かりませんがこの辺は飛び込まないと理解できないんじゃないかなと思うので。

あとは人生においてあれやっておけばよかったと思いそうな事実をなくしておきたいってやつですね。死ぬときに「あれやっておきたいと思ってたけど色んな事情で見えないふりしてやらなかったな」ということをできるだけなくす、というのを人生で大事にしたいと思っています。

仕事はそもそもこの海外滞在を可能にするために今の仕事を選んだので、日本で仕事を引き受けているものをそのまま持っていきます。向こうにいる間ずっと契約が維持されるものばかりでもないので、お仕事のお話をいただける方は是非今月中によろしくお願いします。

英会話を始めた

プログラマーとして生活をしていると、英語の読み書きは自然にできるようになってくるものと思うけども、日本人にありがちな話す聞くがすごく疎かというパターンに僕もハマっており、たまに海外旅行するとなんて話したのかは分かるけど脳内の語彙と今聞いたものを一致させる力が足りずだったりとかで歯痒い思いをすること数回、とうとう英会話サービスを使い始めてみることにした。

一応しばらく海外に滞在する予定もあることだし、もっと速く始めておくべきだったなあと自分の重い腰が恨めしい。

始めたのはネイティブキャンプです。

nativecamp.net

僕は学習においては「習うより慣れろ」と反復が肝要であると信じているので、回数が大事だと思って回数無制限サービスであるこちらへ。回数無制限でも随分安いらしいです。回数無制限以外にあまり比較検討してないので他サービスの詳細は知らない…

さすがに初めてのコースは詰まることなく終えられたけど、過信せず初級者コースから順番に進んでいこうと思う。

Joy, Inc. を読んだ

ジョイ・インク 役職も部署もない全員主役のマネジメント

ジョイ・インク 役職も部署もない全員主役のマネジメント

先月に出たばかりの本。原著は数年前のはず。先月の退職祝いで頂いた。

本書は日本語になる前から身の回りでこの会社のファンも数人いることを聞いていて、出たときには早めに読んでみたいなと思っていた。良いタイミングでいただけたので帰省で時間もあったので一気に読めた。

本書はエクストリーム・プログラミングを契機として、「喜び」のある仕事を目指した経営者の本である。アジャイル開発の話は出てこないが、いわゆるアジャイル開発・スクラムにとても近い考え方、実践が多く出てくる。なのでそれぞれは珍しくないかもしれない。それでもこの本は他のアジャイル開発・スクラム等の解説本と違い、それで実際に成功している会社であるという説得力がある。

原理主義的なところもありつつ、そのときどきの従業員の都合で新しい制度を「実験」するという姿勢がとても好感が持てた。私も「まずやってみて、だめだったらその時考えよう」と常に言うので、誰にも分からないのだからまずやってみよう、だめだったらだめだったというノウハウが残るわけで、とても合理的なことだと思う。

また、常に実験中であるという考え方もとても良いと思った。良いものは変わっていく。今みんなが良いと思っているものもそのうち変わってしまうかもしれない。「変化を抱擁せよ」の姿勢である。

あと、通り過ぎてきた「あるある」のネタが各所にある。自分で読んでひとつも「あるある」な感じにならないとしたら、よっぽど素晴らしい環境にいるか、鈍感すぎて問題を見れていないのだろうと思う…

ノウハウが細かく説明されているわけではないので、変わるためのきっかけづくりの読み物としてもオススメ。

プロテインとかBCAAとかHMBとかで混乱したので調べてみた

qiita.com

筋肉アドベントカレンダーに空きがあったのでちょっと前に書いたこの記事を滑り込ませてもらった!


私の趣味の一つに筋トレが挙げられるが、この界隈はいろんなサプリや栄養素にうるさい。にも関わらず多くのサイトには大雑把な説明で「~が最強」とか「これだけで十分」とか書いてあるところばかりで不信感が募ったので個人的にこれで良いのかなと思うぐらいに調べてみた。

これは独自研究です

栄養素の大元は一緒でより分解された状態かどうかが違う

吸収にかかる時間

プロテイン > BCAA ? HMB

栄養素の効果

  • プロテインは筋肉以外にも人体のあらゆる部分を構成する要素なのでそもそもとらないと体に異常が起こる。不足しがちな栄養素なため、筋トレする/しないに関わらず取ったほうが良いと思われる。ビタミン剤と同じような理由で摂取すべき。コラーゲンとかももちろんタンパク質である。
  • BCAAは前記の通りタンパク質を分解して得られる特定のアミノ酸のことであり、これらには即効性のエネルギー、疲労回復、筋力増強効果(タンパク質合成促進)、肝機能改善、髪や肌のハリ・ツヤの改善効果等がある。
  • HMBはBCAAのうち筋力増強効果を持つロイシンを吸収した結果生成されたものだけを抽出したもの。ロイシンの5%程度が生成されるそう。

結論

プロテインをとれば最終的には全ての栄養素が得られる。吸収速度と必要量の問題である。筋肉はトレーニング直後だけでなく、常に合成、分解を繰り返しているので、タンパク質(アミノ酸)は常に充足している事が必要。

筋トレ前にエネルギー源がある程度無いと筋肉が分解されてしまうので、計算した内容や時間で食事、プロテインでカバーできるならそれで良いし、無理なら代替燃料になるBCAAを取る必要があるだろう。

トレーニング直後の栄養素においても筋肉の生成に必要な栄養素が十分なら筋肉の成長には問題がないので、結局のところどれでも良い。個人的にはHMBは極端すぎてわざわざ摂取するにはコストパフォーマンスに劣る、かつ筋力増強以外の効果もある他の2つの摂取の結果、超過摂取につながることになると思われる。なお、HMBには超過摂取の結果筋力が落ちた、という実験結果もあるとのこと。

私としては、トレーニング前の筋肉分解を防ぐ目的のBCAAとタンパク質自体の不足を解消しつつ、筋肉を合成するために必要な栄養素として吸収時間の長いプロテインを飲んでれば十分かと思った。

参考リンクはめっちゃあるのだけど多すぎたのでまとめきれず。

リクルートジョブズを退職します

shishi.hatenablog.jp

上記エントリ冒頭の通り、リクルートジョブズを退職することにしました。現在は有給消化中です。

上記エントリの通り、もともとこれをやってほしいと言われていた仕事がなくなったことを初日に知ったり大変な幕開けで始まった今回の職場でしたが、大変なままあれやこれやとやり、大企業らしいあれやこれやにボコボコにされながら、会社に前例がないことばかりに取り組んで成果も残し、自分としてはやりきった感でいっぱいです。

理由の最初はリモートワークなど柔軟な働き方を重要視するようになってきたことです。弊グループはグループとしてリモートワークに取り組んでいることは既報の通りですが、もちろんそれぞれの会社、現場によって変わることがあり、それでは私の理想は実現できなかったからです。

次にはいわゆる音楽性の違いというやつです。現状の問題点、行動の仕方、組織のあり方、これからどうしていきたいかという色んな考えの向いている方向が合いませんでした。方向の違う主張が譲れないポイントが同じ者同士が同じ枠にいては組織が混乱します。話し合いはしたもののお互い折れることができない部分だったので、残念なことでしたが仕方ありません。

あとは評価制度の合わなさも理由としてあげられます。評価制度に囚われた人達を良く見ましたし、それは悲しいことだと思いました。上記エントリで僕のやってきたことの一部を紹介しましたが、何も評価にはつながりませんでした。もちろん私の思うこととは違う別軸の見方があるということは分かっていますが、それでは私はプロダクトやエンドユーザー、チームメンバーの方向を向いて働くことなく、評価のために働かなければならなくなるでしょうし、それは私のしたいことではありませんでした。

良かったところとしては福利厚生が一番かと思います。退職金制度があるという企業自体が初めてでしたが、なんと半年働いただけで退職金があったり、3年勤めれば30日の連続休暇があったり、子供のいる人には特別に有給休暇も多く与えられていたり、立派なものだと思います。あとはなんといってもオフィスの立地です。銀座のバーやクラブが集まり、飲食店がこれでもかとあるエリアにあり、さらには新橋や日比谷にも近く、ランチや飲みに行くのには全然困りませんでした。特にバーは有名でうまいところがオフィス近辺に集中しており、通っていくつも名前を覚えてもらったお店があるほどです。あれほど飲食に恵まれた立地は他にないでしょう。

これはどうだったの?ってのがある方は僕を飲みに連れていくと話せることは聞けるという特典があります。

今後はしばらくフリーランスとして過ごす予定です。遠くない将来に言語と文化を学ぶため海外にしばらく滞在したいという希望がありますが、現地に永住したいとも思っておらず、こちらに仕事を持ったままリモートワークさせてくれるところを探しており、フリーランスのほうが色々と都合が良さそうだったからです。このような条件でも受け入れてくださるお仕事、もしくは日本にいる間だけでもお仕事のお話あれば連絡いただければと思います!Railsを始めとするサーバーサイド、テスト、CI、開発手法、開発環境整備、チームビルディングなどをよくやってきましたのでその辺ですと特に貢献しやすいと思います。直近はSwiftもやっていました。委細は@shishi4twやFacebook、コメント等でご相談いただければ、職務経歴書等お送りします。

退職祝いだ!という方向けのリストはこちらになります。 http://www.amazon.co.jp/registry/wishlist/3BIKP4J827Y16/ref=cm_sw_r_tw_ws_x_kPbryb9NNM4SR

大規模サービス技術入門を読み直した

読み直したシリーズ。当時の仕事は規模や負荷がそんなでもない、というかフロントエンド側なのになぜか気になって読み直した。

本書はソーシャルゲームを始めとしたアクセスが膨大なウェブサービスはどのように設計されているかについてハードウェアやら実際のプログラミングやら現場やらについて書かれた本である。調べてみるともう約7年前の本…

本書に書かれていることは多くが今や当たり前のようになっているけども、当たり前ながら以前は多くの試行錯誤だらけのことの上に成り立っている。本書は僕を含め多くの人が阿鼻叫喚を上げながら積み上げてきたことのエッセンスが記されており、今の当たり前がなぜかを知るという意味で、今でもとても有用な本の一つであると思う。

本書は広く話題を扱っており、大規模サービスに触れる人への入門として良書であると思う。ある程度バックエンドに親しんだ人にも触れたことがない話題もたくさんあるだろう。著者が日本のウェブサービスが大規模になっていく黎明期において試行錯誤してきたことを覗けて、ある意味読み物としても面白い。

本書は良く必読の技術書としてあげられていることが多いように思うけども、僕も賛成する。どこまで基礎を知っておかなければいけないかというのはこの際置いておいて、本書は個人的にちょうど良いのではないかと思う。基礎は応用の源泉であり、基礎を知っておかなければ応用する発想自体が出てこなくなると思っている。とはいえCPUの原理とかまで納めていると時間が果てしなくかかるので割り切りが必要なのであるが、とりあえずバックエンド設計の基礎としてとりあえず知っててほしいと思うことがこの辺だからである。能力と時間のある限り、知らなくても良いということはそんなにないと思うので、興味を持ったらもっと広く深く学習すべきだとは思う。

プログラマーに広くおすすめできるので読んだことない人は是非。