質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
OS

OS(オペレーティングシステム)は、システムソフトウェアの一種であり、一般的に、ハードウェアを直接的に管理・操作する最も中心的な機能を有するソフトウェアがオペレーティングシステムとして呼ばれます。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

テスト駆動開発

テスト駆動開発は、 プログラム開発手法の一種で、 プログラムに必要な各機能をテストとして書き、 そのテストが動作する必要最低限な実装を行い コードを洗練させる、といったサイクルを繰り返す手法の事です。

Q&A

解決済

8回答

2291閲覧

プログラム開発とOS等のバージョンアップの是非

sansyou69

総合スコア31

OS

OS(オペレーティングシステム)は、システムソフトウェアの一種であり、一般的に、ハードウェアを直接的に管理・操作する最も中心的な機能を有するソフトウェアがオペレーティングシステムとして呼ばれます。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

テスト駆動開発

テスト駆動開発は、 プログラム開発手法の一種で、 プログラムに必要な各機能をテストとして書き、 そのテストが動作する必要最低限な実装を行い コードを洗練させる、といったサイクルを繰り返す手法の事です。

0グッド

2クリップ

投稿2020/04/03 14:18

Webアプリを開発しようとしているのですが、開発用のPCに関して、「OSのアップデートは望ましくない」と言われました。

その人によると、OSはおろか、セキュリティ関係以外のアップデート全般が、望ましくないみたいです。
銀行系など、ずっと古いOSのまま使っている、とも。

そういうものなのでしょうか?
自分はスマートフォンのアプリ開発も進めているのですが、そちらはそういう訳にもいかず、戸惑っています。

どうか、教えてください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答8

0

外部のネットワークと一切繋がないのであればそれでもいいかもしれませんが、Web であれば最低限セキュリティアップデートはすべきですし、スマホ、特に iOS のアプリは開発環境をアップデートしないと App Store への提出もできません。(コロナの影響で少し伸びましたが、今年の 7 月以降は Xcode 11 を使う必要があります。)

もちろん、アップデートによって問題が起こらないか検証する必要はありますし、それにはコストがかかりますが、アップデートを怠って情報セキュリティ事故を起こしたら、それは必要なコストをケチった会社の責任です。

古い体質の会社ではいまだに旧バージョンの Windows や Internet Explorer を使っているところもあると聞きますが、そんなことではどんどん世界の流れから取り残されるばかりだと思います。

投稿2020/04/03 18:53

編集2020/04/03 19:00
hoshi-takanori

総合スコア7901

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sansyou69

2020/04/04 06:39

ご返答ありがとうございます。 スマートフォンのアプリは、最新版を利用できないとダメ、くらいの感じですよね。 PCのウェブアプリは、古いモノでも対応することに重点があるというか・・・そんな違いがあるのかな、という感じがしました。 自分は長いこと、スマートフォンのアプリの開発に重きを置いていたので、悩んでおります。 現在、同じPCでスマートフォンのアプリもPCのウェブアプリも開発しているのですが、片方はバージョンアップすべし、片方はすべしでない、となったら、どちらかのアプリは作れなくなる。 難しいです。PCは二台揃えなないとダメでしょうか?
hoshi-takanori

2020/04/04 06:50

バックエンドの開発者は古いというか枯れたバージョンを好みますよね。古いからといって一概に悪いとも言えなかったりしますが、セキュリティアップデートまで否定されると流石にどうかと思ってしまいます。 とは言え、実際にバージョンを固定したい・複数バージョンを使用したいという場面は多々ありますので、現実にはマシンを複数用意してもらうか、仮想環境をうまく使う必要があると思います。頑張ってください。
sansyou69

2020/04/05 11:50

再度のご返答、ありがとうございます。 自分には参考になるお話でした。頑張ります!
guest

0

OS にせよ言語にせよフレームワークにせよ、アップデートすることで完全に下位互換とは限りません。
つまり「それまで動いていたものが動かなくなる」可能性があるのです。

