「true」を含む日記 RSS

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

2024-12-11

メガドライブ知識ゼロの超初心者がなにか開発をしてみる日記 4

BG_A のテキストプレーンスプライトの上に持ってくることが出来たよ

あと PAD入力イベントハンドラで変な感じだったけど普通に今の状態が読めるのでフレームシンクで毎回読むようにしてすっきりんこ

これでイベントハンドラだと必ずトリガーになっててこれキーアップもみてなおすんかーいと思っていたのがやらなくてすみました

あとはいものファイバ実装して今まで適当に書いてたのをファイバ側にリファクタリングしてだいぶすっきりんこ

あとメインループを while(TRUE) { //. }から for (;;) { //. } に変更しました

好みもありますが while で書くなら while ('A') { //. のほうがなんかやばい雰囲気になる気がする}

確認ごとはだいぶ終わった気がするので今夜からビンゴ部分つくるぞお

2024-11-25

文章どころか動画理解できない人たちについて教えてください

AIちゃんに聞いて見た

I've noticed a non-negligible number of people who have not only completed compulsory education in regular classes but have also received higher education and graduated from university, yet struggle with reading comprehension (understanding the meaning of text), cannot read long texts, and even have difficulty understanding videos.

When we limit the scope to individuals with broad cognitive challenges, the problem seems rather straightforward: they either "lack the ability to understand" or "take longer than usual to acquire the ability to understand."

Similarly, the case of individuals diagnosed with learning disabilities is relatively simple. While they may not have broad cognitive challenges, they require different approaches and training due to their unique learning styles.

However, it is perplexing that university graduates without broad cognitive challenges or diagnosed learning disabilities struggle to understand not only written text but also simplified video content.

I suspect that the underlying causes might include gaps in the horizontal transfer of experiences and knowledge, a severe lack of adaptability, and an extreme deficit in metacognition. Has there been any research on these issues? Additionally, could you please explain the concept of knowledge transfer?

 

(正規の学級で義務教育を修了し、さら高等教育を受けて大学卒業したにもかかわらず、読解力(文章意味理解する能力)に苦しみ、長文を読むことができず、さらには動画理解にも困難を感じる人が少なくないことに気づきました。

 

認知能力に広範な課題を抱える個人範囲限定すると、問題比較的単純です。「理解する能力がない」か、「理解する能力を獲得するのに通常よりも時間がかかる」かのいずれかです。

 

同様に、学習障害と診断された個人場合比較的単純です。彼らは広範な認知能力課題を抱えていないかもしれませんが、独自学習スタイルのために異なるアプローチトレーニング必要となります

 

しかし、広範な認知能力課題学習障害を持たない大学卒者が、書かれたテキストだけでなく、簡略化されたビデオコンテンツ理解にも苦労していることは不可解です。

 

私は、その根本的な原因として、経験知識の水平的転移の欠如、メタ認知の極端な欠如などが考えられるのではないかと疑っています。これらの問題に関する研究はありますか?また、知識転移概念について説明していただけますか?)

 

 

Chat GPTちゃんの回答

Yes, research and analysis exist around the issues you described, particularly in the domains of education, psychology, and cognitive science. Let’s break down your observations and questions step by step:

 

Key Issues with Reading and Comprehension

 

1. Reading Comprehension Among Educated Individuals

• This phenomenon—educated individuals struggling with comprehensionis indeed perplexing, especially given their presumed exposure to a variety of learning materials. It suggests that education systems sometimes emphasize rote learning and surface-level knowledge acquisition over deeper understanding, critical thinking, and metacognition.

2. Possible Underlying Causes

• Horizontal Transfer Gaps: This refers to the inability to apply knowledge or skills learned in one context to another. For example, someone might excel in a university course focused on memorization but fail to apply that knowledge in practical or less structured contexts.

• Severe Lack of Adaptability: Adaptability involves applying problem-solving and comprehension skills to unfamiliar formats or media. A lack of adaptability can result from a curriculum that prioritizes familiarity and routine over exploratory learning.

• Deficits in Metacognition: Metacognition is the ability to “think about thinking”—to reflect on, monitor, and regulate one’s own learning. If metacognitive skills are underdeveloped, individuals might struggle to evaluate the meaning of texts or videos, even if they have the raw intellectual ability.

 

Research Insights

 

1. Knowledge Transfer

The concept of knowledge transfer involves applying skills, knowledge, or strategies learned in one context to another. It is often classified into:

• Horizontal Transfer: Applying knowledge across similar contexts (e.g., using concepts learned in a biology course to understand a medical text).

• Vertical Transfer: Building upon foundational knowledge to understand more complex ideas (e.g., using basic algebra to solve advanced calculus problems).

Studies suggest that transfer is more likely to occur when:

• Learners deeply understand underlying principles, not just surface details.

Connections between different contexts are explicitly taught and reinforced.

2. Factors Limiting Transfer

• Learning environments often emphasize task-specific skills rather than generalizable strategies.

• Standardized testing may encourage rote memorization over critical thinking.

• Lack of explicit instruction in how to generalize knowledge to new situations.

3. Metacognitive Deficits

Research highlights the importance of metacognition in learning. Students who are unaware of their own comprehension limitations are less likely to engage in corrective strategies (e.g., rereading, seeking clarification). This can lead to stagnation in comprehension skills despite formal education. Effective interventions include:

• Teaching self-monitoring techniques.

• Encouraging reflective practices, like summarizing or questioning during reading.

4. Cognitive Overload in Multimedia

Even videos, if not designed properly, can overwhelm learners. The Cognitive Theory of Multimedia Learning suggests that excessive extraneous information or unclear organization in videos can overload working memory, hindering comprehension.

 

Strategies and Research-Based Solutions

 

1. Improving Knowledge Transfer

Active Learning: Techniques such as problem-based learning or case studies can improve transfer by encouraging the application of knowledge to new situations.

• Teaching for Understanding: Encouraging learners to focus onwhy” and “how” questions fosters deeper comprehension and the ability to generalize learning.

2. Fostering Adaptability

• Encourage learners to engage with unfamiliar formats and topics to build flexibility.

• Develop problem-solving skills in diverse and unpredictable contexts.

3. Developing Metacognitive Skills

• Self-Regulated Learning Training: Programs that teach students to plan, monitor, and evaluate their learning have shown success in improving comprehension.

Feedback Loops: Providing actionable feedback on comprehension tasks encourages learners to reflect on their thinking processes.

 

Conclusion

 

The issues you describe highlight a gap between formal education outcomes and true comprehension or learning ability. Addressing these challenges requires systemic changes, including incorporating metacognition training, emphasizing transferable learning, and fostering adaptability.

 

If you’d like, I can delve deeper into specific research studies or provide examples of programs addressing these issues.

 

 

Claudeちゃんの回答

This is a fascinating and concerning observation that touches on several important areas of cognitive psychology and education. Let me address this systematically.

 

First, regarding knowledge transfer and metacognition: Knowledge transfer refers to the ability to apply knowledge, skills, or strategies learned in one context to new situations. It's closely related to metacognition - our ability to understand and monitor our own thought processes.

 

Research in this area has revealed several key findings:

 

David Perkins and Gavriel Salomon's work in the late 1980s and early 1990s identified two types of transfer:

 

A significant study by Brown, Collins, and Duguid (1989) in "Situated Cognition and the Culture of Learning" highlighted how knowledge often remains "inert" - students can pass tests but fail to apply knowledge in real-world contexts.

 

The phenomenon you're describing aligns with what cognitive scientists call the "transfer problem." Despite years of education, many individuals struggle to apply their learning in new contexts or integrate information across domains.

 

Some relevant research directions:

 

1. Cognitive Load Theory (Sweller et al.)

Shows how working memory limitations affect learning and transfer. Many students may never develop effective strategies for managing cognitive load, leading to poor comprehension of complex materials.

 

2. Reading Comprehension Studies

Work by Pressley and Afflerbach on "verbal protocols" revealed that skilled readers use multiple strategies simultaneously, while poor readers often lack these metacognitive tools.

 

3. Domain Integration Research

Studies by Susan Goldman and others have shown that even advanced students often fail to connect knowledge across domains, treating each subject as an isolated "silo."

 

Your observation about university graduates struggling with comprehension despite no apparent cognitive disabilities might be explained by several factors identified in research:

 

1. Surface-level Learning: Many educational systems reward memorization over deep understanding

2. Limited Strategy Instruction: Students often aren't explicitly taught comprehension strategies

3. Fragmented Knowledge: Information is typically taught in isolation without emphasis on connections

4. Weak Metacognitive Skills: Students may never develop the ability to monitor and regulate their own understanding

 

Some promising approaches to address these issues include:

 

1. Strategy Instruction Models

Teaching explicit strategies for comprehension, integration, and transfer. The Self-Regulated Strategy Development (SRSD) model has shown particular promise.

 

2. Knowledge Integration Frameworks

Approaches like Knowledge Integration Environment (KIE) help students connect ideas across domains.

 

3. Metacognitive Training Programs

Programs focusing on developing metacognitive awareness and self-regulation skills.

 

Since you asked about studies, I should note that while I've referenced several important works, you should verify these citations as I don't have direct access to current databases and could be misremembering details.

 

Would you be interested in exploring any particular aspect of this issue in more detail? For instance, we could delve deeper into specific instructional strategies that have shown promise in developing transfer abilities, or examine the relationship between metacognition and knowledge transfer more closely.

2024-11-22

少額の金からスタートカテゴリ:「『テレビ』のリサイクル券」獲得RTA

少額の金(初期装備)からスタートする「『テレビ』のリサイクル券」獲得RTAルート案です。本番向け。

Any%とTrue Endingカテゴリそれぞれ解説します。



リサイクルショップに行きます

 Any%:とにかく近所のショップへ一直線。脳筋です。ロット毎のランダムマップなので、ルート取りのイメトレ・自主練は必要です。

 True:お祈り要素あり。。遠くてもできるだけデカ店舗に行きます(安テレビ出会確率を上げる)。

    大手ショップが近隣にあるマップであればまず「下調べ」を選択し、次のターンでショップに向かってもOKです。安定派はこちらで。

    マップの引きが悪すぎる、または「下調べ」の進捗があまりにも悪かった場合については

    「通販選択ルートカバーしましょう。本来リセットですが、持ち時間が決まってる場合の奥の手として。

テレビ購入→売却、リサイクルGET

 Any%:テレビを購入後、その場で即売りますヤバいパラメータ限界ギリまで上がりますが耐えます

     ここでは店員さんとの会話で確実に良客になり、ヤバい人パラの上昇を抑えることが肝です。店内のコース取りも重要

     本ルートでは"町の変人"称号を取らずに進むため、会話フェーズを飛ばすとパラが上がりきって警備員が来ます。必ず良客でいましょう。

 True:帰り道に別のリサイクルショップに持ち込みます。会話コマンドは安定さえ取れればOKです。

    帰りの道中に立ち寄ることを優先に、できれば大きいショップに寄りましょう(リサイクル券を発行してもらえないバグ防止)。

    大きいショップだと買い取りがスムーズなのでタイム短縮が狙えます

帰宅

 コース取りに気をつけつつウイニングランです。他カテゴリと同様、自宅玄関を開けた瞬間にタイマーストップです。



以下補足です。

・購入するテレビですが「PC」「モニター」等はNGです。また引っかけで「車載テレビ」やその他特殊テレビも引き取ってもらえません。

 現実のものですが、こちらの区分が大変参考になりますhttps://www.rkc.aeha.or.jp/recycleticket/target_items.html

・本ゲーム初心者で見極めが不安な方は、テレビ売り場近くの店員さんに話しかけ「これ繋いだらニュース映りますか?」を選びます(ヒントが出る)。

 まずは情報の正確な把握に努めましょう。その後の雑談では無難に回答し、むやみにヤバい人パラを上げずに完走を試みてください。

 、、余談ですがこの選択肢、現実でこんなこと言いますかね?笑 要は確実にヒントが出るようなアホ質問ということなんでしょうがw

 現実ならギリでも「テレ朝映ります?」「TBS見れます?」とかになりそう。少し前なら「手越復帰のイッテQリアタイしたくて…」とか?笑

・財布スコアを捨てて早く済まそう!というコンセプトです。「引き取りを依頼」「リサイクル施設に持参」ルートは考案しておりません。

 上記ルートで「引き取りを依頼」すると財布がマイナスアルバイト突入するのでRTAとして破綻します。俗に言うタイミーさん化。

 「リサイクル施設に持参」は行動自体に財布の増減はありませんが、ほとんどのマップ施設バカ遠く、交通費もかかるので微妙です。。

 というか、そもそも施設持参はマップ依存すぎて現在100%カテ以外では各大会ローカルでレギュ違反となっています。元は暗黙の了解でしたね。

 今後を考慮して一応書きましたが、今んとこ個人配信で盛り上がる分にはよいですね(真Any%とか神マップRTAと称されることが多いです)。



以上、お役に立ちましたら幸いです。

2024-11-12

先になんらかのタイトルとして記憶してしま意味根付いてない英文

ここ数日で2文見て気付いた

(数十年前に英検3級。大学入試とかで6割ちょいぐらいの苦手科目。そこからさらに衰えてるが最低限の文法単語は思い出せたりするぐらい)

正式な文(タイトル的、英文的に)ではないと思う

dream comes true

夢が真実になる、夢がかなう ぐらいの意味か。バンドしか出てこない

Back to the Future

未来へ戻る? 未だにタイムスリップするぜ ぐらいの意味で捉えてる

洋楽洋画タイトルや頻出歌詞単語単語の並びも知ってるが意味まで考えたことないのが多そう。慣用句とかレベルじゃなしに(そうであったり、何かのもじりかとかでもわからない

All You Need Is Kill は大人になってから読んで、内容も加味してなんか「ただ殺すだけ」という意味と繋がっている

2024-10-12

清原ネットキャッシュ比率決算短信からpython自動で求めるソフト

気が付くと朝4時になっていた。

なんか動くところまで出来たので貼っておく。

NYSLなので、バグがあったら治しといて。

import pdfplumber
import re

#クリーンアップ
def cleanuptext(text):
    #決算書の合計値を太字にしたことpdfplumberが暴走するケースへの対処
    #例 流動資産 -> 流流流流流動動動動動資資資資資産産産産産
    #誤爆が怖いので、これが起きている時だけ補正します
    if "流流流流流動動動動動資資資資資産産産産産" in text:
        text = re.sub(r'(.)92;1{4,}', r'92;1', text)

    #△をマイナスに。 数字中のカンマを消して結合する
    text = re.sub(r'△([0-9])', r'-92;1', text)
    text = re.sub(r'▲([0-9])', r'-92;1', text)
    text = re.sub(r'([0-9]),([0-9])', r'92;192;2', text)
    
    #たまに、煽り屋みたいに文字の後にスペースが入る嫌がらせ修正する
    #例: 投 資 有 価 証 券 -> 投資有価証券
    text = re.sub(r'(?<=[92;u4E00-92;u9FFF92;u3040-92;u30FF])92;s(?=[92;u4E00-92;u9FFF92;u3040-92;u30FF])', '', text)

    return text

#今期の勘定科目数字を取得
def get_AccountName(text, need):
    pattern = rf'^{need} -?[0-9]+ (-?[0-9]+)'
    r = re.search(pattern, text, re.MULTILINE)
    if r is not None:
        return float(r[1])

    return 0

#清原ネットキャッシュ計算する。
def calc_KiyoharaNetCash(text):
    total_current_assets = get_AccountName(text,'流動資産合計')
    if total_current_assets == 0:
        #要約財政状態計算書しか公開していない、楽天のような素敵な会社様への対処
        total_assets = get_AccountName(text,'資産合計')
        if total_assets != 0:
            #とりあえず、資産の部の6割を流動資産とみなす
            total_current_assets = total_assets * 0.6

        else:
            #流動資産合計ではなく、流動資産という単語を使っている我が道を行く東北電力への対処
            total_current_assets = get_AccountName(text,'流動資産')
            if total_current_assets == 0:
                raise Exception("流動資産合計の勘定科目が見つかりませんでした。"+text)


    total_liabilities = get_AccountName(text,'負債合計')
    if total_liabilities == 0:

        #負債合計ではなく、負債の部合計に拘るオムロンの嬉しい決算書への対策。なんでや・・・
        total_liabilities = get_AccountName(text,'負債の部合計')
        if total_liabilities == 0:
            raise Exception("負債合計の勘定科目が見つかりませんでした。"+text)

    #負債をご丁寧にマイナス表記で書いてくれる中外製薬の親切な決算書への対策。いい加減にしろ・・・
    if total_liabilities < 0:
        total_liabilities = total_liabilities * -1

    #投資有価証券はないこともあるので、0を容認する
    marketable_securities = get_AccountName(text,'投資有価証券')

    #print(total_current_assets,marketable_securities,total_liabilities)
    netcash = total_current_assets + (marketable_securities*0.7) - total_liabilities

    #たまに単位を1000円にしている銘柄があるので補正する
    if is_tanni_senyen(text):
        netcash = netcash / 1000
    return netcash

# "流動資産合計" と "負債合計" の間に "単位:千円" があるかをチェック
def is_tanni_senyen(text):
    if "単位:千円" in text:
        return True

    if "単位: 千円" in text:
        return True

    if "単位 : 千円" in text:
        return True

    if "単位 :千円" in text:
        return True

    return False

def pdf_to_kiyohara_netcash(pdfpath):
    with pdfplumber.open(pdfpath) as pdf:
        text = ''.join(page.extract_text() for page in pdf.pages)

    text = cleanuptext(text)
    #print(text)
    kiyohara_netcash = calc_KiyoharaNetCash(text)
    #print(kiyohara_netcash)
    return kiyohara_netcash

def mymain():
    import sys
    args = sys.argv
    argc = len(args)
    if argc <= 1:
       print('''
これは、清原達郎氏のネットキャッシュ比率(以下、清原ネットキャッシュ比率)を決算短信pdfから求めるソフトです。
清原ネットキャッシュ=流動資産合計+(投資有価証券*0.7)-負債合計
清原ネットキャッシュ比率=清原ネットキャッシュ/時価総額*100

遊び方

1. 決算短信pdfから清原ネットキャッシュを求める
python calc_kiyohara_netcash.py 140120240514594985.pdf

結果: 30757.0
決算書には、100万円単位数字が書かれているはずなので、この数字単位は100万円です。
つまり、3075700万円。

2. 時価総額を億円単位で追加することで、清原ネットキャッシュ比率を求める
時価総額が146億円なら146と書いてください。
python calc_kiyohara_netcash.py 140120240514594985.pdf 146

結果: 210.66%

このコードNYSLライセンスです。無保証自己責任ですが、ご自由に。
かぶ探とかとつなげるといいかもね。
       ''')
       return
    if argc <= 2:
       kiyohara_netcash = pdf_to_kiyohara_netcash(args[1])
       print(kiyohara_netcash)
       return
    if argc <= 3:
       market_cap=float(args[2])*100 #億円から百万円表記に
       kiyohara_netcash = pdf_to_kiyohara_netcash(args[1])
       ratio = round(kiyohara_netcash/market_cap*100,2)
       print(f"{ratio}%")
       return

if __name__ == '__main__':
    mymain()

2024-10-10

anond:20241010082411

https://www.geonames.org から取れる、人口500人以上の都市名前限定すると、

Santa Maria Magdalena Cahuacan

10文字の `a` を含んで最大。

import logging
import tempfile
import zipfile

from collections import Counter

import httpx

FILE_NAME_BASE = 'cities500'
GEONAME_FIELDS = (
    'geoname_id',
    'name',
    'ascii_name',
    'alternate_names',
    'latitude',
    'longitude',
    'feature_class',
    'feature_code',
    'country_code',
    'cc2',
    'admin1_code',
    'admin2_code',
    'admin3_code',
    'admin4_code',
    'population',
    'elevation',
    'dem',
    'timezone',
    'modification_date',
)

def retrieve_cities():
    """Retrieve city names from a remote server."""
    response = httpx.get(f'https://download.geonames.org/export/dump/{FILE_NAME_BASE}.zip')
    response.raise_for_status()

    tmpdir = tempfile.TemporaryDirectory()
    with open(tmpdir.name + f'/{FILE_NAME_BASE}.zip', 'wb') as f:
        f.write(response.content)
    with zipfile.ZipFile(tmpdir.name + f'/{FILE_NAME_BASE}.zip', 'r') as z:
        z.extractall(tmpdir.name)
    with open(tmpdir.name + f'/{FILE_NAME_BASE}.txt', 'r') as f:
        for line in f:
            yield line.split('\t')


def count_characters(to_check='ascii_name', filter_func=lambda _: True):
    """Count characters in city names."""
    cities = {}
    for city_fields in retrieve_cities():
        city = dict(zip(GEONAME_FIELDS, city_fields))
        if not filter_func(city):
            continue
        counter = Counter()
        for c in city[to_check]:
            counter[c] += 1
        cities[city['geoname_id']] = {'characters': counter, 'city': city}
    return cities


def count_chars_of_city_names(cities, char=None):
    """Find the city with the most occurrences of a given character."""
    cities_by_char_count = {}
    max_count = 0
    max_count_char = None
    for city_id, data in cities.items():
        if 'characters' not in data or not data['characters']:
            logging.debug(f'No characters found for city {city_id}', data)
            continue

        count = 0
        if char and char in data['characters']:
            count = data['characters'][char]

            cities_by_char_count.setdefault(count, []).append(data)
        elif char is None:
            most_common = data['characters'].most_common(1)[0]
            char, count = most_common
            cities_by_char_count.setdefault(count, []).append(data)

        if count > max_count:
            max_count = count
            max_count_char = char
            cities_by_char_count.setdefault(count, []).append(data)
    return cities_by_char_count.get(max_count, []), max_count_char


def not_contain_invalid_chars(city):
    return (
            '(' not in city.get('ascii_name', '')
            and '/' not in city.get('ascii_name', '')
    )


def main():
    cities = count_characters(filter_func=not_contain_invalid_chars)
    for char in 'abcdefghijklmnopqrstuvwxyz':
        cities_counted, char = count_chars_of_city_names(cities, char)
        max_count = cities_counted[0]['characters'][char]
        print(f'The character "{char}" appears the most ({max_count} times) in the following cities:')
        for city in cities_counted:
            print("\t", city['city']['ascii_name'])

if __name__ == "__main__":
    main()

2024-10-06

ワイ:

x = torch.tensor([

[1.0,2.0,3.0],

[4.0,5.0,6.0]

])

最終次元が channel とし、この x を channel-wise 正規化してください。

Claude3.5 Sonnet:

はい、channel-wise 正規化チャネル方向の正規化)を行います。この場合、最終次元(dim=-1)がチャネルとなります。channel-wise 正規化では、各チャネルの平均を0、分散を1に正規化します。

PyTorchを使用して、以下のように実装できます

import torch

x = torch.tensor([
    [1.0, 2.0, 3.0],
    [4.0, 5.0, 6.0]
])

# チャネル方向(最終次元)の平均と標準偏差計算
mean = x.mean(dim=-1, keepdim=True)
std = x.std(dim=-1, keepdim=True)

# Epsilon を追加して、ゼロ除算を防ぐ
epsilon = 1e-5

# 正規化を実行
x_normalized = (x - mean) / (std + epsilon)

print("元のテンソル:")
print(x)
print("\n正規化後のテンソル:")
print(x_normalized)

このコードを実行すると、以下のような結果が得られます

元のテンソル:
tensor([[1., 2., 3.],
        [4., 5., 6.]])

正規化後のテンソル:
tensor([[-1.2247,  0.0000,  1.2247],
        [-1.2247,  0.0000,  1.2247]])

ワイ:

x = torch.tensor([

[1.0,2.0,3.0],

[4.0,5.0,6.0]

])

最終次元が channel とし、この x を channel-wise 正規化してください。

ChatGPT o1-preview

import torch

x = torch.tensor([
    [1.0, 2.0, 3.0],
    [4.0, 5.0, 6.0]
])

# Compute mean and standard deviation along the batch dimension (dim=0)
mean = x.mean(dim=0, keepdim=True)
std = x.std(dim=0, unbiased=False, keepdim=True)

# Perform channel-wise normalization
x_normalized = (x - mean) / std

print("Normalized Tensor:\n", x_normalized)

Output:

Normalized Tensor:
 tensor([[-1., -1., -1.],
        [ 1.,  1.,  1.]])

Explanation:

Compute Mean:

The mean is computed along the batch dimension (dim=0), treating each column as a channel.

mean = x.mean(dim=0, keepdim=True)

This results in mean = [[2.5, 3.5, 4.5]].

Compute Standard Deviation:

The standard deviation is computed along the same dimension with unbiased=False to match the sample size.

std = x.std(dim=0, unbiased=False, keepdim=True)

This results in std = [[1.5, 1.5, 1.5]].

Normalize:

Subtract the mean and divide by the standard deviation for each channel.

x_normalized = (x - mean) / std

This yields the normalized tensor with standardized channels.

Note: Setting keepdim=True ensures that the mean and standard deviation tensors have the same number of dimensions as x, which is necessary for broadcasting during subtraction and division.

ChatGPTの方が正しいよね?

2024-09-29

[][][][]

ホワイトフライトセグリゲーション

ホワイトフライト - Wikipedia

2011年国勢調査では、ロンドン人口の50%未満が白人であり、

ロンドンには白人イギリス人人口20%を下回る地域もあることが初めて判った。

2005年の報告によると、英国内の白人の移動は主に少数民族の多い地域から白人の多い地域への移動であり、

多くの移民首都に定住したため、

白人イギリス人家族ロンドンから引っ越した。

w.wiki/BHnh



埼玉県川口市など

住民が「怖くて道を歩けない」と嘆く埼玉県川口市「外国人ドライバー暴走事故」続発の異常実態 | アサ芸プラス

恐怖ライブ「埼玉の川口市の人口が毎月1000人ずつ減っているという!このままでは川口が丸々スラムになる恐れもある?!」



2022年度、埼玉県統計では犯罪発生件数は1位が川口市で4,437件

2位が越谷市で2,772件

川口市の独走状態

蕨市は695件(日本一さな市)

大宮区は1,588件(繁華街

x.com/Prof_Shigeru/status/1838966182206149028

pbs.twimg.com/media/GYVR_jlXAAAdIU0?format=jpg

x.com/Prof_Shigeru/status/1838977468558139772

x.com/Prof_Shigeru/status/1838961210710253685



難民申請

https://x.com/lico334/status/1824889598474080536

クルド人密入国者が不法移民英国亡命制度を騙す方法を教えた衝撃的な瞬間:

犯罪ボス移民に、英国に来た政治的理由があると偽り、

絶対に」帰国させられないようにアドバイスしていたことが調査で明らかになった。

ビデオを見ると、密入国者たちが笑いながら冗談を言い、

制度ごまかす方法を教えていた。

1 October 2023

www.dailymail.co.uk/news/article-12578125/Kurdish-smugglers-cheat-Britain-asylum-system.html

ドイツ判決トルコクルド人迫害認定しない」【日本語訳】(12,000文字over) - 美桜

2021年、ドイツミュンヘン行政裁判所は、「トルコ政府によるクルド人迫害は認められない」とする判決を下しました。

出典:

BeckRS 2021, 35315

https://note.com/uruwashisakura/n/n2d43184a9ad2

x.com/UruwashiSakura/status/1825311164798255356

亡命トルコ未成年の子供を持つ家族男性姉妹PKK / YPGの疑い、偽造逮捕状の提出、証明書

31

人口は約8200万。

人口は約1300万人を生きています。 最大1500万。トルコクルド人

クルド人トルコで最大の少数民族代表しています

彼らの祖先だけのために。

連邦外務省現在の状況報告によると、彼らはいかなる国家弾圧対象にもなりません。

54

c)ドイツでの亡命申請後の強制送還は、

トルコでの非人道的または品位を傷つける扱いまたは処罰もつながりません。

www.gesetze-bayern.de/Content/Document/Y-300-Z-BECKRS-B-2021-N-35315?hl=true

ドイツ難民申請却下されたトルコ人の強制送還を強化

x.com/TheInsiderPaper/status/1839771999297778033

insiderpaper.com/germany-says-to-step-up-deportations-of-failed-turkish-asylum-seekers/

ドイツトルコ合意し、トルコ移民13,500人をトルコへ大量送還することになった。

毎週500人の移民国外追放されるだろう。

x.com/EuropeInvasionn/status/1839696124103233814

www.n-tv.de/politik/Berlin-schiebt-Tausende-Asylbewerber-in-die-Tuerkei-ab-article25257137.html

クルド人難民ではない?「その答えは十分に説明した」 トルコ大使

国会には選挙を経たクルド議員

日本は70カ国・地域に対し短期滞在ビザ免除

このうち中東地域トルコイスラエルUAE、カタールの4カ国。

一方で平成元年からパキスタンバングラデシュに対し、4年からイランに対し、それぞれ免除を停止している

www.sankei.com/article/20240102-AT5TBD7I6JPQJEW243ZAIQS6VE/



中学生性的暴行したクルド人難民申請中だった 地元市議は「実態を正しく直視するべき」

www.dailyshincho.jp/article/2024/04050558/?all=1

機動隊相手に「クルド人100人」大乱闘事件の“真相” 埼玉県川口市2000人のクルド人が住み着いたワケ

www.dailyshincho.jp/article/2023/08041700/

警察官暴行する在日クルド人埼玉県川口市・kurdish vs Japanese police】

https://www.youtube.com/watch?v=X1RDsNDz4ek

埼玉県川口市

車道横断外国人

https://x.com/yakki8991/status/1840181322939318408

川口市

信号無視

https://www.youtube.com/watch?v=l5fxV9GGgvE

川口市

日本ルール通用しません

www.youtube.com/watch?v=RJP17abY4GQ

x.com/MatsumotoKatsuy/status/1833012303781880055/video/2

x.com/MatsumotoKatsuy/status/1833012303781880055

爆音クルドカー

x.com/zenden_55/status/1807317968499671162/video/1

x.com/zenden_55/status/1807317968499671162/video/2

180キロ

x.com/alice20231005/status/1840281270158504423

140キロ

x.com/prisonridge/status/1840346233766130046

川口の死亡ひき逃げ事件トルコ国籍の少年逮捕 無免許乗用車運転「怖くなって逃げた」

www.sankei.com/article/20240927-3QVS4D74HZK37GQE3B62SXNEFA/

少年逮捕…父の車で死亡ひき逃げ 車体は大破損、ガラス割れるも「事故していない」…出国しようとしていた

川口市

トルコ国籍で職業不詳の少年(19)

www.saitama-np.co.jp/articles/10041/postDetail

自宅に乗用車突っ込み、塀が大破した。

隣接の集合住宅に住む

クルド人らが代わる代わる使っていた車だった。

しかし、警察に届けても

運転者を特定できない」と言われ、

捜査はうやむやになった。

www.sankei.com/article/20230901-TWSMNX3LMZN53PX32ZALYE64SM/

「2年前、同級生の家にクルド人の車が突っ込んできて。

その後すぐ、クルド人が15人ほどすごい勢いで集まってきたんです。

彼ら、声がとても大きくて、

『むしろ悪いのはそっちだ』と意味不明の主張をしていました」

www.dailyshincho.jp/article/2024/05060559/

スピードで逆走…”酒気帯び”で死亡事故 衝突の瞬間

埼玉川口市一方通行を逆走した車が交差点に進入。男性1人が乗った車と衝突

→衝突された車を運転していた男性が死亡

x.com/hst_tvasahi/status/1840373433877803107



警官在留カードを見せない

x.com/Parsonalsecret/status/1819014395734741035

警官職務質問集団で抗議

youtube.com/watch?v=CqWDdT02450

職質されたら警察署を包囲

tinyurl.com/shokushitsu

不法投棄の山を積み上げ、トルコトンズラ

tinyurl.com/4ca75z2e

クルド人らの不法投棄問題

tinyurl.com/3t4e8yyy

議員を威嚇

tinyurl.com/giin-ikaku

トルコ大使館前で乱闘

tinyurl.com/taishikan-rantou



歩き花火

x.com/martytaka777/status/1840528899891220512

イギリスは実際にもう主要都市市長知事国会議員首相イスラム教徒アフリカ系、インド系ですよ。

x.com/May_Roma/status/1840683797529903331

外国人からしたら日本天国

https://x.com/emoemo78354888/status/1839567037947093031



[多文化共生][移民統合][ホワイトフライト][セグリゲーション]

「Multikulti(ドイツ語で「ダイバーシティ尊重する態度」の意)は全くの失敗だった」

2010年、ドイツメルケル首相

イギリスでの多文化主義は失敗した」

2011年イギリスキャメロン首相

多文化主義は明らかに失敗だった」

2011年フランスサルコジ大統領

2024-09-24

英語ビジネス用語和訳してクイズにしたから解いてみてね

全18問あります

↓はなんとなくの評価表です。あまり気にしないでいただけると。

18問全問正解: おかし

1217問正解: すごすぎる

5〜11問正解: 楽しんでいただけたようで何よりです

1〜4問正解: そんなものでしょう

0問正解: がんばりましょう

問題文のすぐ下に答えが来るので見るときは注意してください。

気を抜くと全部見えます

下は凡例です。楽しんでいたけたら幸いです。

問題和訳: word description in English.

解説の文(ない場合も)。ビジネスカタカナ語

(再掲)問題文のすぐ下に答えが来るので見るときは注意してください。

気を抜くと全部見えます

ではスタートです!

1. 所了: something to be done.

終わらせるべきところのものアジェンダ

2. 機動: able to move quickly and easily.

アジャイル

3. 基問: an important topic or problem for debate or discussion.

Skill Issue: 技術基問。イシュー

4. 外方・内方: travelling away from a particular place, especially on the first leg of a return journey. | travelling towards a particular place, especially when returning to the original point of departure.

アウトバウンドインバウンド

5. 昇況: the process of becoming greater or more serious, or a particular situation when this happens

状況の昇格。エスカレーション

6. 真証: the available body of facts or information indicating whether a belief or proposition is true or valid.

真実である証拠エビデンス

7. 役務時訓練(役練): training in the public or private sector that is given to.

OJT

8. 型針: the action of orienting someone or something relative to the points of a compass or other specified positions.

型へ方向づけるための指針。オリエンテーション

9. 機敵: a time or set of circumstances that makes it possible to do something.

好敵手を倒す機会。オポチュニティ

10. 既計: at the time expected.

既に計画通りオンスジュール

11. 深罅(しんか): a profound difference between people, viewpoints, feelings, etc.

深い裂罅。キャズム

12. 選蒐(せんしゅう): the action or process of selecting, organizing, and looking after the items in a collection or exhibition.

選びひとつに蒐める。キュレーション

13. 群衆利用: obtain something by enlisting the services of a large number of people, either paid or unpaid, typically via the Internet.

クラウドソーシング

14. 可競核: a skill needed in order to be successful at a job or other activity.

競争可能能力の核。コアコンピタンス

15. 履行: an engagement or obligation that restricts freedom of action.

約束労働契約等)の履行。コミットメント

16. 普品: anything that can be bought and sold.

普遍的商品コモディティ

17. 決合: agreement in the judgment or opinion reached by a group as a whole.

決意の合意コンセンサス

18. 転型: the process of changing or causing something to change from one form to another.

違うタイプへと転換する。コンバージョン。CVR = 転型率

2024-09-19

悲報】健常者さん、任天堂evilである事に気付いてしま

https://x.com/DividedSelf_94/status/1836550982056186055

人間ジェネリック

@DividedSelf_94

前のコロプラ裁判ときに「任天堂が”特許権侵害”って言えば気に入らないゲームなんでも潰せる風潮になったら嫌だなあ」って思ってたけど、やっぱ想像してたとおりになったな‥。

https://x.com/kiki_lily17/status/1836576641528795145

kiki@漫画「お前ごとき魔王に~」6巻5/31発売!

@kiki_lily17

パルワールド訴訟って特許権なん?

中身的にはポケモンと別ジャンルゲームにそれやっちゃうと…

https://x.com/kuma_neko_/status/1836553690666406294

くまねこ

@kuma_neko_

この手の話でワタシがいちばん驚いたのは「フレンドの最終ログイン時刻を知れる」機能

ソシャゲだとだいたい当たり前のようにやってる機能だけど、そんな根幹のところをしっかり握ってんのかい、と。

https://x.com/4Komatsu2/status/1836606119843893395

こ松

@4Komatsu2

えー!でもそんなんいったら

ボールで捕まえる系のゲーム任天堂しか作れないってこと?!

ポケモンマンネリみたいなとこあるし

パルみたいなクラフト✖︎ポケモンみたいなゲーム本家が作ってこなかったわけだし、、

おもろいゲームが生まれ可能性がつぶされてる気もする。。

https://x.com/WispSwift/status/1836673742191087785

SwiftWisp

@WispSwift

Allegedly, the patent Nintendo is suing Pocket Pair over is a gameplay mechanic both games share where the player throws a ball-shaped capsule to capture monsters in

If true, then it’s ridiculous. The act of throwing something to capture something seems far too broad to stick

任天堂ポケットペアを訴えている特許は、プレイヤーボール型のカプセルを投げてモンスターを捕まえるという、両ゲーム共通するゲームプレイの仕組みだと言われている。

もし本当なら、それはばかげている。何かを投げて何かを捕まえるという行為は、あまりにも範囲が広すぎるように思える。)

