[news]ケータイが執事になる、ドコモの新サービス「iコンシェル」が発表

うわぁ。携帯キャリアとまさかの正面衝突。

iコンシェルでは、羊のキャラクター「ひつじのしつじくん」が待受画面に現れ、プッシュで送られる情報が画面に表示されるので、それにアクセスすることで詳細情報が得られる仕組み。
ケータイが執事になる、ドコモの新サービス「iコンシェル」が発表 | 携帯 | マイコミジャーナル

ヒツジの執事は….
夢夢色TOWN | ひつじ執事さん
←ボクが先月お願いして描いていただいていたイラストです。
電話番号入れたら住所引っ張ってくる機能とか、ボクが思っていたものそのまま…orz

先を越されたのは悔しいです。でも、つまり自分の見ていた方向性は間違っていなかったと言うことだし。もし自分が作っていたら、アドレス帳に勝手に情報追加とかはとても出来なかったはずなので、キャリアさんがやるというのであれば、楽しみに見ていようと思います。

[mysql]Table ‘mysql.procs_priv’ doesn’t exist

mysqlをアップグレードしたらば。

mysql> FLUSH PRIVILEGES;
ERROR 1146 (42S02): Table 'mysql.procs_priv' doesn't exist

こういうエラーが出るようになった。

たぶんmysqlを4→5にアップグレードしちゃったことが原因。yum一発アップグレードは怖いなぁ。

ともあれ、Table ‘mysql.procs_priv’ doesn’t existでググったら、

MySQL Bugs: #9934: DROP USER fails if mysql.procs_priv doesn’t exists
というのが出てきて、冷たいことを言われた末に、

If you encounter this after an update, run mysql_upgrade_shell command: it will create the missing table.
(アップグレード後にこのエラーが出たんだったら、mysql_upgrade_shellコマンドを走らせろ。それで欠けてるテーブルが作成されるから)

ということになっている。

(当然バックアップをとってから)やってみた。

[furukawa@www ~]$
sudo mysql_upgrade_shell --verbose --datadir=/var/lib/mysql --user=root --password=****
Running /usr/bin/mysqlcheck  --password=**** --check-upgrade --all-databases --auto-repair --user=root
expressionengine.exp_actions
error    : Table upgrade required. Please do "REPAIR TABLE `exp_actions`" to fix it!
expressionengine.exp_captcha
error    : Table upgrade required. Please do "REPAIR TABLE `exp_captcha`" to fix it!
expressionengine.exp_categories
error    : Table upgrade required. Please do "REPAIR TABLE `exp_categories`" to fix it!
expressionengine.exp_category_field_data
:(略)
mysql.time_zone_transition_type                    OK
mysql.user                                         OK
This script updates all the mysql privilege tables to be usable by
the current version of MySQL
done

REPAIR TABLEする必要があるらしい。

[furukawa@www ~]$ mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 82
Server version: 5.0.68 Source distribution
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> use expressionengine;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> REPAIR TABLE `exp_actions`;
+---------------------------------+--------+----------+----------+
| Table                           | Op     | Msg_type | Msg_text |
+---------------------------------+--------+----------+----------+
| expressionengine.exp_actions    | repair | status   | OK       |
+---------------------------------+--------+----------+----------+
1 row in set (0.00 sec)
:(略)

以下、この調子でテーブルを片っ端からREPAIRしていく。

columns_priv以降のテーブルはmysqlデータベースに入っている。

mysql> use mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> REPAIR TABLE `columns_priv`;
+--------------------+--------+----------+----------+
| Table              | Op     | Msg_type | Msg_text |
+--------------------+--------+----------+----------+
| mysql.columns_priv | repair | status   | OK       |
+--------------------+--------+----------+----------+
1 row in set (0.00 sec)
:(略)
mysql> exit
Bye
[furukawa@www ~]$
sudo mysql_upgrade_shell --verbose --datadir=/var/lib/mysql --user=root --password=****
mysql_upgrade already done for this version
This script updates all the mysql privilege tables to be usable by
the current version of MySQL
done
[furukawa@www ~]$ mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 84
Server version: 5.0.68 Source distribution
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