むろんたいていの場合は回避策がありますが、その回避策を取るにも工数と時間(つまりは人を動かす分の予算が)かかります。そもそも回避策が必要かどうか、調査するコストも含めて。
そのコストが妥当かどうか、という判断の問題です。

※Apache Struts なんて、セキュリティ上やばい(1 も 2も)のは分かってても、放置されているサイトが多いのは、代替への更新コストが見合わないという部分もあるのでしょうね

投稿2020/04/04 06:57

編集2020/04/04 06:58
tacsheaven

総合スコア13703

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sansyou69

2020/04/05 11:47

お答えありがとうございます。 Webアプリに携わっているだろう人達から、そのような理解や考えが数多く出ていることが、私としては驚きであり、そして、発見でした。 私自身にはキャリアがないので、そういう実感に基づくご意見は、ありがたいです。 参考になります。
guest

0

そのアップデートの内容が完全な互換性を保証しているものであれば問題ありませんが、モノによっては動かなくなるプログラムは存在します。

アップデートが原因で開発環境が動かなくなった場合に備えて、あらかじめ検証をする必要がありますが、それは会社にとって「コスト」でしかありません。
ロクな検証をせずにアップデートして問題が起きた場合も、膨大なコストが発生します。

なので、シビアなところでは「一切さわるな」というのは普通にあります。

投稿2020/04/03 15:28

gentaro

総合スコア8947

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sansyou69

2020/04/04 06:47

お返事ありがとうございます。 「一切さわるな」ですか。私は素人なので、素朴な疑問なのですが、おそらくユーザー側のPCのOS、あるいはサーバーサイドのプログラム関連でも、バージョンアップは時間の経緯とともにされているわけですよね? そのような場合、たとえばユーザー側が「送信」の命令を送ったときに、アプリ内部のコードはずっと前と同一なままで、エラーというのは生じ得ないのでしょうか? そこのところが、私的にはずっと疑問なのですが、そのあたりお考えなどありますでしょうか。
gentaro

2020/04/04 09:07

プログラムはナマモノじゃないので、50年前のプログラムであっても同じ環境であれば同じように動きます。
sansyou69

2020/04/05 12:01

再度のお返事、ありがとうございます。 スマホのアプリ開発であれば、新しい環境に対応することが義務づけられていて、古いAndroidやiPhoneの機種の利用は切り捨てていく、みたいな感じです。 でも、私が現在Webアプリとして開発しているものは、クライアントとの関係から「切り捨てる」ことができないアプリになるので。そこらへんの感覚が、自身の中で折り合いをつけるのが難しい感じです。 自分にはキャリアがないので、その業界に居られる方たちの「実感」に基づくご意見やお考えは、貴重です。
guest

0

アップデートで、もしもそのプログラムが動かなくなったときに、あーあ、しゃーないねえ、と済ませることができるなら、なにも気にすることはないです。

それで済ませることは出来ない場合、あらゆるアップデートも含めてあらゆる修正はするべきではない、ということになります。

あなたの開発しているアプリというのはこのどちらでしょうか

投稿2020/04/03 14:24

y_waiwai

総合スコア88042

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sansyou69

2020/04/04 06:57

ご返答ありがとうございます。私の作っているものは、絶対に後者です。 私はプログラム能力に自信のある人間ではないので、「あらゆる修正はするべきではない」ほうが、自分的にはメリットがあります。 ただ、今回の質問において、他の方にこのような同じ質問をさせていただきました。 「おそらくユーザー側のPCのOS、あるいはサーバーサイドのプログラム関連でも、バージョンアップは時間の経緯とともにされているわけですよね? そのような場合、たとえばユーザー側が「送信」の命令を送ったときに、アプリ内部のコードはずっと前と同一なままで、エラーというのは生じ得ないのでしょうか?」 このあたり、プログラミングに精通されている方の認識は、どのような感じなのでしょうか。 できれば、お考えお伺いさせてください。
y_waiwai

2020/04/04 07:13

