RIDE ROAD

Second wind

Ubuntu vs Mac vs Windows

Ubuntuを仕事PCのOSとして使い続けて10年くらいになるでしょうか。

もともとはサーバーサイドのエンジニアとしてのスキルを確立するため、普段から仕事道具である*nixを触っておこうという目論見で、自分のPCにUbuntuを入れたのですが、今となっては手に馴染みすぎて手放せなくなってしまいました。

2年ほどMacを触った時期もありましたが、そしてとても良いOSでしたが、どうしても違和感が拭えない部分があり、ピッタリフィットとはいきませんでした。

なぜ私がUbuntuを良いと思い使い続けるのか、またMac,Windowsと比較してどうなのか、をまとめてみます。

そんなわけで完全にUbuntu目線です。ご了承頂ければと。

仮想デスクトップ

私は基本的に4x3で計12枚の仮想デスクトップを使います。これをショートカットで切り替えながら仕事します。ぶっちゃけ全てを使うことはないのですが、なんとなくslackは左下隅、IntelliJは中段真ん中より右とか場所が決まっていて、脳をあまり使わずにアプリを切り替えられます。

Ubuntuというか現在の標準ウィンドウマネージャーであるUnityは最初から仮想デスクトップに対応しているので、設定さえすれば即この環境が利用できます。 ただし、17.10から標準となるGnomeだと縦方向にしか増やせないはずなのがちょっと頭痛いところ。

universeにはUnityが残るらしいので、Unityを使い続けることになるやもしれません。

MacにはTotalSpace2という素晴らしいアプリがあり、ほぼ変わらぬ使い心地を実現できました。

Windows10はどうなんだろう。。ネイティブで仮想デスクトップに対応しましたが、横方向にしか増やせないのがつらいところ。

アプリを追加すればできるんでしょうか。情報求むです。

コマンドラインランチャー

基本的にホームポジションから手を動かしたくない人種なので、ランチャーはコマンドラインが基本なのですが、UnityにはLensという強力なランチャーが存在します。アプリからファイル検索までお手のもので、ぶっちゃけMacのspotlightに勝るとも劣らない感触です。

これもただこれもUnity固有機能なんですよね。さらにUnityが手放せなくなっていく…。次点でGnome-Do。

Mac横綱spotlight。圧巻です。文句なしです。

Windows10では、Cortanaが同じ役目を果たしてくれている感じです。ただ若干アニメーションがうざい。オフにするには全てのUIアニメーションをオフにしなければならないという…

HUD

これは他のOSではなんといったらいいのか。。

各アプリのメニューに載っている機能をコマンドラインから呼び出す機能です。OSの言語が日本語のうちはぶっちゃけ半分ゴミですが、英語にすると256倍はかどります。gnome-terminalのprofileに'red',‘blue'等の名前で登録し、HUDで即座に切り替えるのが気に入っています。

これもまたUnity固有機能。Macの場合はメニューの各項目にショートカットを割り付けられるので、頻繁に使うやつはそれでしのげばいいのですが、覚えておかなければならないのが、脳のリソース的につらい。

Windowsの場合は、、、autohotkeyでショートカット割り付け?

いずれにせよ、HUDの操作感を実現する方法はわかりません。

そしてこれもUnityの機能。私がgnomeに移行できる日はくるんでしょうか。

ターミナル

これが無くては始まらないターミナル。サーバーサイドを主戦場とするエンジニアとしてはgnome-terminalが必要にして十分。特にHUDと組み合わせてプロファイルを切り替えながら作業するのが好きです。本番サーバーに繋いでいるターミナルは赤にしとくとか。

Macの標準ターミナルもiterm2も試しましたが、起動後にプロファイルを切り替える手段が無いのがなじめませんでした。起動時には指定できるんですけれども。方法があったらぜひ知りたいです。

Windows10は標準のcmdが背景透過できるようになってモチベーションアップ!起動後のプロファイルの切り替えもOK!頑張っている感じです。

アプリの扱い

基本的にターミナルもブラウザもコマンドラインランチャーからバンバン開いて、いらなくなったらAlt+F4で終了したいんです。

それができるのがUbuntuWindows

Macはアプリとウィンドウの違いを意識しなければならないのがつらい。いや一発で全ウィンドウを閉じられるメリットもあるんですけれども。

