‘コンピュータ’のエントリ

はっぱさんと第4回Arduino Workshopを開催。といってもここまでくると外での作業は難しいので情報交換だけなのだが。で,電子工作マガジン2015年夏号内のBasicマガジンにはっぱさんのIchigoJamプログラムが掲載されていることが判明。素晴らしい。ベーマガページも大幅増量で,これは別冊化からの独立の流れで復活もあるか?

BasicマガジンはBasic投稿プログラムを載せていた雑誌で,1982年創刊2003年休刊。私の幼稚園以来の愛読書,2回ほどPC98プログラムを掲載してもらったこともある雑誌で,この雑誌がなければウェザタイはなかったし,職業も違いそう。今度イベントがあるようなのでチケットトライしてみようかな。

IchigoJamは,自作Basicマイコンと言えばいいのか。自作と言ってもチップのハンダ付けからやるレベルの自作なんだけど,メモリ4KBでBasicを組むという8bitマイコンもびっくりの内容。当時使ってたPC6001でも16KBだった。ではっぱさんのプログラムを見ていて当時を思い出したのだが,少ないメモリで動作し,雑誌掲載のために短く組むテクニックをいろいろ思い出した。電子工作マガジンで小学生がこのテクニックを使っていたんだけど,既にそこまでの投稿レベルになってるのか。

  • 命令は省略形を使う。PRINTは5バイトもくうので「?」で1バイトにする
  • 同じ理由で変数は短くする
  • IF文は遅いので極力論理式を使う。true:-1,false:0を計算式に組み込む。分かりやすい例でいうと「x = x + 128 * (x > 127)」とか。
  • 行数が多いといろいろ不利なのでマルチステートメントを使う。できるだけ1行に詰め込むってことですね。

あとはどうしようもなくなったらマシン語を埋め込むとかPEEK/POKEでシステムのメモリを直接読み書きするとかですかね。全体的に,C言語でこんなことしたら怒られる感じですね。

WT3テスト公開して,日々バグ報告が挙がってきている。致命的な問題も既にいくつか挙がっていて,すごく助かる。テスティングのクラウドアウトソーシングってことですね。単に他人にテストしてもらっているとも言えるけど,開発者としてはテストリソースが足りないのを補えて,ユーザとしても早く使えて貢献もできるという方法で,双方にメリットがある気がする。

今はまだバグ報告系のものが多いけど,使いづらい系の指摘も募集中ですので,使い慣れてしまう前に指摘よろしくです。その辺の指摘が欲しくて,あえて使い方を何も説明していなかったりもします。

Weather Typing 3をテスト公開。テストに参加して頂ける方は以下からダウンロードしてください。

Weather Typing 3テスト公開用ページ

まだまだバグが残っているので,バグを発見した方はtwitterでもメールでも何でもよいので,連絡よろしくです。

Twitterにも書いたけど,Weather Typing 3のテストバージョンは今月末に公開予定。一ヶ月テストして,9月正式リリース,その後新コンセプト版を検討かな。

WT3プロジェクト開始以来ずっと考えていた新コンセプトが決まった。「タイピングの奥深さが分かる仕組みと競い合う場」という感じで,いろんなタイピング要素を許容した上で,それを「ワードを早く打ち切った方が強い」の単一の価値基準で競うというもの。

タイピング要素は,TODみたく動体視力とか反射神経とかタイピングに関係の薄い要素は排除して,WTらしくガチな要素。例えばどんな入力方式か,ローマ字のカスタマイズの最適化,どれだけ難しいワードを打ったのか,など。今までも結局はこの辺りの要素が含まれて対戦結果が決まっていたわけだけど,それを,見て分かるようにしたい。今までのWTだと「早いなあ」で終わりだったのだが,「上級者はこんなことしてるのか」というのが分かるように。

で,コンセプトが決まった後いろいろなアイデアが出てきているのだが,どうしよう。締切まで時間がないのと,このコンセプトだとWT2ネットランキングのリセットが必要なんだよね。一旦WT2を使いやすくした版を作ってから別ものとして出すか迷い中。

