The percentage of mistakes in quick decisions is no greater than in long-drawn-out vacillation, and the effect of decisiveness itself ‘makes things go' and creates confidence - Anne O'Hare McCormick, Journalist

nuits.jp blog

C#, Xamarin, WPFを中心に書いています。Microsoft MVP for Development Technologies。

継続的にテスト可能な設計を考える .NET Conf 2018 Tokyo, Japan

本エントリーは.NET Conf 2018 Tokyo, Japanにおいてお話させていただいた内容を記事としてまとめたものになります。基本的に、発表ないようそのままになっています。參考によかったらご覧ください。

なお本セッションのソースコードはこちらのGithubに

https://github.com/nuitsjp/Continuous-Testable-Design

スライドはこちらに別途公開しています。

www.slideshare.net続きを読む

最近「明らかに無駄な行為を強要される程の対価は貰ってないな」と思うようになった

最初に謝っとく、愚癡ですまん。そしてこの文を読むと何らかの共感を抱く人が一定數居るだろうけど、ここに解決策はない。ごめん。

自分はSIerとしては一流では無いけど、そこそこ大きな企業の下っ端管理職で、ついでにエンジニアとしては高い評価を貰ってて、結果、そこそこ良い給料を貰ってる。

でも最近イライラすることが多くて、何に苛ついてるんだろうと想ってたけど、その一つの要因をハッキリ自覚した。

「明らかに無駄だと分かりきってる事を、上司の命令だからとか、顧客の要望だからとか、そんな何の論理的根拠のない理由で、自分の人生を浪費することに耐えられない」

って事なんだと思う。きっと自分はいくら貰っても、対価に見合うとは思えないのかも知れない*1。エンジニアなんてそんなもんかも知れないけど。

もちろん、無駄だと分かりきってる事を、正しく伝えられてない自分にも問題がある事は分かってる。たださ

「RDBで口座AからBにお金移してコミットしたからって、なぜそれで実は口座Bに振り込まれてませんでしたってならないの?証明できる?できないならテストして」

とか言われても、自分にはそのRDBのトランザクション機能にバクなく、ACID特性が保たれている証明なんてできやしないし、あんたも何回、何千回成功するのを見せたら納得するのか?なぜ次の一回が失敗しないのか、それを証明してみせてくれるならやるよ!!

だいたいそのRDB指名したのはお前だし、何ならその証明しないといけないのは俺じゃなくて、RDBベンダーなんだから、俺の時間を奪わないで、そっちにお前が聞いてくれよ!サポート契約してるのはそっちだし、こっちは正式なパスもないんだぞ!

勿論実際はここまで酷くはない。もうちょっとだけマシだ。

このパターン実は二つあって、目の前のそいつが本當にそう思っているときと、思っていない時とあって、本當に最悪なのは後者なんだ。そいつも、逆らえない誰かに押し込まれているから、俺が理を説いて実はそいつが納得していても*2、そいつに見えない誰かを説得する能力がなけりゃ、問題は解決しないことなんだ。そして、そもそもそんな話がここまで來るのは、目の前のそいつが既に説得に失敗した後であって、何を言っても覆る事はない。いつでも飛んでくから、そうなる前に俺を呼んでくれよ。

お前は俺をポジションに付けたんだし、君とはもう何年も仕事で付き合って、毎年少なくない発注寄こしてくれてるのは、それなりに信頼関係が築けているからじゃないのか?そのくだらない無意味な行為に何日もかけなければ、もっと有意義で創造的な活動にその分時間を避けるんだぞ?

1+1=2を証明させるような事に時間を使わせないでくれ。少なくとも極めてテクニカルな部分は、俺を信頼して任せてくれ。あとマイクロマネジメントも程々に頼む。あんたがたに取っても、俺の時間は安くないだろ??

はぁ書いてスッキリした。ここまで付き合ってくれた人ありがとう。

*1:5000兆円貰えるなら考える

*2:もしくは最初から納得していても

人に投資するって、金をつぎ込めばいい訳じゃないよね?って話

ふと思い出したので、ポエムを書きたくなった。

続きを読む

「SIerは減らす為に解雇規制の緩和が必要」の「はてブ」への回答

先日、つぎの記事を公開しました。

www.nuits.jp

多くの方に読んでいただき、書いた甲斐がありました。さて、多くの方に読んでいただけたのは良いのですが、言いたいことが正しく伝えられていない點が多數あったようです。そこで本稿では、はてなブックマークについていたコメントについて、補足できる範囲で捕捉したいと思います。

続きを読む

SIer社員が「SIerは減らすべきだと思うが、その為には解雇規制の緩和が必要」と考える理由

正確には

  • 請負契約を減らして内製を増やすべきだ
  • 内製を増やすための「一つの手段として」解雇規制の緩和が必要だ

と言う事です。内製化が解雇規制を緩和だけで実現できるとは思っていません。

本稿は主に私の実體験の上に成り立っています。異論・反論あるでしょう。しかし、行き詰まって見えるSI業界界隈の問題認識・解決に向けられた、一人のアーキテクトの思いを伝えてみたくなり、本稿を綴って見ることにしました。

============== 2018.09.15追記 ==============
大変大きな反響をいただき、たくさん「はてなブックマーク」もたくさんして頂きました。説明不足で正しく伝えられなかったと思うものが多かったため、こちらにブックマークへの書き込み全てへ回答を付けさせていただいています。
「SIerは減らす為に解雇規制の緩和が必要」の「はてブ」への回答 - nuits.jp blog
=============== 追記終わり ================

良かったらしばらくお付き合いください。

続きを読む

INotifyPropertyChangedをFody使って実裝する:VS4Mac編

なんか20番煎じくらいな気がしますが、INotifyPropertyChangedを実裝しようとするとフィールドやプロパティや変更通知やら、諸々実裝が大変だ!というのがありますよね。これの簡単な解決策としては大きく二つはあると思っています。

  • ReactivePropertyを利用する
  • PropertyChanged.Fodyを利用する

前者はReactiveプログラミングをしないのであればオーバースペックな気がします。そこでFodyを利用する方法が検討対象になってきます。この辺りの詳細は次の記事に良くまとまっているように思います(全部目を通しきれていませんが)。

qiita.com

ただTeratailでVS4Macでうまくいかな〜いという聲があったので、簡単な手順をまとめました。なお実際の実現方法は他にもパターンがありますが、細かいことは頑張って本家の英語を読みましょう。

続きを読む

ハンズオンで裏表 色違いのカードで進捗表示してもらったら便利だった件の詳細

先日、Prism for Xamarin.Formsのハンズオンを開催しました。このハンズオン自體は実は2回目で、以前Infragisticsさんと共催で1回目を実施しています。

その際に、全員の進捗狀況の把握が困難だという問題に気が付きました。そこで今回は、以下のような裏表で色の違う赤青カードを利用してみました。

f:id:nuitsjp:20180826225646j:plain

結論から言いますと、これは大成功でした。

  • 終わった後に「ドヤッ!」と青にするのが案外楽しい
  • 手間取っている人が、自己申告しなくてもメンターが支援に入れる
  • 全體の進捗が把握でき、進行速度を調整できる

そこで今回運用して気が付いた點なんかを、簡単に紹介しておきます。

続きを読む
スポンサーリンク