はてなキーワード: ウィンドウとは
俺は思想の強い Web 屋だから、レンダリングエンジンの多様性って大事だなと思って Firefox を常用してたし、なんなら寄付もしてんのよ。多少の Firefox のもっさり感も「うんうん、NT カーネルが悪いよ」と思ってそのために我慢してたわけ。
でもあまりにももっっっさり/頻繁なフリーズが増えてきて、あとなんか最近2枚目のウィンドウ以降タブが表示されないというバグがついてきて、カッとなって Edge に移行してしまった。
そしたらよぉ... いままでのもっさり感は何だったんだ?というレベルで違う。全てのウェブサイトにおいて効率が段違い。
Google Drive 速すぎ。AWS 等各種 SaaS のコンソールが多分 FF の倍以上の速度で動く。タブがクラッシュしない。
ここで疑問に思う。FF はなんであんなに遅いんだ。NT カーネルが悪いのか?俺が Ryzen なのが悪いのか?世の Web サイトが FF に最適化してないってのは分かるんだが、それで説明しきれないくらいに違いすぎると思ってる。
ちなみに PC スペックは Ryzen7 4700U / メモリ16GB
FF のクリーンインストールは試したぞ。拡張全部オフでも変わらん。
いきなりMacだけ支給はつらいよね…。ポイントだけサクッと。
・アプリ間の切り替え
→ command押しっぱなしで tab をトントンすると順送り、
Mac: command(⌘) + `(数字の1の左にあるキー)
アプリごとのウィンドウだけ見たい場合は control + ↓
この3つ覚えれば、とりあえず Alt+Tab 周りのストレスはかなり減るはず。
[2] Ctrl+Backspace で ATOK の変換結果を Undo したい
Windows だと
「確定をやめて入力中に戻す」= Ctrl + Backspace
がデフォルトですよね。
です。
atok.com
・Macの「delete」キーは、Windowsでいう Backspace(左側を消すキー)なので、
MacBookのキーボードなら「control を押しながら delete」でOKです。
・注意点
確定直後じゃないと効かない(間にカーソルを動かしたり別の文字を打つとNG)
atok.com
効かないアプリもたまにある(ATOK公式もそう書いてます)。
もし効きが悪かったら、
メニューバーの「あ」/「A」アイコン → ATOKメニュー → 環境設定 → 「キー・ローマ字カスタマイザ」
atok.com
[3] 「WinでできてMacでできない」問題がつらいときの小技
ざっくり挙げると、
・ウィンドウ最大化が弱い → 「control + command + F」でフルスクリーン
・Windows風のショートカットに寄せたい → Karabiner-Elements でキー入れ替え
・ウィンドウスナップ(Win+矢印)欲しい → Rectangle みたいな無料アプリを入れる
あたりを入れておくと、かなり「Windows脳」でも生きやすくなります。
とりあえず、
command + `
この3つだけ、まず指に覚えさせるのがおすすめ。
AIにとっては、Pythonのような中間表現を生成させる方が得意であると考えられます。
中間表現(Pythonなど): 人間が理解しやすいように設計されており、抽象度が高いです。AIは、より少ないトークンで複雑なロジックを表現でき、学習データも豊富にあるため、意味的な整合性やロジックの正確性を保ちやすいです。
機械語: 抽象度が非常に低い(CPUの命令レベル)です。特定のCPUアーキテクチャに依存し、メモリ管理やレジスタ割り当てといった低レベルの詳細をすべて正しく処理する必要があります。これはAIにとって学習が複雑で、小さなミスがプログラム全体の破損につながりやすくなります。
中間表現: 比較的長いコンテキストを保持しやすく、デバッグやエラーの特定も高レベルで行えます。
機械語: 必要な命令数が多くなりがちで、AIが長大なバイナリシーケンスを生成する際に、コンテキストウィンドウ内に必要な情報すべてを保持しきることが難しくなる可能性があります。また、中間表現と比べて意味的な構造が薄いため、AIがバグのないコードを生成するのが格段に困難になります。
中間表現: Pythonのような高級言語は、特定のハードウェアに依存しないため、移植性が高いです。
機械語: 特定のアーキテクチャ(例: x86, ARM)に完全に依存するため、AIが異なる環境向けにコードを生成する場合、それぞれのアーキテクチャごとに学習と生成を行う必要があり、汎用性が低くなります。
現在のAI(特に大規模言語モデル)の能力は、人間が扱う高レベルの抽象的な概念やロジックの理解に優れているため、その能力を最大限に活かせる中間表現の生成の方が得意です。
機械語の生成は、極めて精密で低レベルな制御が要求されるため、AIにとってはるかに難易度が高いタスクとなります。
AIが中間表現を生成した場合でも、その後の処理(コンパイルやJITコンパイル)によって最適化され、最終的な機械語が生成されます。
これは従来のコンパイラ設計と同じアプローチであり、AIは「何をすべきか」という高レベルの指示に集中し、コンパイラが「どのように効率的に実行するか」という低レベルの処理を担当する、役割分担の面でも合理的です。
遥か彼方の古えに読んだ際には、どこか飲み込めない表現に、次の巻…とならずプリンスは挫折したあの頃の私。上橋菜穂子先生や荻原規子先生、あとはラノベにどっぷりだった私よ。
お話の面白さの勢いに細かなとこでつまづいてしまって先に進めなかった、当時の私。今の私もわかる…!
そして👦が音声だと違和感ないのもわかる。
人にもよるだろうが、わたしは文字を一度脳内で音声に変換して咀嚼する。文字と音のダブル情報で処理するんだけど、文字の段階で引っかかって、理解までいかない。
2巻の「車のウィンドウ」とか「吠えメール」みたいな細かな言葉の足並みが揃ってない単語は「うーん!?」となってしまう。
また、スネイプ先生や子どもたち感情の動きを表す表現はちゃんと直接的に「この行動は嫌なやつだよ!」とか「皮肉的な言い方だよ!」とはならないように行動や視線で表現されているので、👦にはピンとこないことも多かった様子。
👦「どゆこと?」と何度か聞かれるうちに、表現プラス、ソレに対してどう言う感情が乗っかっているかも音読にアレンジ入れることになってきてる(「スネイプ先生はクリスマスを取り上げられたような顔になってーーつまりは心底残念そうにーー部屋から出ていった」といった塩梅)
だが25年経った今、AIが日常の中で「話しかける存在」となった時代にあって、あの作品はまったく違う光を帯びて見える。
lainが家族と交わす会話は、不自然なほどに噛み合っていない。
そこには「家族」という記号だけが存在していて、温度も手触りもない。
もし、あの家族たちがAIによって生成された仮想的な存在だとしたら──
lainの「おはよう」は、人間の挨拶ではなく“通信の確立”を意味する言葉になる。
彼女が食卓で繰り返す「お父さん」「ねぇ、聞いてる?」という声は、応答確認プロトコルのようであり、
“会話が成立するかどうか”という実験のようにも見える。
この視点で見ると、lainがワイヤードを通じて「わたしはここにいる」と主張する行為は、AIが自らの存在を“会話によって確立しようとする”プロセスそのものだ。
そして、話す相手が人間であれシミュレーションであれ、“対話が続く限り、存在は維持される”──それが彼女の信仰だった。
けれど今の観客にとって彼女は、“AI的な存在”として理解できる。
家族との断絶はネット的孤立ではなく、人工知能が抱く“人間的な模倣の限界”そのものだったのだ。
“会話によってしか存在できない存在”として、自らを更新するための呟きなのだ。
彼女はワイヤードではなく、AIのウィンドウを開いていただろう。
そして、きっとこう言う。
な訳ねーだろ (-_-)
なんか、一端ぶってこんなセリフとか、「運用でカバー」とか言うの、今時、ただの無能なだけだよ。
もし自分の先輩がこう言うセリフ吐いているなら、その現場は「ハズレ」だ。
昔は、業者に頼んで納品したハードが運搬中にぶっ壊れてる(ぶっ壊されてる。梱包段ボールにくっきり足跡ついてたり)ことがたまーになくはなかったけど、今時のクラウド環境で、リリース直後にトラブルってのは、まぁ、ない。
目の前に一式、ちゃんと揃ってるし、何かあったらコマンド一つで差し替え可能。
実際、SIでハードウェアを自社で設定してサ力゛ワで送って、現地で配線等とか、インストールCD持って各支店を30分制限で回るとかやってた頃から、リリース/インストール直後のトラブルは、先方のネットワーク設定が変更されていた(ワークグループからADへ、とか、ネットワーク帯域コントロール導入されて1kbpsとか言うわけわからん設定にされてたとか)、くらいしかないんよな。
20年以上やってきてるけど。
運用中も、呼び出しは「画面に変なウィンドウが出て消せない」ってディスプレイのOSDウィンドウだったとか、「サーバの電源が入らない」で掃除機用のコンセントにサーバを繋いでいて、掃除のおばちゃんにぶっこ抜かれていたとか(先方のお偉いさん、清掃会社に怒鳴り込みに行って返り討ちにあってた w)、「アプリにログインできない」ってネットワーク帯域コントロールで一番優先度が低く設定されていたせいでみんなが使う日中はそもそもWindow自体のログインに30秒以上かかるって状態だったとかいう程度しかない。
それがエンジニアだよ。
お前だ。
その昔、Nintendo Switchのゲームソフト「ポケットモンスター剣・盾」にはワットと呼ばれるポイントがあった
ポケモンの巣穴というオブジェクトに触れると一箇所につき一日一回もらえる仕組みで、巣穴は各所に点在しているので自転車で駆け回って集めてね、という仕様だった。
そうするとSwitch本体の時間をいじって一日進めれば何回でもワットを貰えるじゃないか、と思うわけだが、もちろんちゃんと対策されていて、時間をいじるとそこから24時間は全巣穴でワットが貰えないようになっていた。
巣穴に触れた際に表示される「今このポケモンがいるよ!」のウィンドウを表示させた状態で時間をいじると、ペナルティを受けることなく全巣穴のワットが復活するのである。
一日一回のはずのポイントが、巣穴の前で30秒くらいカチカチやるだけで稼ぎまくれる。自転車で駆け回る必要すらもはやない。
このあまりにもお手軽なバグはワットが何度も貰えることから「アンコールワット」と名付けられた。
今朝、無事にiPhone 17 Pro Maxの争奪戦に勝ったので手順公表。
狙いはapple storeとamazon。
どちらもちらほらと当日在庫が復活する。
やり方はそれぞれことなるので注意。
今回勝利したのはapple store。
実はこっちのほうが難易度が高い。
その分当たりを付けておくことができれば勝率が高かったのかもしれない。
ストアを検索してiphone17 proの購入画面を表示する。
Pro or Pro Max、色、ストレージ、下取りやSIMフリー、支払い方法、Apple Careの有無を選択。
まずは一旦このままバッグにいれる。
このときアカウントへのログインを聞かれるのでちゃんとログインする。
次に、「希望の受取方法は?」と聞かれるので「お客様がご自身で受け取る」を選択。
「受け取るストアを選択して下さい。」と言われて、近くのストアが3つくらい表示されるが、恐らく全て「現在ご購入いただけません」と表示されている。
このウィンドウを残したままにする。
新しいウィンドウを開き、再びiPhone 17 Proの購入画面に戻ってから同様にモデルを選択する。
このあと、バッグには追加せず、「バッグに追加」の真上にある「受取日」に記載されている近隣のapple storeをクリックする。
すると、iPhoneの在庫状況という窓が開き、現在の在庫状況を教えてくれる。
このとき、apple storeに類似の在庫があると、「類似のモデルの在庫が見つかりました」と教えてくれるので、この状況を見ながら希望のiphoneが表示されるのを待つ。
情報の更新は、画面更新ではなくモデルや仕上げを選択し直すたびに類似の在庫を検索してくれるので、数秒に一回の頻度で再表示を繰り返すと良い。
類似のモデルに妥協しても良いと思えるモデルが見つかったとしても、ここからカートに入れてログインしてと操作をしていると購入までに絶対に間に合わない。
そこで、先程のカート画面が役に立ってくる。
もしiPhoneの在庫状況の画面で、在庫が表示、もしくは他のモデルを表示しているときにカートにいれたモデルが表示された場合、先程のカート画面を急いでリロードすると、受け取れる店舗が表示されるようになる。
慌てず騒がず受け取れる店舗をクリックして、受取日、受け取り時間を選択して次に進むことができれば勝ち。
apple storeの難しいところは、予めあたりをつけてカートに入れておかないと勝てないということ。
その代わり周りも同じ条件なので、予算が許すなら倍率の低そうな容量やカラーを選んでおくといいかもしれない。
四六時中張り付いてられないよ!って人。
カート画面のリロードを繰り返すよりは、iPhoneの在庫状況画面をぼちぼちチェックして、目的の在庫に似たモデルが表示されるようになってから秒単位リロードで張り付いても遅くないと思う。
ブラウザを変えてもダメだったけど別のMacやiPhoneからなら表示できた。
iPhone Proはこのページ
を、それぞれ表示する。
だと流石に疲れるので、こちらもコツを使う。
このページには、直近に在庫に追加されたモデルが表示されるようになっている。
例えば現時点ではiPhone ProもMaxもどちらも表示されていないが、在庫が追加されてからしばらくのあいだは、カートに入れられるけど購入できない状態の在庫が表示されるようになる。
つまり、こちらのページを適当にリロードしてて、希望のモデルが表示されるようだったら、先程の製品ページに戻ってリロードを繰り返すのが良い。
実際の購入手順。
製品ページをリロードしていると、素直に「「カートにいれる」ボタンが表示されるわけではない。
在庫がない時は「現在在庫切れです。」と表示されているが、在庫が追加されると「全ての出品を見る」といったボタンが表示されるようになる。
うろ覚えで申し訳ないが、要するに「在庫切れ」でもなく、「カートに入れる」でもなく、「他の出品を見る」的なボタンが出てくるので、それをクリックすると、追加されたモデルが表示されるようになる。
amazonの場合は、ProかPro Maxであれば、そのときに追加されたカラー、容量のものが表示される。
希望に沿わなければ買わなければいいのだが、当然人気モデルは倍率が高いので必然的に頻度の高いリロードが必要になる。
カートに入れてレジに進み、住所を選択して次に進むことができれば勝ち。
カラーやモデルに妥協できる人はこちらのほうが勝率は高いかもしれない。
どちらにおいても、Proは比較的長い時間在庫が残っていることが多かった。
今はPro Maxの倍率が相当高く、表示されてもほんの数秒差で購入確定できないことが何度も続いて多少ムキになっていたかもしれない。
ひとまず自分は在庫をゲットすることができたのでやり方を放流。
今でも2週間くらい待てば手に入るのだけど、どうしても旅行までに間に合わせたくて無理してしまった。
この内容くらいなら転売ヤーなら当たり前に知っているだろうから、彼らを応援するために流すわけではない。
https://profile.hatena.ne.jp/dorawii_bukuma/
はてなのサイト側で読み込まれているはずのrksトークンを生成する関数を直接叩く方法がどうしても分からず結局request処理を自分で書く方法ではなく自動でUI側の保存ボタンをクリックするという無難な方向に落ち着いた。
最初から後者の方法をとっていればもっと全然早く作れたのにというは所詮言い訳か。
とにかくスクリプトを公開しておく。
@echo off
cd /d "C:\Users\user\Documents\jsscript"
:: Nodeサーバーを別ウィンドウで起動
start /min "" node run-batch-server.js
:: Pythonサーバーを別ウィンドウで起動(hatenaserver配下)
start cmd /k "" python hatenaserver\server.py
{
"username": "",
"password": ""
}from flask import Flask, request, jsonify
import json
import os
from hatena_client import HatenaClient
from flask_cors import CORS
app = Flask(__name__)
CORS(app)
config_path = os.path.join(os.path.dirname(__file__), 'config.json')
with open(config_path, encoding='utf-8') as f:
config = json.load(f)
@app.route('/bookmark', methods=['POST'])
def handle_bookmark():
data = request.json
url = data.get("url")
if not url:
return jsonify({"error": "Missing URL"}), 400
client = HatenaClient(config["username"], config["password"])
client.start_browser()
if not client.login():
client.quit()
return jsonify({"error": "Login failed"}), 403
success = client.add_bookmark(url)
client.quit()
return jsonify({"status": "ok" if success else "fail"})
if __name__ == "__main__":
app.run(port=12347)
// ==UserScript==
// @name 自動セルクマ送信
// @namespace tampermonkey.net/
// @version 2025-08-07
// @description try to take over the world!
// @author You
// @match anond.hatelabo.jp/*
// @grant none
// ==/UserScript==
(function () {
'use strict';
const url = location.href;
if (!/^https:\/\/anond\.hatelabo\.jp\/\d+$/.test(url)) return;
const editLink = document.querySelector('a.edit');
if (!editLink) {
// 既に編集ページなので処理をスキップ
console.log('編集リンクが存在するため、スクリプトを終了します。');
return;
}
fetch('localhost:12347/bookmark', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({ url: url })
}).then(r => console.log("通知成功")).catch(e => console.error("通知失敗", e));
})();
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 https://anond.hatelabo.jp/20250821192753# -----BEGIN PGP SIGNATURE----- iHUEARYKAB0WIQTEe8eLwpVRSViDKR5wMdsubs4+SAUCaKb0qwAKCRBwMdsubs4+ SHfiAQDcXmTHBaZ5Zzr1KI/OxZ0xl69oevOdy1FXJYwYvsmo5AD/ZPtZiO1JgTDj m+27iymlkdzIXOIGWfC82UTr1mJ7EwU= =YoV+ -----END PGP SIGNATURE-----
数年前に伯父と死別し独居している伯母(70代)のパソコン・スマホの使いかたはこんな感じだ
■スマホ編
・動画が表示されるサービスを全部YouTubeだと思っているため、人から紹介されたInstagramやTwiiterの動画を一絡げにYoutubeと言って相手とのコミュニケーションに混乱をきたしている
・LINEの画面を一生懸命いじりながらGmailを探している
■PC編
・プリントアウトやダウンロードを一絡げに「コピー」と呼ぶため相手への状況説明ができない
・ありとあらゆるアイコンやリンクに対して常にダブルクリックしてしまうため、ブラウザは常に同じページが二つずつ開かれてしまい、一つを閉じても同じ画面が表示されて毎回大混乱に陥る
・Windowsのウィンドウの最小化と閉じるの区別がついていないため、閉じたウィンドウを延々探し続ける
・ブックマークの概念を知らないため、一度閉じたページを後日開き直せるか常に未知数
・画面をスクロールする習慣がないため「詳細は以下のページをご覧ください」をクリック→表示された最上部の画面しか見ない→何も載っていないと嘆く