余談だが,このコンセプトまでくるのにはいろいろヒントがあったわけで,それぞれ感謝。
・タイピング同人誌でタイピングの奥深さを知ったこと
・タイピングサミットでもらった要望の中の隠れた需要
・折角作るなら戦略性を上げて対戦特化すれば? というY氏のアドバイス
・ぷよぷよ(?)

WT3。スコアファイルの構成が決まった。ついでに公開鍵を使って私が署名したファイルだけをアップロードできるようにしてみたり。掲示板でちょうど指摘があったけど,ワードのランダムアルゴリズムもDRBGを使ってワードを原理的に予測不能にしたりして暗号技術をふんだんにつかっている。今時のアプリ開発ではこういう技術は必須ですね。

TOEICに続いて情報処理試験の結果発表。エンベデッド合格してた。NW,DB,SC,ENを取ったのでスペシャリスト系は制覇か。後は論文系なんだけど,今のところ勉強するモチベーションがないのでここまで。

対戦もローカルで動いてきたのでインターネットを介した対戦をしてみた。が,結局対戦はうまくいかず。UXとかバグとかいろいろ課題が分かったので,テスト公開はもう少し修正してから。

課題の一つで,TextBoxの挙動がおかしいというのがあって,以下のようなTextBoxを作ると,IME変換中にIME入力すると,それまでに入力した文字が消えてしまうと言うもの。どうもUpdateSourceTriggerがIME変換時もProperty変更だと思っておかしな動作をするっぽい。


回避策だけど,UpdateSourceTriggerを手動でやればいいかと思って,以下を作ってUpdateSourceTriggerを消してみた。

public class IMETextBox : TextBox
{
    protected override void OnTextChanged(TextChangedEventArgs e)
    {
        GetBindingExpression(TextBox.TextProperty).UpdateSource();
        base.OnTextChanged(e);
    }
}

この後IME変換中だったらUpdateSourceしない処理を付けようとしてたんだけど,何故か上のコードだけでちゃんと動いてしまった。なんか将来動かなくなりそうだけど今は時間がないのでこれで。適当な対策なので,使う場合はWPFのソースを見て原因を調べてから使って下さい。そして原因を教えて下さい。。。

そういえば調べようと思って忘れていた。前回の日記でラジコンを作ったときに,モータへの電源は6Vを入れている。これは,TA7291Pの電圧降下が2.5Vくらいあるらしいという情報を見てとりあえず6Vにしたのだが,本当のところどうなのかをテスターで計ってみた。結果,TA7291Pへの入力をPWMで最大出力255にしたときに2.9Vだった。ダブルギアボックスの説明では3Vで動かせと書いてあるので丁度いいようだ。ていうか3.1Vも降下してるけど何か変なのかなあ。

人工知能は人間を超えるか」 (松尾 豊) を読んだ。いわゆる人工知能(アルゴリズム)ではなくて人工生命(思考,意識)に近い方の話。自分は大学でニューラルネットを研究していて,数年前に脳関連の本を読みあさったまま中断していたが,最近ディープラーニングが話題なので詳細が知りたくて。

結局ディープラーニングは特徴量を探すことができるようになりました,ってことなわけで,それ自体はこの本にも出ているPalmの創始者ジェフ・ホーキンスの「考える脳 考えるコンピューター」とかスティーブ・グランドの「アンドロイドの脳」でなんとなくできたよ,くらいにはなっていたように思うけど。

私が数年前に考えていたのは,その先,どうやって意識に持っていくかというところで,Googleが猫を猫と判定しても,それが敵と思って逃げるのか,かわいいと思って近づくのかを実現したいわけで。するとどうしても本能的なところが必要になって,現実世界に身体を持たないと難しい,というところで止まっていた。といっても遺伝的アルゴリズムで自然淘汰をするのは数億年かかりそうだし。その辺は「人工知能は人間を超えるか」にも書いてあったけど必要だよね,くらいだった。

最近Arduinoをやってるのも,現実世界からセンサで情報を取り込んで,モーターを動かすのをニューラルネットでやって何か面白いことできないかなあ,というものなので,ウェザタイを作りつつ勉強再開しているところ。