自分やばいしまくっておきながらいきなり訴訟

そりゃ悪手だろ、アリン

2024-09-18

おはよう

おはます

どんどんがらがら

夏のTRUEエンドはまだ先ですわ

増田選手は虫の息

熱さまシートをおでこに貼って

玉虫色のよく分からない車に乗せられ

どこか遠く遠くの方へ

イルカさんたちに会いにいくの

anond:20240917172809

初めての日 ちこくした僕たち → 初めてのヒッチコックした僕たち (カラスの大群にでも襲われるのだろうか)

いとしき友はいずこに → いとしき殿はいずこに (新選組佐幕派から違和感なく成り立つ)

あたしのサウンドスケープ → あたしの左之助 (新選組十番隊組長 原田左之助もしくは二重の極みの方の)

一番強い 風吹く丘を 探し出す → 一番強い風 福岡を 探し出す (勢力の強い台風に狙われた九州)

2024-09-13

function sleep(ms){

const startTime = new Date();

while(new Date() -startTime<ms);</p>

}

function clickMore() {

sleep(200);

document.querySelector('[data-cl-params="_cl_vmodule:ans_re;_cl_link:more"]')?.click();

}

new MutationObserver(clickMore).observe(document.getElementById("leftColumn"), {childList: true, subtree: true});