これでいいらしい。あんまり自信がないのだけれど、エラーメッセージでググった時に日本語の情報が出てこなかったので、とりあえずブログにあげておきます。

[メイドめーる]反響とお問い合わせへの回答

Secretary bird by Lip Kee

 おかげさまで、メイドめーるの登録者は、今朝の段階で1400名に到達しました。
使っていただくうちに問題点も見えてきたので、緊急度の高いものから順次対応させていただいております。

機能追加と不具合修正

ユーザー登録削除できるようにしました。

→ログイン後、「ユーザー登録情報を削除(退会)する」で削除できます。

範囲指定の予定があった場合に朝のメールが届かないことがあった

→ちゃんとメールできるように修正を行いました。

複数予定があった時のメールが見にくかった

→改行入れました(単純ミスです。ごめんなさい。)
 また、開始時刻でソートして表示するようにしました。

お問い合わせと回答

あと、ブログなどでメイドめーるを見た方からいただいた感想、あと、メールでいただいた問い合わせのうち、公開した方が良さそうなご意見などをまとめました。

なんでメイドなんだ

 萌えは大事な日本の輸出産業ですっ!

パスワードを忘れた

 パスワードリマインダは必須ですね。今追加しているので、ちょっとお待ちくださいませ。
今ログインできなくて困っている方については、メールいただけたら個別に対応させていただいております。

なお、先週前半、登録に失敗する不具合の際に、複数ユーザーアカウントが出来てしまってログインできない方が出現しました。
これについては、すでに解決済みなので、先週ログインできなくてあきらめてしまった方、もう一回試していただけるととても嬉しいです。

メイドじゃなかったら使うのに

執事が欲しい/ツンデレが欲しい

 やっぱり(笑)
そういうご要望があることは把握しているので、ちょっとお待ちくださいませ。

メールを送った時のタイトルについて

 文章にwhat(~が)があるとタイトルとして使うようにしているのですが、あんまり意図通りにならないことが多いみたいです。
改善考えているので、これもちょっとお待ちくださいませ。

メールを送った時の時刻について

 今のところ、日付はとれても時刻がとれないので、メタデータさんに機能追加をお願いしているところです。

[紹介]第11回OBIIミーティング「はてなブックマークPR大作戦」

先日書いた「はてな流大規模データ処理」を見てきたに大量のブックマークをいただきました。どうもありがとうございます。

「はてな流大規模データ処理」を見てきた

勝手に分析すると、関西で行われるイベントだったので首都圏の人があまり見に来られない状態で、みんな大好きはてなのお話、という条件がおいしかったかな、と思っております。
技術的にも大変興味深かったし。

ところで、東京にいた頃大変お世話になっていたOBII 大手町ビジネスイノベーションインスティテュートの関西発のイベント「第11回OBIIミーティング「はてなブックマークPR大作戦」」が11/29に開催されます。

OBII 大手町ビジネスイノベーションインスティテュート: 第11回OBIIミーティング「はてなブックマークPR大作戦」

関西で行われるはてなのイベント、ということで二匹目のドジョウの条件がそろっておりますので、興味のある方は是非どうぞ。

[メイドめーる]登録に失敗するバグを修正

GIGAZINEに載った!
先日公開したメイドめーるですが、GIGAZINEさんに取り上げていただいたおかげで、想定を上回るユーザーさんに登録いただいております。
毎朝メイドさんからGoogleカレンダーの予定がメールで届く「メイドめーる」 – GIGAZINE

ところが、101人目以降のユーザー登録に失敗してしまうバグがあったため、たくさんのユーザーさんが、登録できないでエラーになっちゃっているようです。ごめんなさい。

この不具合は、先ほど修正されました。

登録しようとしてエラーになった方は、中途半端に登録が完了した状態になってしまっているので、お手数ですが、以下の手順で登録し直していただくようお願いいたします。

  1. メイドめーるにアクセス。
    メイドめーる

  2. 登録したユーザー名とパスワードでログイン
    login.PNG

  3. 「ユーザー登録情報を削除(退会)する」をクリック
    config.PNG

以下、確認画面で「削除」を押すと登録情報が削除されるので、再度ユーザー登録していただくことが出来るようになります。お手数おかけしてしまって申し訳ないですが、よろしくお願いいたします。

