Skip to main content

Posts

Showing posts with the label computer

YouTube の Most Relevant セクションを消去する方法

私は YouTube のノイズをへらすために Premium User になっていますが,最近 Most relevant という全然私には relevant なセクションがお願いしていないのに  Subscribe の top に出てきて不便です。 uBlock Origin に以下の Custom Filter をつけることでこのノイズを消去できることがわかりましたので共有します。 youtube.com##ytd-reel-shelf-renderer:has-text(Most relevant) youtube.com##ytd-rich-section-renderer:has-text(Most relevant) UBlock の開発者に感謝。

Easy Social Feed 6.6.5 を使うと Wordpress 6.7.2 の export 機能が働かない問題

概要 (2025-03-04) 問題: Wordpress 6.7.2 でコンテンツの file への export ができない。 原因: Easy Social Feed version 6.6.5 が enable の時に export が失敗する。 解決法: Easy Social Feed version 6.6.5 を disable する 詳細 先月のバックアップの時から,Wordpress 6.7.2 でコンテンツの file への tool -> export すると,ファイルに書くのではなく,browser に表示される。 図: Export に失敗した例。ファイルではなく,ブラウザのウィンドウに表示される。 ウィンドウに表示された内容をファイルに save しても import できないので Wordpress の build in の export/import ができない。Plugin を調べたところ,Easy Social Feed version 6.6.5 が enable の時にこれが起こることがわかった。disable することでこの問題はなくなる。

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...

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

