はてなキーワード: V.iとは
ここ1年で初めてはてなブックマーク日毎の総合人気エントリ入りしたドメインからのホットエントリ、ブクマ数順トップ30
ブクマ数 | タイトル | ドメイン |
---|---|---|
1702 | れきちず | rekichizu.jp |
1559 | 引っ越しで「高額な原状回復費用」を請求されたけど、父が弁護士だったから何とかなった | ふ凡のすすめ | mhubon.com |
1114 | 「NAT」「NAT越え」「NATタイプ」ってなーに? | squid-ink-cafe.com |
897 | 8割が餓死・病死、倒れたら自決を “地獄”を生きた104歳元兵士の怒り「検証していない」(毎日新聞) | news.line.me |
777 | 2分以内に寝つける!米軍が採用した究極の睡眠法「漸進的筋弛緩法」とは?やり方をイラストでわかりやすく解説【睡眠専門医監修】 (1/1)| 介護ポストセブン | kaigo-postseven.com |
773 | 近況報告:無職になりました - IT戦記 | amachang.hatenablog.com |
752 | 【陰謀論】三浦春馬他殺説ビギナーズ・ガイド(その1) - やばいブログ | y-ryukichi.hatenablog.com |
730 | 中村 比呂人 - 【AFURIが、「雨降AFURI」という日本酒を販売している企業を商標侵害で提訴したことで、ネットで... | Facebook | www.facebook.com |
728 | お知らせ AFURI株式会社からの提訴について – 吉川醸造 | KIKKAWA JOZO | kikkawa-jozo.com |
701 | LK-99は本当に常温常圧超伝導を達成しているのか - 理系のための備忘録 | science-log.com |
699 | ChatGPT開発元のOpenAIが推奨!期待通りの回答を得るプロンプトのコツ10選 | dekiru.net |
685 | hiroshima(高精細) | vimeo.com |
644 | FFmpeg Explorer! | ffmpeg.lav.io |
629 | 【図解】ピボットテーブルの使い方 基本から応用テクニックまで解説 | ツギノジダイ | smbiz.asahi.com |
603 | MacBookの生産性を向上させる、超強力なおすすめMacアプリ15選(有料&無料) | gadget-shot.com |
588 | 株式会社ジャニーズ事務所 御中 調査報告書(公表版).pdf | saihatsuboushi.com |
576 | NHK水戸放送局のロック・イン・ジャパン2024 ひたちなか開催の報道について、私たちは強く抗議します。 | ROCK IN JAPAN FESTIVAL 2023 | rijfes.jp |
575 | スタートアップはいかにしてその活力を失うのか | Yakst | yakst.com |
544 | 【質問シート付】面接初心者でも対応できる中途面接質問集〈60選〉 | bsearch.co.jp |
544 | AIはどのような仕事ができるようになったのか?ChatGPTで変わる「優秀な人材」 | tokoroten.medium.com |
538 | 「小さい人」をだますな 優しいのっぽさんの静かな怒り 感じた現代の | wararchive.yahoo.co.jp |
535 | BBC特派員「日本の水産物が心配?世界のすべての水産物食べられない」 | s.japanese.joins.com |
527 | 永久不滅ウォレットサービス終了のお知らせ | クレジットカードはセゾンカード | www.saisoncard.co.jp |
513 | 三菱UFJ国際投信、「eMAXIS Slim」シリーズ4銘柄(オルカン含む)の信託報酬率を業界最低水準に引き下げると発表 | randomwalker.blog.fc2.com |
506 | NISA vs iDeCo 積立するならどっちがお得?おすすめの銘柄は? | www.risingbull.co.jp |
504 | 文章生成AI利活用に関するガイドライン.pdf | www.digitalservice.metro.tokyo.lg.jp |
502 | はじめに - Writing an OS in 1,000 Lines | operating-system-in-1000-lines.vercel.app |
480 | 博士課程進学者、ピーク時の約半分に 「低学歴国」ニッポンの現状 | bookplus.nikkei.com |
469 | X(旧Twitter)の短縮リンク(t.co)の古いものがリダイレクトされず、元のURLも表示されなくなってる | www.orefolder.net |
467 | 日本の腐女子が北欧のゲームスタジオに就職し、隠れた腐女子仲間を見つけて乙女ゲーム開発スタジオを立ち上げた話 — NeonNoroshi | www.neonnoroshi.com |
7と8。
技術的なところが気になる人はこれだけ読んでくれたらいい
最後に技術的な観点からエアレペルソナが純国産ではないということを指摘する。
RocketChatという海外で開発されたOSSチャットアプリをフォーク、改変したもののよう。
ttps://github.com/RocketChat/Rocket.Chat.ReactNative
ttps://rocket.chat
フォーク元はバリバリ多国籍、外資である。(RocketChat自体は問題のないアプリであり、このエアレペルソナとはフォーク関係を超える関係はないと思われる)
冒頭のこの部分に関してである。
ttps://play.google.com/store/apps/details?id=chat.airlex.reactnative
Google Playで公開されているエアレペルソナのAndroidアプリをリバースエンジニアリングして調べてみた。
ちなみに、エアレペルソナには利用規約のようなものは見当たらず、リバースエンジニアリング禁止条項も無いようだった。
ttps://apps.evozi.com/apk-downloader/
ttps://github.com/pxb1988/dex2jar
この辺を使ってapkをダウンロードし、apkを解凍し、chat.airlex.reactnative/classes.dexをjar fileに変換した。
classes.dexから変換されたjarファイルを展開するとchat/airlex/reactnativeというフォルダ、パッケージが見つかる。
このパッケージ内のファイル(.class、クラス)がエアレペルソナの処理を行うもののようである。
このクラスをJadを使い、デコンパイルしてみた。その結果が以下である。
ちなみにここからapkをアップロードするとdex2jarをしなくてもJavaのソースコードにまでデコンパイルしてくれた。便利。
package chat.airlex.reactnative; import android.content.Context; import com.ammarahmed.mmkv.SecureKeystore; import com.facebook.react.bridge.ReactApplicationContext; import com.tencent.mmkv.MMKV; public class Ejson { private String TOKEN_KEY = "reactnativemeteor_usertoken-"; String cardId; String host; String messageId; String messageType; /* access modifiers changed from: private */ public MMKV mmkv; String msg; String notificationType; String rid; Sender sender; String senderName; String type; public Ejson() { ReactApplicationContext reactApplicationContext = CustomPushNotification.reactApplicationContext; if (reactApplicationContext != null) { MMKV.initialize((Context) reactApplicationContext); new SecureKeystore(reactApplicationContext).getSecureKey(C0617Utils.toHex("com.MMKV.default"), new RNCallback() { public void invoke(Object... objArr) { if (objArr[0] == null) { MMKV unused = Ejson.this.mmkv = MMKV.mmkvWithID("default", 1, objArr[1]); } } }); } } public String getAvatarUri() { if (this.type == null) { return null; } return serverURL() + "/avatar/" + this.sender._id + "?rc_token=" + token() + "&rc_uid=" + userId(); } public String token() { String userId = userId(); MMKV mmkv2 = this.mmkv; return (mmkv2 == null || userId == null) ? "" : mmkv2.decodeString(this.TOKEN_KEY.concat(userId)); } public String userId() { String serverURL = serverURL(); MMKV mmkv2 = this.mmkv; return (mmkv2 == null || serverURL == null) ? "" : mmkv2.decodeString(this.TOKEN_KEY.concat(serverURL)); } public String privateKey() { String serverURL = serverURL(); MMKV mmkv2 = this.mmkv; if (mmkv2 == null || serverURL == null) { return null; } return mmkv2.decodeString(serverURL.concat("-RC_E2E_PRIVATE_KEY")); } public String serverURL() { String str = this.host; return (str == null || !str.endsWith("/")) ? str : str.substring(0, str.length() - 1); } public class Sender { String _id; String username; public Sender() { } } }
フィールド名を見てみると、cardId, host, messageId, messageType, mmkv, msg, notificationType, rid, sender, senderName, typeが存在する。
メソッドには、getAvaterUri、token、userId、privateKey、severURLが存在する。
ところで、RocketChatというOSSのチャットアプリが存在する。
ttps://rocket.chat
そのRoketChatのAndroid実装の中に同名のEjsonというクラスが存在する。
ttps://github.com/RocketChat/Rocket.Chat.ReactNative
ttps://github.com/RocketChat/Rocket.Chat.ReactNative/blob/develop/android/app/src/play/java/chat/rocket/reactnative/Ejson.java
見比べてみると、フィールドにcardIdが追加されている以外はフィールドやメソッド名、そしてその処理の内容まで一致している。
他にもReplyBroadcastなど、同様のクラスがエアレペルソナに見つかる。
以上のことからエアレペルソナはRocketChatをフォークして、パッケージ名を変えて作られたチャットアプリであり、開発の大部分はRocketChat社の努力と多数のOSSコントリビュータによってなされたものであると思われる。
そもそもこのOSS時代に純だの何だの言っている時点で怪しい。
さて、エアレペルソナがRocketChatをフォークして作られたものであるとすると、気になるのはライセンスである。
RocketChatのOSSライセンスはMITライセンスである。
ttps://github.com/RocketChat/Rocket.Chat.ReactNative/blob/develop/LICENSE
MITライセンスは非常に緩いライセンスであるため、エアレペルソナの様にフォークして別のアプリケーションとして公開することにはおそらく問題がないということは強調しておく。
現状エアレペルソナにログインできておらず(2要素認証のコードが送信されないといった問題が起きている模様)、使用している各OSSのライセンス表示が適切に行われているかまでは調べられていない。
にきび跡、肌荒れ酷い、不細工、発達障害、腎臓疾患持ち、身長170cmどまりの超低スペック高校1年生です。
将来の夢は承認要求を満たす事だ。
例えばマスコミ露出の多い大企業の社長になるとか、アーティストになって大規模なライブをやったり、映画監督になってエンドロールにデカデカと自分の名前をだしたり
別に起業したかったり、歌を歌うのが、映画の脚本を書く事が好きだったりやりたかったりするのではない。
承認要求を満たしたいだけなんだ。
そんな事を考えていたらこんな精神科医のブログの記事を見つけた
http://d.hatena.ne.jp/p_shirokuma/20121018/p1
しかし、そういった日常的なやりとりからは心理的充足感をロクに汲み取れない、どぎつい非日常しかあてにできない人は、日常生活のコミュニケーションだけでは心理的に飢えてしまうだろう。なにせ、挨拶もアイコンタクトも彼らの心を潤してはくれないのだ。そんな彼/彼女らにとって、日常とは、灰色の世界でしかない。
彼/彼女らが心理的に充たされたと感じるためには、もっと強烈な充足感を狙わなければならない。勢い、「スポットライトを浴びたい」「V.I.P.な扱いを受けたい」「特別な人に目をかけてもらいたい」といった、要求水準の高い目標設定になってしまいがちだ。「何者かにならなければ気が済まない」というやつである。しかし、そんなハイレベルで非日常な目標設定がそうそう上手くいくわけがないので、才能と運に恵まれた一握りの例外を除いて、この試みは失敗に終わる。
お医者さんが言うには僕は才能と運が無いと灰色の人生を送る事になるらしい。
おそらく灰色だろうなあ。