くろねこスクエア くろねこスクエアでは、Webサイトの制作、運営などを行っています。 http://www.kuroneko-square.net/ 2010-09-04T06:35:47+09:00 くろねこスクエア http://www.kuroneko-square.net/ http://www.kuroneko-square.net/images/kurosquare_234_60.png text/html 2010-05-30T15:00:10+09:00 http://www.kuroneko-square.net/ くろねこスクエア Labs WordCamp山盛り。おなかいっぱい http://www.kuroneko-square.net/articles/20100530 WordCamp YOKOHAMA 2010へ行ってきました。内容は色々な方が言及しているので「楽しかったよ」の一言で割愛。WordCampで配られた名札のアイコン画像が、見にくくなってしまったのはなぜだろう?
WordCampケーキ
WordCampフィナーレ♪

くろねこスクエアの半分はMODxでできているわけですが、何よりこのブログはWordPressですし、WP日本語フォーラムにも(新参者だけど)時々顔出しているし、参加してもいいよね!ってことでWordCamp YOKOHAMA 2010へ行ってきました。内容は色々な方が言及しているので「楽しかったよ」の一言で割愛。

AED搭載自動販売機
会場にはAEDも完備

閉幕後、とある場所でtunakkoさん、xenoさんたちが「スマートフォンを重ねてみた」をやっていたのです。そこへカイさん、takamorryさん、IKUKOさん他…が1台ずつ献上したと思ったら、Yurikoさんが加わって。

情報端末
手前に積んであるのは全部Yurikoさんの所有・・・

こんなに賑やかになりました。

でもこれってありがちだよね…

というわけで、全部積んでみた。

情報端末山盛り
「見事なオブジェ feat. Yuriko」 あ、あぶないっ!

iPadもあったけど、さすがにこの上には乗りませんでした。

おまけ

ところで、WordCampで配られた名札のアイコン画像が、なぜか見にくくなってしまっていて、いわゆる闇のカラス状態。

名札 kurosquare
名札の紙は白いのに、アバターの部分だけ背景が黒なのはなぜ??

どうして??と考えてみたけど、

  1. アルファチャンネルに対応していない
  2. アイコン画像部分が黒で塗りつぶされている

のどちらかでしょう。でも2010年にもなって、ましてやWordCampともあろうものが「PNGのアルファチャンネルに対応していない」なんてことは「ありえない」はずなので、たぶん「アイコン画像部分が黒で塗りつぶされている」んでしょう(どこぞの古いブラウザじゃないんだから)。名札の地色が黒だったら仕方ないんですが、白なのになぜ!!

少し残念だったので、ちゃんとしたアバターを載せておきます。

kurosquare
中の人はこんな感じです
]]>
text/html 2010-01-10T00:00:22+09:00 http://www.kuroneko-square.net/ くろねこスクエア Labs アクセス解析2009年12月 http://www.kuroneko-square.net/articles/20100110 2009年12月のアクセス解析結果(kuroneko-square.net)です。調査期間は12月1日から12月31日まで。 2009年12月のアクセス解析結果(kuroneko-square.net)です。調査期間は12月1日から12月31日まで。

ブラウザ別

Internet Explorer 831.7%
Firefox 322.2%
Internet Explorer 620.3%
Internet Explorer 717.8%
Safari4.1%

Firefoxが増加しました。IE8は横ばい。IE7は先月に続き減少。

OS別

Windows XP66.2%
Windows Vista22.2%
MacOS X4.2%
Windows 73.3%
Windows 20001.5%

検索語句

  1. movabletype 5 アップデート
  2. env checker
  3. maildir バックアップ
  4. ホトトギス 藤娘
  5. ヨーヨーキルト 作品
  6. クマのルーニー
  7. バターを使わないパウンドケーキ
  8. 焼き塩 作り方
  9. modx アップデート
  10. 茹で干し大根の作り方
]]>
text/html 2009-12-26T01:01:51+09:00 http://www.kuroneko-square.net/ サービス - くろねこスクエア マネー http://www.kuroneko-square.net/services/money 金融に関するサービスです。 text/html 2009-12-25T00:01:02+09:00 http://www.kuroneko-square.net/ サービス - くろねこスクエア koezon http://www.kuroneko-square.net/services/koebu koezon(こえぞん)は、声優・ナレーター・おしゃべり好きのコミュニティ こえ部にアップされた音声データ(MP3)をダウンロードしてPCに保存できます。 text/html 2009-12-20T00:00:29+09:00 http://www.kuroneko-square.net/ くろねこスクエア Labs CodeColorer – WordPressプラグイン http://www.kuroneko-square.net/articles/20091220 Syntax Highlighterにはいろいろ種類がありますが、先日、WordPressプラグイン CodeColorerに拙作の日本語リソースを同梱していただきました。コアライブラリはGeSHiなので、対応言語の多さには定評があります。 とっつきにくいソースコードなどを色分け表示したい時はありませんか?Syntax Highlighterにはいろいろ種類がありますが、先日、WordPressプラグイン CodeColorerに拙作の日本語リソースを同梱していただきました。

