古いブラウザとの後方互換性

私は、Discourse を利用した神経変性疾患の影響を受けた人々のためのメッセージボードを運営しています。セキュリティの問題が発生するたびに、Commit search results · GitHub のセキュリティリストに従ってソフトウェアを最新の状態に保っています。しかし、これにより、古いコンピューターを使用しているユーザーがますます増え、アクセスできなくなるという意図しない副作用が生じています。

最近、夫の介護をしており、iPad でしかメッセージボードにアクセスできなかったユーザーがアクセスできなくなり、さらに最近では、Chrome を互換性のあるバージョンに更新できない古い Chromebook を使用しているユーザーもアクセスできなくなりました。ブラウザの最新バージョンのみをサポートするという方針は理解できますが、数年前に製造されたデバイスが、それ以外は完全に機能するにもかかわらず、アップデートを受け取れなくなり、多くの人にとって不可欠な生命線へのアクセスを妨げられるのは、非常にフラストレーションがたまります。

メッセージボードのヘッダーには、機能が限定されたバージョンが利用できると表示されていますが、メッセージボードは過去にプライバシー侵害の問題があったためログイン専用であり、機能が限定されたバージョンではログインができないため、これは利用できません。

理想的には、古いブラウザが動作しなくなるようなセキュリティアップデートのストリームがあるか、少なくともアップデートを適用する前にユーザーに警告できるように、特定のブラウザが動作しなくなるという警告があると良いのですが。

以下は、ユーザーからの引用です。

「プライベートメッセージで他の妻をサポートするためにそこにいます。それはとてもつらいことです。それが引き起こす混乱をあなたは決して知らないでしょう…私は本当に…打ちのめされています😢」

「すみません、怒っているように聞こえるかもしれませんが…17ヶ月前に夫を亡くして以来、投稿していませんが、毎日ログインしており、絶望感でいっぱいです」

「地元の図書館でメッセージボードにアクセスできると思いますが、自宅でアクセスできないのは非常に残念です」

「つまり、他のすべてのサイトや銀行などにアクセスできます。そこには問題はなく、常に更新されています」

「そこで、アプリをダウンロードするというあなたの提案を試しましたが、残念ながらインストールできません。互換性がないと表示されます。これは間違いなく iOS のバージョン(再び)によるものです。」

「これは本当にフラストレーションがたまります!iPad を買い替える余裕はありません。このコミュニティとのつながりを保つ唯一のものです。」

「MB は命綱です…彼らはそれを私から奪い、他の多くの人々もそうだと疑っています」

「いいね!」 15

これはかなり悲劇的です。残念ながら、Discourse の開発は常に前進することに重点を置いているようで、年に数回(私にはそう思えますが)、古いデバイスやブラウザの波をさらに疎外するような変更があります。

あなたのケースは、安定版を使用することで多少役立つ可能性のあるケースの 1 つかもしれません。しかし、どのようなアップデート ポリシーであっても、あなたが直面している問題に対して脆弱になります。そして、アップデートしないというポリシーは、古いソフトウェアを実行するリスクにさらされます。

Discourse から、古いデバイスや古いブラウザをサポートする、はるかに寛大なポリシーを持つ他のソフトウェアに移行する以外に、解決策は見当たりません。それが何であるかはわかりません。

これらの古いデバイスやブラウザ自体が安全でない可能性もあります。しかし、それらが通信デバイスとしてのみ使用されている場合は、ほとんど問題にならないかもしれません。

「いいね!」 6

サードパーティ製のブラウザをインストールすることは可能でしょうか?iPadまたはChromebookに。

古いiPadに関する情報が見つかりました。他のブラウザもインストールできる可能性があります。

Download and install Google Chrome - iPhone & iPad - Google Chrome Help.

Chromebookに関する役立つ可能性のあるリンクはこちらです。

Top 5 Chromebook Web Browsers 2024 [Ranked & Reviewed] - Alvaro Trigo's Blog.

