Skip to main content

Posts

Wordpress の qtranslate の言語セクションを取り除くプログラム

概要 これは qTranslate から各言語のマルチサイトに移行する際に使うプログラムです。qTranslate によってつけられた言語ごとの内容とタグを取り除きます。 Keywords: qTranslate, qTranslate-X, multi-site, multi-language, Wordpress はじめに 今から 10 年ほど前 (2013年) 当時の Web Hosting では一番安いサービスでは利用できる SQL database の数は 0,そして次のレベルでの databse 付きのサービスでも 2 個まで,というようなものが多かったです。そのため database を使用する Wordpress を多言語で使う際には qTranslate https://qtranslatexteam.wordpress.com/ などの多言語化プラグインを使い database の消費数を減らすことが行なわれていました。 qTranslate プラグインの仕組み qTranslate プラグインでは地の文に特殊なタグ ([:ja],[:]など) を入れてプラグインがその都度言語ごとの内容を取り出すという方法をとっています。 qTranslate プラグインの利点と問題点 多言語化しても database の消費数が 1 個で済むのが qTranslate の一番大きな利点です。10 年前 (2013年) にはdatabase 数が 2 個までというようなHosting service が普通であったため,この利点は大きかったです。しかし,qTranslate では地の文にタグを入れて言語を区別するため,タグを誤って消してしまったり,知らずにタグと同じ文字列を入れると表示が乱れるという問題があります。また,他のプラグインは内容にタグを入れて言語を切りかえていることを知らないために,同時に使えないプラグインがありました。つまりプラグインの利用に制限があります。 qTranslate サポート終了, Wordpress の version up 現在は database の価格が低下し,入門の Web Hosting サービスでも 10 個の database を使えるというものも珍しくなくなりました。そして qTranslate は Wordpres
Recent posts