どうしてもなじめなかったなぁ。。

パッケージ管理システム

aptが便利すぎます。基本的にPCを起動したら、sudo apt update;sudo apt upgrade; アプリもaptで入れて気に入らなければremove。気に入ったら自分用のインストール用スクリプトに追加して、OS再インストールに備える。Macbrewも秀逸なんですが、全てがパッケージ管理されているかどうかという点で、気持ちよさが違うと感じます。Macユーザーにもkernelアップデートが来た時のsudo apt upgradeのドキドキを知ってほしいww

Windowsは、、Windows updateに数十分から数時間かかることがあるという、ちょっと信じられない問題をなんとかしてほしいです。

updateするにはかなり勇気がいると個人的には感じます。作業が数時間できない可能性があるという…

環境のマイグレーション

アプリのインストール、設定ファイルの配置をスクリプトでほぼ全自動化できるのがUbuntuのいいところ。

半年ごとの新しいバージョンのリリースごとに気軽にクリーンな環境に戻せるのが気に入っています。もはや再インストールが趣味です。

Macbrewがあるので、かなり自動化できます。というかタイムカプセルもあるので、この件についてはMacの方がいいかも。クリーンインストールの時は若干Ubuntuに軍配があがるでしょうか。Windowsもバックアップをとれるのでいいですね。ただ、クリーンインストールの時は、つらみが勝るイメージです。これは単に私がわかってない気がします。

キーアサインの変更

Ubuntuならxkbでほぼ全てのキーアサインを変更できます。USキーボードのvim使いなので、まず必須としてcolon,semi-colonを入れ替えます。

あとCapsLockにISO_Level3_Shiftを割り付けて、Windows,Alt,Ctrl,Shiftに続く第五の修飾キーにするのが気に入っています。

MacEl CapitanまでならKarabinerという素晴らしいアプリがあったのですが、Sierraになって使えなくなったのが痛いところ。ただ、Hammerspoonでかなり細かいことができるようなので、慣れてしまえばKarabinerよりいいかも。私は慣れる前にMacを卒業してしまいましたが。。 Windowsもいわずとしれた、autohotkeyがありますね。

いずれのツールも設定ファイルで設定できるので、この項に関しては横並びな印象です。

Docker

今やかかせない仕事道具となったDockerですが、環境用意の観点でいうと、Mac,Windowsの方が楽です。 なぜならば、aptで入れると古いのが入っちゃうから。。

Docker公式サイトのドキュメントを参考に入れても、今度はdocker-composeを入れる時に困るので結局pipで入れることになるんですよね。 2017年の春先までこんな印象でしたが、どんどん改善されているので今は違うかも。違うといいな。。

ドヤリング

Think differentといえばMac。しかしWEB系エンジニアクラスタを見回してみると圧倒的にMac多し。どう考えてもdifferentではない現実です。

そしてエンジニアを離れれば今度はWindowsの独壇場。デスクトップOSシェア90%超えは伊達ではないっすな。

そんなわけでデスクトップを見せただけでドヤーッとしたければUbuntuが最も手軽かつインパクトありと断言できます。 ただ問題は、気が付いてもらえない、ことですね。 完成度があがってるんでたいして見た目はWindowsと変わらんという….

まとめ

とこんな感じです。想像以上にUbuntuというよりUnity大好きな感じです。

これを見てUbuntuを使いたくなって頂いたら嬉しいですが、まあ難しいですよね。

そしてUnityはもうすぐメインストリームを外れます。 泣けます。。

UIの行き着く先とジレンマ

スマホを触っていていつも思うのが、このUI、つまりユーザーインターフェースは過渡期ものだ、ということです。

やりたいことを考えてから、探してアイコンをポチ、ってどう考えても手間です。

今現在もUIはFlatなりMaterialなり、Fluentなり、各社がしのぎを削って改良を重ねているわけですが、結局のところ探す、迷う手間をいかに最小化すること注力しているだけであり、誤解を恐れずにいえば、五十歩百歩といえます。

じゃあ、そんなに偉そうなことを言うおまえは、究極のUIをどう思ってるんだ!

私が思う究極のUI、それは人間です。具体的なイメージとしては、店員さん。

