未分類」カテゴリーアーカイブ

TODOの考え方

別にライフハックブログじゃないので、これ書いても見せる人居ないんだが、後の自分に向けて、今どういう方法取ってるかをメモ。

TODOの基本的な考え方だけど、「一日にやる量を減らす」に尽きると思った。具体的には一日2~3個のことしかしない。2~3個出来たら遊ぶなり寝るなりしてしまうのがよい。思いつきをそのまま書いてしまうと、結局やることを増やしてストレスを溜めてしまう。あれもこれも出来ないしなーと思っておくと、数を減らすことを意識するようになる。

作業の優先順位を書けるTODOがあるが、順位を付けるというのは結構頭を使う。そのうち面倒になって放置状態になる。

ものぐさ的には、TODOリストを二つに分けるといいと思った。

1.おつかいリスト

「牛乳を買う」「郵便物を出す」など、事情があって今できないことを書く。すぐ出来ることはそもそも書かない(一時的なメモはBoogie Boardかノートに書くとゴミが出なくてよい)

形式としては、プレーンテキストでいいと思う。優先順位は不要。GoogleのTODOも出来がよい。

これは定時にメール配信するようなシステムを組んでいたんだけど、使わなくなった。未処理のTODOが貯まっていき、見もしなくなったため。

2.1ヶ月~1年ぐらいの長期リスト

「ソフトウェアを作る」「サービスを作る」など。

これはマインドマップ形式で、紙に書く。 マインドマップの「根」に当たる部分に、最終的に作る「プロダクト」を書く。 その「プロダクト」を作るに当たって、必要なことを「枝」「葉」として展開していく。

この書き方だと「マイルストーン(小さな達成目標)」が何になるのかを考えながら描くことが出来るし、あとで把握もしやすい。 実現方法なんていくらでもあるので、枝葉はあんまり重要じゃなくて、どんなマイルストーンがあるのかを把握するのが、無駄を少なくするコツだと思った。マイルストーン自体が不要になる場合も、よくあるし(既存サービスが見つかった、誰かに代行してもらえる、等)。

マイクロコンテンツに全て吸い取られて行く

HTML5のドット絵ツールを作っている。リリースすればそこそこの利用は見込めるんじゃないかと考えてる。

ついでにすたどんたんのファミコン音色版に統合して、ファミコン風コンテンツのポータルに出来るんじゃないかと考えたけど、 出来ると言うだけで、何故それをしたいのかというビジョンがなかった。

ビジョンはある。一言でいうなら、マイクロコンテンツが世界を変えかねない。

一つ一つのコンテンツの規模が小さくなったおかげで、細切れになったノウハウがすぐ見つかり、 入門者がそれを真似し、テストしながら上達していく。 そんな時代が来るんじゃないのか。Twitterで小説を書くだとか、コピーライティングをしているような 流れを見ているとそう感じる。

んで、これが楽しい世界かっていうと全然そうでもないと思う。 なんでかは分からないけど、生成物の価値が低いような気がしてしまう。

いつでもシーンの中心に来るのは、それに数万時間を費やした人間で、 周囲はオフラインで感じられる熱に引っ張られていくのではないだろうか。

なんか、そういう熱がぜんぜんない。

鬱屈した感情がTwitterに吸い取られて行き、どれくらい同意出来るか、という観点から 評価の対象になる。 なんか一昔前もそういう情報の価値の低いブログがたんまりあったねー。

そこに見えてしまうフレームワークに、冷める。

フレームワークのない生の創作の感情に出会いたい。

創作の価値を信じられるか

最近、TEDのサイモン シネックのプレゼンに影響されてしまっている所がある。

「自分は何の価値を信じるか」から説明する、というような話だった。

まあそれも善し悪しだなあ。何でもやるだけやってみればいいんだけれど。 でも、素で仕事が出来ないタイプだから、大きなことを起こす際に、協力関係の築き方がわからん。

