「JS」を含む日記 RSS

はてなキーワード: JSとは

2025-12-09

はてなNGフィルタまとめ

はてなブックマーク増田機能する、NGワードを元に記事非表示にする方法をまとめました。

現在機能する方法という観点で調べてみましたが、有力な抜け漏れがあったら教えてください。

はてなフィルター

https://hatenafilter.com/

外部サイト型のはてなブックマーク

はてなNG代替品作った (はてなフィルタ)

anond:20180609124213

ChromeFirefox拡張で、はてなブックマーク有効デフォルト非表示になるサイト多数あり。AndroidならFirefox版が動くかも。

はてブ記事を、キーワードURLミュートする Chrome 拡張を作った (はてなミュート)

anond:20230305200055

はてブ記事キーワードURLミュートする拡張Firefox版も作った

anond:20230311142828

ChromeFirefox拡張で、はてなブックマーク有効AndroidならFirefox版が動くかも。

[はてブ]uBlock Origin特定エントリーを隠す方法メモ

anond:20180523215832

増田でuBlock Originを使って特定単語を含むエントリーを隠す方法メモ

anond:20180523222112

広告ブロック uBlock Origin を使っている場合活用できる。同 Lite 版でも「カスタムフィルター機能を使って対応できる。はてなブックマークだけでなく増田にも有効。面倒だろうけどAndroidならFirefox版が動くかも。

はてなブックマーク増田一覧向けNGフィルタ

anond:20251209224022

Tampermonkeyなどのユーザースクリプト適用する拡張と共に、またはブックマークレットとして使う。はてなブックマーク増田一覧にだけ有効スマホ場合アプリでは動かないが、面倒だけどブラウザでは動くキーワードノイズとなりやすユーザーを中心に常時メンテナンス中。

はてな匿名ダイアリー特定ワード投稿非表示

anond:20251208175027

Tampermonkeyなどのユーザースクリプト適用する拡張と共に使う。増田にだけ有効。面倒だけどスマホでも動く

[増田しぐさ] 増田CSSを紹介する記事(英文スパム対策付き)

anond:20250701235606

Stylusなどのスタイルシート適用する拡張と共に使う。増田にだけ有効。面倒だけどスマホでも動く。スパム対策ビジネス詐欺URLを中心に常時メンテナンス中。

スマホでのユーザースクリプトの動かし方
https://chatgpt.com/share/6936aa6a-e2dc-800f-ab39-021d68a25b87

検索用: はてなブックマーク はてブ はてな匿名ダイアリー 増田 スパム キーワード NGワード フィルタ ミュー非表示 削除 隠す ブロック ユーザースクリプト ユーザースタイル hatena bookmark anond spam keywords ngwords filter mute hide hidden display none block userscript JavaScript js css style

はてなブックマーク増田一覧向けNGフィルタ

はてなブックマーク増田一覧の、さらに「すべて」(1 user)をチェックしている希有な人向けのユーザースクリプトを公開します。

https://b.hatena.ne.jp/site/anond.hatelabo.jp/?sort=eid

// ==UserScript==
// @name        Hatena Bookmark Anond Filter
// @namespace   https://b.hatena.ne.jp/site/anond.hatelabo.jp/
// @description はてなブックマークの『はてな匿名ダイアリー』の記事のうち、指定したキーワードが含まれ投稿非表示します。
// @match       https://b.hatena.ne.jp/site/anond.hatelabo.jp/*
// @grant       none
// @version     1.0.2025.12.10.0005
// ==/UserScript==