clickMore();

2024-09-12

[][]欧米は「共生」していない

西洋自死地獄への道は善意で舗装されている欧米は「共生」していない、「ホワイトフライト」「no-go zone」「セグリゲーション

[多文化共生]移民・難民政策で治安が悪化した欧米

欧州移民受け入れ」で国が壊れた4ステップ

toyokeizai.net/articles/-/256915?page=4



クルド人難民申請/トルコ国籍者の難民申請5・4倍増の2400人で過去最多 大半は川口のクルド人か/情弱日本人はドイツ判例を知らない/ドイツ犯罪統計、その頂点にいるのがクルド・マフィアとレバノン・マフィア

ドイツの大家族犯罪/スウェーデンで犯罪が多発し、若者がライフルを持って街を徘徊する/no-go zone スウェーデンでは60ヵ所/スウェーデンはいかにして麻薬王が支配するギャングの地獄となったのか クルドの狐/ギャング犯罪激増し軍司令官を招集、支援要請へ スウェーデン首相/短期間で犯罪組織を形成しスウェーデンの裏社会を支配し、スウェーデンから欧州各国にドラッグ流通網を作り上げた/スウェーデン「500万円あげるから帰って」と移民の自主出国促す 北欧の寛容が様変わり/クルド人密入国者が不法移民に英国の亡命制度を騙す方法を教えた衝撃的な瞬間

