はてなキーワード: threadとは
www.linkedin.com/pulse/daily-collection-roblox-gift-cards-code-list-2024-get-10000-robux-ti4cc
www.linkedin.com/pulse/daily-collection-roblox-promo-code-list-get-10000-robux-free-latest-u3edc
www.linkedin.com/pulse/new-thread-get-10000-free-robux-roblox-promo-code-2024-b2btimes-yj8uc
アメリカにはなぜ、中規模の集合住宅がほとんどなく、郊外の一軒家と高層マンションの両極になったのか
という「ミッシング・ミドル」を解説したスレッドが面白かったよ
面白い。「なぜアメリカには高層ビルと一戸建てしかないのか?」というスレッド。
かつてはアメリカにも中層住宅があり、人々は都市に集まって暮らしていたが、
高速道路を建てるため軒並み破壊され、都市のコミュニティは道路と引き換えに郊外へ移住。
https://x.com/masa_0083/status/1803550811236249830
Why do American cities feel less "alive" than their European counterparts?
It's because of something called the "missing middle".
A century ago, American cities looked completely different... (thread)
自動で安価をつけて返信するプログラムでもこんなに長く複雑になる(一部抜粋)
/**************************************
以下のCSV_DIR, FILE_PATHS, SETTINGSを書き換えてね。 <h3>o- *************************************/</h3>
//CSVファイルが置かれてるディレクトリのパス。投稿前にエラー出たら大体ここの設定ミス。 例:"C:\\Users\\sakuraimasahiro\\Documents\\iMacros\\Macros\\rentou\\";
'C:\\Users\\USER\\Desktop\\iMacros\\Macros\\rentou\\';
//ファイルのパス。CSVは絶対パスで、拡張子も必要。iimは相対パスでよく、拡張子不要。
const FILE_PATHS = {
textCsv: CSV_DIR + 'textNoAnker.csv',
//レス用投稿文が書かれたCSV。通常とレス用で分けないなら同じファイルを使えばいい。
replyTextCsv: CSV_DIR + 'textReply.csv',
};
baseWaitTime: 5,
//baseWaitTime+0~waitTimeRange(ランダム)だけ待つ
waitTimeRange: 5,
//連投しすぎだと忠告された場合に処理を一時停止させる時間(秒)
waitTimeForAvoidingPunishment: 60 * 30,
//メール
mail: 'sage',
//名前設定
name: '',
//以下、偽装ワッチョイ設定。浪人でワッチョイを非表示にしてるときだけtrueにしてね。
//妙なニックネーム(ワッチョイ、アウアウウーなど)をランダムで決めて付加するかどうか。true=付加する。false=付加しない。
//妙なニックネームの後に付く8桁の文字列をランダムで決めて付加するかどうか。
},
//アンカー無し投稿をするならtrue。しないならfalse。noAnkerPostかreplyPostのどちらかはtrueにすること(両方trueでもOK)。
//アンカー付き投稿(返信)をするならtrue。しないならfalse。もしnoAnkerPostとreplyPostの両方がtrueの場合、投稿は返信が優先され、返信対象が見つからなくなったらアンカー無し投稿をする。
//最初に取得するアンカー無し投稿文CSVファイルの行番号。もし返信用と同じCSVファイルを使うなら-1と入力。
noAnkerPostTextCsvStartRow: 1,
//最初に取得する返信用投稿文CSVファイルの行番号。もしアンカー無しと同じCSVファイルを使うなら-1と入力。
//テキストCSV/返信用テキストCSVの取得行が最終行に達したら最初の行まで戻るかどうか。true=戻る。false=マクロ終了。
//返信する場合、これより小さなレス番には返信しない。返信を投稿すると、この数値は前回の返信先のレス番に更新される。
minAnker: 895,
//返信する場合、名前に以下の文字列を含む投稿にアンカーをつけて返信する(ワッチョイやIPなど名前フィールドにあるものならなんでも可)。配列で複数指定可能。指定無しなら空配列([])。filterNamesとfilterNamesNotIncluded共に無指定ならレス番1から順に返信していく(minAnkerが設定されてればそこから順に)。以下のfilter系は全て併用可能。
//↑とは逆に、名前に以下の文字列を含まない投稿にアンカーをつけて返信する。↑と併用も可能。
//返信する場合、本文に以下の文字列を含む投稿にアンカーをつけて返信する。
filterText: ['自演かな', '自演わらわら', 'スクリプト使うの', '安価ガバ', '>>660', '自演で擁護', '最後' ,'あいうえお', 'かきくけこ', 'さしすせそ', 'なにぬねの', 'はひふへほ', 'まみむめも', 'やいゆえよ', 'やゆよ', 'らりるれろ', 'わいうえを', 'わをん', 'わいうえをん'],
},
//自分のIPアドレスの確認。VPNとかでIPを変更してマクロを動かしてるとき、突然VPNが作動しなくなってIPが元に戻ったときにマクロを止めるためのもの。
//以下の文字列が自分の現在のIPアドレスに含まれている場合、マクロを一時停止する。基本的に自分の本当のIPアドレスを入力。
},
//浪人設定。最後に動作を確認したのは5年くらい前で、今も同じように動作するかは、浪人を持ってないから確認できずわからない。
//浪人にログインしてるかどうかをチェックするかどうか。trueならする。falseならしない。trueにしていてもし浪人にログインしていないことを確認したらログインしにいく。
password: '1234',
},
};
/**************************************
設定箇所終わり。
https://info.5ch.net/index.php/%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%82%81%E3%81%AA%E3%81%84%E6%99%82%E3%81%AE%E6%97%A9%E8%A6%8B%E8%A1%A8 <h3>o- *************************************/</h3>
/**************************************
・NULL演算子(??)は使えない。論理積(&&)は使える。
・オブジェクトの分割代入はできない。
・importはできない。 <h3>o- *************************************/</h3>
/**************************************
関数 <h3>o- *************************************/</h3>
/**
* ここから始まる。
*/
checkSettings();
var _TextCsvCursors = new TextCsvCursors(
SETTINGS.postSettings.noAnkerPostTextCsvStartRow > 0
? SETTINGS.postSettings.noAnkerPostTextCsvStartRow - 1
: SETTINGS.postSettings.noAnkerPostTextCsvStartRow,
SETTINGS.postSettings.textCsvLoop,
),
SETTINGS.postSettings.replyPostTextCsvStartRow > 0
? SETTINGS.postSettings.replyPostTextCsvStartRow - 1
: SETTINGS.postSettings.replyPostTextCsvStartRow,
SETTINGS.postSettings.textCsvLoop,
),
);
var _LoopStatuses = new LoopStatuses(0, SETTINGS.postSettings.minAnker);
const _MyPosterName = new MyPosterName({
name: SETTINGS.nameSettings.name,
});
const _ThreadUrl = openPromptThreadUrl();
//ループ
while (true) {
SETTINGS.ipSettings.checkIp && checkCurrentIpNotTheIp();
//スレを開く
openUrl(_ThreadUrl.fullUrlHttps());
//浪人にログインする設定なら、浪人にログインしているかどうかを確認し、していなければログインしにいく。
if (SETTINGS.roninSettings.checkLogin) {
}
}
if (SETTINGS.postSettings.replyPost) {
const targetAnkerNumber = createPostDOMList()
.filterPostnumberHigher(_LoopStatuses.currentMinAnker())
.filterByPostername(SETTINGS.postSettings.filterNames)
.filterByPosternameNotIncluded(
SETTINGS.postSettings.filterNamesNotIncluded,
)
.filterByText(SETTINGS.postSettings.filterText)
if (targetAnkerNumber !== null) {
const r = _TextCsvCursors.takeNextRowTextAsReply(targetAnkerNumber);
messageDisplay(`返信対象有り。アンカー先: ${targetAnkerNumber}`);
return {
...r,
updatedLoopStatuses:
_LoopStatuses.updateMinAnker(targetAnkerNumber),
};
}
}
if (SETTINGS.postSettings.noAnkerPost) {
//返信対象無し、或いは返信しない設定の場合。アンカー無し投稿文を作る。
const r = _TextCsvCursors.takeNextRowTextAsNoAnker();
messageDisplay('返信対象無し。アンカー無し投稿。');
return {
...r,
updatedLoopStatuses: _LoopStatuses,
};
}
return null;
})();
if (p) {
//投稿。
nickname: SETTINGS.nameSettings.nickname,
korokoro: SETTINGS.nameSettings.korokoro,
area: SETTINGS.nameSettings.area,
}),
SETTINGS.mail,
p.text,
);
//_TextCsvCursorsと_LoopStatusesを更新。
_TextCsvCursors = p.updatedTextCsvCursors;
_LoopStatuses = p.updatedLoopStatuses.incrementPostCount();
`投稿回数: ${_LoopStatuses.currentPostCount()}`,
`minAnker: ${_LoopStatuses.currentMinAnker()}`,
`今回アンカー無し投稿取得行: ${_TextCsvCursors.currentRows().noAnker}`,
`今回アンカー有り投稿取得行: ${_TextCsvCursors.currentRows().reply}`,
]);
} else {
`返信対象が現われるのを待機中...。`,
`投稿回数: ${_LoopStatuses.currentPostCount()}`,
`minAnker: ${_LoopStatuses.currentMinAnker()}`,
`今回アンカー無し投稿取得行: ${_TextCsvCursors.currentRows().noAnker}`,
`今回アンカー有り投稿取得行: ${_TextCsvCursors.currentRows().reply}`,
]);
}
wait(SETTINGS.baseWaitTime + randomRange(0, SETTINGS.waitTimeRange));
}
}
/**
* 投稿処理と投稿結果を見てリトライしたりマクロ終了したり。
* @param {string} serverName サーバー名
* @param {MyPosterName} _MyPosterName
* @param {string} postMail メール
*/
serverName,
postMail,
_MyText,
retryTimes = 0,
) {
const r =
retryTimes === 0
? new ValuesOfPost(serverName, _MyPosterName, postMail, _MyText).post(
postTo5chTread,
)
serverName,
postMail,
_MyText,
).postSubstring(retryTimes, postTo5chTread, postConfirm);
if (r) {
back();
return;
}
wait(7);
const error = createPostErrorMessage().analyze();
messageDisplay(error.message);
if (error.order === 'KILL') {
kill();
} else if (error.order === 'SKIP') {
return;
} else if (error.order === 'TRUNCATE') {
back();
serverName,
postMail,
_MyText,
retryTimes + 1,
);
} else if (error.order === 'WAIT') {
wait(SETTINGS.waitTimeForAvoidingPunishment);
serverName,
postMail,
_MyText,
retryTimes,
);
} else if (error.order === 'LOGIN') {
serverName,
postMail,
_MyText,
retryTimes,
);
}
return;
}
/**
* 現在のIPアドレスに、SETTINGS.ipSettings.avoidTheIpの値が含まれていないことを確認する。含まれていたらマクロを一時停止。
* @returns
*/
function checkCurrentIpNotTheIp() {
openUrl('https://www.cman.jp/network/support/go_access.cgi');
const _IpAdress = createIpAdressFromCMan();
if (_IpAdress.includes(SETTINGS.ipSettings.avoidTheIp)) {
pause('現在のIPに指定した値が含まれていることを確認。');
}
return;
}
/**
* @returns
*/
if (
SETTINGS.postSettings.noAnkerPost === false &&
SETTINGS.postSettings.replyPost === false
) {
return kill('設定エラー。noAnkerPostとreplyPost両方ともfalseになってる。');
}
if (
SETTINGS.postSettings.noAnkerPostTextCsvStartRow < 0 &&
SETTINGS.postSettings.replyPostTextCsvStartRow < 0
) {
return kill(
'設定エラー。noAnkerPostTextCsvStartRowとreplyPostTextCsvStartRow両方とも-1になってる。',
);
}
if (
SETTINGS.postSettings.noAnkerPostTextCsvStartRow === 0 ||
SETTINGS.postSettings.replyPostTextCsvStartRow === 0
) {
return kill(
'設定エラー。noAnkerPostTextCsvStartRow/replyPostTextCsvStartRowの初期値は-1或いは1以上で。',
);
}
}
/**
* 入力フォームを表示して入力されたスレのURLを受け取る。
*/
function openPromptThreadUrl() {
const url = prompt('スレURLを入力');
}
/**
* 開いてるスレのレス全て読み取ってPostListインスタンスを作って返す。
* 重すぎるので使うのやめ。どうやらインスタンスの大量生成が原因な模様。
*/
const posts = window.document.getElementsByClassName('post');
return new PostList(Array.from(posts).map((e) => new Post(e)));
}
/**
* 開いてるスレのレス全て取得してPostDOMListに格納して返す。
* @returns
*/
function createPostDOMList() {
const posts = window.document.getElementsByClassName('post');
for (let index = 0; index < posts.length; index++) {
//HTMLCollectionからElementを1つずつ抽出して配列に。
arrPostDOMList.push(posts.item(index));
}
return new PostDOMList(arrPostDOMList);
}
/**
* 開いてる投稿結果画面に表示されてるエラーを読み取ってPostErrorMessageインスタンスを作って返す。
*/
function createPostErrorMessage() {
window.document
Steamで買った『Recursed』というゲームを全ステージクリアしたので、記念に感想を書く。
Steam:Recursed
https://store.steampowered.com/app/497780/Recursed/?l=japanese
一見すると『Recursed』は2Dのレトロな雰囲気のアクションゲームである。操作はシンプルで、方向キーで左右に移動し、アクションはジャンプと物をつかむ/投げるだけだからだ。部屋の中を移動してブロックをつかんで足場を作ったり、鍵をつかんで扉を開錠したりしてゴールへと到着(crystalを獲得)すればステージクリアだ。
ステージの始めはチュートリアルの様に簡単だが、ステージを経るごとに難しくなり、そのうち何度も試行錯誤したり難しさのあまり何十分も頭を抱えたりもした。
この複雑さを生み出す要因は箱(ゲーム中表記ではChest)である。このゲームでは箱の中へジャンプすることで部屋の内に入れるが、一度箱の外にでると箱の内部状態はリセットされてしまうのだ。よって箱の中にブロックや鍵などのオブジェクトを持ち込んでも保存することはできないし、ブロックの位置もリセットされるし、開錠した扉もまた施錠されてしまうことになる。
さらに大きな特徴として、箱を持ち歩いて移動することができるのだ。それにより、箱を持ったまま別の箱に入ったり箱を持って箱の外にでることもできる。
そして、ステージを経ると箱の中の部屋は箱の外と同じ部屋という場面に出くわす。Recursedは『再帰呼び出し』という意味らしいが、まさにこのゲームのタイトル通りの現象が起こるのだ。そして、以降のステージでは再帰を交えることでパズルの複雑さはより深まっていく。
再帰は数学的帰納法やアルゴリズムでは定番の概念だが、それがパズルとなってプレイヤーの思考回路を奪ってくる。私はかつて社畜プログラマとしてJavaプログラミングを経験していたので、箱に入ることはメソッドを呼び出すことの様に感じた。オブジェクトを持って箱に入ることは引数を使ってメソッドを実行することであり、オブジェクトを持って箱の外に出ることはreturn文でメソッドを終わらせることであった。
「ゴール前の段差が大きくブロックが必要だから、ブロック生成メソッドを呼び出してブロックオブジェクトを返り値として渡さなくてはいけないけど、そうすると鍵オブジェクトをゴールメソッドの引数として渡すことができなくて……、いっそのこと、ブロックメソッド内からゴールメソッドを呼び出すべきか……、メソッドの返り値は一つだけだが何度も呼び出せばいけるか? この緑色のオーラはなんだ? Staticを意味するのか? Staticなオブジェクトの位置情報をあらかじめ変更しておけば、ゴールメソッドで引数渡しをする必要がなくなるのか?」
こんなことを一つのステージをクリアするだけのために何十分も考えていたのだ。念のために書いておくが、ゲーム内には数学用語やプログラミング用語は一切出てこない。ただ単に、私にJavaプログラミングの経験があるからその用語でパズルを考えていただけだ。ゲーム内で箱から出入りしたりオブジェクトを箱の中から出し入れするとどうなるかを、Eclipseでステップ実行するように想起していた。ちなみに、ゲーム内で存在しない部屋や壁の中に移動しようとするとparadoxが発生して強制的に特殊な部屋へ移動されるが、私はその度にステップ実行でExceptionに遷移されたことの様に感じた。他の言語に精通するプログラマだったり数学畑の人ならば、私とは異なる概念でパズルを思考をするのだろうか。
プログラマを辞めて何年もプログラミング的思考をしてこなかった私でも全ステージクリアすることができたのだから、学校でプログラムを学んでいたり現役でプログラミングをしてきた人ならばこのゲーム『Recursed』をクリアすることは可能だろう。いっそのこと、『Recursed』のクリアすらできない人にプログラミングができるのか? と煽ってみたいくらいだ。
ちなみに、もし私が社畜プログラマ時代にこのゲームをやったらブチ切れていただろう。なんで仕事でプログラミングで脳を酷使した上に自宅のゲームでも同じようなプログラム的な思考をしなければならないんだよと。プログラミングから何年も離れていた今の私にとって『Recursed』は、プログラミングや単体テストが無事成功した時の快楽を思い出させるものだった。
『Recursed』はパズルとしての難易度は非常に高いが、理不尽な解法を求められることはない。理不尽な解法のクイズやパズルには怒りが湧いてくる。ひと昔前のクイズ番組を見たことのある人なら『モヤッとボール』を投げつけたくなる、と言えばその感情が伝わるだろう。『Recursed』はどんなに難しいステージでも、ただただ開発者のパズル作成能力に感嘆するだけで怒りは湧いてこない。
似たようなアクション風パズルゲームとして有名なのは『The Witness』であろう。『The Witness』も私が好きなパズルゲームであり、ゲームとして高い評価を得ていることに間違いはないのだが、しばしば理不尽な解法を求められるパズルがありその度に私は怒りが湧いてきたものだ。そう考えると、『Recursed』はパズルとしての洗練さだけなら『The Witness』を超えるものだと私は思う。
具体的にパズルを解説するととただのネタバレになってしまうので(もっとも、文字だけでパズルの解法を説明できないのだが)、『Recursed』で私が好きなステージを述べる。順番は攻略順に並べた。
チュートリアルの様に簡単だったこれまでのステージから突如再帰の概念を見せつけられることで、このゲームのタイトル名の意味を理解することになった。
鍵を手に入れたら扉に到達できず、先に扉に到達したら鍵が手に入らずで、まさにインターロックの名前に相応しいステージだった。
一画面だけのオブジェクトが少ないシンプルなステージだが、氷の壁に阻まれてゴールできず苦戦した。試行錯誤の繰り返しの末クリアできたが、何故クリアできたのかがわからない。
The Voidのステージはどれもこれまでの集大成という感じでやりごたえあったが、中でも頭をひねらせたのがこれ。ゴールの部屋を水没させたり水の無い状態で入ったりして鍵を運搬するのに苦労した。
箱を左右へ投げて移動を繰り返して、高い位置にあるゴールを目指すのがまさにEscalateというステージ名そのものだった。paradoxを発生した後のパターンが複雑だったのが印象に残っている。paradoxを発生させたらcrystal獲得(通常のクリア)できないのかよ……という落胆は大きかった。しかし、それだけにcrystal獲得とdiamond獲得(paradox発生によるクリア)のどちらも大きな達成感を得られた。
簡単そうに見えて難しく、唯一ステージを飛ばして次のステージへと進んだので印象に残っている。後に複数日に及ぶ数時間の試行錯誤で改めてこのステージをクリアができて、クリアにかかった時間が最も長くなったステージでもある。しかしながら、おそらく開発者の想定外の方法でのクリアであり。初期画面から右の方へ一切行かずにOobleckさえ使用しないというクリア方法にスッキリしなかった。といっても、開発者の想定を無視するゴリ押し的なクリアを見つけたのはこのステージだけだった。
The Void/Escalateと似たコンセプトのステージだが、釜(JavaにおけるThread?)のギミックを利用したより複雑な構成となっている。高い位置にあるゴールを目指すのは、やはりFlightというステージ名そのものだった。
この記事を投稿する前にエンディングを見れていないことに気づいた。
全ステージクリア(全てのCrystal取得)したからと、この記事を執筆するためにネタバレを気にせず攻略情報を調べていたけど、エンディングなんてわかる訳ねえよ。The Void/Trilemmaの最後にCrystal取得とは関係ない意味深なオブジェクトがあることには気づいていたけど……。ちなみに、私のSteam実績によるとdiamondとrubieの全取得はできてないけれども、もう取得する気力はない。パズルゲームガチ勢にとっては、実績全解除を目指さない私は軟弱者に映るのだろうか? 攻略を調べずに実績全解除できる人は、高い論理的思考能力を有しているに違いない。
はてブのホットエントリ(総合)で月内に数多く[あとで読む]タグを集めたエントリ
211あとで/1849users ストレスフルな人に知ってほしい図解「アメリカカウンセリング学会推奨『ストレス解消法』100」…「古い友人にメールをする」「猫は神」「まずは楽しめ」など - Togetter
204あとで/1119users 統計の入門講座が無料に、京大メソッドでデータサイエンス関連教員が担当 | Ledge.ai
162あとで/984users 【朗報】3D制作ソフト「blender」の1400ページにも及ぶ解説書が無償公開 勉強中の人には朗報すぎる : まとめダネ!
161あとで/1037users 徳丸 浩 on Twitter: "これは本当にオススメ。トレーニングなので、Linuxのインストールからやるのがよいです。Exploitが刺さるだけで楽しいですが、なぜそれが成立するかまで追いかけるとさらに勉強になります。 https://t.co/tHyQuPSvjw"
161あとで/1587users 青木 晃 - 【長文です】1995年3月20日に起こった地下鉄サリン事件…オウム真理教が起こした未曾有のテロでした。お亡くなりになった方々のご冥福をお祈りすると共に、今もなお、PTSDなどの後遺症で苦しむ方々の症状が少しでも改善しますようお祈り申し上げます。 | Facebook
157あとで/1655users 時間跳躍式完全無劣化転送装置 - 山素 / 【読み切り】時間跳躍式完全無劣化転送装置 | コミックDAYS
156あとで/1192users こういうのが好きなんでしょ…?「変拍子」が超かっこいいおすすめ曲10選+α | Music Lesson Lab
154あとで/988users あなたが行動を習慣化したいと思った時におすすめの記事 | みんチャレブログ
150あとで/1178users 東京〜京都を3度徒歩で移動した話 – 大変だけど素晴らしい、街道歩きの世界にようこそ【寄稿:dekokun】 - KINTOマガジン|【KINTO】クルマのサブスク、トヨタから
149あとで/918users MySQLでプライマリキーをUUIDにする前に知っておいて欲しいこと | Raccoon Tech Blog [株式会社ラクーンホールディングス 技術戦略部ブログ]
145あとで/1226users 100日後に退職する47歳 非公式 まとめ - Togetter
140あとで/1396users 業務スーパーデビューする予定なのでおすすめの商品を教えて下さい→で続々と集まった情報がこちら→増量! - Togetter
137あとで/1417users 新型コロナの罹患レポートが分かりやすくて恐ろしい「熱が下がったあとにぶり返し血痰が出て即入院、肺がぐちゃっと潰れている」 - Togetter
129あとで/663users リーダブルなコードを書く習慣の身に付け方・実践の仕方 - 2021-09-22 - ククログ
129あとで/753users 元米マイクロソフト本社パワポ責任者が教える「科学的に正しい資料の作り方」- Schoo PENCIL
129あとで/990users 英語の括弧は4種類ある!括弧の使い方を理解して正しく使えるようになろう | English Lab(イングリッシュラボ)┃レアジョブ英会話が発信する英語サイト
125あとで/1881users みずほのシステムについて質問です。 | Peing -質問箱-
122あとで/916users GitHub 英語例文集 | boarwell | Zenn
120あとで/532users JavaScriptはなぜシングルスレッドでも非同期処理ができるのか/Why Can JavaSctipt Invoke Asynchronous in Single Thread? - Speaker Deck
118あとで/833users 個人情報テストデータジェネレーター | User Local,Inc.
116あとで/1394users 「元歯科受付がガチで愛用する『推しデンタルケアグッズ』です」さようなら、全ての黄ばんだ歯と口臭。ド定番8アイテムとは? - Togetter
116あとで/1051users かおりゅ on Twitter: "とんでもないサイトを知ってしまった。絵描きやデザイナー大歓喜のカラーチャート『Colorbase』https://t.co/CLWprkukt6 色を選ぶと、その色の補色・類似色・同じ明るさを持つ色・白と合わせた時の見やすさ・色相… https://t.co/rOgsnechfT"
115あとで/1493users 記事『ドライフルーツで果実酒を仕込むとすごい』に関して | デイリーポータルZ
107あとで/959users 小鳥の鳴き声は言語だった 文法まで突き止めた日本人研究者:朝日新聞デジタル
105あとで/591users ゲーム開発者へっぽこさん、711ページに及ぶ技術書『Unity uGUI アドバンスド・リファレンス』を無償公開 | ゲームキャスト
105あとで/1575users 皆さんの声を聞かせてください。皆さんの力を貸してください。 #ねえねえ尾身さん|コロナ専門家有志の会 | COVID-PAGE
105あとで/791users ついに、Webアプリでの帳票印刷のベストプラクティスを編み出しました💡 | Takashi Kanemoto | Speaker Deck
104あとで/595users 「Python」×「株価データ」で学ぶデータ分析のいろは | @IT
102あとで/475users 2021年 – これからFlutterを始める人へ学習方法のススメ | ツルオカ | Zenn
102あとで/820users 自分がどのくらいエコーチェンバーの中にいるのか可視化するシステムを作ってみた|tori|note
Togetter多め。
たとえばスレッド型掲示板で、各レスに何回アンカーがついたか調べるのに、↓のどっちがいいのかとか考えないのか
int[] replyCount = new int[thread.Length]; for (int to = 0; to < thread.Length; to++) { for (int from = 0; from < thread.Length; from++) { if (thread[from].To.Contains(to)) { replyCount[to] += 1; } } }
int[] replyCount = new int[thread.Length]; for (int from = 0; from < thread.Length; from++) { foreach (int to in thread[from].To) { replyCount[to] += 1; } }
(元FOXニュースのカイル・ベッカーのTwitterを日本語訳にしてくれたものがあった。Togetterに仕立て直したいのだが、やり方が分からない。代わりにここに投稿する。)
元FOXニュースのカイル・ベッカーによる仔細な選挙考察。不正否定派に是非読んで欲しい。
わたしがずっと抱えてきた疑問の多くが網羅されている。個人的に検証不可能なドミニオン疑惑よりも、不可思議な数字と統計の方が頭を悩ませる。
Kyle Becker @kylenabecker
READ THIS: "I am a pollster and I find this election to be deeply puzzling."
1. "President Trump received more votes than any previous incumbent seeking reelection. He got 11 million more votes than in 2016, the third largest rise in support ever for an incumbent." [Thread 1/13]
これを読んでくれ、「わたしは世論調査員だが今回の選挙は非常に不可解だ」
1:トランプ大統領は再戦を狙ったかつての現職大統領の内誰より多く票を獲得した。彼は2016年時より1100万票多く獲得したが、これは現職として史上三番目に大きな支持票の増加だ。
2:出口調査によればいくつもの重要な人口分布帯で大きく支持を得たことがトランプの獲得票の躍進に繋がった。95%の共和党はトランプに投票した。
3:彼は1960年以降最多のマイノリティ票を共和党にもたらした。トランプは黒人有権者の支持を2016年と比べ50%増やし…ジョー・バイデンの黒人支持率は軽く90%以下に下落、これは民主党の大統領立候補者なら大抵落選するレベルだ。
4:トランプは全米のヒスパニックによる支持を35%に押し上げた。計算上60%以下のヒスパニック支持率で民主党の大統領立候補者がフロリダ、アリゾナ、ネヴァダ、ニューメキシコを勝ち取るのは不可能である。
5:勝敗の指標となる(Bellwether)州は2016年と比べても更にトランプ寄りに振れた。フロリダ、オハイオ、アイオワは全て米国メディアの予想に反し大きな勝利をトランプにもたらした。1852年以降この3州を手中に収めながら選挙人の数で敗北したのはリチャード・ニクソンだけだ。
6:中西部のミシガン、ペンシルバニア、ウィスコンシンは常に彼らの御近所仲間のオハイオとアイオワと同じ方向に振れる。オハイオもフロリダと同様だ。現在の得票記録を見ると小都市の例外を除きラストベルトはトランプ側に揺れ動いた。
7:しかし雪崩れ込むようなデトロイト、フィラデルフィア、ミルウォーキーの黒人票によりバイデンはミシガン、ペンシルバニア、ウィスコンシンでリードを収めたことになっている。バイデンの”勝ち要因”はほぼこれらの都市の有権者によりもたらされた…
8:…あたかも勝利に不可欠なこれらの場所においてのみ、偶然バイデン支持の黒人有権者が爆増したとでも言うように。これらの都市と似たような人口分布の地域と比較しても、バイデンは同様の支持率を得ておらず、このことは大統領選の勝者においては非常にまれだ。
9:我々はバイデンがかつての大統領候補者と比べ全米史上最大の票数を獲得したと聞かされた。しかし彼が勝利した郡数は全体の17%と記録的に低い。彼は524の郡で勝利を収めた一方、2008年のオバマは873郡を勝ち取っている。しかしどういうわけかバイデンはオバマを超えたわけだ。
10:大統領選の勝者、特に現職大統領に挑み当選した候補者にはdown-ballot(*一枚の投票用紙で上から大統領、上院、下院を選ぶ。したがって上下院)の連帯勝利がある;バイデンは違うようだ。共和党は上院議席を守り、下院では27の接戦で全て勝利し大きく議席数を伸ばして「共和党の赤い波」に乗った。
11:トランプの共和党は州議会を一つも失わず国レベルで躍進した。
12:他にもおかしな点としては世論調査やそれ以外の数字がある。党派別有権者登録数、予備選の数字、各候補者の人気、SNSのフォロワー数、各メディア媒体の視聴率、ネットの検索数などが後者に当たるだろう。
更にこのミステリーに付随するのは滝のようになだれ込んでくるいかにおかしなやり方で大量の票が集められ加算されたかという情報だ。
threads = []
threads << Thread.new { print "CPRE*" }
threads << Thread.new { print "CPRE*" }
threads << Thread.new { print "CPRE*" }
threads << Thread.new { print "CPRE*" }
threads << Thread.new { print "CPRE*" }
threads << Thread.new { print "CPRE*" }
threads << Thread.new { print "CPRE*" }
threads << Thread.new { print "CPRE*" }
threads << Thread.new { print "CPRE*" }
threads << Thread.new { print "CPRE*" }
threads << Thread.new { print "CPRE*" }
threads << Thread.new { print "CPRE*" }
threads << Thread.new { print "CPRE*" }
threads << Thread.new { print "CPRE*" }
threads << Thread.new { print "CPRE*" }
hreads = []
threads << Thread.new { print "CPRE*" }
threads << Thread.new { print "CPRE*" }
threads << Thread.new { print "CPRE*" }
dim block(3000,4);dim thread(32,32);
メモリー上で直接演算ができる、レジスターを持っているスタックマシンという謎なものもさることながら
どうせSIMDでXMMレジスターが15本もあってHyper Threadも対応していることなので
すっ
すっ
とん
っていう機能も欲しいです。すでにあるそうなので使い方がんばって覚えるけれど ベンチマークがまだ不安定100nanoぐらいなんですが・・・たぶんスタックの切り替え間違えている気が
場合によっては8Mのキャッシュも16このスレイブスレッドごとすべて
すっ
すっ
とん
って切り替えてほしいの マスターから見ると16本はスレイブスレッドだからマスタースレッドが切り替わるとスレイブ16スレッドも全部切り替わるから