エンジニアとしての日々のいろいろ

ラーメンヤとエンジニア

»

「職業病」
仕事で身についた習慣や考え方が、日常生活でも離れなくなってしまうことである。
SEという職種は、とりわけこの「職業病」なるものが色々な場面で発揮(?)されやすいと感じている。
今回はラーメン屋を舞台に私が感じた職業病についてご紹介する。


ラーメン屋で注文した場合、大抵の店では各々の好みに応じて、以下の項目をカスタマイズできるようになっている。

味        
薄め/普通/濃いめ


柔め/普通/固め


少なめ/普通/多め

今回話したいのは「注文の仕方」である。
「味:普通、麺:固め、油:少なめ」を頼みたい場合、あなたはどう注文するだろうか。

結論を言うと、
そのまま「味普通、麺固め、油少なめ」という人にはエンジニアとしてのセンスを感じない。
(勝手にセンスを見極められても余計な御世話だと思うが)


その1
何も言わなかった場合は「普通」になる。
(全部普通でいいですか?と聞いてくれる親切なお店もあるが)
エンジニア風に言うと、「初期値」が「普通」ということである。
つまり、「味普通」は伝えなくていい情報である。


その2
表現が重複していない。
「濃いめ/薄め」「柔め/固め」など、各項目について表現が重複していない。
言い換えると、「濃いめ」と言えば=「味は濃いめ」とどの項目について言っているのか「判別可能」なのである。
つまり、「麺」や「油」などの「項目」も伝えなくていい情報である。


この1、2を踏まえると、先ほどの「味普通、麺固め、油少なめ」を頼むのに
過不足ない情報は「固め、少なめ」ということになる。



知り合いはもちろん、店内にいる人全員のこの「注文の仕方」が気になって仕方がないのである。

この考え方は、おそらくエンジニアとしての「無駄を排除する(=効率化)」習慣からきている。
お客様の運用を考えるとき、ソースや設計書を書くとき、そこに無駄がないかを常に考える。
常に考えた結果、日常生活でも今まで気にしてこなかった「無駄」が目についてしょうがない。

何も考えずにラーメンに集中できたらいかに幸せか、と思う反面、
エンジニアらしい考え方をしている(っぽい)自分がどことなく誇らしい。


美味しいラーメンを食べるために、そして自分の中の「エンジニア」を感じるために、今日も私はラーメン屋に通う。

Comment(15)

コメント

webエンジニア

味も麺の固さも油も必須属性が付与されてるラーメン屋の場合、バリデーションチェックでエラーになる可能性
キーバリューの形式で渡さないとパースに失敗してエラーになる可能性

考慮して、余計な通信を抑えるために全て省略せずに注文するのもエンジニアらしいのでは無いかと思いました(私はこちら側です)

山無駄

設計書にしろ、ソースにしろ次に読む人が必ずしも同じスタンスで、誤解なく読
み取ってくれるかが不安だし、自分が書いたものにミスがないかもわからなく
可能性を考えると、むやみに効率化するのではなく、きっちり表現することも
エンジニアとしては大切かと。
特に、何も言わなければ「普通」というのは、ラーメン屋ではそうかもしれませ
んが、技術屋としては何処かにその定義がない限りは不安。
全部普通で良いですか?と聞き返してくることからして、普遍的な定義があるわ
けではないのでしょうから。

japason

>webエンジニアさん
すごい専門的に例えてますね笑
目的のために「最小限の情報を伝える」も「すべて省略せずに伝える」も、結果は真逆だけどその「思考の過程」が「エンジニアらしさ」なのかもしれませんね!

>山無駄さん
おっしゃるとおりかと思います。
私がよく行くところが「普通」が初期値なので、それが私にとって「普通」になっちゃってたみたいですね^^;


ちょっとそれますが、お二人のコメントを見てたまーに見る「※何も言わない場合は全て普通になります」みたいな小さい注意書きをふと思い出しました。その注意書きを見て、「ああじゃあ省略しよう」、逆に注意書きがなくて「何も言わない場合どうなるのかわからないから全部言おう」とか、普通見ないようなとこにしっかり目をつけて考慮しちゃう(特に小さい文字とか※内とか)のもエンジニアらしさというか職業病、ですかね^^;