CodeColorerの特徴は…

  • プラグインを無効にしても問題なく表示される
  • サーバサイド処理
  • CSSで色を指定可能

CodeColorerのコアライブラリはGeSHiなので、対応言語の多さには定評があります。例えばgnuplotとかDOT languageにも対応しているんですよ。

コード表示には、この手のツールが、お便利です。

]]>
text/html 2009-12-10T22:57:10+09:00 http://www.kuroneko-square.net/ くろねこスクエア Labs アクセス解析2009年11月 http://www.kuroneko-square.net/articles/20091210 2009年11月のアクセス解析結果(kuroneko-square.net)です。調査期間は11月1日から11月30日まで。 2009年11月のアクセス解析結果(kuroneko-square.net)です。調査期間は11月1日から11月30日まで。

ブラウザ別

Internet Explorer 832.8%
Internet Explorer 624.7%
Internet Explorer 721.9%
Firefox 314.1%
Safari3.1%

IE8がIE6を上回りました。IE7は先月に続き減少。Firefoxは微増でした。

OS別

Windows XP67%
Windows Vista23.9%
MacOS X3.5%
Windows 20001.9%

検索語句

  1. 紅葉 関東 絶景
  2. ヨーヨーキルト 作品
  3. ホトトギス 藤娘
  4. クマのルーニー
  5. 楽天 フィード
  6. パッチワーク クリスマス
  7. 簡単 クリスマス小物
  8. 焼き塩 作り方
  9. タオルケーキ 作り方
  10. 手作り クリスマスリース 作り方

クリスマスにまつわる語句が増えました。手作り作品が目立ちます。

]]>
text/html 2009-12-07T00:00:14+09:00 http://www.kuroneko-square.net/ くろねこスクエア Labs YFeed オークション検索 アップデート http://www.kuroneko-square.net/articles/20091207 このたび「YFeed」のアップデートを行いました。Yahoo!オークション関連での出力項目を追加したほか、Yahoo!オークションのオリジナルRSSフィードとのパラメータ互換性を高めました。 このたび「YFeed」のアップデートを行いました。Yahoo!オークション関連での出力項目を追加したほか、Yahoo!オークションのオリジナルRSSフィードとのパラメータ互換性を高めました。

主な変更点は以下のとおりです。

  • Yahoo!オークションで取得できるRSSフィードのパラメータを、YFeedでもそのまま使用できるようにしました。
  • 即決価格や出品者ID、画像など、オリジナルRSSフィードでは取得できない項目を追加しました。
]]>
text/html 2009-12-01T00:00:29+09:00 http://www.kuroneko-square.net/ くろねこスクエア Labs BASICでパスワード認証 http://www.kuroneko-square.net/articles/20091201 かつてのBASICは高水準言語として抽象化されていて扱いやすい反面、抽象化されていない具体的な処理は苦手という印象でした。以下のコードはQuickBASICでの例で、入力されたパスワードをアスタリスク(*)にするために行っていた処理です。 Basic認証に関する話ではありませんので悪しからず。

かつてのBASICは高水準言語として抽象化されていて扱いやすいのですが、抽象化されていない処理については当たり前ながら具体的な手続きを書く必要があります。以下のコードはQuickBASICでの例で、入力されたパスワードをアスタリスク(*)で表示するために行っていた処理です。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
'/for QuickBASIC
'$lang: "qb"

'------- GUI パスワード入力サンプルプログラム

'------設定
CLS 0: WIDTH 80, 25
COLOR 1

pass$ = "abc" 'パスワード
word$ = "" '入力されたパスワード
inword$ = "" '入力途中のパスワード

'------変数の宣言
x = 21'x座標
y = 11 'y座標
r = 0 '一つづづ "*" を描くための座標

'------表示
CLS 0
LINE (140, 140)-(500, 195), 7, BF, 15
LINE (140 + 5, 140 + 5)-(500 - 5, 195 - 5), 1, B

start:
LOCATE y, x, 1'文字の座標へ移動
PRINT "ENTER PASSWORD :" '入力待ち