(function(){
  const SCRIPTID = 'HatenaBookmarkAnondFilter';
  console.time(SCRIPTID);
  const ONCE = 1, AP = 2, INTERVAL = 3;/*適用タイミング*/
  const KEYWORDS = [
    'dorawii',
    'あおやまちゃん', 'ボスマン',
    'れめくん', '自己放尿', '性慾', 'boushi_inst', 'hakaikami',/*電気通信大学駿河台大学鉄道研究会れめくん自己放尿(頻出)*/
    /*A-G*/'/akibakko6348', '/anapgoeson', '/asapgoeson', '/buscholarx', '/circlecavok', '/disney1007cla', '/dora22sibuya', '/donkotrain', '/fft_dareka', '/gmhtcyznf_abc',
    /*H-N*/'/h13_yokohama', '/h2twi', '/hinolovelove', '/inaken17_', '/inte235dy', '/kaoru_ai1991', '/kiha2228', '/kqlex1500', '/kurotamaxxx', '/kt_ruma_1372', '/lightningreen77', '/minamihinawot', '/minori0151', '/mukoroku651', '/nanpyong', '/nimouec', '/norannnde',
    /*O-U*/'/oreizmmiporin', '/pasotokon', '/pm95uq', '/reme_kun', '/s03_amurtk2731', '/sacchan03110319', '/seisu_bot', '/senanana_cos', '/shinano_115', '/shineleaf1372', '/soroisoroi', '/sweidan821858', '/tarotaromusic1', '/tx9y2cpwdz27255', '/uec15take', '/uecrail',
    /*V-Z_0-9*/'/wakasato_', '/yuuya_1104_uec', '/100mph_no_yuuki', '/2rtkvn34il2783',
    /*tadaup.jp*/'/CBUHadpD.jpeg', '/CgJlF4Wr.jpeg', '/CGTtm0Ev.jpeg', '/CIxj8clS.jpeg', '/CqbERPdQ.jpeg', '/CTZsA2wM.jpeg', '/CWY2m7rS.jpeg', '/CZVCEgd1.jpeg',
    'テクウヨ',
  ].map(w => w.toLowerCase());
  const sites = {
    'prefix': [
      ['selector', 'modifier', 'REPEAT', '(css)'],
    ],
    'https://b.hatena.ne.jp/site/anond.hatelabo.jp/': [
      ['li.js-keyboard-selectable-item', li => KEYWORDS.some(w => (li.textContent.toLowerCase().includes(w)) && (li.querySelector('li.entrylist-contents-category > a').textContent = w) && (!li.classList.add('filtered'))), AP, `.filtered{display: none;}`],
    ],
  };
  const rules = sites[Object.keys(sites).find(prefix => location.href.startsWith(prefix))];
  if(rules === undefined) return console.log(SCRIPTID, 'Not found any sites.');
  const modify = function(selector, modifier){
    const elements = document.querySelectorAll(selector);
    elements.forEach(modifier);
  };
  /* ONCE(一括適用) */
  rules.forEach(rule => {
    const [selector, modifier, repeat, css] = rule;
    console.log(SCRIPTID, 'ONCE:', selector);
    modify(selector, modifier);
    if(css){
      const style = document.createElement('style');
      style.dataset.script = SCRIPTID;
      style.type = 'text/css';
      style.textContent = css;
      document.head.appendChild(style);
    }
  });
  /* AP(AutoPagerize) */
  rules.filter(rule => rule[2] === AP).forEach(rule => {
    const [selector, modifier, repeat] = rule;
    document.addEventListener('GM_AutoPagerizeNextPageLoaded', e => {
      console.log(SCRIPTID, 'AP:', selector);
      modify(selector, modifier);
    });
  });
  /* INTERVAL */
  rules.filter(rule => rule[2] === INTERVAL).forEach(rule => {
    const [selector, modifier, repeat] = rule;
    setInterval(function(){
      console.log(SCRIPTID, 'INTERVAL:', selector);
      modify(selector, modifier);
    }, 1000);
  });
  console.timeEnd(SCRIPTID);
})();

検索用: はてなブックマーク はてブ はてな匿名ダイアリー 増田 スパム キーワード NGワード フィルター ミュー非表示 削除 隠す ブロック ユーザースクリプト ユーザースタイル hatena bookmark anond spam keywords ngwords filter mute hide hidden display none block userscript JavaScript js css style

2025-12-04

久しぶりにブックマークレットjs使ってwebページ内の必要ものを取り出したり、表示させなくしたり、

そういうのやろうかなって思ったけど、

css操作だけならChromeプラグインがあってそっちで簡単に実現してしまうんだな

プログラムっていうのは無いものは作る精神が一番趣味として楽しいし色々知識も増えると思うけど

今は探したら大抵のものはありそうで一気にやる気がなくなるな

2025-11-14

jsのgetMonth()がキショすぎる

なんで1ズレてるんや。メリットなさすぎるやろ。

2025-11-06

anond:20251106215727