Weather Typing 3 の対戦部分を作っているが,C#のソケットは同期関数と非同期関数がある。通信中にUIをブロックしたくないので,BeginConnect~EndConnectなどの非同期関数を使うのだが,相当めんどう。処理がその場で終わらないので処理の続きは基本コールバック関数になる。するとイメージ的には以下のようなワケの分からない処理になってしまう。実際には再AcceptとかするのでLambda式では書かないけど。

class Server
{
	Callback OnLogin;
	Callback OnError;

	void Start()
	{
		try
		{
			BeginAccept(() =>
			{
				try
				{
					BeginReceive(() =>
					{
						try
						{
							if("login")
							{
								OnLogin();
							}
						}
						catch(Exception)
						{
							OnError();
						}
					});
				}
				catch(Exception)
				{
					OnError();
				}
			});
		}
		catch(Exception)
		{
			OnError();
		}
	}
}

Analog Book Readerでも非同期処理で苦しんだけど,WindowsRTの場合はだいたいの関数がawaitできるのでまだよかった。同じ事をするのにこんなにすっきり書ける。

class Server
{
	Callback OnLogin;
	Callback OnError;

	async Task Start()
	{
		try
		{
			await Accept();
			await Receive();
			if("login")
			{
				OnLogin();
			}
		}
		catch(Exception)
		{
			OnError();
		}
	}
}

ゴールデンウィークで捗ったのでWeather Typing 3の進捗。ひととおり対戦ができるようになった。まだ旧ウェザタイの対戦を真似して作り直したところなので新しいことはあまりないが,画面の大きさを変えたり,一対戦ごとにルールや対戦相手を変えたりはできるようになっている。安定化したら一度テスト公開しようかな。

対戦モードはシングル,インターネット対戦,LAN対戦,ロビー,CPUの5つ。インターネット対戦は,ロビーを使うことでIPアドレス指定を不要にしたモード。IPアドレスが必要な場合はLANモードで直接指定もできる。

2015043001

2015043002

2015043003

denasu.comにGITサーバをたてた。Visual Studio 2013になったときにVisual Source SafeからGITを使うようにしたのだが,ローカルリポジトリからリモートリポジトリへ変えた。今までメインPCとモバイルPCで開発するのにOne Driveを使って同期していたのだが,zipにして全部コピーして面倒だった。これでファイル毎に楽に同期できる。

Visual Studio 2013はSSHに対応していないのでどうしようかと思ったが,結局gitプロトコルでアクセスすることにした。ただ,gitポートを開けるのはセキュリティ的に問題があるので,ポートフォワーディングすることに。9418をSSHポートフォワードしたSSHクライアントを起動して,「git://server/・・・.git」にアクセスすればOK。

アメリカ出張。飛行機の中で,Twitterで話題?のちきりんさん著「マーケット感覚を身につけよう」を読んだ。自己啓発書なんかは読まないからよく分からないけど,この本は多分そういうのとは違う気がする。

この本はマーケット感覚(価値の見つけ方)が主題の本だけど,お金が発生しないことでもあてはまることが説明されていて,自分の場合はフリーソフト作成にあてはまる。そこで,フリーソフト作成とマーケット感覚について考えてみたのでここに残しておこう。飛行機で映画見ない人はひたすら何かを考えてしまうわけですね。

フリーソフトというのは,自分のために作ったソフトを公開して,同じことに困っている人にも使ってもらおうという趣旨のものだが,ユーザは多い方がフィードバックももらえて作者もユーザも嬉しい。ただ,フリーソフトの性質上,万人に受け入れられるものではなく一部の人が嬉しいものなので,狭い市場でどれだけピンポイントでユーザに届けられるのかというのを考えないと,全く知られずに終わってしまう。

フリーソフトの価値

そもそもフリーソフトの価値って何? という話になるのだが,今まで漠然と考えていたのは以下。

企業が作るもの:

  • 万人受けするものを作らないと規模が出ないので,一部の人だけが満足するようなソフトは作りづらい
  • 作成者がユーザであることは希で,受注だったり上が決めた企画だったりするので,ユーザの感覚と開きが大きい

フリーソフト:

  • 採算度外視なので,一部の人しか満足しないようなソフトでも作れる
  • 作成者がユーザであることがほとんどなので,ユーザの感覚を熟知している

