このブログを検索

2010/12/10

娘の忘れ物が酷い。

先週は娘(7歳、小1)の忘れ物が激しかった。

火曜日には「図書室で借りた本を道で落とした」事件が勃発し、木曜日には国語の教科書を紛失。
さらに金曜日に保護者会があり妻が娘の学校の机の中をチェックしたところ、枯葉とぐしゃぐしゃになったプリントの山、そして「行方不明だ」と散々主張していたはずの鉛筆17本が発掘された。

実際のところ、図書室の本は「道の途中で落とした」わけではなく机の中にあり、国語の教科書は今週になって、隣の席の子が間違えて持って行ってしまっていたことがわかり、一安心だが・・・。

記憶が曖昧なわが娘。。。。

娘を擁護するために少し説明すると、私と娘とは血縁関係がなく、妻の連れ子である。
生誕から今年の1月(6歳)までをタイ国バンコク都で過ごし、その後わが家族の一員となった。驚異的なペースで日本語を習得し、さらなるハイペースでタイ語を一切忘れて今に至る(もはや発音すらままならない)。

さて、小学校一年生のメモリスペック/インプットプロセスが平均的にどのようなものなのか、世のお母様方にご助言頂きたくもあるが、そもそも「忘れる」ってどういうことなのか。考えてみる。


「×××を忘れた」と書くことはできる、が少し微妙な感じがする。
この発話をする/記述をする瞬間には、「×××」を忘れることの是非/事後対応をすでに判断できているからだ。

「×××を忘れた」(とりにいかなきゃ)
「×××を忘れた」(まあ、特に大したことではないからいいか)

通常はこのように場面が進むと思う。
ということは、この場面内での「×××」の位置づけを、発話者はすでに理解している。

娘について言えば、帰宅後に宿題の本読みを行うにあたって、「教科書がない」ということに気付いた。教科書がなくなった⇒教科書の紛失に気が付いた、という間には、娘の頭に「教科書がどこにあるか」という問いそのものは存在しなかったのだと思う。

これが「忘れる」なのだとすると、考えるべきは、ある場面に遭遇したときに、その場面に「あるべき」もの(構成物)を把握できる力の方なのかもしれない。

忘れ物をしない、というのは、現在その場面に参入していない状態で、近い未来のその場面の構成物を把握できる能力のことをいう...ということなのだろうか。

こんな風に定式化してみると、この能力は未だ来ない未来だけではなく、過ぎ去った過去についても同様で、そしてもちろん、それを把握する私は、今現在の私であるので、今現在の私のバイアスがかかった状態での、場面構成把握となる。

ついでに言えば、場面構成に綻びがある、と感じその穴を思考によって埋めることもある(推論)。

以前、保坂和志(世界を肯定する哲学)などで出てきた、「場所の記憶」の考え方が頭から離れないために、こういう風に感じているのかと思う。

もちろん、これらの考えが娘の忘れ物対策につながる気配はまったくない。

[データベース/SQL] 指定文字位置での置換

SQL Server での Replace/Stuff を使い分ける場面が多々あったため、以下の投稿を参考に。

http://www.sql-master.net/articles/SQL438.html

[VB.NET] 文字と文字コード

私が現在勤めている某小企業のお仕事は、自治体のシステム開発。てなわけで、外字が絡んで文字コードをいじくることが多々ある。

とりわけ辛いのは、既存の数々の外字を、正字(内字)に置き換えるという話。
Unicodeでの外字をSJis範囲の字に同定させ、庁内LANシステムではそれをWebシステムで表示させ、住民の基礎データの閲覧を可能にする、というもの。

すんなりとSJis文字にぴったり合う字があればいいのだが、そもそもそれができないから外字を作成し続けたわけで・・・同定のやり直しは予想通り多発している。

というわけで一年のスパンを経て、外字ー内字の同定ツールを改良しているわけだが、ど忘れしている自分に気が付いた。私には備忘録が必要だ。

「BA19」などの16進数文字コードを、10進数変換、それを文字化するというだけなのだが。


全ては時の中に・・・ VB.NET 基数変換
http://blog.livedoor.jp/akf0/archives/51354842.html