PKKヨーロッパ違法麻薬取引市場の実に8割を支配

globe.asahi.com/article/13578689

PKKは分離独立を目指してテロ活動を行っており、1990年代から4万人のトルコ国民犠牲にしてきた。

www.sankei.com/article/20240102-WS7FBLTYMNL2BDYWHCOWYOY6IY/

イ●ラ●教のコ●ラ●にさえ爆●を仕掛けるPKKを甘くみないほうがいい

x.com/kulaguhan/status/1835787710742634853

PKKに対する警戒が緩い「お馬鹿国家日本

tinyurl.com/PKK-in-Japan



ホワイトフライト

https://www.instagram.com/reel/C3-M0OqpzO6/



[頂き外国人]外国人が日本の高額医療を低額で受ける穴を塞いでくれ!



[イ●ラ●教][コ●ラ●][シ●リ●ア]



2022年度、埼玉県警統計では犯罪発生件数は1位が川口市で4,437件

2位が越谷市で2,772件

川口市の独走状態

蕨市は695件(日本一小さな市)

大宮区は1,588件(繁華街

x.com/Prof_Shigeru/status/1838966182206149028

pbs.twimg.com/media/GYVR_jlXAAAdIU0?format=jpg

x.com/Prof_Shigeru/status/1838977468558139772

x.com/Prof_Shigeru/status/1838961210710253685



世論調査によると、15~24歳のイ●ラ●教徒のうち「宗教法は国の法より重要」と答えた人は57%

tinyurl.com/houritsu

コ●ラ● 34:33 われは不信心な者の首に●をかける

tinyurl.com/2p9xn7w4



西洋自死欧州要人警鐘を鳴らしている!欧米移民難民で失敗した、日本移民難民で失敗するぞ!日本は同じ轍を踏むな!右派左派に関わらず、低賃金移民(技能実習特定技能・育成就労など)は、やめておけ!高学歴富裕層移民は歓迎!

ホワイトフライト - Wikipedia

2011年国勢調査では、ロンドン人口の50%未満が白人であり、

ロンドンには白人イギリス人人口20%を下回る地域もあることが初めて判った。

2005年の報告によると、英国内の白人の移動は主に少数民族の多い地域から白人の多い地域への移動であり、

多くの移民首都に定住したため、

白人イギリス人家族ロンドンから引っ越した。

https://w.wiki/BHnh

[多文化共生][移民統合][ホワイトフライト][セグリゲーション]

「Multikulti(ドイツ語で「ダイバーシティ尊重する態度」の意)は全くの失敗だった」

2010年、ドイツメルケル首相

イギリスでの多文化主義は失敗した」

2011年イギリスキャメロン首相

多文化主義は明らかに失敗だった」

2011年フランスサルコジ大統領



移民亡国ドイツ

www.youtube.com/watch?v=Rvb-7KfKPwA

自ら壊れゆくドイツ

ドイツ120万部のベストセラー

執筆当時はドイツ連邦銀行理事であったティロ・ザラツィン

Deutschland schafft sich ab: Wie wir unser Land aufs Spiel setzen

Thilo Sarrazin

www.amazon.co.jp/dp/3421044309/



.

この難民申請事実ならば、日本は●められてるな!

x.com/lico334/status/1824889598474080536

ドイツ判決トルコクルド人迫害認定しない」【日本語訳】(12,000文字over) - 美桜

2021年、ドイツミュンヘン行政裁判所は、「トルコ政府によるクルド人迫害は認められない」とする判決を下しました。

出典:

BeckRS 2021, 35315

note.com/uruwashisakura/n/n2d43184a9ad2

x.com/UruwashiSakura/status/1825311164798255356

亡命トルコ未成年の子供を持つ家族男性姉妹PKK / YPGの疑い、偽造逮捕状の提出、証明書

31

人口は約8200万。

人口は約1300万人を生きています。 最大1500万。トルコクルド人

クルド人トルコで最大の少数民族代表しています

彼らの祖先だけのために。

連邦外務省現在の状況報告によると、彼らはいかなる国家弾圧対象にもなりません。

54

c)ドイツでの亡命申請後の強制送還は、

