はてなキーワード: インスタンスとは
馬鹿に継承を扱わせると、仕事している感を醸し出すために継承を活用せざるを得ない。だから、継承はクソに見える。よって、増田の言いたいことはわかる。
しかし、冒頭で書いたとおり、多態を適切に扱うために継承は必要なのだ。これ以上は書けない。これからもクラスベースの OOP は消えることないであろう。それを書くすべを私は持ち得ていないので、null が消えない事実を例にして語ろうと思う。
21世紀のプログラミング言語のチャレンジの1つはなにか、と言ったら「null 撲滅」であろう。関数型言語は null を排除することに努めたし、Swift 言語は Optional という null がはいっていないことを保証する仕組みを作ったり、Haskell は圏論という数学の概念で応対しようとし、Ruby 言語は &. という「null をスルーするメソッド」を開発した。でも、null は撲滅出来ないままである。
そもそも null とは何か?C言語では、ポインタが指すとそこでお終いだし、Java だとヌルポ(例外)の要因だし、Ruby だと NilClass のインスタンスだし、SQL言語だと「3値論理」では未来のことを記述するためのものだし、言語によって null はバラバラである。つまり、null 自体には特に意味はないのだ。逆に null があると便利だと思わないか?C言語ではポインタに死んでもらえるし、Java だとヌルポがあったら例外にできるし、Ruby だと nil があったらなにかの理由があるからだし、SQL言語だと未来のことは不明と記述できるし。そうなのだ、null はプログラミングに必要なのだ。null をちゃんと扱うのが難しいだけで、null 自体に罪はない。
これを継承、というか多態にあてはめてみよう。多態がないとどうなるか想像してくれ。とてもしんどいことになる。なぜなら...
(作者は眠たくなりました。続きが読みたかったら反応ください。)
マジレスすると原神だね。まあ俺はアプリじゃなくてPCだけど。
昨日さ天賦素材集めに秘境(要はインスタンスダンジョンね)ソロしたんだけど、クリアはできるもののちょいダルくてさ。
マッチングして行ってみたら俺以外の3人は欧米系の人だったっぽいんだけど、なんか噛み合わなくて全滅したんだよね。
俺は適当にシャンリンで槍ブンブンしてただけだけど気づいたらチャットで褒められてた気がする。死んだけどね。
その後再挑戦したんだけどリーダーでもない人が"dont use razor"とか"dont use qiqi"とか指示してるのを横目に俺は不動のシャンリンで準備OKよ。
まあ育ってるのこいつくらいだからね。悪いね。そうして2度目はなんとかクリアできたけど、結局ソロより時間かかったよね。
何が言いたいかっていうとマッチングなんて別にやらんでもいいんじゃね?ってことよ。
お分かりになりましたか?
https://anond.hatelabo.jp/20200831191205 の続き。
今回、Googleから理不尽な要求を受けたアプリのうちの一つであるFedilabが呟いていることがあったのでこれを翻訳・解説していきたいと思う。
Other app developers maintain that this blocking doesn’t fit Mastodon’s mission. The Android-based Fedilab app’s free version initially blocked Gab because of Play Store content policy fears. But the ban has since been lifted. “I will simply not block instances with the app,” wrote Fedilab’s developer. “I clearly think that’s not my role … If you want a strong block, it’s in the hands of social network developers or your admins.”
-----
How the biggest decentralized social network is dealing with its Nazi problem
翻訳:
このブロックはMastodonの使命に反すると主張しているアプリ開発者もいる。 Androidで動くFedilabアプリの無料版は、Google Play Storeのコンテンツポリシーに抵触する懸念から、最初はGabをブロックしていた。 しかし、ブロックはその後解除された。「私はただアプリでインスタンス(サーバー)をブロックしないだけです」とFedilabの開発者は書く。 「それは私の役割ではないことは明らかです…。もしあなたが強力なブロックを必要とする場合は、その選択はソーシャルネットワークの開発者またはあなたのサーバー管理者に委ねられます。」
この記事はGabがMastodonをフォークしてFediveseに参入してきたときの記事である。Fedilabの開発者は当初GabをクライアントであるFedilab自体でブロックするようにしたが、その後改めてブロックを解除した。Mastodonが掲げる自由の理念を尊重したのである。Mastodonの創始者のEugenは当時、自分のFedivese上のアカウントで強い口調でMastodonサーバーの運営者とクライアント開発者に対してGabをブロックするように呼びかけたが、この行為自体がMastodonの理念に反しているように自分は感じた。Eugenはドイツ出身であり、Gabを全く許容しない社会で育ったのだろうど推測されるし、Mastodon創始者としてGabを許容しない姿勢を打ち出すことに意味があったのだろうと思われる。
If Google does not want to listen to my explanations, I will not change the app for them.
The way they are acting is unfair and don't give any trust concerning next publications.
I prefer to spend my time to help people to switch on #FDroid for getting the app.
#Fedilab
-----
Imagine a day, where asking a dev to restrict their app to some people is a normal behavior. Today, maybe 99,9% don't care due to the target. But what's next?
Do you like to choose freely an app with your needs or choose your needs due to apps?
翻訳:
Googleが私の説明を聞き入れない場合は、アプリを彼らのために変更しません。彼らのやっている行動は不公平であり、続くリリースに関していかなる信頼も与えません。私は、人々がGoogle Play StoreからF-Droidに切り替えてアプリを入手するように助力することに時間を費やしたいです。
アプリ開発者にアプリを一部のユーザーに制限するよう要求するのが通常の行動である1日を想像してみてください。 今日において、おそらく99.9%がターゲットのことを気にしないでしょう。 しかし、将来的にはどうでしょうか?あなたのニーズに合わせて自由にアプリを選択しますか、それともアプリによって自分のニーズを変えますか?
日本時間9月2日現在、Googleから要求を受けているアプリは対応せず7日間経過するとGoogle Play Storeから削除されるが、まだ7日間経過していないため現時点ではGoogle Play Storeから削除されていない。MastoPaneの作者は異議申し立てをしたが否認されたため自分からアプリをGoogle Play Storeから削除した、と呟いている。これからの展開はどうなるのかは分からないが、大きな流れとしてはGoogleの要求を受け入れることなく自分たちの理念を貫くだろう。というかそもそも理不尽な要求で、Googleの行動は根本的に間違いであるから対応する必要性がないのだが。Google Play Store上ではGoogleの言うことが絶対だから仕方ないね。
https://anond.hatelabo.jp/20200829191330 の続き。
Mastodon, Fediverseに対する日本国内の認識はあまり高くない。そもそも一般人にとって注目度の高いトピックではないというのは理解しているし、だからこそメディアも取り上げないというのも理解している。これは仕方がないことだ。だからこそ、こうやって自分自身で筆を取ることをしている。
散見される意見は間違っていたり認識に齟齬があったりする。今回はそれについて説明したいと思う。
日本でMastodonが注目されるキッカケを作った mstdn.jp は2020年6月にサービス提供を終了するアナウンスを出したが、その後引き継ぎ手を募集した。Sujitechという企業が名乗りをあげて7月から運営をしている。SujitechとITジャーナリストの三上洋、ITmediaの松尾公也による mstdn.jp / mastdon.cloud のこれからの運営についてなどのインタビューの場が設けられた。ライブ放送され、そのアーカイブはここにある。
https://twitcasting.tv/mikamiyoh/movie/621664098
ITmediaからこのインタビューの記事が出ると思っていたが出ることはなかった。
Mastodonサーバーがサーバー運営者の決断により停止することはあるものの、Mastodonのプロジェクトの開発はされているし、Mastodonサーバーはたくさんある。Mastodonは単一の営利的なサービスではない。よってそもそも「Mastodonが終わる」という表現自体が間違いである。
mstdn.jp を始めとした大規模サーバーにはAlt-TwitterとしてTwitterの無法者が多く移住してきたことは事実であるが、他のサーバーのユーザーはそうとは限らない。サーバーにはサーバー運営者の取り決めたルールがある。自分に適したサーバーを選ぶべきである。もしくは自分でサーバーをたてればよい。
Ryou Ezoe(江添 亮) (@EzoeRyou@twitter.com) :
Googleがfediverseアプリを軒並みストアから検閲しているというニュースで思い出すことがある。もはや平均的な日本人にはインターネットは存在しない。スマフォアプリが全てになっている。
あるWebサービスがあると聞いて使ってみようと思い立った人間はどうするか? Webブラウザーは使わない。スマフォのアプリストアでWebサービス名を検索し、出てきたものを何の疑いもなくインストールする。そのアプリが公式であることはろくに確かめない。
結果的に、共通のプロトコルを使いゆるーくfederationで繋がりましょうというfediverseなのにもかかわらず、自社のインスタンスにログインするためだけのスマフォアプリクライアントをストアに登録しておく必要がある。中身は単なるWebブラウザーだというのに。
Apple/Googleによって提供されるスマフォのアプリストアが単一障害点になってしまっている。ストアになければ存在しないも同然だ。どうしてこんな世の中になった。
彼の主張したい点というのは理解できる。アプリはユーザーが便利に利用するための手段であるが、それが目的化してしまいストアに存在することに意味を見出しゴミのようなアプリばかりになるという懸念である。これはユーザーの意識も高めなければいけない事案である。
リプライや引用を参照すれば分かるが、彼はfederationやfediverseという語を使ってさも識者のような素振りをしているが、3つ目の投稿の内容というのは全くもって門外漢な内容である。
FediverseはActivity Pubなどのプロトコルによって形成される大きな集合体みたいなものである。各サーバーはゆるく繋がり合うがその全体的な繋がりを指す。Fediverseは構造上非中央集権でありFediverseの運営母体や総意というものは存在しない。
自社インスタンスの具体的な内容が分からないが、もし既存のソフトウェアを利用したサーバー(インスタンス)であるなら、自社向けのWebViewアプリを作る必要はない。既存のクライアントを使えばいい。「自社向け」としてアプリストアに出したいのであればほとんどのクライアントはオープンソースであるのでフォークしてカスタマイズすればいい。そもそも優秀なWebUIが存在しているのでWebViewのゴミアプリというのは発生しないはずだ。自社インスタンスがプロプラなソフトウェアであるなら、そもそも現実的ではない。プロプラならば自社インスタンス内の投稿やコンテンツを囲い込みたいが、Fediverseに参加するのであればプロプラであるインセンティブは得られないので現実的ではない。他のサーバーとの通信を遮断して自社インスタンス内のみに限定するという手法も取れるがそれはFediverseに参加しているとは言えない。
勝手な妄言は結構だが、的はずれな内容を指摘したものを受け入れずその妄言が無知な受け手によってさらに誤認識が広まることを阻止しないのはあまりにも愚かである。
今回の問題はGoogleが理不尽な要求を突きつけ圧力をかけてきたことが大きな問題である。それ単体でもGoogleの行動は批判されるに値するが、Fediverse的な思想というのも大事な視点なのだ。Fediverseは非中央集権であり、中央集権に相対するものである。各人の自由を尊重し各人が自由を勝ち取るのだ。だからFediverseのクライアントは根本的に自由でなければならないし、クライアントが特定の思想を排除するようなことはあってはならない、と私は考える。差別を扇動する要素を排除したいのは理解できるが、それはクライアント開発者の決めることではなくユーザー個人が決めることだ。そして、中央集権Googleの要求に屈してはいけないのだ。