自分(自社)以外は、たとえMicrosoftといえども信用できないもの、という認識でいないとこの商売はやっていられません。 いろいろ意見はあるでしょうし、考え方もあるでしょうけど、いざ動かなくなったときにどれだけの損害を受けるのか、ってところを勘案して、そこらへんをどうするのかを考えればよろしいかと。 動かなくなったと電話を受けて、次の日にサポートにいけばそれで済むというなら、勝手にアップデートさせてもいいでしょうけど、1時間止まったら損害がウン千マンとかで、損害賠償が来るというものなら、私なら、あらゆるアップデートはしない(させない)ようにしますね。
sage

2020/04/04 09:37

同様にセキュリティバッチがない古いバージョンを使わせたためにセキュリティホールを突かれて外部から侵入され、業務が動かなくなったり、機密資料を盗まれたりした場合に、あーあ、しゃーないな、と済ませることができるか も勘案する必要があります。
sansyou69

2020/04/05 12:11

y_waiwaiさん、sageさん、お返事ありがとうございます。 Webアプリを開発するにあたって、「アップデートはしない」ことが、業界におられる方達の実感なんだ、ということを知って、私としては驚きであり、発見でもありました。 その上で、セキュリティのアップデートの話なんだろう、と思います。 確かに、Microsoftさえ疑うべし、というのはそうかもしれませんね。何かことが起きた場合に、責任をとるのは彼らではないわけですから。 お言葉、噛み締めます。勉強になります。
guest

0

んー、Webサービスの場合開発環境のOS等依存の問題は少ないのでそれほど気にしませんが、SI開発なんかで大量の人員で開発する場合は余計なアップデートを嫌うと思います。問題が発生した場合に収集付かないので。

そりゃWebサービスを載せるサーバーのOS等はセキュリティパッチだけとかにしますが。

基本的に気にするべきはIEのメジャーバージョンくらいでしょうか。
しかし動作対象とするOS/ブラウザ全てでテストすることになるので、1開発用端末に本来そこまで厳密な環境を必要としません。

ちなみに、公共寄りのサービスやITリテラシの低い方をターゲットにしたサービスではサポート切れのOSやブラウザも動作対象に含める時がありますが、その場合は開発の難易度が非常に高くなります。

投稿2020/04/07 14:13

akbr

総合スコア88

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sansyou69

2020/04/08 09:40

お返事ありがとうございます。 >基本的に気にするべきはIEのメジャーバージョンくらいでしょうか。 >しかし動作対象とするOS/ブラウザ全てでテストすることになるので、1開発用端末に本来そこまで厳密な環境を必要としません。 なるほど、そういうものなんですね。 自分の中でモヤッとしている部分が多いので、そう具体的に言ってくださると、非常に助かります。 >公共寄りのサービスやITリテラシの低い方をターゲットにしたサービスではサポート切れのOSやブラウザも動作対象に含める時がありますが、その場合は開発の難易度が非常に高く windows7とか使おうとしたらずっと使い続けられるような気がしなくもないし、この場合だとマイクロソフトがどう出るか、によるんでしょうけど、対象の会社によっては考えるべきケースがもしかしたらあるかもしれないですね。 ありがとうございました。
guest

0

不特定の一般の会社でも使うことを想定している

という記述があり、sansyou69さんが「開発者」だという事なので、自分だったらOS(Windows,Linuxしかわかりませんが)のアップデートは、率先して全て適用します。(このパッチを当てると動かなくなるという警告を出すために)
さらに、OS以上にブラウザのアップデートが多いので、OSだけ止めても意義は半減します。

銀行・証券向けとか、エンドユーザにおいて既にOS・ブラウザのバージョンコントロールが行われている場合は、開発環境を作る際にバージョンが指定されていると思います。その場合は一切変えてはいけません。
「不特定の一般の会社」であれば、利用環境は様々です。一定のバージョンに留める事はほぼ不可能でしょう。

旧態のOS、ブラウザ等では、一度適用するとロールバックに失敗することが多かったので、誰かが人柱になって確認するまでは控えるという事が効率良いとも考えられて来ましたが、今のOSは、駄目だったら戻せます。(失敗するケースもたまにありますw)
sansyou69さんのチームで、既に人柱さんがいるのであれば、初心者とのことであるsansyou69さんは、OKが出るまで控えるという業務命令には従うべきでしょうね。