トルコでの非人道的または品位を傷つける扱いまたは処罰もつながりません。

www.gesetze-bayern.de/Content/Document/Y-300-Z-BECKRS-B-2021-N-35315?hl=true

ドイツ難民申請却下されたトルコ人の強制送還を強化

x.com/TheInsiderPaper/status/1839771999297778033

insiderpaper.com/germany-says-to-step-up-deportations-of-failed-turkish-asylum-seekers/

ドイツトルコ合意し、トルコ移民13,500人をトルコへ大量送還することになった。

毎週500人の移民国外追放されるだろう。

x.com/EuropeInvasionn/status/1839696124103233814

www.n-tv.de/politik/Berlin-schiebt-Tausende-Asylbewerber-in-die-Tuerkei-ab-article25257137.html

Germany to deport thousands of asylum seekers under new agreement with Turkey

Germany and Turkey have agreed to a mass deportation plan affecting 15,561 Turkish citizens, most of Kurdish origin, despite concerns over potential human rights violations.

ドイツトルコとの新協定で数千人の亡命希望者を強制送還

ドイツトルコは、潜在的人権侵害懸念にもかかわらず、

15,561人のトルコ人(ほとんどがクルド人)に影響を与える

大規模な国外追放計画合意した。

medyanews.net/germany-to-deport-thousands-of-asylum-seekers-under-new-agreement-with-turkey/



