tableに九九を表示するメソッド

以前のエントリーで javascriptの2次元配列の生成 についてwriteln()メソッドを用いて単位行列を表示するスクリプトをアップしました。

今回はその応用でcreateElement() メソッドを用いてtableに九九を表示するスクリプトを作ってみました。

Array.matrix = function (m, n, initial) {
    var a, i, j, mat = [];
      for (i=0; i < m; i += 1) {
        a = [];
        for (j = 0; j < n; j += 1) {
          a[j] = initial;
        }
        mat[i] = a;
      }
      return mat;
}

// ゼロで埋められた 10 X 10 の行列を生成する

var myMatrix = Array.matrix(10, 10, 0);

Array.multiplicative = function (n) {
    var i, j, mat = Array.matrix(n, n, 0);
    for (i=1; i < n; i += 1) {
      for (j=1; j < n; j += 1) {
        mat[i][j] = i + " x " + j + " = " + i*j;
      }
    }
    return mat;
};

// 九九が入力された配列を生成する

myMatrix = Array.multiplicative(10);

// 生成された行列を書き出すメソッド

Array.output = function (m, n) {
  window.onload = function() {
    var mat = Array.multiplicative(n);
    var divId = document.getElementById('result');
    var table = document.createElement('table');
    divId.appendChild(table);
    var tbody = document.createElement('tbody');
    table.appendChild(tbody);
    for (var i = 1; i < m; i++) {
      var tr = document.createElement('tr');
      for (var j = 1; j < n; j++) {
        var td = document.createElement('td');
        td.innerHTML = myMatrix[i][j];
        tr.appendChild(td);
      }
      tbody.appendChild(tr);
    }
    return mat;
  }
};

printMatrix = Array.output(10,10);

WordPressの再インストール

WordPress でJavaScript を動かそうとしてファイルを色々いじったらカレンダーのレイアウトが壊れたのでWordpress の再インストール経緯をメモ。

# service httpd stop
# cp /pass/to/wordpress/.htaccess /home/gusachan/
# cp /pass/to/wordpress/wp-content/uploads /home/gusachan/
# cp /pass/to/wordpress/wp-content/plugins /home/gusachan/
# cd ..
# rm -rf wordpress/
# cp -R wordpress/ /pass/to/wordpress/
# cd /home/gusachan
# cp -R uploads/ /pass/to/wordpress/wp-content/
# cp -r plugins/ /pass/to/wordpress/wp-content/
# cp .htaccess /pass/to/wordpress/
# cp wp-config-sample.php wp-config.php
# vi wp-config.php (データベース、ユーザー、パスワード編集
# chmod 400 wp-config.php
# cd ..
# chown -R apache:apache wordpress/
# service httpd start

一応、[ダッシュボード]-[ツール]-[エクスポート]からデータをエクスポート、uploads ディレクトリをバックアップしてから行いました。