abc

筆者の考え方は、エンジニア的ではないように感じます。
本文の内容については、無駄を省くことに主眼を置いているために大事な情報が
抜け落ちている。
コメント欄の「注意書きを見て云々」も表面上のことしか見ていないように思えます。
細かいところに目がいくいかないは性格の範疇かと。

コメント欄のお二人のように目に見えない部分まで考慮してこそのエンジニアらしさではないでしょうか。
「味普通、麺固め、油少なめ」の答えの中にも、ナンセンスでは片付けられない
考えが詰まっているかもしれません。

ハムレット

メニューのモデリングの際に、


柔め/普通/固め

以外にも、女性や子供、学生や肉体労働者などの顧客ごとのバリエーションを考えて、


少なめ/普通/多め

も無料で調整できるとか、想定しないのでしょうか。・・・・
(そういうラーメン屋も実際にあります。)

モデルを適切に作成して、仕様を漏らさないこともエンジニアの大切な仕事だと思います。

webエンジニア

エンジニアとしてのセンスを感じない、という刺激的な言葉に釣られてついつい反論したくなりますが(かく言う私もその口ですが)、コラムの内容としては何度も繰り返すうちに不要な処理を見極めて効率化した、というお話ですしいわゆるプログラマの三大美徳『怠惰』という奴で素晴らしいと思います。
たぶん、どこに重みを置くかというのが普段の業務とかに依存するのかな、と。
私の場合はサーバサイドのアプリ仕様変更(店員がいつもと違うとか、馴染みの人が辞めてしまったとか)により伝わらなくなる可能性が嫌なので、IF仕様に明示されているものは全て渡す方が結果的に安全に倒れる、というような考え方になります。

モモ

私もハムレットさんにどちらかといえば同意です。
例えばこのお店に麺の量を変更できるというオプションが増えた際に、情報を渡す側の客が「少な目」といえば麺が少な目なのか、油が少な目なのかわからなくなります。仕様が拡張されることを想定してキーバリューすべてを渡すのが安全だと思います。筆者さんの考え方は、バリューが一意だからキーはいらないということなのかと思うのですが、実際の実装では違和感を感じる考え方かと思います…。

モモ

バリューからキーを検索するほうが、キーバリュー両方渡すのをやめてバリューしか渡さないことによるメリットよりもデメリットのほうが大きくなりそうですよね…。

abc

アプローチの仕方の問題では?
筆者は効率化を目的としてるため、効率化に都合の良い情報を
探してしまっているように見えます。
このアプローチでは、うまくいくこともあるかもしれませんが
実際には失敗することの方が多いのではないでしょうか。

パピヨン

職業病ってあるとおり「あるある!」程度に読めばいいのかなって思ってたんですが、コメント見てると違うんですかね?笑

実装でそんなやり方する人はさすがに‥笑
こういう「あるある」ありますよね!
他に例が出てきませんが‥
私は前の人の頼み方見て省略してたら省略するし、
それで聞き直されてたら全部言う、的なエンジニア風に言うと
分岐が多い感じです!

japason

>abcさん
「無駄を省きたがるという職業病」がテーマなので
豪快に色々切り捨てちゃいました!
性格の範疇と言われてしまうとそもそも職業病もそうだと思うので、反論しようがないです^^;
一番のナンセンスは私ですね^_^

>ハムレットさん
そうなった場合、油と麺については項目も伝えないと区別つかなくなりますね^_^
コラムに沿って注文すると、「固め、油少なめ、麺多め」って頼み方になります。
(私は無料なら絶対麺多めです)
「省略できることは省略する」ってスタンスを表現したかったので、ちょっとまどろっこしくなるかな、と思って「同じ表現の項目があった場合」は「省略」しちゃいました。