しかし、古いデバイスとの適切な後方互換性がないのは残念です。あなたの様な特別なユースケースに対応するためにプラグインを作成できるかどうか疑問です。

「いいね!」 1

しかし、それらは私の知る限りSafariですよね。とにかく、それらはDiscourseのテストをバイパスできません。なぜなら、その結果はiOSから来るからです。

「いいね!」 3

ChromeやFirefoxのようなサードパーティ製ブラウザをインストールして、Safariの代わりにそれを使用するということですか? いいえ?

「いいね!」 2

それらはエンジンを持つ実際のブラウザではありません。それらは単なるスキンであるかのように説明できます。

「いいね!」 3

理解できません。Google ChromeやFirefoxなどがiOSで正規のブラウザバージョンではないということでしょうか?単に再スキンされたSafariブラウザということでしょうか?

「いいね!」 2

Appleのエンジンをリスキンしたようなものだが、最終的な結果はほとんど同じだ。Appleは環境を非常に厳しく制限している。

「いいね!」 4

それは残念ですが、Appleなら驚きません。MicrosoftもWindows 95で同様のことを試みたのを覚えています。サードパーティ製ブラウザのパフォーマンスを制限しました(まあ、まったく同じではないかもしれませんが)、当時Netscape(現在はMozilla Firefox)と呼ばれていました。MSは裁判所とウェブ開発者から厳しく非難されました。

「いいね!」 2

理想的ではありませんが、Torを使用するようなWebブラウザを仲介役として使用するというアイデアは可能でしょうか?

この場合、互換性レイヤーのようなものとして。

「いいね!」 1

Appleは、iOS上のすべてのブラウザにApple WebKitの使用を要求しています。

Discourseのソースは、ログインを許可しつつも読み取り専用に調整できると推測します(ブラウザに表示できないものを処理できないようにするために必要だと思われるため)。

「いいね!」 5

残念ながら、Appleは顧客にアップグレードを強制する計画を持っているようです。Androidは時々面倒なことがありますが、選択肢があります。

Appleデバイスのエコシステムに引き込まれなかったことを嬉しく思います。また、Appleはそれほどユーザーフレンドリーではないため、古いデバイスにLinux OSをインストールしようとすると、ユーザーにとってかなりの手間がかかるでしょう。

「いいね!」 3

まあ、後方互換性の問題は非常によく議論されており、実行不可能です。ブラウザ/OSがサポート終了/EOLを迎えた場合にDiscourseが提供するのは、限定的な機能を持つ読み取り専用のみです。

誰かがそのようなレイヤーをコーディングできるなら、それはそれで良いですが、CDCKがそれをサポートしていないことは確かです。それはAppleのモバイルデバイスでの脱獄のようなものです :wink:

「いいね!」 2

@codev 「フル機能」の現在の最小ブラウザー要件は何ですか?(どこに投稿/公開されているかわからず申し訳ありません)

「いいね!」 3

さて、Appleに対する「非難」と「彼らは最悪だ」というスレッドの部分が公式に示されたところで、サポートされている後方互換性に関するポリシーがどうなっているのか興味があります。ほとんどすべての製品チームが後方互換性のポリシーを公開しており、その寛大さは様々です。幸いなことにテクノロジーは進歩しますが、残念ながらそれはほとんどのテクノロジーに寿命を与えます。

@codev が提起した問題についても、Discourse を展開しようとしていたところなので興味があります。しかし、古いデバイスを持つユーザーがいる可能性があります。@Ed_S が示唆したように、それは私が検討する必要があることであり、他の場所を探すことになるかもしれません。

個人的には、5年以上前のテクノロジーを使用しており、家族も少し古いデバイスを持っています。私もそうでない人はいないと思います。Apple の功績として、ハードウェアは堅牢であり(通常、ソフトウェアがサポートされている期間をはるかに超えても問題なく動作し続けます)、一般的に後方互換性については寛大なサポートを提供しています。