川口方面医者に聞いたところ

中国人制度調べ尽くして、本国家族呼び寄せて、

書類用意して半ば強引に健康保険を通し日本医療を受けさせる

一方クルド人はそういうことをせずに公立病院行って踏み倒す」

tinyurl.com/kazoku-yobiyose

埼玉川口市がクルド人めぐり国に異例の訴え なぜ?現場で何が?

外国人による未払い金が7400万円ほどありますが、

その中に仮放免クルド人治療費も含まれているとみています

tinyurl.com/iryouhi-mibarai

クルド人医療費未払い2600万円です。

埼玉は数百万円の事例が多発しています

tinyurl.com/26000000yen

川口クルド人難民とは言い難い」「目的出稼ぎ」 医療費の踏み倒しや児童労働問題

市立医療センターには外国人相手未収金が1億2000万円

www.dailyshincho.jp/article/2024/07010558/?all=1

外国人未払い医療補填制度

一部の自治体

日本人税金

外国人未払い医療費を

病院補填している

2024-09-11

僕がやってる遠方の親の定期的な生存確認自分生存通知

倒れていても早く気付けるように。


必要ハード

アンドロイドスマホ

必要アプリ

MacroDroid(試用期間ありの500円?)


スマホロック画面を解除したら指定したアドレスメールを送るようにマクロを作製。

トリガーに「ロック画面の解除」

アクションに「メールを送る」と「変数を設定」。マクロ作動後に変数Falseにする。

条件に「変数」でTrue指定。「サービス圏の通信状態」でサービス圏内にいる時。


別のマクロで0時を過ぎたら変数を「True」にするようにしておけば、1日1回0時以降にスマホロック画面を解除したときメールが飛ぶようできる。