それこそ、「こういう世界を実現したい」という思いを見せられればいいんだろうか。 自分が実現したい世界ってなんだろうか。

正直、最近創作の力を信じれていない。

創作を逃げ場にしているように見える人たちが居て、その人達に全然共感出来なくなっている。 最近、「創作は消費活動だよな」的なコメントを見て、思いっきり同意してしまった。

それだけ、創作活動が身近になっているという証左でもあるけど。 創作偉いみたいな風潮なんとかならんのかよ。創作なんて、翻案に毛が生えたようなもんだから。

創作そのものの楽しさに集中して、創作を行っている人の比率下がってるんじゃないか。 自分が考える創作の楽しさって何だったんだろう。 それを取り戻すには、何をすればいいんだろう。

なんか書いててシルバーガンじみてきたな。 あれも最初は同意しがたい部分が多かったけど、気持ちはわかるな。

ただ、周囲よりも変わらなければいけないのは、自分自身なんだろう。いつだって出る答えはそういうことだ。

六角大王的な技術は流行らないのか

六角大王とかPICMOとかの、補間技術を使ったツールが流行らないのはなぜなんだろう。

多分、アウトプットの質が保たれていなかったのが理由なのではないか。精細な作品を作るのが難しいため、結局おもちゃになるだけで道具たりえなかったのでは。

DOGA-L1もどうなったやら…

この手のツールで成功例を聴かない。 普段使いするものを技術で作り出すのがブレークスルーなのかもしれない。 はじめは力業的に見えるけれど、そのうちに洗練されて、 ある閾値を超えると、一斉にユーザが増える。

デジタルカメラやコミスタへの移行は急激に起こったらしい。

間口を広げることも大事だけれど、アウトプットの質さえ高ければみんなが使い出す。質にフォーカスした製品を考える。

Xara欲しい

今のところ、体験版を使っている。値段はIllustratorの2割以下だし軽い。ただし色々と機能が足らない。

$89 ≒ \7100

足りない機能

  • Pen Toolが貧弱
  • キーボードアサインが出来ない
  • ビットマップのエンベロープ適用ができない→GIMPでやれるか?もしくは、トレースしてから適用
  • 縦組み
  • トリムマークの作成

使いたいもの

  • ponokoやレーザー加工の入稿
  • 下絵の作成
  • ちょっとしたWebグラフィックの作成
  • 判子の入稿

すたどんたん2の構想

若干興味が薄れてきている。まだやれることは残っているのにかかわらず、すぐに飽きて捨ててしまうのが悪い癖だ。 ひとまずコンピレーションが作れたのはよかったと思うけれど、遣り残したことはたくさんある。

・WAV書き出し

「テキスト音楽サクラ」に替わるものが必要だろうとは考えている。今の時代にMidi作曲でいい、というのは、CG作りたい人に六角大王を薦めるようなものだ。 今、最もローテクにハイエンドな楽曲を作ろうとするなら、ループベースの作曲か、カットアップによる作曲だろう。そのパーツをすたどんたんで作れるようにする。

もちろん懸案もあって、デスクトップで提供するならさすがにサンプルを自前録音にリプレースしないといけないだろうな…。今はまだオモチャだけど、本格的に始めるとライセンス違反に直撃するだろうし。

・Vocaloid Job Plugin

Vocaloid3からAPIが提供される。WAVインポートまでスクリプトから行えるなら、Vocaloidに組み込むことで「テキストだけで1曲作れる環境」を作ることが出来る。本書けるでこれ。 ただし、APIがまだ公開されてないので、まだ皮算用に過ぎないよね。

・オノマトペマッピング

この名称で行くのかもはっきりしないし、自分一人だとモチベが続かなそうな気がもりもりしている。

・んぺんぺベース

オノマトペマッピングを使って、例えばSlapBassフレーズの生成をデモすれば派手だと思う。

・MML削減ツイート対応

ツイートしづらい件に対応したい。

・コラボ出来るようにする