'------パスワード入力
in:
LOCATE y, x + 17 + r: inword$ = INPUT$(1)

IF inword$ = CHR$(8) THEN GOTO backspace 'BackSpace を押したとき
IF inword$ = CHR$(13) THEN GOTO yorn 'Enter を押したとき
IF r <= 22 THEN PRINT "*": r = r + 1  '"*" を描く

'------入力したパスワードを合成
word$ = word$ + inword$

'------パスワード入力に戻る
back:
inword$ = ""
GOTO in

'------バックスペース
backspace:
IF r >= 1 THEN r = r - 1 ELSE GOTO yorn
LOCATE y, x + 17 + r
PRINT " "
GOTO in

'------パスワードの比較・確認
yorn:
IF word$ = pass$ THEN GOTO exeexit

'------入力された情報の削除
word$ = ""
inword$ = ""
r = 0
CLS 2
GOTO start 'やりなおし

'------終了
exeexit:
CLS 0
END

ある程度構造化してあるので判りやすいかと思います。このような処理は利用機会も多いのでクラスとして抽象化してしまえば再利用しやすいのですが、往年のQuickBASICにはそのような仕組みがなく、プログラムごとに手直しする必要がありました。昨今のBASICはオブジェクト指向を念頭に設計されているものが多いので、初期のBASICに比べれば格段に扱いやすくなっています。もっとも、FreeBASICではクラスの継承は「まだ」実装されていませんが…

それにしても、「パスワードを入力する」というUI自体は10年経っても20年経っても、それほど変わらないですね。

]]>
text/html 2009-11-26T13:00:12+09:00 http://www.kuroneko-square.net/ くろねこスクエア Labs MovableType 5.0にアップデート http://www.kuroneko-square.net/articles/20091126 MT4と比べるとブログ管理画面のデザインが変わりました。WordPressをかなり意識したデザインになっていますので、初めて見る人にはどちらも同じに見えるでしょうが、旧来からの個人ユーザにはWordPressへの移行を促すデザインにも見えるかもしれませんね。 当サイトに設置しているMovableType Open Sourceを5.0にアップデートしました。

MT4と比べるとブログ管理画面のデザインが変わりました。WordPressをかなり意識したデザインになっていますので、初めて見る人にはどちらも同じに見えるでしょうが、旧来からの個人ユーザにはWordPressへの移行を促すデザインにも見えるかもしれませんね。

当サイトではテスト環境としての使用のみで、メインとして使う予定は今のところありません。どちらかというと、MovableTypeとは別にCCとGPLで公開されている絵文字アイコンのほうに魅力を感じているのが実情です。

TypePad 絵文字一覧

Creative Commons License
TypePad 絵文字アイコン画像 by Six Apart Ltd is licensed under a Creative Commons 表示 2.1 日本 License.

いろいろな汎用CMSが日々栄枯盛衰(とそれに伴い互いに切磋琢磨)を繰り返していますが、どのCMSにも得手不得手があります。お互いに連携できるような工夫ができればそれが一番なのですけれど。

]]>
text/html 2009-11-23T00:00:19+09:00 http://www.kuroneko-square.net/ くろねこスクエア Labs 1990年代のあみだくじ http://www.kuroneko-square.net/articles/20091123 かなり前に作ったあみだくじのプログラムは、QuickBASICでした。今や昔かと思いきや、2004年に登場したFreeBASICでは、lang指定さえすれば、このままコンパイルできるのです。 かなり前に作ったあみだくじのプログラムは、以下のようなコードでした。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
'/for QuickBASIC
'$lang: "qb"

DIM a(20), b(10)

ta$ = RIGHT$(TIME$, 2)
RANDOMIZE (ASC(ta$))
FOR y = 1 TO 8: b(y) = INT(RND * 6) + 1: NEXT y

CLS
LOCATE 5, 10: PRINT "1 2 3 4 5 6 7 8"
LOCATE 15,10: INPUT "番号を選んでください ", k
FOR x = 1 TO 8: a(x) = x: NEXT x
FOR y = 1 TO 7
    n = b(y): GOSUB write_line
    c = a(n): a(n) = a(n + 1): a(n + 1) = c
NEXT y

