アカウント名:
パスワード:
次の年号どうすんねやろと思ったらこんなんあった。
naronA @naron__A 2017-12-03 14:00:02上司「ここは処理が3つに別れるのでBooleanにtrue/false/nullを代入しまして」俺「え?Booleanですよね?」上司「うん」俺「🤔」#IT業界クソ現場オブザイヤー2017
コンビニで「ここは何でも屋とちゃうんかー」と怒鳴りちらしてた客を思い出した。
いずみん @is_ryo 2017-12-03 12:33:32客「プロなら100%バグ、エラーのでないシステム作れないの?」#IT業界クソ現場オブザイヤー2017
>客「プロなら100%バグ、エラーのでないシステム作れないの?」冷静に考えるとごもっともなんだよなぁ・・・# ITの常識は一般社会では常識とは限らない
「プロなら打率10割」とか「プロなら全試合完封」でいかがか。
治療を受けに医療機関に行って期待通りに治らなかったら訴えちゃいそうな人たちかもしれない。
>客「プロなら100%バグ、エラーのでないシステム作れないの?」
プログラムって工業製品だからな。例えるなら電源が入らないことがあるテレビとか、ブレーキの利かないことがある車とかだよ。
たまにありますねそういうの初期不良とか知りませんか
実際、大量生産ならのチェックの限界上どうしても新品の不良とかがあるけど、どちらかと言えば個別事象であってバグの類とは違うからな。
バグはいわば「プログラム上の仕様(機能の仕様ではない事に注意)の一部」であって、ハードウェアで言えば、法律に触れる「設計上の欠陥」にあたるものだ。
結局、物理的な致命打になりにくい事に(個々の意思を無視して世間全体が)甘えているのと、コスト的な問題で「仕方ないこと」と大目に見られているだけだ。
リコールしますか。
そりゃ、「客」だってコスト増大分を払う気ないからだろ。
なんだ、「コストをかけないで高品質が欲しい」ってことですかそれはちょっと難しいですねぇ、いやみんないろいろ研究してるんですけどね。
コストさえ十分かけてくれればバグ0保証でもつけられると思いますよあるいは機能を非常に単純化するという手もあるかと思います。
コストがほぼ無限大になりそうな気がする。バグが無いことを証明するのは厳しいなぁ。
矛盾してますね
敵のいる話と一緒にするのはさすがにお門違い。
自分も開発者としての経験はあるから「プロだから100%ミスを出すな」とは言わんけど、プロ野球と比べて正当化してくるような勘違い業者がいたら即刻切り捨てるよ。
客が敵じゃないすか
敵は海賊
テスト終わって納品前日に適当にチェックしてたら、「客から要望来てるからこれ今日中に実装しておいて」ってSEに言われましてね。身内にも敵はいるもんですな。
> 冷静に考えるとごもっともなんだよなぁ・・・ なぜ君は学校の試験で全て満点を取れなかったの?
実現不可能な目標を強要されると捏造発生します
チャレンジするしかないですね
大きめの会社の社内システム担当してるけれど、次の年号、ちらほらと話が出始めてるみたいたいていそういうので外部に依頼がくるのが
・年号云々以前に作りに問題がある・年号も品目もまぜこぜでマスターやら直書きやら混在している・どこで年号をつかってるかすらわからないのでその調査から・和暦だったり西暦だったり2ケタだったり4ケタだったり略称だったり漢字だったり・ClassicASPだったりVB5だったりVB6だったりVBSだったりBATだったりPHPだったりC#だったりVB.NETだったり・DBもいろいろだし、日付型だったり文字列だったり年号コードが別途あったり
みたいな感じでまぜこぜの闇鍋みたいな状態と予想。大きい会社で古くから黙々と動くサブシステムが大量にあるので、どれが何かを調査分類するだけでちょっとしたプロジェクトになるとおもう。
わくわくしますね。何が出るかな。
以前、「アクセスで作られてるシステムで、元号処理がVBAのCASE文」ってのを見たことがある。
明治も大正も昭和も平成も何年からってのをCASE文でハードコーディング。アクセスだって一応DBシステムなんだから、マスター化ぐらいしとけよ。。。。
と思いつつ、担当修正箇所は別の場所だったんで見なかったことにした。
☓今生天皇/○今上天皇
読みは「こんじょう」じゃなく「きんじょう」です。
あぁ、入力はあるよね、かなり自前でカスタマイズしてたり。
InputManとか使ってたけれど微妙にお客さんの要望と違ってたりして機能拡張したり、類似品を作ったりしてたの思い出した。ああいうのの改修は大変だろうなぁ。(前職ですでに退社してるので知らん!!)
省庁のデータなら大正ぐらいからのデータはいれてそうって思った
平成以降にできた省庁の部所なのかもしれない。
どこだろ
ついでに、過去事案を扱わないって前提も必要だと思う。
世の中には無駄に取引会社の創業年なんかを管理している会社があって、自動でキリの良い記念年度は通知が出るようにとかしていたシステムが有った。そこで創業が明治より前の企業が出てきてひと騒ぎに。
次の元号の要件に、頭文字が'M', 'T', 'S', 'H'に被らないが入ってるらしいで。
電機メーカーの頭文字みたいだなと思った。
あー、なるほど。なら次は'N'辺りかな。
'P'だったり?#ありえないとはいわんが・・・(大汗)
大穴で 'Q'
Qualcommとか(電機メーカーではないけど)
> # あと残っているのは '0'~'9' ぐらい?
ᚠᚢᚦᚨᚱᚲとかまだ残ってるから大丈夫。
MITSUBISHITOYOTASUZUKIHONDA日産は・・・ちがう
OracleのPL/SQLのBOOLEAN型は標準で三値持てるらしいですね。 > Booleanにtrue/false/null
他の言語だと、C#ならbool?、C++ならBoost.Triboolあたり。
SQLの3値論理はTrue/False/Nullではなく、True/False/Unknownですよ。基本的なことで、意味も扱いも全く違いますから、ちゃんと勉強しましょう。
SQL99での定義はTrue/False/Unknownですが、Oracleではunknownはサポートされていないのでは?(正確には評価結果のUnknownがありますが)元コメはOracleにしか言及していないのでいきなりSQL99の話されたら困惑しますよ。
PL/SQL言語リファレンスより [oracle.com]|BOOLEAN変数に代入できる値はBOOLEAN式のみです。(中略)|SQLにはBOOLEANに相当するデータ型がないため、次の操作は実行できません。| データベース表の列にBOOLEAN値を割り当てる操作(以下略)ついでに、上記のBOOLEAN値 [oracle.com]は|BOOLEAN式とは、BOOLEAN値(—TRUE、FALSEまたはNULL)を戻す式のことです。
とのことなので、12c(12.1)で試してみたところ変数にはNULLは代入できるしis nullによる評価も可能でしたが、テーブルへのINSERTはできませんでした。
(#3324495) の言いたいことがさっぱりわからん
java.lang.Booleanならnullでもいいんじゃまいか
一瞬納得しそうになったけど、booleanValue() を呼び出すとぬるぽになるからだめだな。
>コミッタ見たら中国の方だったんで、仕様書に「何年未満なら昭和」みたいに書いてあってそのまま実装しちゃったんだろうなぁと思ってますってあるし、現時点でコミットログにアクセスできる人なんですね
PASCALなんて使い物にならないとかいう風潮の影響がこんな所にもっ!!
# 多分PASCALは関係ありません
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
Stableって古いって意味だっけ? -- Debian初級
昭和と平成 (スコア:5, おもしろおかしい)
次の年号どうすんねやろと思ったらこんなんあった。
naronA @naron__A 2017-12-03 14:00:02
上司「ここは処理が3つに別れるのでBooleanにtrue/false/nullを代入しまして」
俺「え?Booleanですよね?」
上司「うん」
俺「🤔」
#IT業界クソ現場オブザイヤー2017
Re:昭和と平成 (スコア:1)
コンビニで「ここは何でも屋とちゃうんかー」と怒鳴りちらしてた客を思い出した。
いずみん @is_ryo 2017-12-03 12:33:32
客「プロなら100%バグ、エラーのでないシステム作れないの?」
#IT業界クソ現場オブザイヤー2017
Re: (スコア:0)
>客「プロなら100%バグ、エラーのでないシステム作れないの?」
冷静に考えるとごもっともなんだよなぁ・・・
# ITの常識は一般社会では常識とは限らない
Re: (スコア:0, すばらしい洞察)
「プロなら打率10割」とか「プロなら全試合完封」でいかがか。
Re:昭和と平成 (スコア:1)
治療を受けに医療機関に行って期待通りに治らなかったら訴えちゃいそうな人たちかもしれない。
>客「プロなら100%バグ、エラーのでないシステム作れないの?」
Re: (スコア:0)
プログラムって工業製品だからな。
例えるなら電源が入らないことがあるテレビとか、ブレーキの利かないことがある車とかだよ。
Re:昭和と平成 (スコア:2)
たまにありますねそういうの
初期不良とか知りませんか
Re: (スコア:0)
実際、大量生産ならのチェックの限界上どうしても新品の不良とかがあるけど、
どちらかと言えば個別事象であってバグの類とは違うからな。
バグはいわば「プログラム上の仕様(機能の仕様ではない事に注意)の一部」であって、
ハードウェアで言えば、法律に触れる「設計上の欠陥」にあたるものだ。
結局、物理的な致命打になりにくい事に(個々の意思を無視して世間全体が)甘えているのと、
コスト的な問題で「仕方ないこと」と大目に見られているだけだ。
Re: (スコア:0)
リコールしますか。
Re: (スコア:0)
そりゃ、「客」だってコスト増大分を払う気ないからだろ。
Re:昭和と平成 (スコア:2)
なんだ、「コストをかけないで高品質が欲しい」ってことですか
それはちょっと難しいですねぇ、いやみんないろいろ研究してるんですけどね。
コストさえ十分かけてくれればバグ0保証でもつけられると思いますよ
あるいは機能を非常に単純化するという手もあるかと思います。
Re:昭和と平成 (スコア:1)
コストがほぼ無限大になりそうな気がする。
バグが無いことを証明するのは厳しいなぁ。
本気で言ってるの? (スコア:2)
将来に渡って起こりえる状況をすべて網羅するのは現実問題として不可能。
家電だって自動車だって、工業製品のリコールは日常的に発生してるし、
法律だって随時改正が行われている。
完璧なものを実現するのは不可能だから可能な限り完璧に近いものを実現するために最大限の努力を行う。
しかしいくら努力をしたところで完璧には程遠い。
ディスカバリー・チャンネルで放送されてるメーデーシリーズを見てみるといい。
最大級の安全性を求められる航空機業界でさえも、想定外の連続で死屍累々、墜落の山を築いてようやく今の安全性(しかしまだ墜落する)に至っている。
それは甘えとか大目に見るとかいう問題ではなく、
現実問題として、可能な限りの事前対策を講じた上で、見つかった穴は随時塞ぐという方法以外にやりようがない。
一方で「#IT業界クソ現場オブザイヤー」の例は、傍目に見ても大目に見れないと言うか、現場に近いところでクソって指摘してる人がいながら、それを是正できてない辺り、目を覆う惨状としか言いようがない。
これらの例は甘えと言われても仕方ないし、分かってれば大目に見るのは困難な例ばかり。
無知か無能か背信の類いだろう。
uxi
Re: (スコア:0)
矛盾してますね
Re: (スコア:0)
敵のいる話と一緒にするのはさすがにお門違い。
自分も開発者としての経験はあるから「プロだから100%ミスを出すな」とは言わんけど、プロ野球と比べて正当化してくるような勘違い業者がいたら即刻切り捨てるよ。
Re:昭和と平成 (スコア:1)
客が敵じゃないすか
Re: (スコア:0)
敵は海賊
Re: (スコア:0)
テスト終わって納品前日に適当にチェックしてたら、
「客から要望来てるからこれ今日中に実装しておいて」ってSEに言われましてね。
身内にも敵はいるもんですな。
Re: (スコア:0)
> 冷静に考えるとごもっともなんだよなぁ・・・
なぜ君は学校の試験で全て満点を取れなかったの?
Re: (スコア:0)
実現不可能な目標を強要されると捏造発生します
Re:昭和と平成 (スコア:1)
チャレンジするしかないですね
Re:昭和と平成 (スコア:1)
大きめの会社の社内システム担当してるけれど、次の年号、ちらほらと話が出始めてるみたい
たいていそういうので外部に依頼がくるのが
・年号云々以前に作りに問題がある
・年号も品目もまぜこぜでマスターやら直書きやら混在している
・どこで年号をつかってるかすらわからないのでその調査から
・和暦だったり西暦だったり2ケタだったり4ケタだったり略称だったり漢字だったり
・ClassicASPだったりVB5だったりVB6だったりVBSだったりBATだったりPHPだったりC#だったりVB.NETだったり
・DBもいろいろだし、日付型だったり文字列だったり年号コードが別途あったり
みたいな感じでまぜこぜの闇鍋みたいな状態と予想。大きい会社で古くから黙々と動く
サブシステムが大量にあるので、どれが何かを調査分類するだけでちょっとしたプロジェクトになるとおもう。
わくわくしますね。何が出るかな。
Re: (スコア:0)
以前、
「アクセスで作られてるシステムで、元号処理がVBAのCASE文」ってのを見たことがある。
明治も大正も昭和も平成も何年からってのをCASE文でハードコーディング。
アクセスだって一応DBシステムなんだから、マスター化ぐらいしとけよ。。。。
と思いつつ、担当修正箇所は別の場所だったんで見なかったことにした。
Re:昭和と平成 (スコア:1)
☓今生天皇/○今上天皇
読みは「こんじょう」じゃなく「きんじょう」です。
Re:昭和と平成 (スコア:1)
あぁ、入力はあるよね、かなり自前でカスタマイズしてたり。
InputManとか使ってたけれど微妙にお客さんの要望と違ってたりして機能拡張したり、
類似品を作ったりしてたの思い出した。ああいうのの改修は大変だろうなぁ。
(前職ですでに退社してるので知らん!!)
Re: (スコア:0)
省庁のデータなら大正ぐらいからのデータはいれてそうって思った
Re:昭和と平成 (スコア:1)
平成以降にできた省庁の部所なのかもしれない。
どこだろ
Re: (スコア:0)
ついでに、過去事案を扱わないって前提も必要だと思う。
世の中には無駄に取引会社の創業年なんかを管理している会社があって、自動でキリの良い記念年度は通知が出るようにとかしていたシステムが有った。
そこで創業が明治より前の企業が出てきてひと騒ぎに。
Re:昭和と平成 (スコア:1)
次の元号の要件に、頭文字が'M', 'T', 'S', 'H'に被らないが入ってるらしいで。
Re:昭和と平成 (スコア:1)
次の元号の要件に、頭文字が'M', 'T', 'S', 'H'に被らないが入ってるらしいで。
電機メーカーの頭文字みたいだなと思った。
Re: (スコア:0)
あー、なるほど。なら次は'N'辺りかな。
Re: (スコア:0)
'P'だったり?
#ありえないとはいわんが・・・(大汗)
Re:昭和と平成 (スコア:1)
大穴で 'Q'
Re:昭和と平成 (スコア:1)
# あと残っているのは '0'~'9' ぐらい?
Re:昭和と平成 (スコア:1)
Qualcommとか(電機メーカーではないけど)
Re:昭和と平成 (スコア:1)
> # あと残っているのは '0'~'9' ぐらい?
ᚠᚢᚦᚨᚱᚲとかまだ残ってるから大丈夫。
Re: (スコア:0)
ちがう。
Re:昭和と平成 (スコア:1)
Re: (スコア:0)
MITSUBISHI
TOYOTA
SUZUKI
HONDA
日産は・・・ちがう
Re: (スコア:0)
OracleのPL/SQLのBOOLEAN型は標準で三値持てるらしいですね。 > Booleanにtrue/false/null
他の言語だと、C#ならbool?、C++ならBoost.Triboolあたり。
Re: (スコア:0)
SQLの3値論理はTrue/False/Nullではなく、True/False/Unknownですよ。
基本的なことで、意味も扱いも全く違いますから、ちゃんと勉強しましょう。
Re: (スコア:0)
SQL99での定義はTrue/False/Unknownですが、Oracleではunknownはサポートされていないのでは?(正確には評価結果のUnknownがありますが)
元コメはOracleにしか言及していないのでいきなりSQL99の話されたら困惑しますよ。
Re: (スコア:0)
(そもそもBoolean型をSQL99の通りに実装しているRDBMSは存在しない)
Boolean型をサポートしないSQLを拡張したPL/SQLはもやはSQLじゃないのでSQL99に拘束される謂れはないが
それはそうとしてPL/SQLではBoolean型変数を作れるが、その変数にはNULLを代入できない
なぜならBoolean型が必要なところでNULLを評価するとunknownになるから、 NULLを代入したつもりでも実際の値はunknownになっているはず
Re:昭和と平成 (スコア:2, 参考になる)
PL/SQL言語リファレンスより [oracle.com]
|BOOLEAN変数に代入できる値はBOOLEAN式のみです。
(中略)
|SQLにはBOOLEANに相当するデータ型がないため、次の操作は実行できません。
| データベース表の列にBOOLEAN値を割り当てる操作
(以下略)
ついでに、上記のBOOLEAN値 [oracle.com]は
|BOOLEAN式とは、BOOLEAN値(—TRUE、FALSEまたはNULL)を戻す式のことです。
とのことなので、12c(12.1)で試してみたところ変数にはNULLは代入できるしis nullによる評価も可能でしたが、テーブルへのINSERTはできませんでした。
Re: (スコア:0)
(#3324495) の言いたいことがさっぱりわからん
Re: (スコア:0)
java.lang.Booleanならnullでもいいんじゃまいか
Re:昭和と平成 (スコア:1)
一瞬納得しそうになったけど、
booleanValue() を呼び出すとぬるぽになるからだめだな。
Re:昭和と平成 (スコア:1)
# 世はなべて三分の一(プログラマの単金は会社単金の1/3)
Re: (スコア:0)
>コミッタ見たら中国の方だったんで、仕様書に「何年未満なら昭和」みたいに書いてあってそのまま実装しちゃったんだろうなぁと思ってます
ってあるし、現時点でコミットログにアクセスできる人なんですね
Re: (スコア:0)
PASCALなんて使い物にならないとかいう風潮の影響がこんな所にもっ!!
# 多分PASCALは関係ありません