日本のブログにあるジャガイモがカトリックの宗教裁判で有罪になった話 (日本語以外の言語でその話が見つからない話)

 私が好きな YouTube Channel に「歴史雑記ヒストリカ」( https://www.youtube.com/@mond_historica ) があります。ここでじゃがいもの歴史についてのビデオがあります。 https://youtu.be/qiJNxcjQBtk 【ゆっくり歴史解説】じゃがいもはどうやって食卓に浸透したのか?世界史の中のイモ史。 ここではマリーアントワネットやルイ 16 世がじゃがいもを広めようとしたことや,イギリス王家とじゃがいもの関係など興味深い話がありました。そこに,『じゃがいもは「聖書にない作物」で,したがって悪魔の植物であること。神の定めた男女の結びつき以外の方法で増えるじゃがいもは性的に不純であること。としてローマカトリック教会に告発され,裁判で異端とされてしまった。そして火あぶりの刑に処された。』という話があります。中世のローマ・カトリックは現在の基準では信じられない話があり,この話もそういうステレオタイプを生み出したものとして,面白いなと思いました。 それでこの話を友だちに話をしたいと思いました。ただ,私は今仕事の関係などでドイツに住んでおり,日本語のできる友人が限られます。それに聖書をかなり空んじているような友人もいます。そのため,1 つの YouTube Channel が言ったからといって簡単に紹介はできません。 そこで英語でこの話を検索したのですが,でてきません。例として,日本語で「じゃがいも 破門」で調べると多数のブログがヒットします。ただ,内容はほぼ同じです。おそらくどこからかコピーペーストされたのでしょう。また,どこからその話をもってきたのかの参照はみつかりません。 日本語での検索結果: じゃがいも 破門 しかし英語で「potato excommunication (じゃがいも 破門)」では破門の意味とは何かとか,アイルランドでのじゃがいもの飢饉などの話だけです。他の検索例ですが,「potato trial guilty (じゃがいも 裁判 有罪)」ではじゃがいも保険で詐欺をした人の話や,じゃがいも関係の汚職の話などです。しばらく探しましたがでてきません。 英語での検索例: potatoes excommunication (じゃがいも 破門) 英語での検索例: potato trial guilty (

待機電力: xbox

最近,自分の家と友人の家の家電の電力をいくつか測ってみた。そうしたら xbox の待機電力が20W近くあって驚いた。これは結構明るい LED 並みである。友人はすぐにスイッチ付きの延長ケーブルを入れて,子どもたちに遊んだ後は,xbox の電源を切るだけではなく,延長ケーブルの方の電源も切るようにと説明していた。10年ほど前には待機電力を気にしていたこともあったが,最近はまた忘れていたので,意外に待機電力の多いものがあることに驚いた。

「失礼」という言葉が「論」とすり替えられる。

「失礼」という言葉が「論」とすり替えられる。 私が日本の大学で働いていた時,興味ある科目があり,私が教えていることに関係があったので,その先生の授業に参加させてほしいとお願いに行った。その先生の教えていることを深く勉強して加えると私の授業が良くなると考えたからだ。すると「ちゃんと授業料を払っている人に失礼にあたる」と断られた。 私がある日本ではない国の大学で働いていた時,興味ある科目があり,参加してもよいかと尋ねたら,ぜひ来てほしい。何か改善すべきことがあればぜひ教えてほしいとその先生にお願いされた。以前の経験で断られるのではと思っていたので問題はないかと重ねて尋ねると,授業を改善するのは学生のためでもあり,それが大学の存在する理由であり,それが先生の義務でもある。という答えであった。 そこで考えた,「何が失礼だったのか」。その後,様々な場面で,「失礼だ」ということで議論が止まっている例を見た。古い利権を守りたい人間が,「そんなことは(私たちの利権に)失礼だ」と議論を止める場面。社会全体を不利益にしているのが問題であり,礼の問題ではない。なぜ礼の問題になるのかを説明してもらえるとありがたい。また,とある政党が協力をしたくないため,「有権者に失礼だ」という場面。そこでは市民の会が共闘を呼び掛けている選挙区だった。市民の会の声を聞かない政党に,なぜ失の問題になるのか説明してもらえるとありがたい。 単純化するのは危険であるが,「失礼」という言葉に注意してみることはよい警告になるようだ。「失礼だ」ということで,「礼を守る社会」では相手をおとしめることができる。生きるか死ぬか,生活できるかの問題を議論している時に「礼」の問題を持ち出す人には注意してみる方がよさそうだ。

並列計算のヒント: 浮動小数点計算の再現性を保つためのヒント

並列計算時の数値演算の再現性問題 計算機で浮動小数点演算を行う場合,一般にその結果は数学的な演算とは一致しない。たとえば,一般に計算機の加算のような浮動小数演算では次式のように結合法則が成立しない。 \[ (x + y) + z \stackrel{?}{=} x + (y + z)\] 10 進数で有限桁数な数でも 2 進数表記では有限桁数で正確に表現できない場合などもある。数学的に正確ではない例として,以下のように $0.1 + 0.01 - 0.1 - 0.01$ を計算すると $0$ にならない。(Python 3.8.5)      >>> 0.1 + 0.01 - 0.1 - 0.01      -5.204170427930421e-18 しかし,$0.1 - 0.1 + 0.01 - 0.01$ の結果は $0$ である。      >>> 0.1 - 0.1 + 0.01 - 0.01      0.0 また,絶対値の極端に違う数値の加減算で絶対値の小さな値が値に反映されないアンダーフロー問題などもある。これは丸めの演算が演算順序に依存する(Order dependent rounding) 問題である。大きな数に極端な小さな数を複数たす場合,丸めによって小さな数が皆無視される場合でも,小さな数を先にたすことで,無視されなくなる場合がある。 しかし,アルゴリズムの多くはある演算結果の等値性に依存する。そのためにこの数値演算の再現性は重要な問題となる。演算結果が等しくないという場合でもその差は最初の数値演算の例のようにかなり小さいことが普通なので,これをある範囲の上限と下限を記録する interval algorithm を使うことができる場合がある。ただし interval algorithm は今回の Tips では用いない。 今回の Tips では演算順序の違いによる問題を避けるために並列演算の各スレッドやプロセスで演算が同じ順序になるようにする方法例を述べる。 具体的問題例 具体例として以下の 2 つの幾何学問題を用いる。  空間分割型の ray-object intersection  3 角形メッシュにおける plane-triangle intersection 空間分割型の Ray-object

Berlin Westhafen,責任,神を語る傲慢さについて

 ベルリンの街中には Westhafen という場所がある。Hafen (英: harbor) とは港の意味なのだが,街中でどうして港なのかと思っていたら,確かに港があった。私は乗り換えには時々使う駅だが降りて歩いたことがなかったので知らないだけであった。  Berlin Westhafen ここを知人と散歩した時に,最近読んだ共通の本の話をした。この本(*)が面白いので議論は多岐に渡ったが,特に 2 つの部分が心に残ったので記しておこう。 一つは表題にもある「きみたちには,起こってしまったことに責任はない。でもそれが,もう繰り返されないことには責任があるからね。」である。何か責任を考える時,その時生まれていなかった人には「個人的な」責任をとることはできないと思う。極論として先祖のしたことに責任をもてというものもあるが,それは無理と思う。逆に子孫に責任を転嫁することにもなりフェアとは思えない。これは戦争についての言葉であるが,戦争でも同じだと思う。(上記で私があえて「個人的な」というところにかっこをつけておいたのは,個人ではない場合にはこれにあてはまらない場合があるからである。) もう一つの部分は,米国の日本への原爆投下は,米国民を救うためということでそれを良しとすることに対する議論である。ここで私は一歩ひいて考えてみたことを知人と議論した。一歩ひいたというのは,戦争,特定の国を外して考えたことである。その場合,ある組織が,誰かを助けるために誰かを殺す権利があるか,という議論になる。ここで気がつくのは,人が誰を殺すかを選択できるという前提が断りなくあることである。この部分を私は恐しいと思った。たとえば私に誰かを殺す権利があるかを考えると,それはないと思う。「戦争」という文脈になると,それが突如自然にあることとされる。たとえば,戦争だから敵を殺すのは当然となる。この傲慢さはいったいいつどこで私の頭に入ってきたのだろうか。 私が好きな哲学者は「Handle so, daß die Maxime deines Willens jederzeit zugleich als Prinzip einer allgemeinen Gesetzgebung gelten könne.」と言う。私がこの言葉を本当に理解することは多分無理のような気もするが,それでもこの言葉を聞いて私が

ハラリのコロナウイルスエピデミックに対するグローバル計画案

今から 3 週間ほど前になりますが,ハラリがコロナウイルスに関するグローバル計画案を出していました。今でもこの議論は有効に思いますので,その日本語訳を出しておきます。 ---- コロナ危機に一つの国だけで対応することは不可能です。私たちにはグローバルな計画が必要です。しかし,世界のリーダーたちはまだその議論を始めていないようです。何を待っているのでしょうか? たとえば,以下のような計画案はどうですか? グローバル計画 信頼できる「情報」を共有する。エピデミックを既に経験した国々は新しく経験しつつ国をコーチすべきである。 必須の医療器具,検査キットと呼吸器などを世界で協力して生産し分配する体制を整える。 患者が少ない国々は医者,看護師をより患者の多い国々に送リ助ける。これによって医者を送る方も受ける方も貴重な情報を入手できる。 グローバルな経済セーフティネットを構築し,最も大きく打撃を受けた国々や地域を助ける。 旅行者のプレスクリーニングに関するグローバルな協定を作成し,合意する。これにより世界に必要な旅行者が国境を越えられるようにする。 ハラリのコロナウイルスエピデミックに対するグローバル計画案の元記事 (20200319) https://twitter.com/harari_yuval/status/1240564051412910082