はてなキーワード: HAtenaとは
慶應を性犯罪と結びつけて揶揄するのはてな的にはオッケーなんだ?まじで一貫性ないよなお前ら。韓国人は性犯罪者の宝庫と書くアホとお前は何が違う?
こういう感じのブクマが最近結構星を集めて上位ブクマにはいって目立ってるのをよく見かける。それは別にいいんだけど。
こういうブクマがトップブコメに入ってくることである種のパラドックスが自然発生していてそれが面白い。
上の例で説明すると、
「慶應を性犯罪と結びつけて揶揄するのはてな的にはオッケーなんだ?」
という問いに対してブクマした人はたぶん答えが返ってくることは期待していないんだけど、沢山の人がスターをつけることで、はてなの不特定多数がこのブコメに賛同していることがわかる。
ちなみに今の時点でこれより上のトップブコメには慶応揶揄は見当たらない。
上位ブコメははてなの総意だとまでは言わないけど、はてなの多くの人は「慶應を性犯罪と結びつけて揶揄するのはてな的にはオッケー」ではない、ということになってしまう。
なぜならばスターをつける人はこのブコメに賛同してスターをつけたばずであり、であるならば「慶應を性犯罪と結びつけて揶揄するの」を批判的にとらえているからである。
ということは、しかし文字通りのブコメの意味はこのブコメがトップブコメに食い込めば食い込むほど間違いになってしまう。なのでブコメにスターをつける人はブコメに賛同しているはずなのにスターをつければつけるほどブコメの内容は間違いになっていくように見える。
ttps://b.hatena.ne.jp/entry/4700182793275551394/comment/yabusaki
職場に悪口ばかり言う人が1名いると、5人分のリソースが失われる、という言葉、すごくわかる。 会社の悪口しか言わないのに全然転職しない人っているもんな・・・
結婚相談所で成婚した6,984名のデータで分かった結婚できる人の特徴|あなたは結婚できる? | ラブホの上野さんの相談室結婚したら出産が待ってるので、今の社会で女性が年収気にするのは仕方ない。子供がいる女性が、子供がいない時と同じように働ける社会になれば低年収男性も救われそう。2021/03/22 11:30
そんなわけねえだろ! そうはならねえよ!!
ちゃんと考えてからモノ言ってくれます!!?? スターつけて貰えます!!!?!?!!?!
子持ち女性がハンデなく稼げるような社会になってもシングルマザーが増えるだけだよ
何故なら俺含めて大体の低年収男性には金が無いだけじゃなくて人としての魅力も大してないから
そんな人達とお金の心配も無いのに結婚したり結婚を続ける必要あります? 無いでしょ?
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のライセンス表示が適切に行われているかまでは調べられていない。
前のやつ
(OFF)
https://b.st-hatena.com/images/v4/public/bookmarkadd/share-twitter-default.svg
(ON)
https://b.st-hatena.com/images/v4/public/bookmarkadd/share-twitter.svg
https://b.st-hatena.com/images/v4/public/bookmarkadd/share-twitter-disabled.svg
(OFF)
https://b.st-hatena.com/images/v4/public/bookmarkadd/share-readlater-default.svg
(ON)
https://b.st-hatena.com/images/v4/public/bookmarkadd/share-readlater.svg
非公開
(OFF)
https://b.st-hatena.com/images/v4/public/bookmarkadd/share-private-default.svg
(ON)
https://b.st-hatena.com/images/v4/public/bookmarkadd/share-private.svg
新しいやつ
(OFF)
https://b.st-hatena.com/images/v4/public/icons/ic-arrow-turn-up-right.svg
(ON)
https://b.st-hatena.com/images/v4/public/icons/ic-arrow-turn-up-right-fill.svg
ttps://b.st-hatena.com/images/v4/public/icons/ic-arrow-turn-up-right-slash.svg
(OFF)
ttps://b.st-hatena.com/images/v4/public/icons/ic-alarm.svg
(ON)
ttps://b.st-hatena.com/images/v4/public/icons/ic-alarm-fill.svg
非公開
(OFF)
ttps://b.st-hatena.com/images/v4/public/icons/ic-lock.svg
(ON)
ttps://b.st-hatena.com/images/v4/public/icons/ic-lock-fill.svg
バッドコップ・グッドコップ、という超基本的な尋問手法がある。
警察に捕まった犯人増田に対して、刑事Aが「マスダ!テメェ吐けネタは上がってるんだ!バシーン!」ってさんざイジメる。その後、別の刑事Bが出てきて「A!やりすぎだろう!君は下がっていたまえ!増田くん、すまなかったねェ、Aはきつく叱っておくよ。ところで腹減ってないか?カツ丼喰う?チミもいろいろ苦労してるんだって?」とやると刑事Bがまるで善人で信頼でき、やってない犯行もしゃべる気になってしまうというアレだ。
しかし、忘れてはならぬ。刑事Aにせよ刑事Bにせよ、連中は国家の手先で増田を冤罪に陥れようと蠢動している暴力機関の一部という意味では全く同じだ。
で、安原君ってば、合コンナンパで「グッドコップ役に回れば喰い放題っすよ」と言ってるだけなんすよ。理屈は後付け。天然でやってりゃまあパーソナリティだけど、
養殖でやってるとなれば明らかにただの手管っすよね? どっちにしろ、食うことしか考えていないこと、オマワリが結局は権力の狗な事と一緒っすよね?
DWindow.jsっていうののプログラムの流れが分からんのだ。
if (arguments.length < 2) min = -Infinity; if (arguments.length < 3) max = Infinity; return (parseInt(value, 10) || 0).clamp(min, max);
これがさっっっぱり分からん。Infinityは何処から出てきた?
10か0かっていうのも、窓の数は最大10って書いてあったが、それが問題なのか?
やりたいのが、これと同じように「変数」の値を設定するとして、
配列分ループして色々確認したいのだが、そもそも配列はどうやってやるん?となってる。
Numberだけでなく、Stringの配列も使う予定だ。うーーーーーーーーーーーん。
javascriptの勉強サイトを確認したら分かるものなのか?
もっとソース貼ろうとしたら、匿名ダイアリーに怒られたので載せられん…。
すまんが、詳しい人教えてくれ。
過去に「ペルソナ3の実況プレイ動画を配信したい!」と、自身のチャンネルの配信で訴えかけたVtuberがいる
森美声(モリ カリオペ、以下カリオペ)と言う名のVtuberである
「ペルソナ3」の原曲「Burn my dread」を逆再生したBGMを無許諾で流し、
スーパーチャット(投げ銭)可能な状態で配信して金を受け取り、
配信を受けたカリオペのファンがペルソナ開発会社(アトラス)に突撃するファンネルが多発した
https://automaton-media.com/articles/newsjp/20201204-145109/
そして先日2021年2月15日、新作格闘ゲーム「ギルティギアストライヴ」を、
ペルソナ3,4のキャラクターが登場する格闘ゲーム「ペルソナ4 ジ・アルティメットインマヨナカアリーナ(P4U)」の開発を担当した会社である
つまりは、
カリオペというVtuberについては、そのP4U開発会社に認められた状態で先行プレイをさせている事になる
きっとP5Uが出たらまた先行プレイできるだろうね!
人間とは精神である。精神とは何であるか?精神とは自己である。自己とは何であるか?自己とは自己自身に関係するところの関係である、すなわち関係ということには関係が自己自身に関係するものなることが含まれている、
それで自己とは単なる関係ではなしに、関係が自己自身に関係するというそのことである。人間は有限性と無限性との、時間的なるものと永遠的なるものとの、自由と必然との、綜合である。要するに人間とは綜合である。
1. 精神
2. 自己
3. 関係
4. 綜合
正解:3. 関係
理由:出現数
ruby -e '["精神","自己","関係","綜合"].each{|c|puts "#{c}:#{`grep -o #{c} 死に至る病.txt | wc -l`.chomp}"}' 精神:3 自己:8 関係:9 綜合:3
結婚活動?という類の話。
夫婦って言っても今はもっとオープンに多様性が認められていていると思っていて
一概に「夫婦」っていっても、
性別が同じかもしれないし別かもしれないし
夫婦になる、つまり書面上の契約をして戸籍を新たに作り人生のパートナーとして社会的に承認されることだけをゴールとして考えすぎな人が多い気がする。
決して批判をしているわけでもない、ただなんか血眼になって
自分の理想が違うからって価値観が合わなかった人をこきおろすのは違うんじゃないかな〜といった意見。
これは出産して子供が欲しいって言っている人もそう感じてしまう。
だから価値観の相違やマッチングしなかった相手をボコボコにするのかなと思ったりしている。
もしかしたら結婚した後、出産した後、のビジョンが明確になっているかもしれないけれど、
単純に心が痛いよね。
理想や目標が違うために、私は口論戦争をしているようにしか見えなくて
たまに見るコラム的なものも火に油注いでいるような記事ばかりだから、私個人の思いの丈をしたためてみました。
誰が奢るとか奢らないとか、大衆的な意見としてじゃなくて自分個人の価値観、要望として相手に話せばいいと思う。
大衆的な意見にするから炎上したり終わらないレスバトルで定期的に上がるんだろうな。と。
そりゃ私も常に奢られたい派ですけれども。
私の感想としては結婚は、結婚したからなんか特別何かあったわけじゃなかった。
本当にお互いの今後生きていくための手段としてでもあり、恋愛でもあり、家族になりたいって愛情もあり気持ちもあり、趣味の共有もあり、全てにおいて結婚することで解決するじゃんってなって結婚した。気がする。
だからなんというか今婚活で婚活市場で消費されて疲れている人がいたら
ふと方に力を抜いて、自分の成りたい作りたい家族を明確化してみたら、それをアウトプットしたら変わるかもしれないし
そして新しい知見として別の人の理想の家族も聞いてみてアップデートしていけばなにかまた新しい発見が見つかるのかな。
と思った次第です。
これは完全興味です。どんな家族にしたくてどんなことを今頑張っているんだろうって。
正直私はもうゴールしています。
人生における理解者及びパートナーがいる環境で自分の生活水準に達していればゴールなので。
前述で申していた通りの結婚が人生のゴールタイプかもしれません。
ただ残りの70年くらい?は新しいことにもチャレンジしたいので新しい意見や目標に触れてみたかったのがこのhatenaを書いた真の目的です。
実行すると、各記事を
{
users:ブクマ数,
tags:[タグ]
}
の形式に変換し、500ブクマ以上でフィルタし、ブクマ数降順で返す。
#一行版
curl -s https://b.hatena.ne.jp/hotentry/it | pup --charset utf-8 'div.entrylist-contents-main json{}' | jq -r '[.[] | {title: (.. | select(.class? == "entrylist-contents-title") | .children[].title), url: (.. | select(.class? == "entrylist-contents-title")) | .children[].href, users: (.. | select(.class? == "entrylist-contents-users") | .children[].children[].text | tonumber), tags: ([.. | select(.class? == "entrylist-contents-tags") | .children[]?.children[]?.text])}] | unique | map(select(.users >= 500)) | sort_by(.users) | reverse'
#変数版
title='title: (.. | select(.class? == "entrylist-contents-title") | .children[].title)' users='users: (.. | select(.class? == "entrylist-contents-users") | .children[].children[].text | tonumber)' url='url: (.. | select(.class? == "entrylist-contents-title")) | .children[].href' tags='tags: ([.. | select(.class? == "entrylist-contents-tags") | .children[]?.children[]?.text])' target='https://b.hatena.ne.jp/' hotentry='hotentry/it' curl -s $target$hotentry | ¥ pup --charset utf-8 'div.entrylist-contents-main json{}' | ¥ jq -r "[.[] | {${title}, ${url}, ${users}, ${tags}}] | unique | map(select(.users >= 500)) | sort_by(.users) | reverse"
■【追記アリ】 森喜朗会長の性差別発言を受けて、自民党女性局・自民党女性国会議員はどう反応したか https://anond.hatelabo.jp/20210209083036 シリーズの読み方、というか注意点を列挙する。
まず、本来最初のエントリをあげたら、本エントリに書く様なことをすぐに書く予定だった事、クソガキみたいな茶々や揶揄するトラバ等にプッツンして、急遽全与党議員分の作業を先にしてしまったという言い訳をさせていただきたい
そして結論から先に言えば、一連のエントリでの発言チェックは「SNSで森発言へ言及した」事に主眼を置くべきで、「SNSで森発言へ言及しなかった」事は主眼に置くべきではないという事だ。
一番最初にこれは言っておくべきで、表の「メディア」欄へのT(witter)やF(acebook)は、あくまで自民党のWebページの議員詳細ページに登録があれば書いている。TもFも無い場合はnone扱いとしているが、該当期間(2021/02/03 ~ 2021/02/09)の間にツイートやFacebookのエントリを投下していない議員もたくさんいる。本来プログラムによるスクレイピング等といった手段が取れれば、該当期間の投下エントリ数を各議員、各メディアごとに表せたが、今回は無理だった。まとめている筆者の感覚では該当期間中にエントリ投下があった議員数は総議員数の1/4位ではないかと思う。なので、自民党男性衆議院議員についてのエントリをみて、反応があったのが6/258とするのは端的に間違いである。ここまで気を配って作業を始められればよかったのだが、生憎そうはならなかったという事をご考慮頂きたい。
色んなパターンがあり、数か月~数年単位でTwitterもFacebookも更新していない議員もいれば、数週間程前からエントリ投下が止まっている議員もいる。動画や個人のWebサイトも確認しないのでそこで言及している可能性もある。あくまで厳密に、自分が書いた言葉通り受け取って頂きたい。細心の注意を払って確認はしたが、何せ個人の業なので見逃しもあるだろう。
次手動でやる気がまるでないので、無知なりになんとかスクレイピングに移行したいと思う。そうすればそれなりの時間はかかるだろうが、手間は数十分の一かそれ以下になるし、確認期間のエントリ投下数なども含めて表にしたり分析ができる。筆者はpython環境すらまだないので実現可能か否かも分からない状態だが。正直なところ偉い人にツールを作ってほしい。そうすれば色んな話題について各議員のSNSでの反応が可視化できる。
更に追記予定
みなさん、騙されないでください。
みなさんもご存知の通り、アポマトックス・コートハウスの戦いで追い詰められたロバート・E・リー将軍麾下2万の南軍兵はアパッチ族の呪術師によって1600年の日本の関ヶ原に飛ばされました。
ちょうど松尾山の小早川軍とそのふもとの大谷軍のあいだに忽然と現れたリー軍は東西の両者から敵と誤認され、挟撃を受けましたが、260年の文明差に物を言わせて大谷・小早川軍を押し返し、一気呵成に戦場を席巻。石田三成と徳川家康はリー将軍に降伏し、将軍は豊臣秀頼の後見人として日の本の新たな支配者となったのです。
さまざまな調査の末、ようやく自らの置かれた状況を把握した将軍は衝撃を受けるとともに、彼の故国がまだ建国どころかピルグリム・ファーザーズすら入植していないことをむしろ好機と捉え、再び偉大な合衆国を造ろうと決意します。リンカーン的でもディヴィス的でもない、彼の理想のアメリカを作ろうと。
たとえば、Hatena 社が作ったこの AnonymousDiary というウェッブサーヴィスでは、匿名でブログの記事が執筆できるのです!
こうしたサーヴィスは西軍の勝った世界線のアメリカでも、東軍の勝った世界線のアメリカでも考えられないことです。