google-http-clientを使ってみた

 とあるWebAPIサービスを提供しているサイトへアクセスするクライアントをjavaで書こうかと、最初はjerseyを試してみたのですが、これがなかなか厄介で、次から次と依存が判明して動作するまで一苦労。。
最終的には、とあるサイト側の認証における制約により、jerseyの仕様ではどうやってもアクセスが出来ない事が判明。。

 失敗の原因は概ね当たりが付いていたので、その辺りに問題が無さそうなライブラリとしてgoogle-http-clientを使うことにしました。
 jerseyで途中まで実装していたものをそのままgoogle-http-clientを使う形に置き換えて疎通確認レベルまでやってみます。

 google-http-clientは依存が無く構成がとてもシンプルで置き換えた途端に、サックリとAPIアクセスに成功しました。proxy経由でもJVM引数で指定してあっさり通りました。

 細かいところでは、どうも指定したタイムアウトは効いてないような気がしますが、まあ、今回の実務上問題無さそうなので、利用しやすいように整理して実装しようと思います。

 だいぶ経って2019年1月現在、久しぶりに使ってみると、当時のバージョン1.23と現在の1.28では仕様が変わっており上記のままでは動かなくなりました。。

テストの価値

 某国製のロボット掃除機をAmazonで買いましたが2ヶ月で動かなくなりました。最初はとても良い感じで掃除してくれていたんですが、何か喋ってすぐ止まるようになり、自分で治せそうにない、でも保証とかよくわからないし、買った当初はいい買い物したというという満足感がありましたが、今となっては、どこに連絡して、どこに持っていけば治してくれるの??
 Amazonでは購入後1ヶ月間の初期不良しか対応していないようで、一応、メーカーのサービス窓口メアドに故障の旨を少し英語、詳細は日本語で送ってみましたが、今の所、何のレスもありません。。。(追伸  3日後返信が来て、その後少しやり取りした後、部品を無償で送ってもらえる事になりました)
 これが少なくとも半年後だったら、値段を考えるとある程度は納得出来ていたかも知れませんが、たった2ヶ月でこうなると安いからと言って納得出来ませんよね。

 最近、ポルシェ博士の本を読んでたんですが、所謂ワーゲンビートルの元になったポルシェ博士が設計したクルマは、ナチスの親衛隊200人が試作車30台を昼夜問わずで約8ヶ月間走行テストをしたそうです。
 ベストな製品に至るまで必要なテストのコストをナチスが負ってくれていた訳で、それによりクルマのプラットフォームとしての信頼性を極限まで追求出来たのでしょう。戦後になってビートルが生産されるようになり、ポルシェ博士が夢みた大衆の為のクルマを設計するという面では大成功となった経緯になるのですが、元々はナチスからの大衆車を設計して欲しいという依頼から始まったものです。しかし、戦前・戦中に生産されたクルマは、殆どが軍用車であるキューベル・ワーゲンで、しかも、大衆車を手に入れようと宣伝し、購入を予約した国民から集めた貯金までもがナチスにいいように使われていたのです。
 
 単純に製品の値段だけみても、テストにどれだけコストをかけたのかは解りません。ただ、高価な製品でも、スペックだけみても解らないテストの価値も含まれていると感じた場合、それがメーカーに対する信頼なんだと思います。特に摩耗するような部品があるものは、安いから、スペックがよいからと安易にポチっとするのは避けようと思う今日この頃です。

リモートワークを阻害するもの

 働き方改革とかで、リモートワークや在宅勤務とかが話題にはなっていますが、なかなか普及しているようには思えないですよね。筆者のような業種は比較的リモートワークしやすい業種と言えますが、リモートワークが確立されているところは日本ではかなり少ないように思います。

 その時々の仕事内容にもよりますが、コミュニケーションツールでメンバーと少しやりとり出来れば一人で進められる期間が実際にあるので、1時間くらいかけて仕事場に行って、1時間くらいかけて自宅に戻るなんて、1日2時間無駄にしているよなあと感じてしまうものです。この時間に何も報酬は付かないですから、ワークシェアって事で3時間だけ仕事したいといっても、仕事の場に行くためには住んでいる所次第で往復2時間かかったら合計5時間ですよ?全然3時間になってませんよ。

 先日、仕事先でOffice365が導入されて、Microsoft Teamsというツールが使えるようになりました。チャットやテレビ会議が出来るので、リモートワークツールとして使えそうです。とはいえ、今の所は使う機会が無いので使い方を覚えようとしてませんけど。
 結局ツールはリモートワークする人は是非使いたいけど、してないメンバーが使うのはメンドクサイだけになっちゃうんですよね。だってリモートワークツールを使わざるを得ないのは来てない人に合わせなきゃいけないだけなんで、それってリモートワークしていない方としては、何でここに居ないの?って思ってしまいます。

 リモートワークの普及を阻害している要因は、企業側と働く側双方にあるかと思いますが、筆者の主観では、

企業側
 ・リモートワークにより生産性を落とさない為の仕組みが整理出来ていない(殆どがツールの話になるかも)
 ・勤怠管理以外に仕事の評価方法が確立出来ていない

働く側
 ・リモートワークの仕方が解らない(ツールの使い方が理解出来ていないとか含め)
 ・同じ仕事をするメンバーと同じ場所で仕事をしなければいけないという気持ち

なのかと。

 特に、働く側の気持ちが一番難しいように思います。事務所を無くして全員リモートワークとまでは今の所そんな仕組みが出来てる企業は皆無なので、リモートワークをする人とリモートワークができない業務を仕事にしている人とでいろんな思いが出てきます。

 子供の頃から毎日通学し、同級生と長い時間一緒に居ることが当たり前だったし、不登校の同級生にどのような感情を持っていたか覚えているし。。
 でも、家庭環境等で止むを得ない理由があると知ったら、しょうがないんだねと腑に落ちてしまうので、リモートワークも同じように、本人に子育てや介護といった通勤するのが難しいという強い動機付けがあって、それがメンバーと情報共有出来ていれば、リモートワークする人も、リモートワークをしていないメンバーも受け入れやすいんだと思います。でも、これって、その人の止むを得ない状況なのか、それをしたいというその人の要求なのか、それだけの違いです。

 将来的には、リモートワークが当たり前と思えるようになるんでしょうが、筆者自身も含めて、人の意識が変わるには、もう暫く時間が掛かりそうですね。