古いシステムで、IE11縛りがあるものは、IE11でしかサポートしていない機能やjavascript仕様を使っているからです。だから、Windows10でもIE11を残しているのです。
それ以外のOS/ブラウザパッチは、更新を止める方が危険な事が多いですね。

投稿2020/04/07 06:47

Yasuto

総合スコア32

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sansyou69

2020/04/07 11:36

ロールバックですか。そういう試し方も可能なんですね。初めて認識しました。 問題提起、ありがとうございます。 「更新を止める方が危険な事が多い」−−。 通常PCを利用してる人間の感覚としては、そう理解していたんですが、プログラムに携わっておられる方の認識は、それとは逆なんだな、と理解しておりました。 しかし、その業界の中におられる方のご理解も、様々なんですね。 いずれ、開発にご協力いただいた知見のある方に、相談してみます。 ありがとうございました。
guest

0

OSのアプデをしない意味もケースによって有るには有るのでそれを否定しにいくのではなく
やりたい事(webアプリ開発)に現環境は不適切だという根拠を示してアプデのフローを整えるなり
専用環境を用意してもらうなりすると良いかと。

投稿2020/04/04 12:46

petmen029

総合スコア86

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sansyou69

2020/04/05 11:35

お答えありがとうございます。 「不適切だという根拠」を、私自身が示せるほどの知見はないと思いますが、誰かに頼んで診てもらうくらいのことはあってもいいかもしれませんね。参考になります。
guest

0

ベストアンサー

Webアプリを開発しようとしているのですが、開発用のPCに関して、「OSのアップデートは望ましくない」と言われました。

「OSのアップデート」がどの程度のものを指すのかによりますし、
質問者さんの開発環境や職場にもよりけりです。

WEBアプリはおそらくインターネット上で公開するものだと思われます。
少なからず数度はインターネットに繋がなければならないと思います。
(全く繋がないで公開もできなくはない。
そのため、セキュリティのアップデート程度は必ずするべきです。

だからといって開発用PCでベータ版まではお勧めできません。

開発用PCが検証用も担う場合、それこそ質問者さんの開発環境や職場にもよりけりです。
例えば、
「開発用と検証用のPCが同じで、常に最新バージョンの対応をしていかなければいけない。」
のような場合では、メジャーやマイナー関わらず各種ソフトの互換性等を確認した上で上げるべきです。
(実際問題、開発用PCのOSのバージョンをあげることで動かないって聞いたことないので、経験がある方は教えていただけると幸いです。

以上の回答は、質問文を一部自分の解釈を加え合わせたものです。
結局のところは所属組織等に従った方が良いです。
もし、疑問に思われているようでしたら直接聞いてみて、納得できないようでしたら詳しく伺ってみるとよろしいかと思います。

投稿2020/04/04 10:42

kyoya0819

総合スコア10429

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sansyou69

2020/04/05 11:44

お答えありがとうございます。 自分がいま開発しているのは、不特定の一般の会社でも使うことを想定しているものです。 従って、ユーザーがどういうPCを利用しているのか、というのは、設定しずらい条件なのかな、という気がします。 ただ、セキュリティに関しては、アップデートを怠らない努力は必要なんだろう、と思います。 ありがとうございました。
kyoya0819

2020/04/05 17:07

今見返したら結構曖昧な回答でした。申し訳ございませんでした。 自分が伝えたいのは、 「 結局のところは所属組織等に従った方が良いです。 もし、疑問に思われているようでしたら直接聞いてみて、納得できないようでしたら詳しく伺ってみるとよろしいかと思います。 」 の箇所です。
sansyou69

2020/04/06 13:15

再度のお返事、誠にありがとうございます。 私には専門の知識がないので、より知見のある方の判断に従うほうが得策なんだろう、と思います。 最低の知識はもちろん必要だと思いますが、リスクというものを考えた場合に、自身の限界を知ることも、また必要なのかな、という気がします。 ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問