はてなキーワード: JSONとは
特別製なのは4人だけよ(^ε^)-☆Chu!!
https://bookmarker-encyclopedia.netlify.app/profiles/jkondo
https://bookmarker-encyclopedia.netlify.app/profiles/xevra
https://bookmarker-encyclopedia.netlify.app/profiles/naoya
ってのは詳しく説明するともともとCSVを直接食わせてChatGPTに解析させてたんやけど、あいつ手抜きするからキーワードの誤検知が多かったんやで
日平均3ブクマ程度で「Togetter・増田~を大量に読み」と表されてしまうのはむずがゆい。なぜか「バカ」「クソ」を多用とされているが過去10000件で該当1件で「ばかり」「恐らくその」を誤判定しているらしかった。
だからここに書いてるようにちゃんと文字を意味のある単位で分割して精度をあげたんやで
https://bookmarker-encyclopedia.netlify.app/how-it-works/
その精度アップ版で分析されたデータをすでに一度解析したユーザーでやるときに
ってことなんやで
2回目生成したときに、1回目の文章の雰囲気をベースにしろって意味やで
https://bookmarker-encyclopedia.netlify.app/how-it-works/
生成 LLM(ChatGPT)→ analyzed.json
これを二回目に生成するときやで
プロンプトはこうね。
私がはてなブックマーカーの解析済みJSONをアップロードするので、分析をしてスキーマに従ってJSONをダウンロードリンク形式で出力してください。ファイルは `YYYYMMDDHHMMSS` でユニークにしよう。
1.まずは profile_instruction.md profile_instruction_aggregate.md を読んで指示に準拠するように。
2.出力するJSONは profile.schema.json に従ってください
3.analyzed.zip は分析済みのJSONがユーザーごとにファイルに分割され入っています、これを用いることで誰が誰にスターをつけたのかを知ることができます。generated.commentary.starとgenerated.comparisonProseの参考にして。
4.analyzed.zip 内に既に存在するユーザーの場合はもとのJSONの雰囲気をベースにして出力してください。
5.analyzed.zip 内に既に存在するユーザーでもとの文量が少ないユーザーは、2-3割ほど増やしてあげて
6.analyzed.zip 内に既に存在するは古く精度が低いaggregate.jsonで作られているので、attack/praiseの誤検知があったら正そう
かねてよりたびたび報告されていた問題について、
anond:20260401195436 hatelab.jpのcookieを消さなきゃ、はてラボにログインできなかったよ
anond:20260517004602 はてラボ経由の増田へのログイン時、Internal Server Error のJSONが表示されて失敗する件
anond:20260528111629 最近増田にログインできないんだが同じ人います?
たまたま再発したのを機に、はてなに詳しいクッキーの状況などを報告したら返信があり、
はてラボログイン時にInternal Server Errorのエラーが表示された際の状況について
ログインに使う一時的なCookieが、ご利用状況によっては想定より長くブラウザ側に残ることがあり、
私たちのシステム側の有効期限と食い違ってしまうことで、エラーが起きていました。
本件はすでに修正済みです。
修正されたとのことです。よかったよかった。
ホントに面白いんだけどさ、でもまぁやっぱり真偽というか白黒というか実際のところどうなん?ってのはあるよね
少なくともさ、このエントリ読む前に文春がアップした動画へアクセスできる連中は文春の動画を保存してて欲しいのね?
何でかと言えば「それ本当にYoutubeとかから保存された動画なの!?」っていうのをやるからで〜すwwwww
このエントリ読む前に時間がもったいないからマジで今すぐ速攻で保存しにいけwwwww
さて、まずffmpegというメチャクチャ有名なツールを導入します。このエントリに興味を示した人は既に導入してあるかも知れません
導入して無い人は「ffmpeg 導入」あたりでググって導入方法を調べましょう
ffmpeg公式では便利なインストーラーとか配布して無いんだけど、稀にffmpeg公式のフリをしてマルウェアとかインストールさせようとする詐欺サイトあるから注意してね。Qiitaあたりの情報を引くのが良いと思うよ
それでですわ、Windowsターミナルかお好きな仮想端末を開いて下記のコマンドを入力する
ffprobe -v quiet -print_format json -show_format -show_streams input.mp4
説明する必要もないとは思うが、input部分がファイル名でmp4の部分がフォーマットな。だから文春の動画フォーマットがmp4じゃなかったら文春の動画フォーマットに合わせてね
これはね動画のメタデータを表示するためのコマンドなんだけれども、世の中の動画共有SNSって当然ながらサービス内で規格化された動画を扱っているのね?
んで、その特定の動画共有SNSの動画規格から外れた動画って十中八九その特定の動画共有SNSからダウンロードされた動画じゃないんだわヒャッホイwww
ということで前ステでガンガン攻めて行きましょ!w
| サービス | フォーマット | 動画コーデック | 音声コーデック | 1080p(30fps)ビットレート | 1080p(60fps)ビットレート | 2160p(60fps)ビットレート | LIVE配信1080p主流ビットレート | 音声ビットレート | 音声サンプリングレート | 音声ラウドネス制限 | creation_time | tool | encoder | handler_name | com.apple.quicktime.software | 備考 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Youtube | MP4,WebM | H.264,VP9,AV1 | AAC,Opus,OGG(Vorbis),E-AC-3 | 約1.5〜4.0 Mbps | 約2.5〜6.0 Mbps | 約15.0〜25.0 Mbps | 約3.0〜5.0 Mbps | 約128 kbps前後 | 44.1 kHz,48kHz | -14 LUFS | サービス内でトランスコードされた日時 | 空白 | Google,空白 | IsoMedia File Produced by Googleなど | 空白(Apple製品で作成しないと表示されない拡張メタタグ) | - |
| TikTok | MP4 | H.264,H.265,AV1 | AAC | 約5.0〜8.0 Mbps | 約8.0〜12.0 Mbps | - | 約2.0〜5.0 Mbps | 約128 kbps前後 | 44.1 kHz,48kHz | -10〜-12 LUFS | サービス内でトランスコードされた日時 | 空白 | Lavfほにゃらら | VideoHandlerもしくはSoundHandler | 空白(Apple製品で作成しないと表示されない拡張メタタグ) | TikTok公式アプリからダウンロードすると動画内にウォーターマークを入れるためcreation_timeがダウンロードした日時になる |
まず動画共有SNSから動画をダウンロードした場合toolが埋まることは無い
例えばTikTokは内部的なエンコーダーをffmpegそのまま利用していて、TikTokはプライバシーに関わるメタデータを削除しても既にあるメタデータを自社の情報へ書き換えたりしないんだな
実はLavfほにゃららやVideoHandlerってffmpegデフォルトのメタデータ情報で、メタデータがffmpegデフォルトであることがTikTokからダウンロードされた動画の証である
そしてYoutubeの場合はメタデータの一部をGoogleですよとアピールするために書き換えるのでProduced by Googleなんてのが載るわけだ
YoutubeとTikTokの違いなんだけど、現在実はYoutubeでH.264がトランスコードされることは例外を除いてほぼ無くなっており、多くはVP9かAV1になっている
逆にTikTokはH.264がまだまだ主流で、一部の動画でAV1が使われるようになっている。H.265も一部混ざっていてAV1にするかH.265にするか迷ってる最中っぽい
つまりYoutubeからダウンロードされた比較的新しい動画がH.264だと「あれれ〜?」ってなるわけ
更にtoolなどメタデータへ対してAdobe Premiere ProやDaVinci Resolve、HandBrakeなんてのが登場したら、それはもう完全に動画共有SNSからダウンロードされたものじゃない絶対にだ
仮に文春のWebサイトへアップする際に「容量を節約するため再エンコードしました」なんて言い訳していたとしても、それはいわゆる1次情報ファイルでは決してないので情報技術者として証拠としては扱えない
もちろんフォーマットやコーデック、ビットレートなどに整合性が無くなっても、それはどんなに文春へ寄り添っても極大の疑問符が付く動画になってしまう
おいおいwwwブコメの皆さんよwwwww
文春が「これが証拠だ!」とアップしたデータが松井氏本人から提供されたんだったら動画共有SNSへアップした証拠にはなり得ないだろwwwww
だからこそ文春にアップされた動画は動画共有SNSのメタデータでなければならないんだよw
俺は信じてるぞ文春!!!wwwwwwwwww
AI時代には、readme.mdなんてもう誰も読まない、AIでhtmlを生成させて、見栄えの良いテキストを作らせるべきというけど、
ネットで流れてくる画像を見るに、作らせるべきはポスターやチラシ風の画像だと思う。
四コマ漫画でもいい。
anond:20240926160900 投稿のときに確認するボタンを押さないでいきなり投稿するとタイトルの文字数制限がなくなるバグ。
anond:20260401195436 hatelab.jpのcookieを消さなきゃ、はてラボにログインできなかったよ
anond:20260517004602 はてラボ経由の増田へのログイン時、Internal Server Error のJSONが表示されて失敗する件
anond:20260528111629 最近増田にログインできないんだが同じ人います?
anond:20260403175113 はてなの増田の運営さんへ 長いエントリを書くと、文字数で本文の最後がカットされますけど、その部分にhtmlタグが含まれていると表示がバグります。
anond:20260528122757 増田が色々アップデートされているらしいが 下の死んでるキーワードページをなんとかしたほうがいいのではないか
anond:20260221082304 増田「投稿のボタンを押して押して押して押して押しまくって参ります」俺「連投するな」
anond:20260605224602 ファーストブクマしようとしたら初回に「現在このURLは登録できません」と出てくるの、直して欲しい!
anond:20260612073945 増田検索結果の黄色いハイライトがたまにつかないことがある
5月27日のアップデートに関連する不具合は 本日の増田のアップデートまとめ で扱います。
現場は一応IT会社だ。といっても大手広告代理店(というジャンルにしておく)の子会社で、俺はそこにSIerから常駐で入っている。小規模なウェブアプリ開発の案件。Aという部長が来るまでは、まあ普通の現場だった。
A部長は親会社からの出向だった。定年前の、よくあるやつ。なぜこの人が「IT会社」に送られてきたかというと、エクセルが得意だから、らしい。親会社の中では「ITに強い人」ということになっていた。
実際のA部長は、予想通りエクセルが得意なだけだった。コードは一行も書けない。VBもわからない。VLOOKUPが好き。「セル結合はやめたほうがいいよ」と、こっちが頼んでもいないのに得意げに教えてくる。配布物は、もちろん全部エクセル。
ここまではいい。よくいる人だ。問題は、赴任した時期だった。世の中が、AIで何でも作れると沸騰し始めた、あの時期だ。
A部長はclaudeで部下の日報管理アプリを作ってみたらしい。そして、あっという間に見た目だけは見事なwebアプリができたことに、本人が一番驚いていた。それからは、誰彼構わず見せびらかすようになった。みんな内心では冷笑していたが、たまに気を遣った若手が「すごいですね」と言ってあげる。それでまた調子に乗る。今でもSNS上で繰り返されるバイブコーダーのあの残念な光景のリアル版。
ログインは社員番号と暗証番号。データがどこに保存されているかは、本人も知らない。
「社員管理アプリ群を作った。今あるB社の勤怠管理システムは、もう解約していい」
「俺がたった一ヶ月で作ったこれを見てくれ。無料で、素人がここまでできるんだ」
もう一度言う。ログインは全部共通で、社員番号と暗証番号。保存先は本人も知らない(えーと、っていう感じで流してた)。そして個人情報の登録欄には、携帯番号も、住所も、家族構成まで入力させる欄があった。
会議室の温度は、一ミリも変わらなかった。それが何を意味するか、誰も分かっていない。分かっている数少ない人間は、黙っていた。俺も、そのひとりだった。
「俺の作ったアプリ、いい感じでみんな使ってるようだ。まだまだ拡張する。一緒に手伝ってくれ。」
常駐の立場で、NOとは言えない。
手伝い始めて、構造が見えてきた。
コードはgitで管理され、GitHubにも上がっていた。デプロイ先はVercel。ちゃんとしてるじゃないか、と一瞬思った。聞いてみた。
「GitHubは当然使ってるよ! でも、どういう仕組みかはよくわからん。claudeの指示通りにやったら上手くいったようだよ。」
でも、リポジトリは全てpublicになっていた。
一番驚いたのは、その運用だった。
claudeがVercelにデプロイする。A部長がそれを本番環境で目で見て、OKだと思ったら、claudeに指示して初めてGitHubにpushされる。順序が、逆なのだ。全世界に公開された本番が、彼にとっての動作確認画面になっていた。家族構成まで入力させるアプリの、本番が。
そして、ずっと引っかかっていた「保存先」を、自分の目で確かめることにした。自分の画面でアプリを開いて、F12を押した。開発者ツール。localStorage。
そこに、全部あった。
userInfo というキーに、長い文字列。一見ランダムな英数字で、お、暗号化してるのか、と一瞬感心しかけた。違った。ただのbase64だった。デコードしたら、JSONがそのまま出てきた。氏名、社員番号、携帯、住所、緊急連絡先、配偶者の名前、子どもの人数。一文字も暗号化されていない、ただエンコードされただけの個人情報。
……true に書き換えたら、どうなる?
書き換えた。リロードした。管理者メニューが開いた。社員の個人情報が、エクセルみたいに並んでいた。家族構成つきで。
このアプリは、誰がログインしているかも、その人が管理者かどうかも、全部ブラウザの中のメモ書きで判断していた。サーバーは、何も覚えていない。
なぜ、こうなったのか。気になって、コードとgitの履歴を遡った。
そうしたら、claudeはちゃんと警告していた。
ソースのコメントに、そのまま残っていた。「※ localStorageはXSSに脆弱です。本番では認証情報を保存しないでください」。別の箇所には「この権限チェックはクライアント側で動作します。サーバーサイドでの検証が別途必要です」とも。
claudeは、正しいことを言っていた。何度も、ちゃんと。
履歴から、流れが見えた。claudeはたぶん毎回、「安全な方法はこちらです。手早く動かすだけならこうもできます(非推奨)」と二つ並べて出していた。A部長は、迷わず手早いほうを選び続けたのだろう。エラーが消えれば次へ進み、赤い字が出れば「直して」と投げ返す。能書きは読まない。Acceptするだけ。とりあえず動くコードだけが採用され続け、本番に流れていく。claudeが残した「使わないでください」は、誰にも読まれないまま、ソースに鎮座しているのみ。
俺はここで、ようやく腑に落ちた。
バイブコーディングで本当に怖いのは、AIが間違えることじゃない。AIは、むしろ正しかった。怖いのは、その正しさを評価できる人間が、現場に一人もいないことだ。
コードを書く力は、AIが配ってくれた。誰でもアプリが作れるようになった。でも、出てきたものが正しいかどうかを判断する力までは、配られていない。実装は民主化された。評価は、まだ民主化されていない。そして、その二つのあいだに空いた深い断層に、社員全員の家族構成が、平文で落ちている。
俺はA部長に、できるだけ穏やかに説明した。F12というキーを押すだけで、プログラミングを齧った事のある人なら社員の個人情報が見えてしまうんです、と。
「じゃあ、F12を押せないようにclaudeに指示出しておくよ」
Firefox 151.0で直ったな
disconnect-entitylist.jsonにhatena.co.jp以外のはてなのドメインが追加されていて、これらのドメイン上のコンテンツからブラックリスト登録されているはてなのドメインのリソースを読み出す時にブロックされなくなった模様
"Hatena": { "properties": [ "hatena.blog", "hatena.co.jp", "hatena.ne.jp", "hatenablog.com" ], "resources": [ "hatena.ne.jp", "st-hatena.com" ] },
以下のような増田を野次馬として眺めていたワイにも、
anond:20260328064651 Firefoxではてラボログインできない anond:20260410222207 Firefoxで増田にログインできなくなったやで…😟 anond:20260416211545 俺環の問題だろうけど anond:20260424203703 ワイはFirefoxではてなにログインできなくなったからEdgeから増田してるやで….. anond:20260516133305 はてらぼログインでInternal server errorがJSONで返って来る
ついにまったく同じ問題が起きてしまった。きっかけはなんなんやろな。特に心当たりはない。
んで、諸兄のアドバイスに従って、はてラボのサイト上で、アドレスバー左隅の盾アイコンからCookieとサイトデータを消去して、正常復帰できた。
記録のためにここに残しておきます。
追記: Firefoxだけでなく、ChromeとSafariでも起きるらしい(anond:20260528111629)
どうやらFirefox 150.0のtracking protectionに使用しているリストにはてなのドメインが登録されたのが原因っぽい
https://github.com/mozilla-services/shavar-prod-lists/tree/150.0 を見たら、disconnect-blacklist.json と disconnect-entitylist.json の2つにはてな関連のドメインが登録されてた
"Hatena": { "properties": [ "hatena.co.jp" ], "resources": [ "hatena.ne.jp", "st-hatena.com" ] },
149.0のリストにはこの登録がないから、トラッキングコンテンツのブロックをONにしても問題ないのだと思う
リストの見方がよく分からない……はてなブックマークのドメインはb.hatena.ne.jpだから、その辺が「サイトの主要な問題を修正 (推奨)」ON/OFFの挙動に影響しているのかなあ
最近、AIでいいからプログラマはいらない、みたいなSNSのフィードにでてきてイラついている。
正確にいうと、プログラマしていた人が、AIに負けましたと宣言して、AIを扱うエヴァンジェリスト気取りになるのに反吐がでる。
なんやねん、自分たちの仕事は価値がなかったんです~と言って、世間に媚びようとしてるの? 私が真実を教えますみたいな?
責任感のない感じしかしないが、そういうゴマすりが好まれると思っているからやってるんだろうな。あーイライラするぜ。
なんで、こいつら AI に対して服従するから先行者利益を預からせてくれ、みたいなことやってるんだろうな。
世の中AIに「もうダメだー服従します」って言ってAIを使う第1人者にシフトしますって言いすぎじゃない?
そんなウェブにあふれてるテンプレみたいなことしてんの? やってることテンプレなの?
そうだとしたら、そりゃ、ウェブにあふれてるならそうだろうというか、そもそも人間でも同じだろ。
JSON色付け係だったら、そりゃAIは効率よく色付けてくれるよな。
何が 「AI によってプログラマはプログラミングを卒業して、AIを監督する立場になる」だ。
結局、AIによる合理化だから仕方ないという建前で、責任あるプログラミングを放棄したいんだろ。
プログラミングに責任をもって、顧客に価値を提供する人を巻き込まないでくれ。
こういうやつが「監督する立場」になって、バグが出た時に周囲を納得させる理由で修正できると思えん。
結局、有名なAIがそう言ってるんだから、という理由で説得できると思えるんだとしたら、お花畑だな。
AIが自分より賢いということと、きちんとした問題解決をすることは、天と地ほど違うんだよ。
結局、AIを使って何かやったのは自分なのだから、トラブルや拡張に対処するのも自分だろう。
それに対して知りませんといってなんとかなるならいいが、他人との金銭や契約が絡むならどうしようもないだろう。
AIがコードを書ける時代になって正直かなり救われた気分でいる。
長いこと付き合ってきたもののプログラミングという作業が好きだった記憶はほぼない。
最初だけは楽しかった。自分で書いたコードが動いたときのあの感覚。20年ほどだがそれは覚えている。
Hello Worldが出たとか、画面が表示されたとか、ボタンを押したら何か起きたとか。あの瞬間だけは確かに面白いと思った。世界を自分で動かしている気になっていた。
だがすぐ慣れた。うんざりするようになった。
頭の中では一日で終わる作業がある。仕様も単純。ロジックも見えている。やることも明確。
これなら今日中に終わるだろうと朝に思う。気が付くと一週間経っている。
原因はだいたいしょうもない。単純なtypo。変数名が一文字違う。importのパスが違う。カンマが一個足りない。カッコの釣り合いが取れてない。なぜか全角スペースが入っている。フレームワークの変な挙動。公式ドキュメントを読む。サンプルが古い。StackOverflowの回答が3年前。バージョンが違う。ライブラリの使い方の勘違い。引数の順番を間違える。戻り値の型が思っていたものと違う。asyncなのにawaitしていない。
想定していない入力パターン。nullが来る。空配列を渡すとエラー。型が微妙に違う。JSONの構造が一段違う。データの状態がおかしい。キャッシュが残っている。DBのデータが壊れている。ローカルでは動くのに本番で壊れる。環境差分。nodeのバージョン。Dockerの設定。
根本的な設計の誤り。途中で気づく。書き直し。ログを読む。printを入れる。また直す。また壊れる。
気が付くと日がまたいでいる。
頭の中ではとっくに完成しているものを、現実世界の細かい摩擦が延々と邪魔してくる作業。
AIが出てきて一気に変わった。
typoを見つける。ライブラリの使い方を直す。フレームワークの書き方を合わせる。バージョン差分を説明する。漏れていた条件分岐を補う。設計の穴を指摘する。
コードを投げると一瞬で全部チェックしてくる。
詰まっていた場所が数分で解決する。ドキュメントを一時間読むより早い。StackOverflowを30タブ開くより早い。思考に近い速度で物が作れるようになった。
作りたいものを考える。AIにコードを書かせる。レビューして調整する。動く。この流れが成立した瞬間、ようやくプログラミングが少しまともな作業に感じられるようになった。
昔のやり方にはもう戻れない。
自分で全部のコードを書く時代には戻りたくない。あの endless typo と endless ドキュメント読みの世界には戻りたくない。