第201回国会に提出された情報関係法律案
法律(案)について、「きちんと」理解しているのか、と聞かれると、とっても難しいですよね。
法律案の内容・読み方みたいな技術的なことはもちろん、現行法上の解釈・実践、立法事実にかかわるような社会人文自然科学各分野の知識・・・
まぁ、正直、一人の人間がすべてを正確に把握できるかって言われるとかなり厳しい気がします。そこで、ほんとは様々な情報を簡単に整理するとか、情報をつまびらかに公開するとか、知りたいと思った人が知るための入口があるとよいのですが、必ずしもそうなっていない、というのが現状なのかなと思います*1。
せめて、提出されてる法律案の概要と分析とそこに至るまでの議論(大体、各省庁の有識者会議なりで検討された後に出てくるので)あたりがまとまって見られれば良いのですが・・・というわけで、ぼんやり眺めている情報法制関係の法案について、以下にまとめてみました(ほんとは国会始まる前にやったほうがいいですね)。
ついでに、ネットで見られる系のものを中心に参考資料もつけてみました。
よくわかっていないところも多いので、修正すべきところがあればお知らせください。
なんかしら自動化できないのかな。
(5月13日 規制の事前評価を追加)
- 電波法改正案
- 特定高度情報通信技術活用システムの開発供給及び導入の促進に関する法律案
- 特定デジタルプラットフォームの透明性及び公正性の向上に関する法律案
- 聴覚障害者等による電話の利用の円滑化に関する法律案
- 電気通信事業法及びNTT法改正案
- 個人情報保護法改正案
- 著作権法等改正案
*1:実際、例えば英国議会のページとかは関連文書類も含めて見やすい印象がある。Coronavirus Act 2020 — UK Parliament
意匠と旗
最近政治的な問題との絡みで、①旭日の意匠は普遍的なもので、②旭日旗も従来軍国主義の象徴などとして認識されておらず、③問題化したのはサッカー選手の問題が起きて以降だ、という言説を目にするようになりました*1。
①については、たしかにそういう部分がありそうです。見ようによっては何でもそう見える。
③については、よくわかりません。政治運動としての激化にはたしかにそういう側面もあるのかもしれません*2。
ここでは、②、すなわち、2011年の事案以前に旭日旗と戦前・戦中期の日本が結び付けられていたかを見てみたいと思います。なお、行為の善悪や政治問題の是非には入らないものとします。
1.米英
日本生まれで、戦時中米海軍に所属し、その後同志社大学教授などをつとめたオーテス・ケーリ氏は、1991年の寄稿*3で、ペルシャ湾に向かう途中、東南アジアの国々の港に寄港する自衛隊に旭日旗が掲揚されていることについて、否定的な見解を示している。
また、英国の郵便局が刊行する雑誌で、日本の特集が組まれた際、(日の丸ではなく)旭日旗が用いられると、退役軍人から抗議があり、撤回されたという例*4や、米国の退役軍人がパールハーバーとあわせてRising Sun Flagを燃やそうと計画していると伝えられたこともある*5。
このように、一般に理解されていたかはともかく、少なくとも、実際に戦火を交えた退役軍人の間には、当時の敵国の象徴として理解されていた節がある*6。
2.アジア
韓国は、といえば、1996年に戦後初めて自衛艦が韓国に寄稿した際の新聞記事において、
旧日本海軍と同じ旭日旗を掲げた日本の練習艦隊の入港には、反日世論の強い韓国内で複雑な受け止め方もあるが、94年4月の訪日時に李炳台国防相(当時)が提案した日韓軍事交流の一環だけに、今のところ大きな抗議運動もなく、静かな入港となった。
「自衛艦が韓国を初訪問 訓練航海の途中、静かに釜山入港」『読売新聞』1996.9.2
とされているように当時から一定の反発があったことが伺える。
この点、木村教授も、旭日旗のもつ意味が特に注釈なく理解されていたことを示している*7。
他にも、大喪の礼に際して旭日旗が燃やされた例*8や、2000年代に入って、日本のロックフェスティバルで、パンクバンドが「Fuck Japanese imperialism!」と言いながら旭日旗を引き裂くパフォーマンスを行った例がある*9。
その他中国、香港においても、尖閣問題の関係で旭日旗を地面に書いて踏ませるようなことがあったり、似た意匠の服を着た女優が謝罪に追い込まれるなどの例があったようだ*10。
このように、必ずしも反発の対象、ではなかったとしても、一定の象徴的な意味を持っていたのではないかということが推察できる。
3.なぜ近年になって盛り上がりを見せるのか
ではなぜ近年になってこの旗をめぐる摩擦が大きくなっている(ように見える)のか。
一つには、これが①国際的な場で、②国を表象するものとして扱われるケースが増加した、ということが挙げられるだろう。
自衛隊の海外派遣は、前出の1990年代初頭ペルシャ湾派遣から始まったものであり、韓国への寄港も1996年が初めてである。*11
近年、問題となっているのは、サッカー競技場での扱いであるが、日本でサッカー人気が盛り上がったのは、1993年のJリーグ開幕、そして、2002年の日韓共催ワールドカップにかけてのことである。それ以前の段階で、旭日旗が扱われていたかは、今のところわかってはいない(教えて下さい)が、90年代には、競技場に旭日旗を持ち込むべきではないとの投書も見られる*12。
2012年の週刊誌にサッカーファンが振り回して外国人を挑発するように用いること等について海上自衛隊が不快感を抱いている旨の記事が掲載されたのは、従来一部に留まっていた旭日旗の使用が拡大していったことの傍証としてみることもできよう*13。
この問題を考えるにあたっては、単に旭日の意匠というにとどまらず、旭日旗が、どのような場面で国の表象として扱われてきたのかを丁寧に検討していく必要があるだろう。
*1:Twitterでもよく見られますが例えば、現時点でのWikipedia 旭日旗 - Wikipedia
*2:木村幹「旭日旗問題に見る韓国ナショナリズムの新側面」『国際協力論集 』27(1), 2019.7, pp.32-33 http://www.research.kobe-u.ac.jp/gsics-publication/jics/27-1/kimura_27-1.pdf ただその前からサッカースタジアムでの掲揚は問題になっていたようにも思う
*3:「平和の象徴「日の丸」掲げて」『毎日新聞』1991.6.3.
*4:「英郵便局、雑誌に旭日旗使い謝罪」『日本経済新聞』1995.8.15.
*5:Rising Sun Flagは場合によっては日の丸を指すこともありそうではある。"Veterans Plan to Burn Rising Sun Flag," The Atlanta Constitution, 1991.12.3.
*6:英大衆紙が、昭和天皇批判に旭日の意匠を用いた例があること(「英大衆紙の天皇報道、誤認やどぎつい表現 日本大使館、抗議へ」『朝日新聞』1988.9.22.)や、マイケル・クライトンのRising Sunの例もあるので、研究を要するかもしれない
*7:木村 前掲, p.24
*8:「「大喪の礼」世界は見た 各国の反応 半旗・抗議・無関心」『読売新聞』1989.2.25.
*9:高原基彰『韓国のパンク・ロックにおける『日本』のシンボリズムーグローバルとローカルの交差点からー」『東京大学社会情報研究所紀要』65号, 2003, p.313. ただし、当該パフォーマンスを行ったバンドはむしろ日本に親和的な部分を持っていて複雑な背景があると考えられている
*10:「新しい日本像を(経済気象台)」『朝日新聞』1996.10.21(夕刊); 「「旭日旗騒動」の中国人気女優が共産党に入党申請 「自分鍛えるプロセスに」」『読売新聞』2003.1.4.
*11:この点については、木村 前掲 p.25-26 同論文では、従来日の丸が問題とされていたことを指摘し、その後の問題化の経緯をメディアデータベースから分析している
*12:例えば、「[みんなの広場]絶対に掲げないでほしい旭日旗」『毎日新聞』1999.5.19.
*13:田岡俊次「艦旗乱用に海自は迷惑」『AERA』2012.9.17. 旧軍、自衛隊において、旗は一定の敬意の対象であり、乱用に対しては「大切な艦旗が部外の人々により外国人の反感を招くような場所、方法で使われたり、特定の政治思想の象徴にされたりしてはまことに迷惑」(海上幕僚監部)という
台風で暇だったのでPythonでランチタイムの経済学者になってみた
昨晩はすごい嵐でしたね。
風や、窓を打つ雨の音、更にはエリアメールも加わって、よく眠れない夜でした。
起きてみると、当然電車は動いていなくて、混んでる電車に乗ってくのもだるいなと思って、運転の見通しも立たないということで、泣く泣くお休みをいただく羽目になりました*1。
時間ができたので、『RとRubyによるデータ解析入門』の5章に載っていた「ランチタイムの経済学者になる方法」というのをPythonで実装してみました。
O'Reilly Japan - RとRubyによるデータ解析入門
中高の現代社会で習った「神の見えざる手」っていうのをシミュレーションしてみようう、というものです。
非常にシンプルな仮定として、以下を準備して回しています。
- 需要を満たすまでできる限り安い生産者から購入を続ける消費者(ただし許容価格以上のものしかないと需要を半分にする)。
- 商品を生産して、価格をつけ、消費者に販売する生産者(売れれば価格を上昇させ、売れなければ価格を下げる。ただしコスト(5ドル)は下回らない)
そして、150単位時間程度やり取りをしてもらったときの、平均価格と需要(logをとっています)の推移が以下になります。
生産者が、暴利を貪ることはできず、コスト(5ドル)より少し高いあたりを推移していることがわかります。
ちょっとしたコードを書くだけで、こういったものが実際目で見えるというのは面白いなあと思いました。
もう少し、続きがあるので、それもやってみたいですが、今日のシンポジウムかっこ*2でも出てきた両面市場なんかにも拡張してやって見られないかなぁ、というのが目下の関心です。
ともあれ、私、とても、眠い・・・
*1:夢から覚めたくなくてゴロゴロしてた妻に電車動いてないと伝えたら「よっしゃー」飛び起きてワロタ
文系初心者が競技プログラミングをやってみた話~AtCoder Beginner Contest 139編~
前回、AtCoderなどを楽しんでいると書きました。
競技プログラミングというのは、プログラミングを使って、パズルのような問題を早く、正確に解く競技だと考えて良いかと思います。
将棋で言えば、詰将棋でしょうか。
問題に対して、解法(どうすれば解けるか)を思いつく発想力と、
それを正確に速く効率的なプログラムに落とし込む実装力が問われてなかなかおもしろいです。
私は、むかーし、Pythonという言語を、Couseraのコースで習っただけのド素人ですが、たまに開催される大会に参加して楽しんでいる、というわけです。
この日曜日にもコンテストがあって参加してみました。
問題はこちらから御覧ください。
Tasks - AtCoder Beginner Contest 139
どんな感じで解いていったのか、メモ代わりに残してみます。
A問題:
- S = str(input())
- T = str(input())
- cnt = 0
- for i in range(3):
- if S[i] == T[i]:
- cnt = cnt +1 #cnt += 1
- print(cnt)
2つの文字列を比較してマッチする分の個数をチェックする問題でした。
思いついたとおりに書いてみましたが、forの部分は、zip()などを使って簡潔に書けたかもしれません。
B問題:
- A, B = map(int, input().split())
- cnt = 0
- num = 1
- while num < B:
- cnt = cnt + 1 #cnt += 1
- num = num + A - 1 #num += A -1
- print(cnt)
電源タップの必要な個数を考える問題。
実際タコ足は避けたほうが良いのでしょうが。ループを使って書いてしまいましたが、
本当は割り算のほうがすっきりするのでしょう。
C問題:
普段はこのへんから難しくなってくる気がするのですが、今回は割とすんなり行きました。
- N = int(input())
- H = [int(i) for i in input().split()]
- mx = 0
- tmp = 0
- #print(H)
- for i in range(N-1):
- if H[i] >= H[i+1]:
- tmp = tmp + 1
- if tmp > mx:
- mx = tmp
- else:
- tmp = 0
- print(mx)
階段を下っていく問題。
下れるところまで下っていって、最大値をmxに記録していく、という単純な方法でも間に合いました。
D問題:
Cまで行けばいいかと、Dの前に風呂に入りましたが、Dも行けました。
数列のModの最大値を求める問題。
- N = int(input())
- print(N*(N-1)//2)
といっても余り褒められたものではなく。
(1、2、3・・・N)とあったときに、一つずらせば最大値だろうな、というのは、直感的にはわかったのですが、最初は、並べ替えた数列Pを作って、更に、最後尾を除いてsum()みたいなことをやってしまっていたのです・・・
そうすると計算時間がかかってしまって、タイムオーバー(TLE)。
単に等差数列の和なので、そのまま示してやればよかったですね。
E問題:
リーグの対戦順が可能か考える問題。
ループを回して、先頭からpop(リストから削除)してけばできるのかな~とか思ってたのですが、気力が起きずに撤退。popは先頭から削除するのは、めっちゃ遅いらしいとか、リストを裏っ返せばええんや、とか紆余曲折を経て、最終的には以下の形で通りました(後日)。
- import copy
- import collections
- N = int(input())
- A=
- #結局dequeというやつを使うことにした。両端からの削除が早いらしい
- for j in range(N):
- A.append(collections.deque(int(i) for i in input().split()))
- day = 0
- empty = [0] * N
- #一日目は全員を見て、次の日は前日に状況が変わった人だけみることに
- s = [i for i in range(N)]
- #whileループ一回を一日と考える
- while N==N:
- q =
- day +=1
- for i in s:
- #i行目が空なら空であることを示すemptyリストを1に
- if len(A[i]) == 0:
- empty[i] = None
- #iが既にqに入っていればパス
- elif i in q:
- pass
- #i行目の末尾の数字で示された相手方が一致していればキューに追加
- elif int(A[int(A[i][0])-1][0]) == i+1:
- q.append(i)
- q.append(int(A[i][0])-1)
- s = copy.copy(q)
- #ループ後にqが空ならそれ以上進めないので判定
- if len(q) == 0:
- if not(0 in empty):
- print(day-1)
- exit()
- else:
- print(-1)
- exit()
- #そうでなければキューに追加されている行の末尾を削除する
- else:
- for d in q:
- A[d].popleft()
これでもpythonではなくpypyというやつでぎりぎりでした(pypyのが若干早いらしい。)。
本来的には、グラフ?の最長経路問題として解けるらしいのですが、いまいち枝とか経路とかの書き方のイメージが掴めていません。勉強しなきゃですね。
F問題:
ベクトルの合成の問題なんだろうなーと眺めていましたが、角度でソートする方法を考えてる間に、エネルギー切れに。
あとの部分は、普通に書けばいいだけだったので、粘ればよかったかもしれない。
- import math
- N = int(input())
- A = []
- for j in range(N):
- A.append([int(i) for i in input().split()])
- #arctanでY、Xから角度を求める。
- for engine in A:
- engine.append(math.degrees(math.atan2(engine[1], engine[0])))
- if len(A)==1:
- print(math.sqrt(A[0][0]**2 + A[0][1]**2))
- exit()
- #角度順にソートして、2周分のリストに。
- A.sort(key=lambda x: x[2])
- A = A + A
- mx = 0
- for i in range(N):
- X = A[i][0]
- Y = A[i][1]
- temp = 0
- for j in range(i+1, i+N):
- if (math.sqrt(X**2 + Y**2)) > mx:
- mx = math.sqrt(X**2 + Y**2)
- X = X + A[j][0]
- Y = Y + A[j][1]
- if temp> math.sqrt(X**2 + Y**2):
- break
- temp = (math.sqrt(X**2 + Y**2))
- if (math.sqrt(X**2 + Y**2)) > mx:
- mx = math.sqrt(X**2 + Y**2)
- print(mx)
あとから何も考えずに書いたので、多分余計な行とかがたくさんある。
Pythonを使うだけでもいろんなパズルが解けて楽しいので、みなさんもよろしければぜひ。
詳しい人は優しく教えて下さいw
トレンドに関係した資料をつぶやくBotを作ってみた話
むかしむかしにCouseraでPythonをならったりしたものの、特に使うこともなく生きてきたわけですが、最近AtCoderなどを楽しんでいます。
せっかくなので、国立国会図書館(NDL)が提供しているAPI*1を利用して、Twitterのトレンドに関係した資料を探してくるBotを作れないかな、と思いまして。
作ってみました。
要素としては、
TwitterのAPIを使って、Twitterのトレンドを拾ってくる
→NDLのAPIで資料を探す
というようなコードを書いて、定期実行する、ということで良いのかな、と思っていたのが運の尽き。結構考えることが多かったです。
教訓としては、
・エラーメッセージを読むのは大切。
・ドキュメントは神。
1.トレンドを拾ってくる
トレンドを拾ってくる事自体は難しくありません。
Pythonで言えば、Twitter用のライブラリもいくつかあって、ぐぐるとたくさん記事が出てきます。
Python: Twitterにおけるトレンドを取得する - Fuwafuwa's memorandum
ただ、トレンドに入ってくる単語って、ハッシュタグ付きのわけわからない単文か、それだけではなんのことかわからないような固有名詞とかが多いんですね(今だと甲子園に出てる高校名とか)。
そうすると、それだけで、資料の検索をかけてもうまいものが出てこない、と。
結論から言うと
・ハッシュタグは諦めた。
・単語については、Googleトレンドの関連語検索で情報を取ってきて、加えるようにしてみた。
という感じで、できる限り、今トレンドになってる言葉に近いものを拾ってくれないかな、と願っています(あと意外とトレンドに変動がない・・・)
Googleトレンドについては、以下参照。
Pandasだなんだと次から次へデータ型を使わなきゃいけない・・・
2.NDLサーチにかける
国会図書館サーチね、たくさん横断検索かけられるのはいいのだけど、あまりにもかかりすぎるという欠点が・・・。
苦労したということでいうと辺戻りのXMLの読み方で、名前空間の概念がよくわかってなかった。
キーワードでなるべく絞ろう、というのは上で書いたとおりだけど、引っかかったものが近いのかどうかの判別はまだまだ未完成。今後用検討かなというところ。
反応が遅いのもあって、取得レコードを1点に制限しているのだけど、これを拡張して、トレンドの関連語と比較して点数つけたりするのだろうか。ちょっと気が遠くなってきた。
適切または意味ありげなデータを探してくるために、青空文庫と新書マップを優先して検索しているのだけど、上に書いたようなキーワードの制約上、まだかかったことなし。
〇〇の日、というのから、「の日」を除いて検索かけるように調整してみたので、うまく行けばなにか出るかもしれない。
3.つぶやく(定期実行)
つぶやく自体はライブラリ使えばいいので、かんたん。
定期実行は、自分のPCをつけっぱにして回す方法と、サーバを使う方法がありそうだったけど、前者は電気代が死にそうなので、後者を。
Pythonで作ったTwitterのbotをHerokuで動かす - ひとメモ
などを参照して、Herokuにデプロイして動かしてみました。
gitも覚えないといけない。まぁ、こうやって一つなにか作っていくと、色々勉強の契機になっていいよね、という感じはします。
この点での要改善点で行くと、トレンドがあんまり変わらないことと関連して、過去ツイートとのかぶりの排除をどうしてくか、ということでしょうか。
別にファイルを持っておいて、比較したりするのがよいのかな。
今後の予定
・表示分の改善のための関数の微調整
・ニュースフィードから関連の資料を取ってくる(自然言語処理API?)
←トレンドってまじまじ見たことなかったけど、ほんとにほぼエンタメっぽいので、それ以外のバリエーションも紹介したいな、と。
ここをこうしたほうがいいよ、とか、諸先輩に教えていただけるとありがたいです。
どうぞよろしくおねがいします
ドイツ連邦司法庁、Facebookに過料 SNS法で初(メモ)
7月3日、ドイツの連邦司法庁は、ネットワーク法執行法(Netzwerkdurchsetzungsgesetz(NetzDG):いわゆるSNS法、SNS対策法、またはFacebook法とも)*1の規定への違反を理由に、米SNS大手Facebook*2に200万ユーロ(約2億4000万円)*3の過料を課すことを発表した*4。これは、SNS法下で初の過料決定となる。*5SNS法については、2018年1月の本格実施以降も、過料が課されてこなかったことから、実効性を疑問視する声もでていた。
過料は、法第2条に定められた報告義務への違反を理由とするものである。Facebookが、一般的な通報フォームと別に SNS法用の通報フォームを設けており、Facebookの報告では、後者のもののみを取り上げていることから、本来法の対象とされるべき申立全体がカバーされておらず(2018年7月期の報告では、Twitter、Youtubeにおける申立コンテンツ数が20万件台だったのに対し、Facebookは1704件だった)*6、加えて、内容的にも十分なものとなっていない(訓練等に関する事項が含まれていない(2条2項4号)等)ことが指摘されている*7。
Facebookは異議を申し立てることができ、最終的には裁判所に判断が委ねられることになる。
なお、違法コンテンツの取扱い(明確に違法なコンテンツの24時間以内の削除等)については、手続き整備上の不備がなければ違反とはならないとされているが、一部報道では、今後も更に過料が課される可能性を指摘するものがあり、今後の動向が注目される*8。
*1:同法は、ドイツ国内で一定規模以上の利用登録者を有するSNS事業者に対して、違法情報への対応手続きの策定、半期ごとの報告の作成などを義務付けるもの。http://www.mediacom.keio.ac.jp/wp/wp-content/uploads/2018/04/4338829378f9b93f524fb8aeb862933b.pdf
*3:なお、この金額は、過料基準上、A事業者の軽度~中程度の違反時の基礎額に該当する
https://www.bmjv.de/SharedDocs/Downloads/DE/Themen/Fokusthemen/NetzDG_Bu%C3%9Fgeldleitlinien_engl.pdf?__blob=publicationFile&v=2 事業者の規模等について實原隆志「ドイツの SNS 法―オーバーブロッキングの危険性について―」『情報法制研究』4 号, 2018.11, p.54<http://alis.or.jp/img/issn2432-9649_vol4_p046.pdf>
*4:Bundesamt für Justiz erlässt Bußgeldbescheid gegen Facebook https://www.bundesjustizamt.de/DE/Presse/Archiv/2019/20190702.html
*5:Umsetzung des NetzDG: Millionen-Bußgeld gegen Facebook | tagesschau.de
*6:この点については、報告公表時にも指摘があるNetzDG: So oft sperren Facebook, YouTube und Twitter - SPIEGEL ONLINE
*7:上掲連邦司法庁発表
*8:Mängel im Transparenzbericht: Millionenbußgeld gegen Facebook wegen NetzDG - Golem.de
白糸のこと
本郷三丁目の交差点から数十メートル。
赤い看板。
何でもない日に通った居酒屋だった。
焼き鳥の盛り合わせに、ニラ玉、たまに銀杏やエシャロット。
思えば、20歳になってすぐの日も、この店の3階にいた。
半期の講義終わりの親睦会だっただろうか。
私の(交際)経験(がない)などといったたわいもない話をしたことが記憶に残っている。
「えいひれ」というものを知ったのも、この店だった。
7年ほど大学にいて、大学に住んでいるとうわさされた先輩が、頼んでいたのだ。
今でも、えいひれを食べるとこの店の雰囲気を思い出す。
授業であなたにとっての教育部*1とは、というお題が出れば、真っ先にこの場所に向かった。
就活の連絡待ちをしたこともあった。
電話がかかってきたと思ったら、別の居酒屋からの予約確認だった。
ケータイを投げ捨てようかと思ったが、ビールと一緒に涙をのみこんだ。
赤かぶも、チムニーも、さくら水産もなくなって、学生のころ歩いた街が変わっていっても、その店はそこにあった。
同窓会なんかの帰りに寄ると、2階のお姉さんが、嫌そうな顔をしながら接客をしてくれた。
そんなこの店も、ついに終わりの時を迎えた。
1月の終わり、店先に張り出された閉店のお知らせは、ネットをかけめぐった。
閉店を前にして、学生時代をともに過ごした、先輩、同級生、後輩(あと先生も)が、この店に集った。遠く北海道から来た人までいた。
あの頃と同じように、たわいもない話をして笑い、立場の違いを忘れて議論を交わした。先輩は今でも、えいひれを頼んでいた。
水と間違えて焼酎を飲んでいるうちにもうろうとしていった。
閉店の時間になって、本郷の交差点に出た時には、すっかり出来上がっていて、次の日に向けた後悔を始めながら、何もこんなところまで昔と同じでなくても、と成長しない自分を少し恨んだ。
顔をあげると、二次会に向かう先輩たち。見慣れた光景。この店が作り出してきた、こういう瞬間は二度と訪れないのかもしれない。そう思うと、こみ上げてくるものがあった。
さよなら白糸。ありがとう。
*1:所属していた副専攻のようなもの