ゲームだと制作者の熱意によってまた違ってくるかも。個人的には,企業が作ったものはライトに使う分にはいいけど,ヘビーに使おうとすると使いづらい。逆にフリーソフトはその分野を知っている人ほど使いやすい印象。代表例だと,TV/DVD視聴ソフトとか電子書籍リーダーなんかは単なるコンテンツのおまけ程度で,使う人のことを全く考えていないUIが多い。

てことで,1年前に作ったAnalog Book Readerでは,そこの不満を解消するために,ユーザからしたらこういうのが欲しいんだよ,的な電子書籍リーダを作った。その辺は以前の日記で書いているのでいいとして。ただ,ダウンロード数はあってフィードバックももらっているんだけど,いまいちフィードバックをもらって解決して,的なループまでいっていない。

成功例

14年前,学生の時に作ったWeather Typingはマーケットをあまり意識しないで作っていたが,たまたまタイピングコミュニティの人達に届いてフィードバックをたくさんもらい,一緒に育てることができた。これを再度分析してみる。

Weather Typingは,当時SEGA ザ・タイピング・オブ・ザ・デッドをやり続けて,タイピング対戦だけに特化したソフトがあればいいのに,というきっかけで作ったが,対戦ができることが価値かというとそうではないんだろう。

その後,GANGASさんで紹介してもらってタイピングゲームのコミュニティから使ってもらうようになり,掲示板で議論しながら対戦機能を完成させていった。SWOTっぽく分析すると

  • 企業とは違い,作者がユーザに近いところにいるのでリアルなフィードバックが得やすい位置にいる
  • 作者自身がユーザなので要望の取り込み方,取捨選択の基準がしっかりしている
  • 学生で時間があるので,ロビーサーバでユーザとチャットしたり実際に対戦したりできた

という強みがあって,

  • 当時できつつあったタイピングソフトユーザのコミュニティ
  • TVでタイピングソフトが取り上げられて,ちょっとした流行になっていた

という環境があって,

  • 作者に直接要望を言えて,
  • タイピングソフト利用者にとって違和感なく実装してくれる

という価値をユーザに提供していたことになる。と思う。で,フィードバックを実現していくことで,「この作者に要望を出せば理想のソフトができる」という信頼を得られ,さらにフィードバックが来るようになり,ループができた。

今作っているWeather Typing 3も,タイピングサミットでもらった要望をまとめあげる予定なのでそこはブレていないが,もう少し小出しに出していかないと求めるものとずれていってしまういそうだ。一応この日記で情報は出していってるが,動くものを少しずつ公開していった方がいいのだろう。

今後の作戦

じゃあAnalog Book Readerはこれからどうしようか。今までは,ターゲットが毎日本を読むヘビー読書家なので,Windowsアプリだとあんまりそんな人はいないのかなあ,くらいに思っていた。

でもこの本を読んだ後だと,例えば

  • 現状,電子書籍リーダーは各社が自社のコンテンツを見るためのソフト(自主的な規制状態)になっているため,自由競争になっていない。
  • ユーザは,電子書籍リーダーなんて紙に比べて読みにくいでしょ,と思っているため,電子リーダーだからこそできる価値に気付いていない

という,ある種ブレークスルー直前状態なわけで,ここになんとか貢献できないかなあ,という想いがある。

究極的には,電子書籍リーダーが,単なるおまけ的なアプリから,紙ではできなかった読書体験をするアプリとして認知されるようにしたい。なので,そういうコミュニティ的な活動が盛り上がってAmazonとかを巻き込んでいく必要があるんだろう。まだそんなコミュニティはなさそうなので,盛り上げることになるのだが,それをどうするか,そこまでは本には書いてない,よなあ。

Windows ストア 電子書籍リーダーAnalog Book Readerを公開して1年が経過。ちょうどダウンロード数も10,000を超えたのでまとめ。

2015032101

ダウンロード数の推移を見てみると割とコンスタントにダウンロードがある。Windowsストアを使っている人自体少ないと思っていたのでダウンロード数が収束しないのは不思議。ちなみにウェザタイの最初の1年のVectorダウンロード数は2,000くらいなので,Flashゲームを別格とすると,うちのダウンロードアプリの中でもダウンロード数の上がり方は高い。