LOCATE 5 + y, 10
IF c = 1 THEN PRINT "○ × × × × × × ×": z = 1
IF c = 2 THEN PRINT "× ○ × × × × × ×": z = 2
IF c = 3 THEN PRINT "× × ○ × × × × ×": z = 3
IF c = 4 THEN PRINT "× × × ○ × × × ×": z = 4
IF c = 5 THEN PRINT "× × × × ○ × × ×": z = 5
IF c = 6 THEN PRINT "× × × × × ○ × ×": z = 6
IF c = 7 THEN PRINT "× × × × × × ○ ×": z = 7
IF c = 8 THEN PRINT "× × × × × × × ○": z = 8

LOCATE 5 + y + 2, 10
IF a(z) = k THEN PRINT k; "はあたりです          ": END
PRINT k; "ははずれです          ": END

write_line:
LOCATE 5 + y, 10
IF n = 1 THEN PRINT "|---|   |   |   |   |   |   |": RETURN
IF n = 2 THEN PRINT "|   |---|   |   |   |   |   |": RETURN
IF n = 3 THEN PRINT "|   |   |---|   |   |   |   |": RETURN
IF n = 4 THEN PRINT "|   |   |   |---|   |   |   |": RETURN
IF n = 5 THEN PRINT "|   |   |   |   |---|   |   |": RETURN
IF n = 6 THEN PRINT "|   |   |   |   |   |---|   |": RETURN
IF n = 7 THEN PRINT "|   |   |   |   |   |   |---|": RETURN

今や昔のQuickBASICかと思いきや、2004年に登場したFreeBASICでは、lang指定さえすれば、このままコンパイルできるのです。マルチバイトも特に問題なし。FreeBASICならGPLでクロスプラットホームですし、過去のプログラムもそれなりに活用できますね。

さらに、FreeBASICならオブジェクト指向風にも書けます。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
'/for FreeBASIC
Type Amida
    Dim a(20) as Byte
    Dim b(10) as Byte
    Declare Constructor()
    Declare Sub wrLine (n as Byte)
    Declare Function get_result (c as Byte) as Byte
    Declare Function judge (a() as Byte, k as Byte, z as Byte) as Byte
End Type
'-----------
Constructor Amida()
    Dim ta as String
    Dim as Byte c, k, n, x, y, z
    ta = Right(Time, 2)
    Randomize (Asc(ta))
    For y = 1 To 8: b(y) = Int(Rnd * 6) + 1: Next y
    Cls
    Locate 5, 10: Print "1 2 3 4 5 6 7 8"
    Locate 15,10: Input "番号を選んでください ", k
    For x = 1 To 8: a(x) = x: Next x
    For y = 1 To 7
        n = b(y)
        Locate 5 + y, 10
        This.wrLine(n)
        c = a(n): a(n) = a(n + 1): a(n + 1) = c
    Next y

    Locate 5 + y, 10
    z = This.get_result(c)
   
    Locate 5 + y + 2, 10
    If This.judge(a(),k,z) = 1 Then
        Print k; "はあたりです          "
    Else
        Print k; "ははずれです          "
    End If
End Constructor
'-----------
Function Amida.get_result(c as Byte) as Byte
    Dim z as Byte
    If c = 1 Then Print "○ × × × × × × ×": z = 1
    If c = 2 Then Print "× ○ × × × × × ×": z = 2
    If c = 3 Then Print "× × ○ × × × × ×": z = 3
    If c = 4 Then Print "× × × ○ × × × ×": z = 4
    If c = 5 Then Print "× × × × ○ × × ×": z = 5
    If c = 6 Then Print "× × × × × ○ × ×": z = 6
    If c = 7 Then Print "× × × × × × ○ ×": z = 7
    If c = 8 Then Print "× × × × × × × ○": z = 8
    Return z
End Function
'-----------
Sub Amida.wrLine(n as Byte)
    If n = 1 Then Print "|---|   |   |   |   |   |   |"
    If n = 2 Then Print "|   |---|   |   |   |   |   |"
    If n = 3 Then Print "|   |   |---|   |   |   |   |"
    If n = 4 Then Print "|   |   |   |---|   |   |   |"
    If n = 5 Then Print "|   |   |   |   |---|   |   |"
    If n = 6 Then Print "|   |   |   |   |   |---|   |"
    If n = 7 Then Print "|   |   |   |   |   |   |---|"
End Sub
'-----------
Function Amida.judge(a() as Byte, k as Byte, z as  Byte) as Byte
    If a(z) = k Then
        Return 1
    Else
        Return 0
    End If
End Function
'-----------
Dim ObjAMD as Amida
End