[ダッシュボード]-[更新]にも[再インストール]ボタンがありましたね。(^^;

HTML5とCSS3

HTML と CSS を基礎から勉強しようと思いAmazon.co.jpで検索TOPに表示されたので注文しました。設計思想や体系を学ぶにはオライリーなど専門的な書籍でしょうけど、フロントエンドのスマートフォンなどに対応した最新の技術詳論などは、最新刊が適していると思いポチリました。基礎から学び直すには入門とか初心者向けで良いのでしょうか、とにかくコーディングのサンプルが欲しいですね。

いちばんよくわかるHTML5&CSS3デザインきちんと入門

HTML5 & CSS3 デザインレシピ

Clarity – Zedd

Spotify の Discovery Weekly のプレイリストで見つけたお気に入りの曲、[Clarity / Zedd] をご紹介します。

アルバムは2012年でEDMスキーな人には定番かもしれませんね。何となく聞き流していてアレンジの利いたメロディアスないい曲だと思いました。featuring している人によってgroove感が違ったりするのでオリジナルのアルバムから探してみました。アルバム全体もClarity のimpression を壊すことなくレベルが高いと思いました。

$PATHの初期化

yum で install していると身に覚えのないPATHが登録されていました。そんなPATHを削除するスクリプトを見かけたのでシェアします。
/hoge/hoge2 を削除するとき

export PATH=$(echo -n $PATH |tr ':' '\n' |sed ”/hoge\/hoge2/d” |tr '\n' ':')

参考URL: https://teratail.com/questions/59445

削除したいPATHが多かったり完全に初期化したいとき私の使うコマンドは、unset PATH です。echo $PATH で確認してから残したいPATHを : で仕切ってテキストで保存してから実行します。

# echo $PATH
# unset PATH
# PATH=$PATH/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
# export PATH

危険なコマンドなので自己責任でお願いします。

WP-Snowプラグイン

WordPress 背景に雪を降らせるJavaScript を設置しようとしましたが、canvas タグの挿入場所がわからなかったので同様の機能を持つプラグインを使いました。

WP Super Snow Plugin
https://ja.wordpress.org/plugins/wp-super-snow/installation/

zip ファイルを解凍して、wp-super-snow ディレクトリを ./wp-content/plugin/ ディレクトリに移動。ダッシュボードからプラグインを有効化します。

春は桜吹雪のプラグインを使ってみたいですね。

NTP

いつものようにNTPでLinux の時計を同期しようと、

# ntpq -p

しようとすると同期しないので、

ntpdate ntp.nict.jp

すると the NTP socket is in use, exiting とエラー。
ファイアウォールのUDP123ポートを開放。

# vi /etc/sysconfig/iptables
-A INPUT -p udp --dport 123 -j ACCEPT (追加
# service iptables restart

NTPサービスを一時停止して、ntp.nict.jp に手動で時刻を同期します。

# service ntpd stop
# ntpdate ntp.nict.jp
# service ntpd start

再起動。今度は、

# ntpq -p

出来ました。あんまりずれていると手動で同期しないとダメだった。時計の確認。watch でdate コマンドを1秒おきに実行。

# watch -n 1 date

エスケープするには、Ctrl + C か Ctrl + X で。

参考URL:https://superuser.com/questions/639202/updating-time-ntpdate3108-the-ntp-socket-is-in-use-exiting

http://tech.ckme.co.jp/ntp.shtml

パソコンとインターネット

唐突ですが僕がパソコンを始めたきっかけは、手に職がない失職時に出来ないより出来た方が良いからという理由で、母からの勧めで社会保険事務所のパソコン教室に通い始めたことでした。当時は秋葉原でMicrosoft のOS、Windows95に行列ができ徐々にインターネットが社会に浸透し始めた頃でした。はじめてパソコンを買ってもらったのは2000年でNECのPC-LC50H34DA1でした。

Windows98SE、Celeron500MHz、256MBのRAMで当時はダイアルアップ回線でした。接続するとモデムがピィ~ヒョロロロロと鳴ってYahoo! やinfoseek などのニュースをみたりカードゲームのFAQサイトをよく見ました。テレホーダイといって従量課金接続でも深夜の時間帯は定額制というものでした。

それから電話とネットの2回線を同時に使えて通信帯域2倍という触れ込みの128kbpsのISDNにしました。ターミナルアダプタ(TA)にRS-232Cケーブルで接続してHTMLを勉強してカードゲームのホームページ(笑)を作ったりしました。たしか2004年ごろNECのPC-LR5009Dを買ってもらいました。現在もですがパソコンと言ったらWindowsしか頭になく、Pentium M1.5GHz、768MBのRAM、Windows XPの無線アダプター内蔵で手に入れた当時、ADSL開通とともに広まりつつあったブロードバンドに移行し高速インターネット環境でマイクロソフトのFAQサイトに投稿したり2チャンネルで半年ROMったりDVDドライブで高グラフィック(笑)のPCゲームを遊んだりしました。WindowsFAQなどOSに詳しい人がTips を競い合って技術を共有していました。

しばらく長いADSL生活でフレッツ1.5G、8G、しばらくたって12G、40Gのモアが提供されましたが自宅は回線基地局から遠く離れており転送損失からリンク速度が出ない環境でした。そんなADSLも近年、サービス終了し惜別の感がありますが2006年頃からフレッツ光プレミアムに移行しました。程なくひかりTVに加入しストリーミングライフでしたが、時代はパソコンからスマホに移りiPhone、Androidが主役となりtwitter、FacebookとSNS全盛期に・・・完全に取り残されました。その間何をやっていたでしょうか・・・ネット通販とカードゲームですね。

2009年Windows7 が発売されてパソコンも2010年、SonyのVAIO E(現有機)に。あくまでノートPCな理由は家が狭いからです。2013年、EPSONのNA601E(現有機)。(スペック比較は当ブログ記事 VAIO E vs EPSON NA601E に書きました。)

2台持ちなのは持ち運ぶのが重いからです。2015年、Windows10アップグレードキャンペーンがあって2016年、Surface Pro4 で今に至る。インターネットもフレッツ光プレミアムが2019年にサービス終了とのことでネクストに移行しました。ルーターと無線LANアダプターにボトルネックがあるのか、体感的にはプレミアムとあまり変わりませんね。ニュースサイトもスマホアプリになりGoogle検索でもヒットしないLINEの登場もあり昨今のネット事情は情報発信力のフラット化と瞬時に情報の共有ができる等時性でしょうね。既存のメディアに信頼できない人がアメリカのトランプ大統領を生んだのも時代なのかもしれませんね。

スタイルシートでテーブル制御

JavaScript でHTMLタグのテーブル行<tr id=”foo”>の表示、非表示を切り替えるスクリプト

document.getElementById('foo').style.display = "none";  // 非表示
document.getElementById('foo').style.display = "";      // 表示

テーブル制御するには、同じページのリンクにリロードせずに動的に(onclick)イベント処理をする関数を実装する必要がありますね。本来はPHPが得意な分野だと思った。(粉みかん