ソフトウェアとセキュリティフレームワークは常に進化しており、近年ではその傾向がさらに強まっています。多くのものが相互依存しているため、アップグレードが必要です。セキュリティのためのアップグレードという議論は理解できます。しかし、単に「出荷されなくなった」という理由で特定のバージョンのサポートを終了しても、まだそのテクノロジーを使用しているユーザーがいないということにはなりません。

もし誰かが「1993 年の非 SSL ブラウザを持つクライアントをサポートする必要がある」と主張するなら、それはばかげていることに同意します。しかし、もし「N-1 でリリースされたもの(例えば、過去 18 か月以内に出荷されたもの)しか使用できない」と言っているのであれば、誰もが 6 か月ごとにアップグレードしているわけではありません。

例えば Firefox は、古いプラットフォーム向けに ESR(延長サポートリリース)を提供しています。これは Firefox と ESR を必要とする人々にとっては素晴らしいことです。しかし、Discourse のようなベンダーが、くだらないブラウザのバージョン番号が定義済み/ハードコードされた最小バージョン文字列と一致しないという理由でサポートしない場合、それは無意味になります。必要なフレームワークがある場合は別ですが、単に「バージョン 1 が 2 と等しくない」だけで、それ以外は機能するのであれば、それは本当に残念です。以前のものへのサポートの関心の低下をますます目にしています。それは残念な傾向です。今日の 80 年代後半から 90 年代生まれのエンジニアは、「常にアップグレードしなければならない」という文化の中で育ってきました。

ここで話が逸れてしまったことは承知していますが、芸術的な許しを請います。@codev の元の質問を見失いたくありません。Discourse はコミュニケーションとコミュニティにおいて非常に重要な目的を果たしているため、それは重要です。

「いいね!」 4

おそらく、ログイン、DM、そしておそらくDiscourse APIを介した返信を可能にする非常に単純化されたUIをコーディングし、それを別のサブドメインから提供できます(または、巧妙なnginxルールを使用して同じ場所から提供することもできますか?)。

これにより、古いデバイスでも非常に基本的な機能を使用でき、Discourseのバックグラウンドを最新の状態に保つことができます。

「いいね!」 3

承知しました。これを見つけました(私の質問に関して)

「Discourseはインターネットの今後10年を見据えて設計されているため、最低限のブラウザ要件は高くなっています。」

メッセージの意味がよくわかりません。Discourseがタイムマシンの中で開発されているのでなければ。2030年のユーザーの大多数が今日製品を使用していないと予想されます。おそらく、私はポイントを見逃しているのでしょう。

編集:
@Canapinブラウザサポートポリシーは何ですか?現在の安定版 - 2(N-2)、またはN-1、あるいは「最新」のみですか?

セキュリティ上の懸念がここに強調されています(Discourseの使用に特化したものではなく、ユーザー側の懸念であることは確かです)。6年間ほとんど変わっていないコアJSライブラリでサポートされていないものをDiscourseが要求することは、実際にはありえません。これらの古いデバイスのウェブブラウザ経由のGmailでさえ、問題なくうまく動作します。セキュリティ上の懸念はさておき、すでにここで指摘されています。

「いいね!」 4

@codev様

より良い状況でコミュニティへお迎えできず、残念に思います。

言葉が空虚に聞こえるかもしれませんが、あなたが感じているフラストレーションは理解できます。

ソフトウェアの進化の過程には本質的な問題があり、人々はしばしば「あなたのソフトウェアは私の電話をサポートしなくなりましたが、この似たようなソフトウェアはサポートしています。なぜですか?」と言います。残念ながら、簡単な答えはありません。

コミュニティが苦しんでいることを理解しています。サポートシステムから切り離されるという見通しに対して、メンバーからの苦痛と苦悩をはっきりと見て取ることができます。

図書館に行ってコンピューターを使用しなければならないことは、必要に応じてサポートネットワークにアクセスできることの代わりには全くならず、公共の場を使用することと、自宅の快適さとプライバシーから共有し貢献することとの違いも同様です。