ランキングも日本のカテゴリランキングはずっと10位以内ということでアプリの少なさを物語っ・・・ではなくてありがとうございます。

レーティングは世界で67回,平均3.8とまずまず。海外からのダウンロードやコメントも割と増えているのは嬉しいが,アラビア語圏内から星5個もらったりすると本当に使えているのか心配になる。右から左に読むテストなんてしてないですよ。コメントについても,有用なコメントを最近ももらっているので応えたいのだが,ウェザタイの開発が終わるまでは難しい。

Weather Typing 3の対戦機能を実装中。対戦相手の管理を自力で実装しているのだが,ホストの作成や参加はロビーを使うようにするつもり。サミットでも言われたが,IPアドレスを調べて他の人に教える,というやり方は難しく,ロビーを使えば気にしなくて済む。旧ウェザタイはインターネット前提ではなかったのでああいう形だったが,今は前提としてもいい気はする。

ウェザタイのウィンドウからホストを選択するとロビーに隠し部屋ができて,チャットもその場でできる,って感じかな。ロビーもウェザタイのウィンドウに入れられるとなおいいけど。

で,ロビーを前提にするということは,対戦モードで使う名前をロビーの名前にするということになるが,折角なので,対戦モード,ロビー,ランキングのユーザは統一を図りたい。というより旧ウェザタイがバラバラになっているのがおかしいのだが。一番ちゃんと管理してるのはランキングなのでランキングのユーザに統一するのがいいけど,どうだろう。何かいいアイデアがあれば教えてもらえると助かります。


というところで技術的な壁が一つ。ランキングのパスワードはPerlのCrypt関数(LinuxのCrypt関数と同じ)で不可逆暗号している。復号はできないので,Javaで作ったロビーから同じアルゴリズムを使えないと統一できない。調べたところ,Linux Cryptアルゴリズムは当然公開されていて,鍵が特殊なDESらしい。Cの実装例はいくつか公開されていたので,参考にしつつJavaに実装はできた。

対戦モードの進捗としては,進んできてはいるんだけど,まだまだかかりそう。10月までに終わるのか。

Weather Typing開発。スコア関連機能とワード関連機能は実装完了。ということでついに対戦機能にとりかかる。ランキングとかロビー機能にも手を付けたいが,来年のタイピングサミットを考えると間に合わなくなりそうなので対戦機能を最優先で。

うちのサポート掲示板。ほっておくと1日200件くらいのSPAM投稿がある。今まではURL書き込み禁止と特定のホスト禁止で対策してきたのだが,最近は限界。ということで大幅に拡張した。HTML見れば分かるのでここに書いてしまうが,JavaScriptを解釈しないと書き込めないようにした。

  1. Formの書き込み欄の名前をJavaScriptからランダムに変える
  2. FormのActionをJavaScriptから変える
  3. CSSで非表示にしたエディットボックスを置いて,入力されたらSPAM認定

最初1を思いついて,JavaScript観点での対策を調べたら2が見つかって,あとはCSSにもリスク分散したいということで3を追加した。まあやるだけやっとけということで。

あとはCAPTCHA(読みづらい文字を表示して入力させる例の仕組み)というのもあるが,人にも読めない文字が表示されて,書き込む意欲がなくなるので却下。たかがSPAMのために本来のユーザが書き込みにくくなるのは本末転倒で,SPAM業者が懸命に手で書き込んでいるならこちらも懸命に対応するが,ロボットを使っているならこちらもロボットで対策するのが筋ですよね。

Weather Typingのワードファイルだが,ワードの名前とか著作者を入れたいので,txtからxmlにしようとしている。で,今までのワードファイルから変換するためにWordMakerを作り直しているのだが,アプリ一個作るってことなので思ったより大変。とりあえずこんな感じ。

2015020701

Weather Typingの開発は,ローカルランキングの実装が終わって,そろそろWebランキングの作り直しを考えているところ。以前作り直そうとしたときはJavaを考えていたけど,最近だと何がいいのかなあ。Java/Ruby/Python/PHPってところなんだろうけど,とりあえずRuby on Railsを勉強してみようか。