でもコメントいただいて、ちゃんと書くべきだったな、と反省ししてます。拙い文章力ですみません(・_・;

Anubis

波に乗って無粋なツッコミを入れてみる。

> そのまま「味普通、麺固め、油少なめ」という人にはエンジニアとしてのセンスを感じない。

私としては、エンジニアとしてのセンスというより、
コミュニケーションのセンスを感じない。
「味普通、麺固め、油少なめ "で頼みます!"」とか、
店員のテンションの上がりそうな一言を付け加えてはどうだろう。
店員の反応が全然変わってくるし、
隣に女性(レディ)がいた場合、自分の印象が変わってくる。 ← ここ重要

本質とは違うところにも大きなポイントがあったりする。
ここを見抜くのもエンジニアのセンスじゃないかと思う。

文章力は書くことで鍛えられるものです。
気にせずに好きなように書いていけばいいかと。今後の活躍を期待しております。

japason

>webエンジニアさん
「エンジニアとしてのセンスを感じない」
実は後付けなんです。
ちょっとインパクトが弱かったので付け足したらスパイス効き過ぎちゃったみたいです。不快に感じたらすみません。
>何度も繰り返すうちに不要な処理を見極めて効率化した
ありがとうございます。これが言いたかったんです。スパイス効果でちょっと違う方向に受け取られやすくなりましたが。。笑 

私も自分より前の人が「麺は普通でいいですか?」って聞かれてたとしたら普通でも省略せずちゃんと言います笑
この店員には省略しても伝わる/伝わらない、とか見極めてないで全部省略せず言っちゃった方が早いですかね笑

>モモさん
あくまで「注文の時」の話なので、ラーメン頼む時に「このお店は今後「麺多め/少なめ」の項目が増えるかもしれないからその時でも大丈夫なルールで注文しよう」とかそういうことじゃないです。笑
実装の話はしてません、わかりにくくてすみません。

>abcさん
うまくいきそうな時だけこのアプローチしてるので、多分大丈夫です^^;
いまのところ。

japason

>パピヨンさん
>職業病ってあるとおり「あるある!」程度に読めばいいのかなって思ってたんです>が、コメント見てると違うんですかね?笑
このスタンスで読んでいただいて大丈夫です、ありがとうございます。笑
エンジニア風に言えばどんな行動でもそれなりにエンジニアっぽくなりそうだな、とどうしようもないことを思ってしまいました。笑

>Anubisさん
すみません、「でお願いします」も「省略」してます。笑

コミュニケーションは効率化しちゃいけないですよね。
「今日は天気がいいですね」とか、中身のない会話でも、人とのコミュニケーションには無駄なことなんてない、と思ってます。
(注文も店員とのコミュニケーションだろ、って突っ込みはちょっと勘弁して下さい^^;)

>文章力は書くことで鍛えられるものです。
>気にせずに好きなように書いていけばいいかと。今後の活躍を期待しております。

ありがとうございます!様子を見つつも、気にせず好きなように書いていきます。笑

山無駄

4年目SEさんの鼻っ柱の強い文章を心配し、著者のエンジニアとしての
(もしくは文章力の)の未熟さをやんわりと指摘してくれるコメントの
皆さん、優しいですね。

老婆心ついでにもう一つ付け加えさせていただくと、工学の徒であるエ
ンジニアに求められるセンスは「効率性」ではなく、自然科学に対する
深い知識と有用な事物や環境を構築する「もの・ことづくり」の精神です。
もちろん「効率性」は人類が幸せになる何かを作る際に必要なパラメー
タの一つかもしれませんが、「効率性」だけを追い求めすぎて人類を不
幸にするものを作ったならば、それはエンジニアとして失格です。

だからコメントをくれた皆さんは、「効率性を求めない発言にエンジニ
アのセンスを感じない」とか、「効率性がエンジニアとしての職業病だ」
という趣旨の文章に対して、スパイスが効きすぎて不快だからコメント
したわけではなく、「おいおい若きエンジニアさんよ、エンジニアリン
グの世界はそんなに簡単ではないぜ、勘違いしなさんなよ」と言ってい
るように感じます。

曲解かな?

コメントを投稿する