メイドめーるを公開

メイドめーるというアプリケーションを公開します。

メイドめーる

メイドめーるは、Googleカレンダーの予定を毎朝、携帯電話にメールしてくれるサービスです。
朝のメール

メールに返信することで、新しい予定を登録することも出来ます。決まったフォーマットでなくても、打ち合わせのメールをそのまま転送すればOK。
こんなメールが
こんな予定に

ユーザー登録しなくても、メールの内容の解析だけ試してみることが出来るので、よかったら試してみてください。
試してみる – メイドめーる

技術的な中身とかは、関西Ruby会議01でお話しした資料があるのでこっちをご覧くださいませ。

メイドめーる

View SlideShare presentation or Upload your own. (tags: kof2008関西ruby会議01)

「はてな流大規模データ処理」を見てきた

(2008-11-11 21:06:05追記)
naoya さんが資料を公開してくださいました。
KOF 2008 の発表資料 – naoyaのはてなダイアリー
(追記おわり)

(2008-11-19 19:25:24追記2)
Codegineにレポートがあがりました。
「実現したいことを計算機の問題に置き換えることが『技術力』」、伊藤CTOが”はてな流”大規模データ処理の極意を語る:CodeZine
(追記おわり)

KOF2008:関西オープンソース2008というイベントに来ています。
はてなのnaoyaさんの講演があったので、講演メモを公開。

#ボクがメモした内容であって、100%言ったとおりに書いてあるわけじゃないので、参考としてご覧ください。

(続き)

“「はてな流大規模データ処理」を見てきた” の続きを読む

WebTeko2に行ってきた。

神戸でWebについて語るイベント、ウェブテコの第二回に行ってきました。
前回のExpressionEngineに続いて今回は、透過pngについてお話ししてきました。
IEpngFix.pdf

簡単な方として説明したIEpngFixはこちら。
ユンサンの/융상의/YungSang’s: 透過PNG と IE と IE7 まとめ

高機能版のIE PNG FIX v2
IE PNG Fix – TwinHelix

あと、懇親会の時に、透過pngを使ったサイトの例をもっと見てみたいとのご意見をいただきました。軽くググってみると、こういうまとめを発見。
透過をきれいに使ったウェブデザインいろいろ – DesignWalker

参考にしてくださいませ。

メールアドレスのミスを指摘してくれる入力フォーム

#この記事は、[javascript]Re:入力ミスを減らすメールアドレス入力フォームの作り方 – もぎゃろぐで紹介したものをまとめ直したものです。

指摘例

お問い合わせフォームとかイベントの申し込みなどで、ユーザーさんにメールアドレスを入力していただく場面はたくさんあると思うのですが、ユーザーさんは結構な頻度で入力ミスをします。
で、その間違いをその場で指摘できたら、入力ミスが減るんじゃないかということで、ありがちな間違いを指摘してくれるライブラリというのを作りました。

試してみる


メールアドレス:

mogya@example.co.jpではないですか?mogya@example.cojpと入力されています。


“mogya@example.cojp”(ドットが一個抜けた)とか、”mogya@example.co”(.comのmが抜けた)とか、”mogya@gmai.com”(gmail?)などを入力してみてください。入力欄を抜けた時点で指摘が表示されます。

ダウンロード

checkEmail.js

使い方

 普通のメールアドレス入力欄はこんなタグで出来ているかと思います。

メールアドレス:
<input type="text" name="email"/>

これをこういうふうに変えてください。

メールアドレス
<input type="text" name="email" id="email_input"/>
<p class="warn" id="mail_error_msg"></p>

つまり、

  • メールアドレス入力欄のinputタグのidを”email_input”にする
  • 警告メッセージを表示できるように、”mail_error_msg”というidのpタグを用意する

あとは、タグの中で、

<script type="text/javascript" charset="UTF-8" src="checkmailaddress.js}"></script>

という具合にライブラリを読み込んであげれば、ライブラリが入力フォームにイベントを設定して、入力されたメールアドレスのチェックを行います。

ライセンス

このライブラリは、パブリックドメインに寄付してしまいます。使いたい人は自由に使ってくださいませ。著作権表示もリンクも不要です。