引用や伴奏の付加など。ツリー形式にする?現状の形態でも全く出来ないわけではない。

・トリビュートアルバムを作る

Vocaloidやラップですたどんたんこんの楽曲をカヴァー出来るといいねー

システムよりも、お祭り感覚。 可能性を感じさせるデザイン。可能性の為のデザイン。

◆楽しそう!感の演出 ・かわいいぴょこぴょこアイコン(パターンの長さをアイコンで表示) それぞれの音にふき出し http://www.vertigo-project.com/development/jquery-ui-tooltip-plugin

Onomappingアルゴリズム(Java)

泥臭い方法なんだと思うけれど、文字列同士の部分一致検索を行うロジックを書いた。 以前書いた「オノマトペマッピング」に使うアルゴリズムで、文字列をインデックスに書き換える。

理想的にはWindowを広めに取る必要があるんだろうけど、パフォーマンスどうなるんだろうね。 SiONを使う場合はJavascriptで書き直さないといけないし。

package sion.test;

import java.util.ArrayList; import java.util.LinkedHashMap; import java.util.logging.Logger;

public class StringMatch2 {

private void log(String str){
    Logger.getLogger(Logger.GLOBAL_LOGGER_NAME).info(str);
}

/**
 * 4文字までの辞書を作成する
 *
 * @return
 */
private LinkedHashMap<String, ArrayList<Integer>> makeHash(String source,
        int window) {
    LinkedHashMap<String, ArrayList<Integer>> map = new LinkedHashMap<String, ArrayList<Integer>>();

    while (window > 0) {
        log("window = " + window);
        for (int i = 0; i < source.length() - window + 1; i++) {
            // i: index
            // window: length
            String sub = (source.substring(i, i + window));

            // play offset list
            ArrayList<Integer> list = new ArrayList<Integer>();
            for (int j = 0; j < window; j++) {
                list.add(i + j);
            }
            map.put(sub, list);
        }
        window--;
    }
    return map;
}

public static void main(String[] args) {
    int window = 4;
    String input = "dnsttnststdnstdndndndnsttnststdd";
    String source = "ststdntnstdntnststststdnstndtntr";

    ArrayList<Integer> test = new StringMatch2().replaceByStringFlagments(input, source, window);
    System.out.println(test);
}

/**
 * 文字列inputを、source内の文字列で置き換え、index配列表現で返す
 * @param input
 * @param source
 * @param window 置換文字列単位の最大長
 * @return
 */
private ArrayList<Integer> replaceByStringFlagments(String input, String source, int window) {
    ArrayList<Integer> list = new ArrayList<Integer>();
    //初期化
    for (int i = 0; i < input.length(); i++) {
        list.add(new Integer(-1));
    }

    //辞書の作成
    LinkedHashMap<String, ArrayList<Integer>> makeHash = makeHash(source,
            window);

    //置き換え
    while (window > 0) {
        log("window = " + window);
        for (int i = 0; i < input.length() - window + 1; i++) {
            // i: index
            // window: length
            String sub = (input.substring(i, i + window));
            log(sub);
            if (makeHash.containsKey(sub)) {
                log(" -- Match");
                StringBuffer sb = new StringBuffer();
                for (int count = 0; count < window; count++) {
                    sb.append("@");
                }
                input = input.replaceFirst(sub, sb.toString());
                ArrayList<Integer> repList = makeHash.get(sub);
                for (int aryIdx = 0; aryIdx < window; aryIdx++) {
                    list.set(i + aryIdx, repList.get(aryIdx));
                }
            } else {
                log("");
            }
        }
        window--;
    }
    return list;
}

}

MMLTalksと棲み分けは可能か

思いっきりコピーを打ち込みに来ている人も居るわけで、そういう人は(PCMは使えないけど)MMLTalksに誘導するのが筋なんだろうと思う。今のところKeimさんがRTしてるからそれでいいといえばいいのかも知れないけれど。