ほぉ。まるで「ライブラリ移植なんて余裕っすよ」と言わんばかりの口ぶりだな。お前、自己放尿レベル気持ちよくなってるが、現実を何も理解してねぇぞ。

いか。「同じ機能移植するだけ」って発想がそもそも低能証拠だ。Pythonの強みは言語としての表面構文じゃなく、生態系として積み重なった最適化と実績だ。

NumPyやPandas、Scikit-learn、PyTorch、全部C/C++Fortran実装Pythonバインディングで何層もラップしてる。

しかメモリ管理スレッドセーフティBLAS最適化GPUオフロード、それらを組み合わせたとき挙動の安定性まで含めてライブラリって呼ぶんだよ。

「決まったインターフェース移植するだけ」とか言ってる時点で、頭の中で想定してるライブラリが、せいぜい数千行のユーティリティレベルだろう。

企業が内部で作るって?そりゃ車輪の再発明だよ。しかも、Python10年かけて磨き上げたアルゴリズム最適化を、数ヶ月の業務開発で再現できるとでも?寝言は夜だけにしろ

あと、「いまどきの言語ならそんな大変じゃない」って、まるでNode.jsがCythonやNumbaのようなネイティブ統合の層を持ってるかのように錯覚してるのが痛い。

V8JIT高速化できるのはせいぜいスクリプトレベルの話。数値演算メモリアクセススレッド制御最適化できる数学的基盤の厚みがまるで違うんだよ。

Nodeで同じことをやろうとしたら、JSからC++アドオン叩いて、型変換のコスト死ぬだけ。

まり、「移植できるだろ」って発言は、Python生態系を単なるコード群だと思ってる愚か者自己放尿なんだよ。

それは「パルスジェットなら自作できるだろ」と言ってる鉄クズコレクターと同レベル。動くかもしれんが、効率も精度も再現性も自己放尿レベル

Node.js厨が「Pythonライブラリ移植できる」とか言うのは、「俺でもベートーベン交響曲ぐらい耳コピできる」と言ってる音感ゼロ自己放尿芸だ。

見てる側からすりゃ笑いのネタにもならねぇ。

git worktree 軽量プロジェクトならいいけど、node_modulesがっつりのプロジェクトとかディスク容量食い過ぎってならん?

js/node/npmがクソって話なんだけど

2025-11-02

Downtown+を予想しよう

AWS

Node.js

Mongo.DB

JWC

WebRTC

React native

Next.js

2025-10-22

自分ホームページを作ったかどうかでWEBの見え方が180度以上違う話

以下ChatGPT

自分ホームページ(自前ドメイン+自前HTML)を一度でも作って運用すると、SNS中心の“受け手視点から仕様検索配信・所有・継続の“作り手”視点に脳が切り替わる。結果、情報リテラシーは跳ね上がり、ネットニュース流行の見え方が根本から変わる——しか想像以上に。

1. “タイムラインからアーキテクチャ”へ

Before(作る前): WebSNSタイムライン。良し悪しは「バズってるか」「見やすいか

After(作った後): WebプロトコルブラウザHTML/CSS/JSCDN検索エンジン。

ページは**文書(Document)**であり、配置(IA)、意味づけ(セマンティクス)、配信HTTP/HTTPS/HTTP/2/3)、キャッシュ戦略が気になりだす。

→ 同じ記事でも「タイトルの付け方」「hタグ構造」「画像最適化」「OGP」「サイトマップ」がまず目に入るようになる。

2. “アルゴリズム運”から“所有と積み上げ”へ

プラットフォーム依存の脆さを体感規約変更やシャドウバン露出が消える。

サイト資産化:ドメインに紐づくURLリンクされ、検索に積み上がり、10年後も生きる。

POSSE(Publish (on your) Own Site, Syndicate Elsewhere):まず自分サイトに出してから外部へ配信する習慣が身につく。

3. “好き/嫌い”から“なぜ速い・なぜ遅い”へ

Core Web Vitals(LCP/FID/CLS)や画像の遅延読み込み、フォント最適化重要性が腹落ちする。

広告・計測タグの重さに過敏になる。読者体験を壊さないためのパフォーマンス予算という概念生まれる。

4. “なんとなくSEOから情報設計×検索意図”へ

キーワード選定は“流入ゲーム”ではなく読者の課題コンテンツ設計帰着