というところで明日からまたアメリカ行きなので,Ruby勉強しつつワードファイルの実装でも片付けるか。

最近Analog Book Readerの評価とコメントが増えている。コメントで,1ページずつ表示する機能が欲しいというのをいくつかもらっているのだが,Weather Typing開発が一区切りついたら検討するので,もう少しお待ちを。

Amazon Kindle for PCが話題。ダウンロードしてArduino本を読んでみるが,やっぱり使い勝手が微妙によくない。ページめくりが遅いのはインターネット前提だからしかたないかもだけど,拡大しておいて次のページに行くと拡大率が戻っているとか,細かいところでイライラする。Kindle APIとか公開してくれればAnalog Book Readerで読めるようにできるんだけどなあ。

Pajyarouさんと浅草橋の新春けもケットへ。我々には内容が分からないのが残念だが,こういう雰囲気はいいですね。とりあえずもげぇたん本はなさそうということだけは分かった。

今回のはFlash関連の話で行ったのだが,Denasuの活動も少しずつ外に向かっているのを感じて楽しい。

それはそれとして,アキバが近かったので白色LEDを始めとする基本部品を買ってきた。配線がおかしいのか,全部つなげても白にならなかったので,とりあえず青色LEDのキャプチャを載せておく。

2015011801

Weather Typing V3開発。ランキング部分の実装をしているが,まあまあのUIができた。

2015011001

この辺のUIはなかなかよい例がなくて,WebとかExcelとかを参考に数日費やしてみたが,最終的に,ヘッダをクリックするとポップアップツールが表示されて,ソート,検索ができるようにした。もちろん部分インクリメンタルサーチや候補選択による完全マッチもできるので,Qwertyのみ見たいとか,公式ワード1~3だけ見たいとかもできる。DenasuページにあるオンラインランキングもこんなUIにしたいが,HTML+JavaScriptで実現できるかな。

しばらく前にMac Bookが起動しなくなってほっておいたのだが、ようやく調べたところ、HDDが壊れたっぽい。なのでこれを機にPC環境を一新。なんかちょうどお金も振り込まれていたのでアキバへ。Intel SSD 730K Series 240GBを2個、CFD DDR3 PC3-12800 8GBx2を買ってきた。こういう増設はずいぶん久しぶりだ。

今のメインPCは、DellのInspiron 17R Special Edition。CPUはCore i7 2.4GHz。1TBのHDDに加えて、ノートでは珍しくディスクの空きスロットがあるので、SSDを追加してWindows 8.1 updateを入れる。ついでにメモリはメーカー上限8GBを超えて16GBにしてみる。マウンタのネジがついてないので周辺からもってきたりしたが、何の問題もなし。Dellのノートは昔からパーツ交換しやすいのがよいです。で、起動時間が爆速になった。2年前のPCだけど、これで最新のノートと同じくらいになったかな。

で、Mac Book Pro 13インチ。HDDを外してSSDを取り付ける。ついでにInspironから外した4GBx2メモリのお下がりを付けて4GB->8GBに。特殊ネジがあったけど適当にペンチでなんとかしたりしたが特に難しくはなかった。Yosemiteを新規インストールした。以前はMavericksでXCodeを動かしたらものすごい重かったけど、これなら開発できるかな。

家のTVをケーブルテレビに移行した。ついでにネットの方もフレッツからケーブルTVに。固定電話とメールアドレスが1つ増えた。何かメールアドレスが7種類になってるけど。関連してメール周りを見直し。

最近ドコモメールのSPAMがうっとおしいのでようやく設定を調べた。基本的に教えた人以外からは来ないはずなので登録アドレス以外は受信拒否に。しばらく自動受信をオフにしていたが,これでオンに戻せる。