MSDN chr / chrw 関数 ⇔ Asc / AscW関数
http://msdn.microsoft.com/ja-jp/library/613dxh46%28VS.80%29.aspx

VB.NET
 'BA19 などの16進数文字コードを10進数に変換
  Dim val As Integer = Convert.ToInt32("BA19", 16)
  txtMoji.Text = ChrW(val)
 '逆パターン 文字からUnicode16進文字コードを取得
txtCode.Tag = Hex(AscW(txtMoji.Text))
この作業がメインとなる。


さてさて、そもそも外字というのは必要なのか?という問題がまず根底にあるのは間違いない。

XMLで解決する外字問題
http://www.atmarkit.co.jp/fxml/rensai/frontier02/frontier02.html

少し古い記事だが、問題提起は今でも生きている。

2010/12/09

[JavaScript] 正規表現でパスワード検証

JavaScript(jQuery)でパスワード入力時の、ポリシー検証をすることになったので、備忘録。

とりあえず、大文字・小文字・数字・記号(いくつかは使用禁止)を、それぞれ最低一つずつ織り交ぜる、ということで↓
var reg = /(?=.*[A-Z]+)(?=.*[a-z]+)(?=.*[0-9]+)(?=.*[許可する記号]+).+$/;
  if ($("#hoge").text().match(reg)) {
        alert("That's Right!!");
  };
のようになる。

はじめはVB.NetとASP.NETで実装していたが、少しはまってしまったのは、

var reg = /(?=.*[A-Z]+)(?=.*[a-z]+)(?=.*[0-9]+)(?=.*[+=-\']+).+$/;

これだとどうも-(マイナス)がJavaScriptだと引っかかるので、エスケープが必要なようだ。
可視化してくれるstrfriendがないとここに気づくのにさらに時間がかかったかも。→http://strfriend.com/

と、満足していたところ、ほんとのところはどうも
「大文字・小文字・数字・記号のうち、いずれか3種類があればOK」とのこと。
var reg = [/(?=.*[A-Z]+).+$/,/(?=.*[a-z]+).+$/,/(?=.*[0-9]+).+$/,/(?=.*[許可する記号]+).+$/];
  var cnt = 0;
  
  for (i = 0; i < 4 ; i += 1) {
      if ($("#hoge").text().match(reg[i])) {
        cnt += 1;
  };
  if (cnt >= 3) {
      alert("That's Right!!");
  };
  }

という感じで落ち着いた。

2010/12/05

家庭内委託開発 その1が始まる。

プロジェクト名: ZuboraMenu
妻から依頼がきました。
なんでも「一週間の夕飯のメニューなんだけど、ワンクリックでぱぱっとランダムに出せるものがほしいな。あ、あと材料と材料費総額も出てくれるとなおベター。」とのこと。

そういえばクックパッドやらレシピサイトは、材料なんかから一つの料理レシピしか出ないしね。

私、半年ほど主夫やっていたのですが(妻は10:00 AM ~ 夜中まで勤務)、夕飯のメニュー考えるのはなかなかに難しかった記憶がある。まあ、子どもは生まれる前だったので、時間はたっぷりあったからなんとかできたけど。

そして今は妻が主婦で子どもが2人いる状態で、私、某中小企業へ出勤する直前に
「ねえ、今夜なに食べたい??」
と聞かれてる。

世の中のお父さんたちも一緒だろう、そんな時は「なんでもいいよ。」

この答えはまずい、いや、まずいというか困る。作る人が。

「相手の気持ちになって考えて行動しろ」と7歳の娘に日々言っている私としては、この返答はやはりまずい。

ということで、愛する妻に送るZuboraMenuを作ってみようと思う。

世間様にこのソフトの需要があるのかは不明だが、一応一般公開を目指します。

2010/12/04

ブログ始める。

ブログを始めてみました。世間はTwitterやらFaceBookやら、ソーシャルメディアが主流なのに、今さら感があるけど。

当面は自分のプログラミング関連のメモや、読んだり考えたりしたことの備忘録になるでしょう。万が一読んで頂けたなら、コメント残してくださいませ。