はてなキーワード: trueとは
BG_A のテキストプレーンをスプライトの上に持ってくることが出来たよ
あと PAD の入力がイベントハンドラで変な感じだったけど普通に今の状態が読めるのでフレームシンクで毎回読むようにしてすっきりんこ
これでイベントハンドラだと必ずトリガーになっててこれキーアップもみてなおすんかーいと思っていたのがやらなくてすみました
あとはいつものファイバを実装して今まで適当に書いてたのをファイバ側にリファクタリングしてだいぶすっきりんこ
あとメインループを while(TRUE) { //. }から for (;;) { //. } に変更しました
好みもありますが while で書くなら while ('A') { //. のほうがなんかやばい雰囲気になる気がする}
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?
(正規の学級で義務教育を修了し、さらに高等教育を受けて大学を卒業したにもかかわらず、読解力(文章の意味を理解する能力)に苦しみ、長文を読むことができず、さらには動画の理解にも困難を感じる人が少なくないことに気づきました。
認知能力に広範な課題を抱える個人に範囲を限定すると、問題は比較的単純です。「理解する能力がない」か、「理解する能力を獲得するのに通常よりも時間がかかる」かのいずれかです。
同様に、学習障害と診断された個人の場合も比較的単純です。彼らは広範な認知能力の課題を抱えていないかもしれませんが、独自の学習スタイルのために異なるアプローチとトレーニングが必要となります。
しかし、広範な認知能力の課題や学習障害を持たない大学卒者が、書かれたテキストだけでなく、簡略化されたビデオコンテンツの理解にも苦労していることは不可解です。
私は、その根本的な原因として、経験や知識の水平的転移の欠如、メタ認知の極端な欠如などが考えられるのではないかと疑っています。これらの問題に関する研究はありますか?また、知識転移の概念について説明していただけますか?)
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 comprehension—is 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.
• 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.
• 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.
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 on “why” and “how” questions fosters deeper comprehension and the ability to generalize learning.
• 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.
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.
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.
少額の金(初期装備)からスタートする「『テレビ』のリサイクル券」獲得RTAのルート案です。本番向け。
Any%とTrue Endingカテゴリそれぞれ解説します。
Any%:とにかく近所のショップへ一直線。脳筋です。ロット毎のランダムマップなので、ルート取りのイメトレ・自主練は必要です。
True:お祈り要素あり。。遠くてもできるだけデカい店舗に行きます(安テレビに出会う確率を上げる)。
大手ショップが近隣にあるマップであればまず「下調べ」を選択し、次のターンでショップに向かってもOKです。安定派はこちらで。
マップの引きが悪すぎる、または「下調べ」の進捗があまりにも悪かった場合については
「通販」選択ルートでカバーしましょう。本来リセットですが、持ち時間が決まってる場合の奥の手として。
Any%:テレビを購入後、その場で即売ります。ヤバい人パラメータが限界ギリまで上がりますが耐えます。
ここでは店員さんとの会話で確実に良客になり、ヤバい人パラの上昇を抑えることが肝です。店内のコース取りも重要。
本ルートでは"町の変人"称号を取らずに進むため、会話フェーズを飛ばすとパラが上がりきって警備員が来ます。必ず良客でいましょう。
True:帰り道に別のリサイクルショップに持ち込みます。会話コマンドは安定さえ取れればOKです。
帰りの道中に立ち寄ることを優先に、できれば大きいショップに寄りましょう(リサイクル券を発行してもらえないバグ防止)。
大きいショップだと買い取りがスムーズなのでタイム短縮が狙えます。
③帰宅
コース取りに気をつけつつウイニングランです。他カテゴリと同様、自宅玄関を開けた瞬間にタイマーストップです。
以下補足です。
・購入するテレビですが「PC」「モニター」等はNGです。また引っかけで「車載テレビ」やその他特殊なテレビも引き取ってもらえません。
現実のものですが、こちらの区分が大変参考になります。https://www.rkc.aeha.or.jp/recycleticket/target_items.html
・本ゲーム初心者で見極めが不安な方は、テレビ売り場近くの店員さんに話しかけ「これ繋いだらニュース映りますか?」を選びます(ヒントが出る)。
まずは情報の正確な把握に努めましょう。その後の雑談では無難に回答し、むやみにヤバい人パラを上げずに完走を試みてください。
、、余談ですがこの選択肢、現実でこんなこと言いますかね?笑 要は確実にヒントが出るようなアホ質問ということなんでしょうがw
現実ならギリでも「テレ朝映ります?」「TBS見れます?」とかになりそう。少し前なら「手越復帰のイッテQをリアタイしたくて…」とか?笑
・財布スコアを捨てて早く済まそう!というコンセプトです。「引き取りを依頼」「リサイクル施設に持参」ルートは考案しておりません。
上記ルートで「引き取りを依頼」すると財布がマイナス→アルバイトに突入するのでRTAとして破綻します。俗に言うタイミーさん化。
「リサイクル施設に持参」は行動自体に財布の増減はありませんが、ほとんどのマップで施設がバカ遠く、交通費もかかるので微妙です。。
というか、そもそも施設持参はマップ依存すぎて現在100%カテ以外では各大会ローカルでレギュ違反となっています。元は暗黙の了解でしたね。
今後を考慮して一応書きましたが、今んとこ個人配信で盛り上がる分にはよいですね(真Any%とか神マップRTAと称されることが多いです)。
以上、お役に立ちましたら幸いです。
ここ数日で2文見て気付いた
(数十年前に英検3級。大学入試とかで6割ちょいぐらいの苦手科目。そこからさらに衰えてるが最低限の文法や単語は思い出せたりするぐらい)
夢が真実になる、夢がかなう ぐらいの意味か。バンドしか出てこない
Back to the Future
未来へ戻る? 未だにタイムスリップするぜ ぐらいの意味で捉えてる
洋楽、洋画のタイトルや頻出歌詞で単語も単語の並びも知ってるが意味まで考えたことないのが多そう。慣用句とかレベルじゃなしに(そうであったり、何かのもじりかとかでもわからない
All You Need Is Kill は大人になってから読んで、内容も加味してなんか「ただ殺すだけ」という意味と繋がっている
気が付くと朝4時になっていた。
なんか動くところまで出来たので貼っておく。
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()
https://www.geonames.org から取れる、人口500人以上の都市の名前に限定すると、
Santa Maria Magdalena Cahuacan
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()
ワイ:
x = torch.tensor([
[1.0,2.0,3.0],
[4.0,5.0,6.0]
])
Claude3.5 Sonnet:
はい、channel-wise 正規化(チャネル方向の正規化)を行います。この場合、最終次元(dim=-1)がチャネルとなります。channel-wise 正規化では、各チャネルの平均を0、分散を1に正規化します。
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]
])
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) / stdThis 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の方が正しいよね?
2011年の国勢調査では、ロンドンの人口の50%未満が白人であり、
ロンドンには白人のイギリス人が人口の20%を下回る地域もあることが初めて判った。
2005年の報告によると、英国内の白人の移動は主に少数民族の多い地域から白人の多い地域への移動であり、
w.wiki/BHnh
2022年度、埼玉県警統計では犯罪発生件数は1位が川口市で4,437件
2位が越谷市で2,772件
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
クルド人密入国者が不法移民に英国の亡命制度を騙す方法を教えた衝撃的な瞬間:
「絶対に」帰国させられないようにアドバイスしていたことが調査で明らかになった。
www.dailymail.co.uk/news/article-12578125/Kurdish-smugglers-cheat-Britain-asylum-system.html
ドイツの判決「トルコのクルド人迫害を認定しない」【日本語訳】(12,000文字over) - 美桜
2021年、ドイツのミュンヘン行政裁判所は、「トルコ政府によるクルド人迫害は認められない」とする判決を下しました。
出典:
https://note.com/uruwashisakura/n/n2d43184a9ad2
x.com/UruwashiSakura/status/1825311164798255356
亡命トルコ、未成年の子供を持つ家族、男性の姉妹のPKK / YPGの疑い、偽造逮捕状の提出、証明書。
人口は約1300万人を生きています。 最大1500万。トルコのクルド人。
彼らの祖先だけのために。
連邦外務省の現在の状況報告によると、彼らはいかなる国家弾圧の対象にもなりません。
54
トルコでの非人道的または品位を傷つける扱いまたは処罰にもつながりません。
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人をトルコへ大量送還することになった。
x.com/EuropeInvasionn/status/1839696124103233814
www.n-tv.de/politik/Berlin-schiebt-Tausende-Asylbewerber-in-die-Tuerkei-ab-article25257137.html
クルド人は難民ではない?「その答えは十分に説明した」 トルコ大使
このうち中東地域はトルコ、イスラエル、UAE、カタールの4カ国。
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キロ?
140キロ?
x.com/prisonridge/status/1840346233766130046
隣接の集合住宅に住む
クルド人らが代わる代わる使っていた車だった。
捜査はうやむやになった。
その後すぐ、クルド人が15人ほどすごい勢いで集まってきたんです。
彼ら、声がとても大きくて、
x.com/Parsonalsecret/status/1819014395734741035
職質されたら警察署を包囲
tinyurl.com/shokushitsu
tinyurl.com/4ca75z2e
tinyurl.com/3t4e8yyy
議員を威嚇
tinyurl.com/giin-ikaku
tinyurl.com/taishikan-rantou
歩き花火
[多文化共生][移民統合][ホワイトフライト][セグリゲーション]
全18問あります。
↓はなんとなくの評価表です。あまり気にしないでいただけると。
18問全問正解: おかしい
5〜11問正解: 楽しんでいただけたようで何よりです
1〜4問正解: そんなものでしょう
0問正解: がんばりましょう
気を抜くと全部見えます。
下は凡例です。楽しんでいたけたら幸いです。
(再掲)問題文のすぐ下に答えが来るので見るときは注意してください。
気を抜くと全部見えます。
ではスタートです!
状況の昇格。エスカレーション
OJT。
型へ方向づけるための指針。オリエンテーション。
好敵手を倒す機会。オポチュニティ。
深い裂罅。キャズム。
https://x.com/DividedSelf_94/status/1836550982056186055
@DividedSelf_94
前のコロプラ裁判のときに「任天堂が”特許権の侵害”って言えば気に入らないゲームなんでも潰せる風潮になったら嫌だなあ」って思ってたけど、やっぱ想像してたとおりになったな‥。
https://x.com/kiki_lily17/status/1836576641528795145
@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
(任天堂がポケットペアを訴えている特許は、プレイヤーがボール型のカプセルを投げてモンスターを捕まえるという、両ゲームに共通するゲームプレイの仕組みだと言われている。
そりゃ悪手だろ、アリンコ
No True Scotsman
toyokeizai.net/articles/-/256915?page=4
イ●ラ●教のコ●ラ●にさえ爆●を仕掛けるPKKを甘くみないほうがいい
x.com/kulaguhan/status/1835787710742634853
2022年度、埼玉県警統計では犯罪発生件数は1位が川口市で4,437件
2位が越谷市で2,772件
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
tinyurl.com/2p9xn7w4
2011年の国勢調査では、ロンドンの人口の50%未満が白人であり、
ロンドンには白人のイギリス人が人口の20%を下回る地域もあることが初めて判った。
[多文化共生][移民統合][ホワイトフライト][セグリゲーション]
自ら壊れゆくドイツ
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年、ドイツのミュンヘン行政裁判所は、「トルコ政府によるクルド人迫害は認められない」とする判決を下しました。
出典:
note.com/uruwashisakura/n/n2d43184a9ad2
x.com/UruwashiSakura/status/1825311164798255356
亡命トルコ、未成年の子供を持つ家族、男性の姉妹のPKK / YPGの疑い、偽造逮捕状の提出、証明書。
人口は約1300万人を生きています。 最大1500万。トルコのクルド人。
彼らの祖先だけのために。
連邦外務省の現在の状況報告によると、彼らはいかなる国家弾圧の対象にもなりません。
54
トルコでの非人道的または品位を傷つける扱いまたは処罰にもつながりません。
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人をトルコへ大量送還することになった。
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
埼玉・川口市がクルド人めぐり国に異例の訴え なぜ?現場で何が?
その中に仮放免のクルド人の治療費も含まれているとみています。
tinyurl.com/iryouhi-mibarai
tinyurl.com/26000000yen
一部の自治体は
倒れていても早く気付けるように。
MacroDroid(試用期間ありの500円?)
スマホのロック画面を解除したら指定したアドレスにメールを送るようにマクロを作製。
アクションに「メールを送る」と「変数を設定」。マクロ作動後に変数をFalseにする。
条件に「変数」でTrue指定。「サービス圏の通信状態」でサービス圏内にいる時。
別のマクロで0時を過ぎたら変数を「True」にするようにしておけば、1日1回0時以降にスマホのロック画面を解除したときにメールが飛ぶようできる。
変数リセットマクロを曜日指定すれば1週間に1回などにできる。
マクロの作動条件に電波の圏内にいる時を設定したほうがいいかも。
自分はメール送信に借りてるサーバーを指定しててだめだったけど、Gmailならオンラインになったときに送信されるかも。
すでにスマホを持ってるならMacroDroidの500円だけでできる。
ユーザー登録フォーム画面があるとしてisShowCommentInputTextFieldがtrueであればコメント入力欄を表示、falseなら非表示という仕様があるとしよう。ありとあらゆる資料にはisShowCommentInputTextFieldはコメント欄を非表示にするフラグであると書かれている。しかし実装上は、ユーザー登録フォーム自体を非表示にする実装になっている。
実装が正とすると、仕様は誤りだ。上司に聞いてみたところ「何も間違っていない。その仕様書が正しい」という。「実装はコメント欄どころか全非表示になるので、実装の不具合か?」と聞くと、「実装は正しいし、仕様も正しい」と返してくる。意味不明なので小一時間問答を繰り返した結果引き出せた言葉は「コメント欄も非表示になるのだから正しいに決まっているだろう。当たり前の話だ」という答えだった。
そんでこのロックのデータをこんなかんじで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 |
ほんとはタスクの直列化ができればいいんだが我のあずかり知らぬ領域なのだ・・・
超バグりそう
ロックに条件持たせる
やりたいことはできてるように見えるが、うーんしんどい
# 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 && 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 && end_at
@attribute_locks.each do |(locked_start, locked_end)|
if locked_start <= start_at && 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?(&: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 })
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 <= position <= 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()
こうかー
"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?
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.
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.
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.
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.
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.
コメントログへのアクセス先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年分ぐらい溜めてる…。