MMLTalksはコピー文化で、すたどんたんやSiON140は書き散らしだ。考えたのは、一定の文字数を超えるとMMLTalksへのリンクを表示するようにする。こっちがすたどんたんProですよ的な。

ただMMLTalksにはアーメンがない。MMLでパーカス書くって苦行だよなあ。そこだけ、うまく連携できないだろうか。コンバータを用意すればいいのか。さすがにそこまでの余裕は…

マイクロコンテンツを創作言語と見なしたとき、何を作ることが出来るか

すたどんたんはやっぱり一発で終わる気がするなあ。オモチャ扱いされてて、特に期待されてもなければ、成長に向けてのサポートが得られそうにもない。などと作った側が絶望しててどうすんだろう。いろんなコンセプトはあるんだけど、どれも人が求めるものかというと、どうかなあ…。リアルタイムコラボとか考えたけど、利用者が居ない未来が見える。つうかそれマビノギなんじゃないの。

すたどんたんはそもそもマイクロコンテンツ向きのシステムなので、そこからどんな可能性があるか。

創作をコミュニケーションとして使うのであれば、「創作言語」が必要。

時間をかけて何かを積み上げるのではなく、 その場で粘土をこねくり回すように「でっち上げ」、 その場のノリでアドリブ的に作品を作っていく。

作品で会話をする。それくらいスピード感がある世界になったらどうなるか。 (個人的には、使い捨ての作品が増え、弊害がでかい気がするが…)

ともかく、今までそれ程までにスピード感がある経験は、リアルタイムのお絵かきチャットか、はてなハイクやはてなワールドぐらいしか知らない。それをWebの慣習に従って展開したらどうなるか。

コンセプト

Twitterの窓で色々なことをやる。Microformat時代の遊びの標準を提唱する。 * 800×160px ぐらいで表示出来るマイクロコンテンツ。 * 作曲(→すたどんたんで十分) * うごメモ的なもの(→ドット絵で十分) * どれも「遊び」であって、真面目さを感じさせないUIにする * ワンアクションでのすげー感を大事にする。

基盤技術

  • マイクロフォーマット
  • RSS
  • MML
  • SVG
  • HTML5 Canvas

競合

  • はてな(なにげに、やろうとすることは大抵はてながやっている。geek的すぎて失敗してるけど)

妄想

  • 自分の「アルバム」を作成出来るようにする
  • 他のユーザの作品から「セレクション」を作ることが出来る(→tumblrに保存出来ればいいんだけど)

以上のコンセプトを考えたけど、これを使ってビジネスしたいとかは全然思わない。思いつくには思いつくけど、全然目標がない。ハイクのパクリになりそうだしなあ。パクリを回避するには、オリジナルを超えればいい話だけど。

オリジナル楽器でライブをしたかった話

16次元ベースという楽器を作っていた。 このプロジェクトは手放した方がいいような気がする(=先がないと思う)ので、 ここに書いてしまう。

コンセプト

ファミコン三角波(16bit三角波)のベースが好きなので、 その音がでる電子楽器を作る

予定

  • 試作品の作成
  • 販売

予算

  • Arduino UNO \3200
  • ponoko加工
    • オパールのアクリルで0.5cm x 78cm x 38cm = $28
    • 加工代が不明… 簡単な形状なら安いか?
    • 送料が$58.20(US Ponoko)
    • UKからでも$40以上かかる… *自前加工
    • ジグソー(\3,000~) or 糸のこ盤(\20,000~)
    • ジグソーなら斜め加工も問題なく出来そう。
  • 50mm softpot potentiometer \3000
  • アクリル黒に白色LED間接照明
  • 銃器をイメージ

製品仕様

製品名:16D-Monolith パフォーマンスできる楽器にする * 肩から提げる * ボタンのクリック感を意識 * プロトタイプでエルゴノミクス研究 * 握りやすいサイズ * 手首を曲げずに演奏できること

参考

http://pc.watch.impress.co.jp/docs/column/musashino_proto/20090716_302590.html