あいまいさに対応し、柔軟性に富み、合わせることを強いず、むしろこちらに合わせてくれる。 人類が始まってから常に存在し、そして人類が滅亡するまで存在し続けるUIであり、赤ちゃんからおじーちゃん、おばーちゃんまで迷うことなく使えます。

つまり、

スマホの中に人間と同等以上の知性を備えたAIが存在すればいい!

ということです。(マジか

AIはIT系大手各社が力を入れている分野ですし、AIがよりすぐれたAIを再生産し、技術が人間の手に負える範囲を超えていくシンギュラリティも近そうですし、それほど夢見がちな話でもないかな、と思っています。

ただし、そこに問題が。

  • 本当に人間は、究極のUIなのか?

  • 話しかけるのに躊躇することはないか?

  • 聞くことが恥ずかしかったりすることはないか?

  • だから結局ネットでポチるんではないか?

哲学的ゾンビって概念があります。

自分を自分であると感じる自我が存在しない、存在のことです。(ややこしい)

はっきり言ってしまえば、自分以外の他人は哲学的ゾンビかもしれません。つまりロボット的ななにかなのかもしれません。 他人の自我に直接触れることは不可能なので、これは証明も否定もできない問題です。

逆にいうと、人間と同等以上の知性を備えたAIが生まれ、そのAIが自我を主張した時、それが仮のものだと否定することは困難です。なぜならば人間は自分以外の自我には触れえないのだから。

要するに、AI相手であっても、話しかけるのに躊躇する状況は生まれえるということです。

困った。。

でもとにかく、こちらが羞恥を感じるほどのAIが生まれてから考えることにしますか。

トラブルと旅にでたくなる

f:id:furu8ma:20170616044352j:plain

何度電源ボタンを押しても、PCはかたくなに同じメッセージを表示した。

この深く青い絶望感。

間違いなくWindows以前にはなかったものだ。

ずりおちるように、がたりと椅子に深く、深くもたれかかる。

パーティションテーブルの復旧は試した。 MBRの再構築もだ。 結果は、常に同じ青色の画面。

「そろそろ大通り公園のビアガーデンやってたかな・・・」

ブルースクリーンに顔を青く染め抜かれながら、気が付けば、意識は札幌に飛んでいた。

夏は、まだ始まったばかりだ。

<< 続く >>

そろそろ自転車レースに出てみようか

なぜ痩せないのか?

それは、痩せるためのモチベーションが足りないからだ。

というわけで双子が生まれてからとんとご無沙汰していたレースに出てみようと思います。

www.twinring.jp

ああ、懐かしき過去の栄光。7時間ソロで4位とか本当にあれは俺だったのか。

d.hatena.ne.jp

体をもてぎのアップダウンに耐えられるレースコンディションに戻すためには最低でも10kg落とさねばなりません。理想をいえば14kg。

地道なダイエットはどうしても途中でリタイアばかりで、リバウンド必至の過激ダイエットしかできない性格なので、ここはひとつリバウンド上等で子供にとーちゃんかっこいいところを見せてやろうかと!

究極のじてつうかばん

暑いですね。自転車乗ってますか?

私は乗ってません((^_^;)\(・_・) オイオイ

 

体重がもはや限界点を突破しています。痩せるには自転車しかありません。

乗ろう。明日から乗ろう。

 

さて、通勤のおともにずっとmontain smithのday

を愛用してきました。ランバーバックというらしいですが特大のヒップバックといったほうがわかりやすい気がします。じてつうは冬であっても、いやむしろ冬こそ汗をかいてはならないので、いかに排熱するかが鍵になります。

そこで肩紐つきのヒップバックが威力を発揮します。これなら大きな廃熱ポイントである背中をほぼ空けることができます。

 

ただしかし、ただひとつ弱点がありました。それが容量。15Lなんですよね。今までは弁当と着替えが入ればよかったので充分だったのですが、2016年にはいってから15インチのノートPCを持ち歩くようになり容量オーバーで泣く泣くリュック通勤をしていたのでした。

 

いくらくぐってもdayより容量が、おおきいヒップバックが見つからない日々。しかしある日天啓が、おとずれました。

ヒップバックが、ないならでかいカバンを無理やりヒップバックにすればいいんじゃないかと。

さっそくくぐってひっとしたのがこれ。

 

ETSUMI バッグアクセサリー 背負いベルト3 E-6689
エツミ (2015-08-01)
売り上げランキング: 34,545

 

 

やっぱあるもんですね。これでヒップバック化したのがこれ。

 

 

いろいろくぐりましたがカメラバックが一番ニーズを満たすようでした。

 

これはいい!

当方約180cmですがぎりぎりヒップバックにはなる肩紐の長さです。その上ものすごい大容量。

おそらく40Lにせまるんじゃないでしょうか。

いくらいれてもまだはいる。

調子に乗って最近はPCニダイモチ通勤していますが、容量より先にこしに限界がきております。汗

 

じてつうのカバンに悩まれている方はぜひご検討ください

 

 

小さいライバル

小学四年になった長女がこのところ熱中しているものがあります。 家に居る間、ほとんど全ての時間を妻の型落ちのMacbookAirにしがみついています。

f:id:furu8ma:20170721044501j:plain

これがゲームだったりすれば、恐るべき妻のスキル

「ヤルコトハ・スベテ・オワッタノカー」 (効果:子供は真っ青になる)

が炸裂するところですが、やっているのはプログラミング。 Scratchというやつ。ビジュアルプログラミングですな。 私自身プログラマーですし、妻もなにやら最近C#と格闘しているようですし、おそらくまだ10年くらいはシンギュラリティはこなさそうですし、メシノタネになるかもしれないスキルということで、好きにさせているようです。

これがすごくて、ふつーに

を作っています。

マジカヨ!!!!!

私が小学四年の頃といえば、まだパソコンも無くひたすら友達の家に入り浸ってマリオで殺し合いをしていました。 翌年ついにMSXなるパソコンを手に入れ、やがて今へと至る、長く曲がりくねったプログラミングの道を歩き始めるのですが、それにしたって中学生くらいまではBASICマガジンの写経が精一杯で、オリジナルゲームなんてまったく無理でした。

この10代にも至らぬうちから、プログラミングに慣れ親しんだ奴らが、やってくる。 そうあと10年もしないうちにやってくる。

職業プログラマーの父、冷や汗タラリ。

すっかりエモいおじさん

自社内のプロジェクト運営でうまくいかないことがあり、過去の経験からなにか伝わればと話したところ

「それはないわ〜〜〜」

的な反応を受けてしまったので、カッとなってQiitaにポエムを書きなぐったところバズってしまうという。。。

プロジェクト管理のエモいはなし

http://qiita.com/furu8ma/items/5d146c22a5739743aa55

なんかもう、申し訳ありません。本当にプロジェクト管理は引退しているんです。

書いた話は、如何にリスクを検知するかしか触れておらず、その後検知したリスクをどうやって処理するかはまったく触れておりません。 んで、実際のところそっちも大変なんですよね。

ただ、進捗の遅れだったり、顧客との認識の相違だったり、そういったトラブルは基本的には余剰のリソースがあれば対応できます。 なので、なんとかして余剰のリソースを確保しなければなりません。

プロジェクト内で重要なステークホルダーとの間に誰かが居る状況ではリソースのコントロールなんて覚束ないので、顧客との折衝を含め全部引き受けて初めて、トラブル対応のリソースを確保できます。

はっきり言ってこれがつらい。 全ての情報のハブになって、全メンバー、顧客をアゲアゲした結果、自分はヘトヘト。

人のマネジメントといえば、デールカーネギーの名著、「人を動かす」に尽きると思うんですが、あれ、絶対動かす人より、本の内容を実践できる人に動かされたいと思いませんか。 私は心底そう思います。

人を動かす 新装版

自分の本能的な感情の反射を全てねじ伏せて、相手を否定せず議論せず認めまくり結果的に動かす。 これは、、、、つらい。 なにがつらいって、自分の感情は誰が面倒みてくれるのかと。

まあそんなわけで、10年頑張りましたが、これ以上は無理、と主に精神面の限界を感じ管理側を降りました。 そもそも私、書いたコードが動くことにカタルシスを感じこの業界に入った、というのもあります。

でも好きな人は好きだと思います。 成功裏にプロジェクトを収束させ、全ての関係者に感謝され、それまで費やした自分のリソースを上回るえも言われぬ充足感を得ることができる人。 そんな人にぜひ頑張って頂きたい。 そしてぜひ私を動かしていただきたい。