私たちの使命は、オンラインディスカッションをすべての人にとってより簡単にし、そのディスカッションを長期的に保存することであるため、これは私たちを悩ませています。

私たちは、あなたと同じように、人々がデバイスが文字通り壊れるまで使用できないことにフラストレーションを感じています。しかし、iPhoneのようなブラックボックスデバイスは、ベンダーによってサポートおよび更新され続けなければなりません。さもなければ、使用することは積極的に危険です。Appleは、最も深刻な iOS 12の脆弱性に対して、現時点では非常に限定的なアップデートしか提供しておらず、Safariはすでに数年遅れであることを指摘します。

私たちはこれらの重要な選択肢について内部で十分に議論しています。技術的に維持することが非常に複雑になる課題になるまで、可能な限り長くサポートするよう最善を尽くします。セキュリティ基準や使いやすさを犠牲にすることなく、ほとんどのコミュニティにとって最良の結果となるようにこれらの選択肢のバランスを取ることは容易ではありません。

残念ながら、このような選択にはすべて欠点があり、あなたのメッセージは、私たちが可能な限り避けたい問題の痛ましく正直な例です。

私たちは後戻りすることはできませんが、内部で議論を続けるつもりです。Discourseは一部のデバイスでは動作しなくなり、時間が経つにつれて再びこのようなことが起こるでしょう。IOS 12のサポートをすでに1年間延長し、サポートがまもなく削除されることをユーザーに警告するよう最善を尽くしたことに注意してください。

残る疑問は、フォーラムにアクセスし参加する必要があるあなたのメンバーのために、この問題をどのように解決するのを助けることができるかということです。

まず、コミュニティにおけるデバイス使用状況の内訳(特定のモデル情報を含む)を、可能な限り理解するのを助けていただけますか?

「いいね!」 9

公式には、

Discourse は、すべての主要ブラウザとプラットフォームの最新の安定版リリースをサポートしています。

  • Microsoft Edge
  • Google Chrome
  • Mozilla Firefox
  • Apple Safari

さらに、iOS 15.7 以降の Safari もサポートすることを目指しています。

What is Discourse? | Discourse - Civilized Discussion より

これらの言葉を補足すると、「Discourse はこのブラウザバージョン以上をサポートしています」ということは、必ずしも古いバージョンのブラウザが動作しないという意味ではありません。保証されておらず、ある時点で動作しなくなる可能性があるだけです。

「いいね!」 6

最後の行:

さらに、iOS 15.7 以降の Safari をサポートすることを目指します。

これは、最新が 16.3.x であることを考えると、少なくとも N-1、あるいは iOS の場合は N-2 を意味することになります。

このサポート表明の問題点は、「技術的には互換性がある」クライアントを使用しているユーザー層全体を疎外する可能性があることです。しかし、Discourse はテストを約束していません。@Canapin が指摘するように、「保証されておらず、いつか動作しなくなる可能性がある」というのは、「自己責任で使用してください」と言っているようなものです。これは、ウェブアプリがクライアントのバージョンをチェックし、互換性がないことを UI 要素で伝えることとは異なります。さらに悪いことに、機能が「単に動作する」にもかかわらず、QA や回帰テストを受けなくなり、「誰も現在これをテストしておらず、そのための帯域幅もない」という名目で非推奨になることです。

可能であれば、ほとんどの場合 N-2 をサポートできれば、「ウェブクライアント」ユーザーベースの約 80% をサポートできる可能性が高いです。N-2 の場合、iOS では Safari 14 / iOS 14 をサポートすることになります。

「サポート」という言葉がトリガーワードである場合、N-2 を許可できるのであれば、「問題が発生した場合は、サポートされているクライアントにアップグレードしてください」という注意書きを添えることで、多くのことが「単に動作する」でしょう。UI レンダリングなど、最も好ましいエクスペリエンスではないかもしれませんが、少なくとも使用できなくなることはないでしょう。これは掲示板であり、Microsoft Office 365 ではありません。(Discourse チームに失礼があったらすみません!)

「いいね!」 3