で,ドコモ設定を見ていたら最近はPCでも受信できることが分かったので早速設定してみる。が,設定完了までにどれだけステップが必要なんだというほど難解。今までドコモにログインしていたIDとは別のドコモIDが必要になって,作ってメール設定しようとしたら携帯でやれと言われて,その後Wi-Fiをオフにして,それでもエラー。どうやらメールアプリが更新されていて,クラウド用メールアプリがあるんですね。そのアプリを入れて,ドコモIDの利用を可にして,PCでメールサーバの設定を入れて完了。なるほど,PCでメールを送受信するような人はもちろんこれくらい分かるはずだと。強気でいっていいと。さすがNTT,全国のサービスUX設計をしている人達に勇気を与えてくれますね。

そうそう,NTTフレッツの契約解除は,電話の人も親切でルータの返却も簡単で分かりやすかったのは付け加えておこう。

MacとWindowsのマウスとキーボードを共有するのに,しばらくShareMouseを使って評価してたんだけど,ちょっと重い。特にMac側でちょっと動作が止まるとWindows側にカーソルが帰ってきてしまう。てことで結局ハードウェアに落ち着いた。サンワサプライのKB-USB-LINK3Mという製品で,ちょっと使ってみた感じはWin/Macでストレスなくマウスとキーボードとクリップボード共有,ファイルのコピーができた。インストールも自動。しばらく使ってみよう。

SNSも使ってみないとね,ってことで既にやっていたTwitterに,英語アカウントも作ってみた。ついでにFacebookもほっておいたアカウントにこの日記の内容を連携させようとしたのだが,JetpackプラグインとqTransrateプラグインが連携することはなく,日本語と英語が混じってしまうのでとりあえず保留。

ちょっとSwiftをいじってみたいのでMacの環境をアップデート。その中で、WindowsとMacOSのマウスとキーボードを共有するソフトについて少し悩んだ。今までSynergyを使っていたが、日本語入力では記号入力に問題があり、その後WindowsではMouse without Bordersが出てきたので今更Synergyは使いたくない。ってことで、探してみたら最近はShare Mouseというのがあるらしい。

使ってみると、設定はほぼ何もなし、テキストのコピーに加えてWindowsとMacのファイルのコピーアンドペーストもできるという完璧なものだった。モニタ3台、ファイルコピーなどは有償らしいのだが、もう少し試して速度に問題がないようだったら買ってみるか。

denasuメール宛のSPAMが増えてきた。前まで使っていたHi-HOのSPAMに追いついてきた感じ。なんだけど,どうも質が違う。Hi-HOのSPAMはほぼ日本語メールなのに対し,denasuはほぼ英語メール。Hi-HOが英語メールをはじいているのか,denasuがグローバルになってきた証拠なのか,どっちだろう。

せっかくブログシステムを入れたので過去のエントリをカテゴリに分けてみた。ついでに検索したときに無題ばっかりで分からないのでタイトルも付ける。1000エントリ以上あるので数日がかりだったけどいろいろ思い出すこともできた。

そういえば自宅ではないのでSurfaceで作業しているけど,Surface3は快適。開発しようとするとマルチディスプレイが欲しくなるけど,それ以外は普通のノートPCと同じ感じ。キーボードに関しては,Surface3で机から浮かせることができるようになって衝撃が吸収されるのか,手は痛くならなくなった。でもやっぱり微妙にミスタイプが多くなる。何かが足りなくてすごく惜しい感じ。

長い間日記という形で更新してきたけど,いい加減時代遅れってことで,ブログ的な機能を入れてみた。

  • SNSとの連携をサポート
  • コメントと返信機能をサポート
  • RSSでの通知をサポート
  • トラックバックをサポート

トラックバックとか,使ったことないし試してもいないので,うまく動くかは不明。WordPressを使ったのだが,今までの日記からスムーズに移行するためにいろいろ大変だった。

  • 日本語と英語の日記があるため,qTranslatorで多言語化
  • Denasu全体とデザインを合わせるためテーマを自作
  • SEO対策に,今までの日記URLをブログの月間アーカイブに転送
  • 15年間の日記をWordPress XMLに変換し,WordPress Importerでインポート
  • 画像まではインポートできなかったので手でインポート

ついでなので,過去に遡ってタイトル付けたりカテゴリ分類したりしている。まあ1000エントリ以上あるのでこれはおいおいやっていこう。

あとは今週中にFlash制作日記の方もブログに移行する予定。