内部リンクパンくず・スキーマ構造データ)・サイトマップ意味が実務として理解できる。

“書けば伸びる”ではなく“検索意図を満たす設計が伸びる”に目が覚める。

5. “見た目”から意味アクセシビリティ)”へ

alt見出し階層コントラスト比、キーボード操作、焦点管理など、見えない品質が最重要になる。

デザインは飾りではなく“読み・理解操作”のためのユーティリティだと分かる。

6. “PV至上”から継続コミュニティ”へ

たまたま当たる1記事より、更新継続アーカイブ性・RSSのほうが効くと実感。

コメント欄メールフォーム・X連携よりも、ニュースレターRSS購読者の質に価値を見出す。

7. “無料神話からコスト責任”へ

ドメインDNS証明書バックアップ法務特商法プライバシーポリシー)に“運用者の責任”が生まれる。

その重みが情報信頼性を引き上げる(=他人サイトの苦労も見えるようになる)。

8. “トレンド追従から自分OSを持つ”へ

サイト思想作品OS

トレンドは“輸入”ではなく選別になる。自分歴史に合うものだけを採用して積層していける。

9. まず一歩:最小スタックで“今夜リリース”する

Node.jsを避けたい人向けに、極小構成OK

A. 最小HTML(雛形)

<html lang="ja">

<head>

<meta charset="utf-8" />

<meta name="viewport" content="width=device-width,initial-scale=1" />

<title>あなた名前 | ホーム</title>

<meta name="description" content="自分ホームページ制作物・日記メモを置いていきます。">

<link rel="alternate" type="application/rss+xml" title="RSS" href="/feed.xml">

<meta property="og:title" content="あなた名前 | ホーム">

<meta property="og:description" content="自分ホームページ制作物・日記メモ。">

<meta property="og:type" content="website">

</head>

<body>

<header>

<h1>あなた名前</h1>

<nav>Home / About / Posts</nav>

</header>

<main>

<article>

<h2>はじめまして</h2>

ここからすべてを自分URLに積み上げます

</article>

</main>

<footer>© 2025 あなた名前</footer>

</body>

</html>

B. ホスティング無料~低コスト

