自分用メモ
文書作成のための自分用メモ www.kumikomi.net
サーチエンジンクライシス
ちょっとだけ昔話を書きたくなった。 2000年始めのころ、まだサーチエンジンといったらinfoseek,goo,exciteだった。一部の詳しい人が「最近おもしろい検索エンジンがあるんだけど。googleっていうんだけどさ」ってなかんじでまだググレカスなんていう言葉ができる前の時代。 そのころのSEOなんてページ下部に単語をページの背景色と同色にしてつらつらと並べただけの単純なものだった。そのころの検索エンジンは簡単だったのでそれだけで効果があった。だんだん検索するとそんなゴミみたいなページばかりがヒットするようになって、このままじゃインターネットは便所の落書きみたいになってしまうんじゃないかと危惧されていた。 でも、ちょうどそのころにgoogleが突如彗星の如く現れてそんな心配は払拭された。もっともすごすぎて他の検索エンジンが対抗できないまま消えてしまい、グーグル村八分なんて言葉も出るくらいになってしまった。
googleは登場以来優秀な検索エンジンであり続けてきた。そしてこれからもそうであり続けるのか。わからないけど他に比肩するほどの検索エンジンがない以上もしgoogleが負けたらそれはウェブがゴミの山になることを意味してて、非常に残念なことになってしまうと思う。だから、googleには頑張ってほしい。
CentOS 6.8でVNC接続するとXが切断される。
自宅のファイルサーバーで先日yum updateして以来VNC経由で ログインすると不定期に画面が真っ黒になってログイン画面に戻ってしまう。 いろいろ調べたところ、バグのようだ。
Bug 1337067 – gdm xdmcp session dead
とりあえず直接サーバーにログインすればいいのでバグが修正されるのを待つとしよう。
Structorizer
NSチャートというものがある。プログラムのフローを箱の入れ子で表現したものである。フローチャートは複雑な処理になると流れが読みにくくなる、同じアルゴリズムでも書き方によって見た目が異なる図ができるという問題がある。 それに比べ、NSチャートはより実際のプログラムの構造に近い形で記述できるので同じような図にないりやすい。ただし、goto,breakのようなジャンプ命令の表現がうまくできない(と思う)。 NSチャートの欠点として処理の一部を修正しようとすると、どうしても全体的に書き直さなければならない点がある。手書きだと大変面倒でNSチャートがあまり使われなかった理由なのだろう。
NSチャートが記述できるフリーソフトがないかと探していたところ、Structorizerというルクセンブルグ生まれのソフトを見つけた。
ライセンスはGPL。Javaで作られている。言語の設定は英語以外にフランス語、ドイツ語、中国語等に対応している。日本語は残念ながら対応していない様子。なので英語設定で使うがチャートに日本語を入力しても問題なく表示される。構文の初期設定がなぜかフランス語になっている。
なので設定を変更して英語に直した。
作成したNSチャートはPNG,EMF,SVG,PDFの形式で出力可能。また、CやJavaのソースコードとして出力可能である。 例えば下のようなNSチャートをCのソースとして出力すると
次のようになる。
// function isLeapYear( int year ) // Generated by Structorizer 3.24-14 #include <stdio.h> // うるう年か判定する // TODO: Revise the return type and declare the parameters. int isLeapYear(int year) { // TODO: declare your variables here: // TODO: // For any input using the 'scanf' function you need to fill the first argument. // http://en.wikipedia.org/wiki/Scanf#Format_string_specifications // TODO: // For any output using the 'printf' function you need to fill the first argument: // http://en.wikipedia.org/wiki/Printf#printf_format_placeholders if (year % 100 == 0) { if (year % 400 == 0) { return true; } else { return false; } } else { if (year % 4 == 0) { return true; } else { return false; } } }
NSチャートの欠点である修正が面倒な点も編集ソフトがあれば気にならない。プログラムの設計をする際にNSチャートを使ってみようと思う。