変数リセットマクロ曜日指定すれば1週間に1回などにできる。


マクロ作動条件に電波圏内にいる時を設定したほうがいいかも。

フェリー旅行中でメールが飛ばないことがあった。

自分メール送信に借りてるサーバー指定しててだめだったけど、Gmailならオンラインになったとき送信されるかも。


すでにスマホを持ってるならMacroDroidの500円だけでできる。

2024-08-26

上司脳みそいかれている

ユーザー登録フォーム画面があるとしてisShowCommentInputTextFieldがtrueであればコメント入力欄を表示、falseなら非表示という仕様があるとしよう。ありとあらゆる資料にはisShowCommentInputTextFieldはコメント欄を非表示にするフラグであると書かれている。しか実装上は、ユーザー登録フォーム自体非表示にする実装になっている。

実装が正とすると、仕様は誤りだ。上司に聞いてみたところ「何も間違っていない。その仕様書が正しい」という。「実装コメント欄どころか全非表示になるので、実装不具合か?」と聞くと、「実装は正しいし、仕様も正しい」と返してくる。意味不明なので小一時間問答を繰り返した結果引き出せた言葉は「コメント欄も非表示になるのだから正しいに決まっているだろう。当たり前の話だ」という答えだった。

なぜこんな不毛なやり取りのために時間を使わないといけないのか?こいつの脳みそはどうなっているのだ?

2024-08-17

anond:20240817220011

そんでこのロックデータをこんなかんじでRedisにもてばネットワーク越しに依存関係のあるロックできる?

Typeキー
String"Office1"true
String"Office2"false
String"Room1"true
String"Room2"false
String"Schedule1"true
String"Schedule2"false
String"BusinessHour1"true
String"BusinessHour2"false
Bitmaps"BusinessHour1Range"0001111111100000000000000000000000000
Bitmaps"BusinessHour2Range"0001111111100000000000000000000000000

できなくはないか???

RDBMSみたいなトランザクションは無理だけど

ほんとはタスクの直列化ができればいいんだが我のあずかり知らぬ領域なのだ・・・

バグりそう

anond:20240817015407

依存関係は木で表現

ノードロック持たせる

ロックに条件持たせる

やりたいことはできてるように見えるが、うーんしんどい

# Entity Relation Diagram
# ```mermaid
# ---
# title: Rental Office example
# ---
# erDiagram
# OFFICE ||--|{ ROOM : x
# OFFICE {
# number office_id
# }
# ROOM {
# number office_id
# number room_id
# }
# ROOM ||--|{ SCHEDULE : x
# SCHEDULE {
# number room_id
# datetime start_at
# datetime end_at
# }
# OFFICE ||--|{ BUSINESS_HOUR : x
# BUSINESS_HOUR {
# number office_id
# enum week_of_day
# datetime start_at
# datetime end_at
# }
# ```

# Directed Acyclic Graph
#
# ```mermaid
# graph LR
# A[OFFICE] --> B[ROOM]
# B --> C[SCHEDULE]
# A[OFFICE] --> D[BUSINESS_HOUR]
# D --> C
# A --> C
# ```


# 基底クラス: EntityLock
class EntityLock
attr_accessor :entity_name, :entity_locked, :attribute_locks

def initialize(entity_name)
@entity_name = entity_name
@entity_locked = false # エンティティ全体のロック状態を保持
@attribute_locks = {} # IDに対するロック管理するハッシュ
end

def lock_entity
@entity_locked = true
puts "Entity '#{@entity_name}' is now locked."
end

def unlock_entity
@entity_locked = false
puts "Entity '#{@entity_name}' is now unlocked."
end

def lock(attributes)
entity_id = attributes["#{@entity_name.downcase}_id"]
if entity_id && !@attribute_locks[entity_id]
@attribute_locks[entity_id] = true
puts "#{@entity_name} with ID '#{entity_id}' is now locked."
end
end

def unlock(attributes)
entity_id = attributes["#{@entity_name.downcase}_id"]
if entity_id && @attribute_locks[entity_id]
@attribute_locks.delete(entity_id)
puts "#{@entity_name} with ID '#{entity_id}' is now unlocked."
end
end

def locked?(attributes)
# まずエンティティ全体がロックされているかチェック
return true if @entity_locked

# 次に特定IDロックされているかチェック
entity_id = attributes["#{@entity_name.downcase}_id"]
if entity_id && @attribute_locks[entity_id]
return true
end

# ロックされていなければfalseを返す
false
end
end

# 子クラス: OfficeLock, RoomLock, ScheduleLock
class OfficeLock < EntityLock
def initialize
super("Office")
end
end

class RoomLock < EntityLock
def initialize
super("Room")
end
end

class ScheduleLock < EntityLock
def initialize
super("Schedule")
end
end

# 子クラス: BusinessHourLock
class BusinessHourLock < EntityLock
def initialize
super("BusinessHour")
@attribute_locks = [] # BusinessHour用のロック配列管理
end

def lock(attributes)
start_at = attributes["start_at"]
end_at = attributes["end_at"]
if start_at &amp;&amp; end_at
@attribute_locks << [start_at, end_at]
puts "BusinessHour from '#{start_at}' to '#{end_at}' is now locked."
end
end

def unlock(attributes)
start_at = attributes["start_at"]
end_at = attributes["end_at"]
if @attribute_locks.include?([start_at, end_at])
@attribute_locks.delete([start_at, end_at])
puts "BusinessHour from '#{start_at}' to '#{end_at}' is now unlocked."
end
end

def locked?(attributes)
# まずエンティティ全体がロックされているかチェック
return true if @entity_locked

# 次に特定時間範囲ロックされているかチェック
start_at = attributes["start_at"]
end_at = attributes["end_at"]
if start_at &amp;&amp; end_at
@attribute_locks.each do |(locked_start, locked_end)|
if locked_start <= start_at &amp;&amp; end_at <= locked_end
return true
end
end
end

# ロックされていなければfalseを返す
false
end
end

# TreeNodeクラス
class TreeNode
attr_accessor :name, :children, :parents, :lock

def initialize(name, lock)
@name = name
@children = []
@parents = [] # 複数の親ノードを保持する配列
@lock = lock # TreeNodeにロックを持たせる
end

def add_child(child_node)
child_node.parents << self # 子ノードにこのノードを親として追加
@children << child_node
end

def display(level = 0)
indent = " " * (level * 4)
puts "#{indent}#{@name}"
@children.each { |child| child.display(level + 1) }
end

def has_dependency
return false if @parents.empty?

@parents.each do |parent|
puts "#{@name} is dependent on #{parent.name}"
return true
end

@parents.any?(&amp;:has_dependency)
end

def locked?(attributes = {})
# 自身ロックされているか確認
return true if @lock.locked?(attributes)

# 親ノードロックされているか再帰的に確認
@parents.any? { |parent| parent.locked?(attributes) }
end
end

# 木構造の組み立て

# ロックオブジェクト作成
office_lock = OfficeLock.new
room_lock = RoomLock.new
schedule_lock = ScheduleLock.new
business_hour_lock = BusinessHourLock.new

# ノード作成
office_node = TreeNode.new("Office", office_lock)
room_node = TreeNode.new("Room", room_lock)
schedule_node = TreeNode.new("Schedule", schedule_lock)
business_hour_node = TreeNode.new("BusinessHour", business_hour_lock)

# ノード間の依存関係の設定
office_node.add_child(room_node) # Office -> Room
room_node.add_child(schedule_node) # Room -> Schedule
office_node.add_child(business_hour_node) # Office -> BusinessHour
business_hour_node.add_child(schedule_node) # BusinessHour -> Schedule

# 木構造の表示
office_node.display

# ロック確認
puts "Case 1. Office全体がロックされた場合"
puts "Is office_node locked? #{office_node.locked?({})}" # false
puts "Is schedule_node locked? #{schedule_node.locked?({})}" # false
office_lock.lock_entity
puts "Is office_node locked? #{office_node.locked?({})}" # true
puts "Is schedule_node locked? #{schedule_node.locked?({})}" # true
office_lock.unlock_entity