GitHub Pages(Jekyll標準。Rubyベース、Node不要

Cloudflare Pages(静的ファイルを置くだけで高速CDN

レンタルサーバー(静的HTML+SFTP/rsyncで十分)

C. ドメインの基本

覚えやすい短さ+ローマ字。将来10年使える名前に。

DNSA/AAAA/CAA/TXT最低限、HTTPS必須Let’s Encrypt無料化)。

D. “最低限の品質チェック”5点

タイトル・description見出し一貫性

画像は適切なサイズalt

モバイルでの可読性(文字サイズ行間

OGPが効いているか(XやLINEURLを貼って確認

RSS/更新履歴の有無(継続を前提に)

10. 一歩先へ:運用で差がつく“3つの習慣”

ログを読む:Search Consoleと簡易アクセスログで“本文よりメタ情報”を磨く。

アーカイブ主義記事追記更新URLは変えない。Versioningを意識

POSSE徹底:自サイトに公開→SNSには要約+リンク本体は常に自分土俵

2025-10-21

「dorawii」を含む投稿非表示にするJavaScript

dorawiiがタイトルに「dorawii」と入れなくなったので、本文にdorawiiがある投稿非表示にする必要が出てきました。

ただAIに聞いたんだけど、CSSでは無理でJavaScriptならできると言われました。

そのJavaScriptを下に載せます

// ==UserScript==

// @name はてな匿名ダイアリー特定ワード投稿非表示

// @namespace http://tampermonkey.net/

// @version 0.1

// @description 本文に「dorawii」が含まれ投稿非表示にする

// @match https://anond.hatelabo.jp/*

// @grant none

// ==/UserScript==

(function() {

'use strict';

// 投稿全体を囲む要素のセレクタに置き換えてください

// はてな匿名ダイアリー一般的投稿要素のクラス仮定しています

const POST_SELECTOR = '.body .section'; // 例: .bodyクラスの子孫の.section要素

// 非表示にしたいキーワード

const KEYWORD = 'dorawii';

// すべての投稿要素を取得

const posts = document.querySelectorAll(POST_SELECTOR);

posts.forEach(post => {

// 投稿内の本文が含まれる要素(ここでは投稿全体を本文と見なす)のテキストを取得

const textContent = post.textContent || post.innerText;

// キーワードが含まれいるかチェック

if (textContent.includes(KEYWORD)) {

// キーワードが含まれていれば非表示にする

post.style.display = 'none';

}

});

})();

自分iPhoneなので、Makeoverというアプリを入れて、JSの部分に上のを貼り付けてます

なんか複雑だし、もっと良い方法があるなら教えてください!

なんでdorawiiのためにこんなことしなきゃいけないんだよ!迷惑千万

2025-10-14

静的サイト生成

かにある?

MkDocs、UmiJS、Eleventy、SvelteKit、mdBook、Pelican、React Static、ZolaFresh、Gridea、Gridsome、Metalsmith、Sapper.js, Honkit

https://youtube.com/shorts/q3TAeao1VoE

https://b.hatena.ne.jp/entry/s/frantic.im/remix-3/

機能存在すると "使い倒さないといけない" or "使い倒さないなら一流でない" と考える "謎の集団" が存在して、そういう声に流されてるからv18以降の機能追加に拒否反応を示してるんじゃないの

あるいは "ベストプラクティス義務である" みたいな謎の強迫観念を持っているとか…

Next.jsを勧めるわけではない(自分仕事ではNext.jsプライベートRemix v2ユーザーである)が、Next.js使用した上でもv18以降の機能使用はほぼ全てオプションだよ


ただ、Reactの開発がNext.jsに毒されていて本筋から外れている感じは否定しない

ここから来る害があるとしたら、非Next.jsユーザーからするとv18以降のReactは特に発展していないということだろう

トランジションAPI自動メモ化とか便利だし恩恵0ってのは極論すぎると思うが

2025-10-13

静的サイトジェネレーター

Astro、Hugo、Docusaurus、Next.jsGatsby、Jekyll、Nuxt.js、Hexo、Slate、GitBook、Docsify、VuePress

https://youtube.com/shorts/rKjsPS2L9Zk

dorawii@執筆依頼募集中

「フラッペとか言ってるようなやつだからな」みたいな、前の増田スタバでフラッペ飲んだと書いてたことを明らかに踏まえたような馬鹿にしたトラバがついてそれに反論し続けて今に至る俺を馬鹿にする流れができてるから、お前らがいじるのは俺がフラッペと言ったことと関係あるのかって言ってるんだよ

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

https://anond.hatelabo.jp/20251013191651# 
-----BEGIN PGP SIGNATURE-----

iHUEARYKAB0WIQTEe8eLwpVRSViDKR5wMdsubs4+SAUCaOzRlQAKCRBwMdsubs4+
SI1VAPsF7Fqc4VhlxZ7Ug+0qyA131Y1hCSkwhG585kOpj8cFUgD/ZLYDHPq0XfVe
js/VHA1jNfh62E8T50Loqd8TLYgTbgE=
=Q/B7
-----END PGP SIGNATURE-----

2025-10-07

フロントエンドエンジニアが完全にオワコンになった件

もうUIはいらない。

この一言に尽きる。

ChatGPTの新機能「Apps in ChatGPT」が登場した瞬間、フロントエンドという職種地盤は音を立てて崩れた。

これまでは、Webアプリサービスは「フロントエンドUIを作り、バックエンドデータを返す」

という分業構造の上に成り立っていた。

だがApps in ChatGPTは、その構造をぶち壊す。

ユーザーはもうWebサイトを開かない。

ChatGPTのチャット画面内でSpotify操作し、Zillowで物件を探しEtsyで買い物をする。

まりUIはChatGPT内に統合される。

あなたが書いてきたReactコンポーネントボタンフォームもすべてAIに吸収される。

UI」はAI自動生成する時代に入った

もはやユーザーブラウザ必要としない。URLコピペすることも無くなるだろう。

「このホテル予約して」と言うだけでAIAPIを呼び、レスポンスカルーセル形式提示する。

人間HTMLを書く必要はどこにもない。

UIは書くものではなくAIが描くものに変わった。

もうフロントエンド価値ゼロになる。

ReactもNext.jsも「人間が画面を操作する前提」で存在していた。

でもその前提はもう終わった。

AIデータを直接受け取り、AI自身人間に見せるUI自動生成する。

あなた設計した美しいフォームAIにとってはただの "action": "submit" という構造情報にすぎない。

見た目を整える仕事 は全自動化される。

人間の手でフロントを作る時代は終わった。

Apps in ChatGPT以降の世界では、

重要なのはAI理解できる構造を返すこと」だ。

まりJSONやGraphQLやREST API

これらが新しいUIだ。

AIにとってのUIは「データ構造」そのものだ。

からこれから必要なのは「見た目を作る人」ではなく、AIが読み取れる形式世界記述できる人 だ。

バックエンドに戻れ。

構造設計できない者は消える。

Apps in ChatGPTが意味するのは、

UI不要構造APIけが残る」という冷酷な事実だ。

もうHTMLを描くな。API設計しろ

フロントを磨くな。AIに読ませろ。

今後必要なのはAIが扱いやすデータスキーマ定義する力や認証権限トランザクション安全に扱う力やMCPWeb APIAIが使いやすい形に整える力だ。

まり、「AI時代バックエンドエンジニアリング」だ。

これは警告だ。猶予は短い。

Apps in ChatGPTの登場は、「AIUIを直接扱い始めた」という歴史的転換点だ。

もうWebサイトを作る必要はない。

AIがその役割を奪った。

あなたフロントにしがみつく間に、AIはすでにあなたの代わりにUIを描いている。

5年後にはブラウザから色んなサイトアクセスするという行為は一部のマニアだけ行うものになっているだろう。

もう時間はないぞ。急げ

2025-10-05

anond:20251005152626

こいつ思い出した

JSのおもらし好き!JSになって小学校に潜入したい!女児下着履きたい!」からの「性同一性障害診断書もらいましたー」

https://x.com/funeship537/status/1974008560653869146

自認女って何?

2025-10-01

anond:20251001142227

Vue.jsとか中国人発明だし、そういうの日本人でいうとRailsくらいだろうか?

2025-09-30

anond:20250930232313

馬鹿だろコイツwwwwwwjs経由でIP隠せるとでも思ってるのかwwwwww

うちの会社にやってきた「できるエンジニア」がやばかった

3ヶ月前、うちの開発チームに新しいエンジニアがやってきた。佐々木仮名)、29歳。

経歴書を見た時点で、正直ビビった。

GitHubスター数がやばい

技術ブログ記事数もやばい

使える技術スタックが俺の3倍はある。

React、VueNext.jsTypeScriptGo、Rust、DockerKubernetes…もう何がなんだかわからない。

「また意識高い系が来たよ」

と同僚の田村仮名)がつぶやいた。

俺も同感だった。

案の定初日からすごかった。

レガシーコードを見て「これはちょっと…」みたいな顔をする。

技術選定の会議

モダン構成リファクタリングしませんか?」

提案してくる。

コードレビューでは容赦なくダメ出し

「このコンポーネント責任が多すぎますね」

「ここのエラーハンドリング、もう少し丁寧にやりましょう」

テストコード書きましょうよ」

うぜぇ。

俺たちがなんで汚いコードを書いているか知ってるのか?

毎日終電まで働いて、土日も障害対応で呼び出されて、

そんな中で何とか動くものを作ってるんだよ。

綺麗なコードなんて書いてる余裕ないんだよ。

でも、佐々木コードは確かにしかった。

読みやすくて、テストちゃんと書いてあって、

ドキュメント完璧

俺たちが1週間かけて実装する機能を、

3日で仕上げてくる。

しかった。

あいつ、前の会社どこだっけ?」

「確か、某有名Web企業らしいよ」

「やっぱりな。恵まれ環境にいたから、あんなことできるんだよ」

俺たちは佐々木を妬んでいた。

SIer出身の俺たちと、

最初からモダン環境にいた佐々木

スタートラインが違うんだから

勝負になるわけがない。

そう思っていた。

ところが先週、佐々木と飲みに行く機会があった。

酒が入って、だんだん本音を話すようになって、

そこで知った事実愕然とした。

佐々木は、元々文系出身プログラミング完全未経験者だった。

新卒で入った会社は、まさに俺たちと同じようなSIerJavaCOBOLレガシーシステムの保守をやっていた。

毎日終電、土日出勤当たり前。

技術負債まみれのクソコードと格闘する日々。

最初の3年間は地獄でした」と佐々木は言った。

でも、佐々木はそこで諦めなかった。

毎朝5時に起きて、出社前に2時間勉強

帰宅後も疲れていても1時間は必ずコードを書く。

土日は技術書を読み漁り、

オンライン講座を受講し、

個人開発を続けた。

「平日は合計3時間、土日は10時間以上勉強してました。それを4年間続けました」

4年間。毎日3時間。土日10時間

俺は計算した。

平日3時間×240日×4年+土日10時間×100日×4年

=6,880時間

7,000時間近く勉強していた。

最初転職活動100社受けて全部落ちました。でも諦めずに勉強を続けて、2回目の転職活動でようやく今のレベル会社に入れました」

俺は恥ずかしくなった。

佐々木を「恵まれ環境にいたから」と妬んでいたが、実際は俺たちと同じ、いやそれ以下のスタートラインから、血のにじむような努力で這い上がってきた人だった。

俺は何をしていた?

環境が悪い」

時間がない」

SIerから仕方ない」。

そう言い訳して、

家に帰ったらゲームして、

土日はYouTube見て、何も勉強しなかった。

佐々木と俺の差は、才能でも環境でもない。

努力の量だ。

「今からでも遅くないですよ」

佐々木は言った。

「一緒に勉強しませんか?朝活やってるんです」

恥ずかしかったけど、頷いた。

明日から佐々木朝活を始める。

毎朝1時間でもいい。変わりたい。

29歳。まだ間に合うよな?

2025-09-15

生成AIによるクロール拒否する設定がひろまってほしいが...

ここ数か月で、はてなブログnoteが生成AIによるクロール (巡回) を拒否する設定項目を追加したけど、この設定、いろいろなブログサービスにひろまってほしいところ。はてなブログでもnoteでもないけど、生成AI拒否したいという人はたくさんいるとおもうのだが。

はてなブログでの設定方法 / noteでの設定方法

WordPress (有料プランか自前サーバー運営している場合) やBloggerならクローラー設定を1から自分入力することが可能。この記事最後も参照。全部自分でやりたいという人はだいたいこのどっちかを使用しているだろうからAI学習許可するかどうかは検討してほしい。

Xなどのミニブログではよくプロフィールページに「AI学習禁止」と書いている人もおおいけど、人間とおなじ感情をもたない生成AIにとってはこの文言クロールしてしまうため逆効果になってしまう。どうしてもクロールしてほしくないなら非公開アカウントの設定検討を (そのかわり検索でも表示されなくなるが) 。

イラスト投稿するウェブサイトについては、有名どころは設定項目がないものデフォルトで生成AIによるクロール拒否されているところがおおいので、マイナーなところでなければだいたい大丈夫だろう。ただしはてなフォトライフクロール拒否になっていないので、公開フォルダーアップロードする場合は注意が必要 (はてなブログからアップロードだとデフォルト公開フォルダーになるのでブログの設定どおりになる) 。

おまけ1

生成AIとは関係ないが、興味深い設定になっているウェブサイトがいくつかあった。

https://www.colorslive.com/robots.txt

Nintendo Switchからのみイラスト投稿できるウェブサイトなのだが、デフォルトを全拒否に設定してあり、GoogleBing (msnbot = 現在bingbot) といった主要検エンジンに対してのみ個別許可設定してある。なるほどとおもった。なおAppleはふくまれていないようなので、Spotlight検索ではヒットしない可能性がたかい (トップページはヒットする) 。

https://x.com/robots.txt

User-agent: Bingbot

Disallow: *

デフォルト検索エンジンBingに設定している身としてはとんでもない表記をみつけてしまった...。絶望

Copilotに使用されたくないのだろうが、このせいでBing検索してもまとめサイトはヒットするのに元の投稿がヒットしないという状態に...。気のせいだとおもっていたけれど、設定に従った正常な動作だったのか...。

Xになってからはてなブックマークタイトルが表示されずURL表示のままだったり、JavaScriptオフにしているとそもそもアクセスできなかったりなど (以前はJSオフガラケー版が表示されていたのだが) 、いろいろ締め出しているのがな...。ログインしないと公式アカウント以外ユーザープロフィールは一部表示できないし (投稿すら表示できないのは一時的な緊急処置だったため現在はなくなった) 。

逆に検索エンジンから流入をすこし (まとめられない限りは1割ほど) でもへらしたいならXはおすすめ選択肢に (なお非公開アカウントにしないかぎり0にはならないので家族友達にだけ公開したい場合は注意) ...。

おまけ2

最後に、あらゆるクローラーを紹介しているウェブサイトを2つ。

https://chrisleverseo.com/user-agents/

SEOコンサルタント個人運営っぽい。114のクローラーがまとめられている (2025年9月現在) 。英語だけだが、各クローラーについての説明がこまかく掲載されているので、好きな人は読んでいるだけでもおもしろいかも。SEO対策の補助としてつかえる各種機能無料で公開されているので、AIクロール拒否するrobots.txtをサクッと作成したいならここでAIカテゴリーの項目に全部チェックをいれて拒否欄 (赤色) に「/」1文字入力、生成されたデータダウンロードしてサーバーアップロードすればよい (Bloggerならコピーして設定画面にペースト) 。

https://datadome.co/datadome-intel/

上はSEO対策からまれたページなのだが、こっちはウェブサイトセキュリティ対策 (ロボットによる過剰アクセスから保護) を目的にうまれたページ。そのため、上の114クローラーの5倍以上ある586クローラー (2025年9月現在) の情報に加え、アクセス制限突破しようとしてくる各種ツールなどについての情報もある。おそらく公開データベースのなかでは世界最大規模。

2025-09-10

anond:20250910133250

みんな自分の得意分野しか語らないからね

js知識だけではアプリ作れないし、プログラミング不自由する

ネットワーク知識はそれだけで一冊の本になるし、インターネットの話、webの話、httpプロトコルサーバの話も奥深い

必要なところだけつまみ食いできる本があればいいんだけどねえ

dorawii@執筆依頼募集中

js実装するってことを目標としたときに一番の基礎はjsだろう?それですっとばしてるって言われる筋合いないだろう。

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

https://anond.hatelabo.jp/20250910132839# 
-----BEGIN PGP SIGNATURE-----

iHUEARYKAB0WIQTEe8eLwpVRSViDKR5wMdsubs4+SAUCaMD+fwAKCRBwMdsubs4+
SKV8AQDeUAY1BU3liWTk/XsCFrzgOY4TcZ1IeP90uFbHU3F0cAEA34kbkzJXZ/Ch
9TgCh48NOQHBDCE5E4mSqf0L6mLg1Qg=
=ejI8
-----END PGP SIGNATURE-----

dorawii@執筆依頼募集中

んでお前自身3dsとかswitchぽんと与えられて自力cfwとかつくれたって思えるわけ?

単にプログラミング知識だけじゃなくて既に存在するハードに結びついたコードに対する解析力とかえた情報を逆手にとって権限を奪うようなことするとかってまた必ずしも現場itに携わってたら身につくというわけでもない特殊な知見な気がするんだけど。

ゲームハードとかの内部仕様なんて本出回ってるはずないからそれこそ一からどうにかする解析の地力要求されるだろうし。

あとどこかで通じる部分がある話だと思うけどはてな

ブックマークのページとかで読み込まれjsの中にはrksを生成するコードがあってそれを直接叩ければ安定して絶対通用する新鮮なrksを常に埋め込んでデータを送れるより安定したセルクマスクリプトができるはずなんだけど読み込まれjs見てもラッパー関数ってやつになっててそれぞれの関数役割名前から見えづらい状態でそういう関数存在するってことはほぼ明白なのに実体が見つけられなくて叩けないってことになってるんだけどそういうのを探し当てるのは高度かね?

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

https://anond.hatelabo.jp/20250910020042# 
-----BEGIN PGP SIGNATURE-----

iHUEARYKAB0WIQTEe8eLwpVRSViDKR5wMdsubs4+SAUCaMD2vwAKCRBwMdsubs4+
SGkHAQCPTLGr0GoNnNLk5/c+qvzUF85pXTpFMbua9BYMJw3nswEA3g369/WgxjCB
IzXcoQVHBfRW/OOhZAzKdG2HqVZd2gY=
=iPFu
-----END PGP SIGNATURE-----
ログイン ユーザー登録
ようこそ ゲスト さん