なかなか登場機会の少ないBASICですが、この手軽さと生産性の高さにはやはり根強い需要があるような気がします。

]]>
text/html 2009-11-15T00:00:15+09:00 http://www.kuroneko-square.net/ くろねこスクエア Labs Maildirをバックアップするシェルスクリプト http://www.kuroneko-square.net/articles/20091115 当サイトでMaildirをバックアップするために使っているスクリプトを載せておきます。curとnewディレクトリだけを保存し、古いファイルを削除できます。 参考程度になるかもしれませんので、当サイトでMaildirをバックアップするために使っているスクリプトを載せておきます。curとnewディレクトリだけを保存し、古いファイルを削除できます。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#!/bin/sh

# Remains at least these days
keepday=14

HOMEDIR=/usr/local
MAILDIR=$HOMEDIR/Maildir
BACKUPDIR=$HOMEDIR/backup_mail
FOLDERS="kuroneko-square.net"

# Get timestamp
timestamp=`date +%Y%m%d`
old_date=`date "-d$keepday days ago" +%Y%m%d`

cd $MAILDIR

for F in $FOLDERS; do
  NAME=$BACKUPDIR/INBOX-$F-$timestamp.tar.gz
  FILES_CUR="`find $F -regex ".*cur.*"`"
  FILES_NEW="`find $F -regex ".*new.*"`"
  tar -cvzf $NAME $FILES_CUR $FILES_NEW

  rmfile=$BACKUPDIR/INBOX-$F-$old_date.tar.gz
  if [ -e $rmfile ]; then
  rm -f $rmfile
  fi
done

exit
]]>
text/html 2009-11-13T00:00:35+09:00 http://www.kuroneko-square.net/ くろねこスクエア Labs VALUE DOMAIN のフィード http://www.kuroneko-square.net/articles/20091113 試験的にではありますがVALUE DOMAINのアナウンスをフィードで取得できるようにしてみました。 くろねこスクエアで使用しているドメインはVALUE DOMAINというところで管理しているのですが、頻繁にチェックしているわけではないため、新しいお知らせがあっても気づかない時があります。ATOMフィードやRSSフィードなどの配信があればフィードリーダーで更新チェックができるので言うことなしですが、なかなか対応は望めないようなので、試験的にではありますがVALUE DOMAINのアナウンスをフィードで取得できるようにしてみました。これでもう、期間限定割引なども見逃しませんよ。

しばらくは様子見・テスト運用ですが、特に問題なければGPL程度で公開したいと思います。追記:一部、最新情報を取得できない場合があるようですので修正しましたが、引き続き調査中です。

もし欲しいドメインがなかなか決まらないという方は、空きドメイン検索もできますのでご活用ください。

]]>
text/html 2009-11-06T17:51:45+09:00 http://www.kuroneko-square.net/ サービス - くろねこスクエア .htaccess generator for Mobile http://www.kuroneko-square.net/services/htaccess 携帯ブラウザ以外からのアクセスを制限するためのツールです。 text/html 2009-11-04T18:11:49+09:00 http://www.kuroneko-square.net/ サービス - くろねこスクエア サービス稼働状況 http://www.kuroneko-square.net/services/status 各サービス稼働状況を調査し表示しています。 text/html 2009-10-29T00:02:47+09:00 http://www.kuroneko-square.net/ サービス - くろねこスクエア 荷物の追跡 http://www.kuroneko-square.net/services/tracking 宅配便のトラッキング(荷物追跡)サービスへのリンクと検索窓です。伝票などに記載されているお問い合わせ番号から、お荷物の配達状況を追跡できます。 text/html 2009-09-24T00:19:08+09:00 http://www.kuroneko-square.net/ サービス - くろねこスクエア ENV Checker http://www.kuroneko-square.net/services/evc お使いのクライアントアプリケーションが持っている環境変数を確認できます。 text/html 2009-09-09T00:42:13+09:00 http://www.kuroneko-square.net/ サービス - くろねこスクエア ゲーム理論計算機 http://www.kuroneko-square.net/services/34 ゲーム理論に基づいて、2x2同時ゲームを分析します。 text/html 2009-09-09T00:34:20+09:00 http://www.kuroneko-square.net/ サービス - くろねこスクエア お絵かきロジックソルバー http://www.kuroneko-square.net/services/33 お絵かきロジックを解きます。 text/html 2009-09-06T11:02:48+09:00 http://www.kuroneko-square.net/ サービス - くろねこスクエア QRコード エンコーダ http://www.kuroneko-square.net/services/32 QRコード(2次元コード)を作成します。 text/html 2009-09-06T11:01:18+09:00 http://www.kuroneko-square.net/ サービス - くろねこスクエア バーコード エンコーダ http://www.kuroneko-square.net/services/31 バーコードを作成します。