puts "Case 2. Room id:1 がロックされた場合"
puts "Is schedule_node locked? #{schedule_node.locked?({ "room_id" => 1 })}" # false
puts "Is schedule_node locked? #{schedule_node.locked?({ "room_id" => 2 })}" # false
room_lock.lock({ "room_id" => 1 })
puts "Is schedule_node locked? #{schedule_node.locked?({ "room_id" => 1 })}" # true
puts "Is schedule_node locked? #{schedule_node.locked?({ "room_id" => 2 })}" # false
room_lock.unlock({ "room_id" => 1 })

puts "Case 3. BusinessHour start_at:0 end_at:5 がロックされた場合"
puts "Is schedule_node locked? #{schedule_node.locked?({ "room_id" => 1, "start_at" => 0, "end_at" => 5 })}" # false
puts "Is schedule_node locked? #{schedule_node.locked?({ "room_id" => 1, "start_at" => 5, "end_at" => 10 })}" # false
business_hour_lock.lock({ "start_at" => 0, "end_at" => 5 })
puts "Is schedule_node locked? #{schedule_node.locked?({ "room_id" => 1, "start_at" => 0, "end_at" => 5 })}" # true
puts "Is schedule_node locked? #{schedule_node.locked?({ "room_id" => 1, "start_at" => 5, "end_at" => 10 })}" # false
business_hour_lock.unlock({ "start_at" => 0, "end_at" => 5 })

anond:20240816235943

高さ3の有向木で根からAという節点が生えAからBという葉が生える

class TreeNode:
def __init__(self, name, attributes=None):
self.name = name
self.attributes = attributes or {}
self.children = []

def add_child(self, child_node):
self.children.append(child_node)

def display(self, level=0):
indent = " " * level
print(f"{indent}{self.name} {self.attributes}")
for child in self.children:
child.display(level + 1)

def has_dependency(self):
# ルートノード属性を持たないノード依存関係を判定しない
if not self.children or "start" not in self.attributes or "end" not in self.attributes:
return False

# Aノードのstartとendを取得
start = self.attributes["start"]
end = self.attributes["end"]

# すべての子ノード(Bノード)に対して依存関係をチェック
for child in self.children:
if "position" in child.attributes:
position = child.attributes["position"]
if start &lt;= position &lt;= end:
print(f"{child.name} (position: {position}) is dependent on {self.name} (start: {start}, end: {end})")
return True
else:
print(f"{child.name} (position: {position}) is NOT dependent on {self.name} (start: {start}, end: {end})")
return False

# ノード作成
root = TreeNode("Root")
a_node = TreeNode("A", {"start": 10, "end": 20})
b1_node = TreeNode("B1", {"position": 15})
b2_node = TreeNode("B2", {"position": 25})

# 木構造の構築
root.add_child(a_node)
a_node.add_child(b1_node)
a_node.add_child(b2_node)

# 木構造の表示
root.display()

# 依存関係のチェック
a_node.has_dependency()

こうかー

2024-08-16

anond:20240816122556

FUNCTION IS弱者男性():

 IF イケメンに生まれる:

  RETURN FALSE

 IF 努力して清潔感を身に着ける:

  RETURN FALSE

 IF 努力してお金を稼ぐ:

  RETURN FALSE

 RETURN TRUE

Let Us Move Beyond the Glorification of Meiji

The Seductive Allure of the Past

"Aah, the glory of Meiji!" How often do we hear these words, filled with nostalgia for an era that many see as the pinnacle of Japan’s greatness? It’s easy to be seduced by the past, to look back at a time when Japan emerged as a modern nation, strong, unified, and respected on the world stage. The Meiji era is often lauded as a period of unprecedented progress and reform, a time when Japan transformed itself from a feudal society into a major global power. But is this glorification of Meiji truly serving us today, or is it holding us back from facing the realities of the present and the challenges of the future?

The Danger of Idealizing the Past

There is no denying the achievements of the Meiji era. The rapid modernization, the establishment of a constitutional government, and the successful adaptation of Western technology and ideas were remarkable feats. However, to idealize this period without acknowledging its complexities and flaws is to oversimplify history. The Meiji era was not without its contradictions—authoritarianism, social upheaval, and the seeds of militarism were all part of this narrative. By focusing solely on the glory, we risk ignoring the lessons that history has to offer.

The Trap of Nostalgia

Nostalgia for the Meiji era often comes with a longing for a time when Japan was perceived as strong and united, a beacon of progress in a rapidly changing world. But this nostalgia can be a trap. It encourages us to look backward instead of forward, to seek solutions in the past rather than confronting the challenges of the present. In a world that is constantly evolving, clinging to the past can prevent us from adapting and growing. It can lead to a narrow vision of what Japan can be, limiting our potential to innovate and thrive in the future.

Moving Forward, Not Backward

Rather than idealizing the Meiji era as a golden age, we should strive to build upon its lessons while recognizing that the world has changed. The challenges we face today—climate change, technological disruption, social inequality—require new solutions, not old ones. We must be willing to innovate, to think creatively, and to embrace the complexities of the modern world. This means letting go of the romanticized image of Meiji and focusing on what we can achieve now and in the future.

Redefining Greatness

Greatness is not defined by a single era or by clinging to the achievements of the past. True greatness lies in our ability to adapt, to learn from history without being bound by it, and to create a future that reflects the values and aspirations of today’s society. The Meiji era was significant, but it is not the blueprint for our future. Instead of longing for a return to a bygone era, let us redefine what greatness means for Japan in the 21st century.

Conclusion: Embrace the Present

It is time to move beyond the glorification of Meiji. We can honor the achievements of that era without being trapped by them. Japan’s future lies not in a return to the past, but in embracing the opportunities and challenges of the present. By letting go of the idealized image of Meiji, we can free ourselves to imagine and build a Japan that is not only strong and united but also innovative, compassionate, and forward-thinking. Let us look to the future with the same spirit of determination and vision that once defined the Meiji era, but with a focus on what we can achieve here and now.

2024-08-05

ニコニコ復活で、ニコ生で4年間集めていたデータ(コメントログURL)が全て無効になってしまって辛い

コメントログへのアクセスURIが書かれたWebSocketデータ(↓こういうの)を、4年間集めてたんだけど、

{"type":"room","data":{"name":"アリーナ","messageServer":{"uri":"wss://msgd.live2.nicovideo.jp/websocket","type":"niwavided"},"threadId":"M.QyofMf3h0ahYa9PujZiwMA","isFirst":true,"waybackkey":"waybackkey","vposBaseTime":"2022-11-21T18:30:00+09:00"}}

https://live.nicovideo.jp/watch/lv338977521

以前から「そのデータからコメントログを全取得する作業を今年とかにやらないとな…」と思ってたが、ニコニコへの大規模攻撃が起こってしまって、さらに嫌な予感がしたがニコ生復活後に的中した。

まだ確認していないけども、自分が集めてたそのデータが全部無効になってしまってるだろうし、何も言えねえ。

(大規模攻撃関係無くいつか「wss://msgd.live2.nicovideo.jp/」が変わってただろうけども、長い事(数年間)そのuri運用されていたし、もし攻撃されてなければ間に合う可能性もあった訳で…。)

溜め息しか出ない。

やっちまったなあ…。

ちなみに公式によるアニメ一挙配信のを主に集めてた。

運営に望む事は「有料会員は過去の生配信コメントログダウンロードできる」とか今後そういうサービスしてくれないかな…。はあ。

ちなみに、ニコ生HTML5プレーヤー以前だった頃のソケット通信によるコメントログ取得って、もうできないよね…。 ちなみにそれもxmlファイルが1年分ぐらい溜めてる…。

anond:20240805104723

俺は電子砂漠死体を見て、呟くんすわ

it’a true wolrd.狂ってる?それ、誉め言葉ね。

ログイン ユーザー登録
ようこそ ゲスト さん