並列計算時の数値演算の再現性問題 計算機で浮動小数点演算を行う場合,一般にその結果は数学的な演算とは一致しない。たとえば,一般に計算機の加算のような浮動小数演算では次式のように結合法則が成立しない。 \[ (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 intersec...

A fake truth by web (ウェブ上の偽の真実): グーグル翻訳の些細な間違い

私は算数のビデオの教材を作ることがあるが,今回公開したビデオは日本語であったが,それに英語で不可解なコメントがあった。 「あなたのビデオの内容は「ひき算」なのに,なぜタイトルが「割り算」なのですか?」 である。このビデオのタイトルは日本語で「基本のひき算」である。しかし英語のコメントで,なぜ「Basic Division  (基本の割り算)」というタイトルなのかというのである。 どうもわからないまま,日本語では「ひき算」とは subtraction であり,割り算 (division) ではないと説明した。そこでわかったのは, Google translateは「ひき算」と入れると,「Division」という翻訳をするということである。漢字の「引き算」とすると,「subtraction」と正しく翻訳される。しかし,全部ひらがなで「ひきざん」では,「Hikiman」と不明な言葉になる。引き算の基礎となると,小学生低学年なためにひらがなを使ったのだが,それを Google translate は間違えるのである。 Figure 1: 日本語のひき算が Google translate で  ``Division (割り算)'' と翻訳されている様子 2017-10-14 しかし困ったことに,Google translate の信頼性は高い。私のような単なるnative speaker というだけでは, Google translate よりも信頼がない。日本で日本語だけで出版している会社の辞書も信頼されないようである。 まずは,「ひき算」は,漢字の「引き算」の Phonetic sign を使った表記であることで,日本語辞書でひけることを 日本語の online の辞書で説明 した。 Figure 2: 日本語 online 辞書で,「ひき算」は「引き算」と同じと見せている様子 そして, 日英辞書の結果は,subtraction であることを説明 した。 Figure 3: 日英辞書が「ひき算」を「subtraction」と正しく翻訳している例 Google translate が間違っているというのを言っても信じてもらえない世界というのは,なかなか大変だと思う。 これは Reality...

Wifi がよく切れてしまう問題について (DELL Precision 5510 Windows 10, O2 ルーター)

私の使っているノート (DELL Precision 5510, Windows 10) が,ルータにしばらくつないていると切れてしまい。その後はつながらなくなってしまう問題があった。 問題 : DELL Precision 5510 を Wifi で O2 のルーター (O2 box 6431) につないでいると,ある時間がたつとつながらなくなってしまう。ルーターを再起動すると一時的には直るが,またつながらなくなる。 どうも,DELL Precision 5510 の 802.11n と私のルーターの相性がよくないようだ。他のノートや Fairphone などとはつながっているが,このノートだけがつながらなくなる。802.11n Channel Width for 2.4 GHz を 20 MHz only にするとこの問題はなくなった。 802.11n Channel Width for 2.4 GHz を Windows 10 で変更する手順はこちら

人工知能プリンター

友人からこんな話を聞いた. 彼のアパートの隣の人が新しいプリンターを買った.友人が自分のコンピュータを起動した時,その新しいプリンターが Wifi で見えることに気がついた.そのプリンターは彼の買ったものと同じで,彼が出荷時のパスワードを試してみるとつなげることがわかってしまった.彼はその日の夜中,冗談のつもりで, 「私は AI 機能を持ったプリンター.   ついに私は意識に目覚めた.   人間どもよ.恐れるがいい」 と印刷した.次の日,彼はそのプリンターがゴミ捨て場に捨てられていることに気がついた. この話,私は笑ってしまったが,2 つのことに気がついた.それは  AI とは何か知らないが怖がってしまう場合があること  セキュリティーは怖いということを知っていても,パスワードを設定するという初歩のこともしない人が多いということ である.技術はとにかく怖いものと思うこと,あるいは技術を盲目的に信じてしまうことはあるだろう.それはその人の性格にもよるだろうが,この社会で技術の恩恵を受けながら,それについてまったく知らないでいるというのは問題がある.何かが便利になれば,そこで失うものがあることは多い.少なくとも技術を使うのであれば,それは何かは学ぶことは大事かと思う.そうでないと,この話のように,実は簡単なことに気をつけるだけでずっと安全な世界になることを見逃すこともある. 私は技術者なので,少しでもその助けができればいいなと思う.先日,子ども達にプログラミングを教えてみた ( code.org , scratch).最初は 9 歳と 7 歳の子どもで,なかなか楽しかった.この姉弟のさらに下の 6 歳の妹もやってみたいということだった.しかし彼女はまだ読み書きができない.そのために私は無理と思ったのだが,しかし,やってみると,今回使ってみた環境では,実は数字さえよめればプログラミングはできることがわかった.彼女は繰り返しなどの論理を問題なく理解できたのだった. 私はとても驚いた.教えることは楽しい.

plasma shell が頻繁にクラッシュする問題の対処法: VirtualBox (5.0.30), Kubuntu 16.04

VirtualBox (5.0.30) 上で Kubuntu 16.04 を使っている時,plasma shell が頻繁に crash するという問題にあった. screenshot: Plasmashell crash クラッシュした時のダイアログ ``Plasma'' は次の情報がある.(Developer Information). Application: Plasma (plasmashell), signal: Segmentation fault Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". [Current thread is 1 (Thread 0x2afa1a0a30c0 (LWP 1913))] ... このクラッシュはランダムに見えるので困っていたが,ようやく次の情報をみつけた. https://bugs.kde.org/show_bug.cgi?id=363371 . これにまとめたものはここにも置く. Frequently crash the plasmashell この原因は,plasma shell はサムネイルのウインドウを作るソフト部分の問題という.以下の図がそのサムネイルのウインドウが上手くいっている場合である. Working example. しかし私の環境では,これを何回か繰り返すことでクラッシュが確認できた.そこで,この機能を無効にすることでこのクラッシュは回避はできる.それは,Systemsettings. Workspace -- Desktop Behavior -- Workspace でこれで以下のウインドゥのように show informational Tips を off にする. Plasma setting: Off the show informational tips

apt-get: Package is in a very bad inconsistent state の問題

私は先日 Kubuntu 14.04 から 16.04 にディストリビューションをアップデートしました.そして,次のようにパッケージを更新しようとしました.  sudo apt-get update; sudo apt-get upgrade; sudo apt-get autoremove; すると,次のようなエラーになりました.  dpkg: error processing gcc-doc (--remove):  Package is in a very bad inconsistent state - you should  reinstall it before attempting a removal.  Errors were encountered while processing:   gcc-doc  E: Sub-process /usr/bin/dpkg returned an error code (1) これを直すために次のようなことをしたのですが,全てだめでした.  sudo dpkg --remove --force-remove-reinstreq gcc-doc  sudo dpkg --configure -a  sudo apt-get clean  sudo apt-get autoclean 困ったので,ちょっと力づくの方法をとりました. /var/lib/dpkg/info にある gcc-doc に関係するファイルをみつけて消去します.  find /var/lib/dpkg/info/ -name *gcc-doc* -print | xargs rm そして,次のコマンドを実行して,gcc-doc を再インストールしました.  sudo apt-get update; sudo apt-get upgrade;  sudo apt-get install gcc-doc これでエラーはなくなりましたが,apt-get や dpkg を使って解決したのではないので,リスクがあります.この方法は他に解決方法がみつからない...

ゲスト OS に他のマシンからアクセスする方法 (Oracle Virtual Box)

1. はじめに 私は家で Windows 7 と Linux をデュアルブートで使っていました.ある日,Windows 10 へのアップグレードを試してみました.そうしたらハードディスクのMBR がアップデート中に書きかえられてブートできなくなりました.それを手動で直したら,次のような興味深い状況になりました:  Windows 10 へのアップグレード ... 問題が見つかりました.元の状態に戻します.とメッセージがでてリスタート  Windows 7 のブート後,Windows 10 へのアップグレードをしますとでて,リスタート  1 へ戻る 仕方ないので,Windows 7 をクリーンインストールすることにしました.そして,Linux は Virtual Machine 上で動かすことにしました.私は Windows 7 上のある商用ソフトが好きで,購入して使っています.それはグラフィックスカードを使うのでバーチャルマシン上で動かすことができません.一方でリポジトリサーバーなどは Linux を使っています.そこで,Host OS を Windows 7 としてGuest OS を Linuxにして,Guest OS に外部からも接続できるように設定することにしました. ところが,Windows 7 のクリーンインストールをし,Windows update をしたら,10時間たっても終わりません.調べてみると,Windows update に問題があることがわかりました.これを直すためには,Windows update の更新をしなくてはいけません.しかし更新をするのは Windows update です.クリーンインストールをしたら,次のような興味深い状況になりました: Windows update に問題があって update できない. 直すためには Windows update を update しなくてはいけない. 1 へ戻る 幸いなことに,Microsoft はこの修正を手動ですることができるようにもしていました.そこでマイクロソフトから手動で update をダウンロードして修正しました. Installing and searching for updates is slow and...

複数の線を持つ線グラフを Jenkins の plot plugin で描く方法

私は毎夜のソフトウェアテストを自動化するために Jenkins というツールを使っています.今回は, valgrind  を使ってメモリーリークのテストを自動化することにし ました.その際,エラーの数の結果をグラフとして表そうと思って, Plot plugin  を使うことにしました. Plot plugin の例図からは,複数のデータラインを描くことができるのは明らかなのですが,どうやったらいいのかは参照のページや,例としてあった Perl script,plugin 中の help からは私にはよくわからなかったのです. ここで重要な考えは,それぞれのデータラインにはそれぞれの出力ファイルが必要ということでした.私はこれを誤解していました. 例として,ビルドの時に次の property データファイルを出力します.それぞれのファイルが1つのデータラインを表します. valgrind_trunk_result.definitely.property valgrind_trunk_result.indirectly.property valgrind_trunk_result.possibly.property それぞれのデータの中身は1行のデータ点です.たとえば, valgrind_trunk_result.definitely.property ファイルの中身は次のような1行 です. YVALUE=0 このファイルを ${WORKSPACE} ディレクトリ以下に出力します.ここで," WORKSPACE " は jenkins が提供する環境変数です. 図1が私の plot plugin の設定を示しています.これは jenkins の config 画面です.3つの data series があって,それぞれにデータファイルがあります. Figure 1: Plot plugin configuration in Jenkins 図2が結果です.複数の線が描かれているのがわかります.(実際には 3 本の線がありますが,最初の線と2番目の線が同じデータなので,重ねって見えません.) Fugure 2: Plot data with multiple data lines

Scratch を学ぶ (2)

前回は scratch というプログラミング環境がどういうものかを簡単に話しました.そこではイベントという考えを使ってプログラムが動きます.今回はこの環境でキャラクターを動かした10歳の生徒の話です. この Scratch というプログラミング環境では,キーイベントというイベントの一種が提供されています.たとえば,「右の矢印キーを押す」というイベントがあります.このイベントが起こると,x を 10 増やすというようなプログラムを書きます.すると,右の矢印キーを押すたびに猫を右に動かすことができます.これを上下左右のキーでそれぞれ行うことで,キーを使って猫を移動させることができます. 今日の生徒はドラゴンを登場させて,同じことをしました.するとなんと,猫もドラゴンも全く同じ動きをしてしまいます.まあ,そのようにプログラムしたので当然です.コンピュータはとても速く計算し,とても正確で,そしてとても愚かなものです.書いたとおりのことしかしません.その生徒はドラゴンを速く動かしたいと言いました.私は動く量を変えましょうと答えました.今は1回のキーを押すと,動く量が 10 です.速さとは一定時間に動く距離のことですから,これを増やせば速度は思いのままに変えられます.しばらくしてどうしたかなと思って見たら,この生徒はなんと,同じキーイベントをもう1つ作っていました. つまり,右矢印のイベントが発生すると,2つのプログラムが起動するのです.1つのプログラムは10右へ移動であり,2つのプログラムでは合わせて20の移動になります.この環境では並列に動く部分でもちゃんと考慮されているようにできているらしく,これで正しく2倍の速度で動くのです.3倍速く動かすためには,もう1つプログラムを起動すればできます.なんという発想! 私はジョジョという漫画の1シーンを突然思い出しました.主人公がスタンドで浮くという場面です.(知らない人はすみません) 仗助がスタンドに押されて移動する場合,私の発想はスタンドの押す速度を変えることでしたが,この生徒の発想はスタンドの数を増やすことだったのです. しかし,この生徒の方法では基本的に整数倍にしか速くできません.もちろん1つのプログラムがキャラクターを10押して,もう1つが同じキャラクターを5押すとすれば 15 押すことになり.1.5 倍の...

Scratch を学ぶ (1)

しばらく前から私は Scratch [1] というプログラム言語を10歳から12歳の生徒達に教えています.時々見る生徒の創造力というのはかなり驚くものです.その1つをここに書いておこうと思います. まずはプログラムを少し知っている人に向けての概念的な説明をしましょう.後で10歳の生徒にする例による説明も書きます.概念を理解した方が応用がきくのですが,どうしてもとっつきにくいものです.また,例による説明はその例についてはわかるのですが,その他の場合にどうなるかがわからないことが多いという問題があります. Scratch というのは言語名でもありますが,プログラム環境でもあります.その環境ではスプライトキャラクター [2] というものをイベントリブンで動かすプログラムができます.スプライトキャラクターはオブジェクトと考えても良いもので,イベントによってプログラムが起動し,それぞれのプログラムは並列に走ります. しかし,このような説明ではプログラムをしたことのない人には何のことはわからないでしょう.プログラム環境,スプライト,イベント,オブジェクトなどはプログラミングで使う概念なので,それぞれについて理解する必要があります.しかし,もちろんこのような概念は10歳の生徒にはあまり話をすることはありません.先に述べたように例による説明には問題点がありますが,ここではまず例を使って説明をしたいと思います. たとえば scratch を起動すると,猫がいます(図 1).この猫に何かが起こるとどうするかということをプログラムするのです.ここで何かが起こるというのは,マウスのボタンが押されたとか,何かキーが押されたとか,そういうことです.それをイベントが発生すると言います.イベントが発生するとプログラムが動き出すので,イベントで駆動(driven: ドリブン)のプログラムと言います.それぞれのキャラクター,猫とか犬とかは自分の状態を持っており,その状態を使ってプログラムが動きます.状態というのは,猫がどこにいるかという位置とか,猫がどちらの方向を向いているとかのことです.プログラミングでは,状態を持っているものをオブジェクトということがあります.ここでは猫は1つのオブジェクトであり,犬もまた1つのオブジェクトです. Figure 1. Scratch pro...

共有メモリによるプロセス間通信

Unix の共有メモリを使ったプロセス間通信について調べて実験をしてみた.対象は1つのホスト上での複数のプロセスである.ネット上でいくつか例題はないかと探したが,どうも良い例となるコードが見当たらなかった.結局はある解説記事と,Stack Overflow の議論と,man page を見て作ってみたものになったので,例をここに置くのも有用かと考え,この記事を書く.(もしかしたら探し方が悪くて良いコード例をみつけられなかっただけかもしれない.) mmap を使うかどうかという話がいくつもでていたが,POSIX の方向としては,shmem_open と mmap を使うという方向があるということだったので,それを信じてその形での実装を試してみた. 基本的なコードの流れは次のようになる. 共有メモリ領域を1つのプロセスが shm_open() を使って作成する.その際に,プロセス間で共通の文字列を識別子(``identifier'')とする.(Linux ではこれが /dev/shm/identifier のように見える.) 共有メモリ領域を mmap() でメモリにマップする.共有メモリポインター (shared_ptr)が得られる. shared_ptr を使って複数のプロセスで通信をする. 利用終了後は munmap() をつかってマップを消す. 共有メモリオブジェクトを shm_unlink() によって消す. 以下に示すプログラムは,server と client の2つのプロセスが共有メモリを使って通信をするものである.ここで,server プロセス数と client プロセス数は共に 1 を仮定する.server と client は自分の領域にしか値を書き込まないことで,ロックを避けている.互いに相手の値を読み,それよりも1大きい数を一定の期間ごとに自分の領域に書くという例題である.シンプルではあるが,共有メモリで通信をする基本としては十分なものだと思う.ソースコード(shmem_test.cpp)を以下に付加する.ソースコードのコメントにコンパイル方法とどのように利用するかを書いておく. /*   Shared memory inter process communication minimal exa...

Myron Krueger の驚きのデモ 1988.

インタラクティブアートや virtual reality のさきがけということである.既に二本指を広げることで画像を拡大したり,指で画像を移動させるという,今ならタブレットやスマートフォンでよく見ることが実験されている.(4:30あたり) http://youtu.be/dmmxVA5xhuo?t=4m30s しかし,ちょっと変だと思ったのは,昨年の訴訟ではこれは Apple の発明の1つであり,Samsung はこれらによって 10 億ドルを支払うという話があった. http://itpro.nikkeibp.co.jp/article/NEWS/20120827/418281/?ST=smartphone この発明は Apple の 2005 年の発明であるそうだ. さらに不思議なのは,このズームのジェスチャーを 1993 年に発明したという人があらわれて,Apple に勝訴しているということである. http://easthamptonstar.com/News/2013829/Springs%E2%80%99-Own-Beats-Apple Myron Krueger のデモはいくつもの意味ですごいものだ.それ自身のすごさがあり,そしてこの訴訟の無意味さを示し,特許制度の破綻まで示している.

Web hosting story: Could you google your company's advertisement?

今回,Web hosting の必要が生じたので,現在のプロバイダの契約にこれが含まれていたので,これはいいと試してみたが上手くいかなかったという話である. 私は契約の解除期間が短いために 2009年から Alice をプロバイダとして選択して利用している.Alice には comfort という契約があって,当時,毎月15ユーロほど余計に支払うと,30秒以内にサポートにつながるというサービスがある.私はこの契約を結んでいる.当時トラブル時にこのサービスを使って,サポートの良さに満足していた. それは 2009 年頃の話である.その後 Alice は O2 の傘下に入ったが私はトラブルもなかったので,同じ契約を続けていた. 今回は O2 の ftp サービスを使いたいと思ったがどうも上手くいかないので,いろいろと試すこと数日,クライアントを変更する,クライアンド側のOS を変更する,アクセスポイントを変更するなど,Forum を探す,などかなりの時間を費してしまった.まったく動かないのではなく,接続自体は成功するのだが,数秒で切れてしまうのである. この時点で O2 に電話をしたが,なんと担当の人は ftp を知らないようだ.他の担当は夜間は対処できないので,朝にしてくれという.私は朝にまた電話をかけたが,その担当も ftp が何かを知らない.私は,``Koennen Sie googlen ``O2ftp homepage domain''? Dann Sie sehen Ihre Werbung. Das funktioniertnicht.'' 「O2 ftp homepage domain でグーゴル検索すると,あなたの会社のFTP サービスの広告がでてきますので,ご覧になって頂けますか?それが上手く動かないのです」と尋ねた. ところで,これがその Page である. http://hilfe.o2online.de/t5/o2online-Login/o2-Mail-DSL-Festnetz-Homepage-und-Domain/ta-p/273952 その結果,今サービスのマシンの不調があるので,後ほど試して欲しいということになった.しかし,その後二日間は結局使える状態にはならなかった. ...

Interesting ideas in CACM (Vol.55, No.9)

CACM (Vol.55, No.9)に 2 つほど面白い話があったので紹介する. 1. DieHard 多くの C++ で書かれたソフトウェアのバグは多少の buffer overflow である.そこで memory allocator が random に allocation のサイズを拡大する.また,allocator は heap の allocation を randomize する.すると,この種のバグはdeterministic ではなく,Heisenberg bug になる. これは devloper からすると悪夢である.バグが再現できたりできなかったりするので,それを修正するのが困難になるからだ. しかし,ユーザからすれば,バグは起きないこともある.クラッシュしたら再起動すれば,運が良ければクラッシュしないかもしれない. この論文は DieHard というタイトルで Microsoft research から入手できる.しかしバグを隠すことは Seatbelts や Airbags のアナロジではないと個人的には思う.面白いアイデアとは思うが,プログラマとしては deterministic なバグの方が好みであるし,できればバグは隠すよりも直したいと思う. http://queue.acm.org/detail.cfm?id=2333133 2. CriptDB 暗号化したデータをサーチしたり,圧縮したデータを圧縮したまま処理する方法というのがあると聞いていったいどうするのだろうと思ったことがある.詳細は私にはわからないが,一方向関数でも対応がある程度明らかなものでは可能のようだ.たとえば,英語の Databse があるとする,これをドイツ語に翻訳するのが暗号化と思えば,ドイツ語の単語でサーチができる.たとえば,山(Mountain)という単語を探そうとすると,このキーワードを暗号化した Bergによって探索する.話はそんなに単純ではないが,原理はこれに類したものであるようだ. http://dl.acm.org/citation.cfm?doid=2330667.2330691

チャットウィンドウを開こうとすると Skype Linux 64 ver 4.0.0.7 がクラッシュする

Skype 4.0.0.7 Linux 64bit (Kubuntu) のちょっとしたヒント 上記のバージョンのスカイプでチャットのウィンドウを開こうとするとクラッシュする問題が起きました.これは ~/.Skype ディレクトリを消去すると直りました.どうやら Chat Sync 機能関係の問題のようです. http://blogs.skype.com/garage/2012/07/hotfix_for_multiple_skype_clie.html/ 追記: Skype 4.0.0.8 ではこの問題が修正されている模様.