Hatena::ブログ(Diary)

130単位

2013-12-31

Sitespecを使ってみた感想

Background

  • 住んでるシェアハウスWebサイトがなかった
  • プロモーションの拠点として必要性を感じた
  • 最初は割とよく耳にするMiddlemanで作ろうかと思った
  • 直近で読んだr7kamuraさんの記事 no title に影響を受けた
    • "Middlemanの嫌いなところは、何をするにもMiddlemanに従う必要があることだった"
  • 必要十分そうなSitespecというツールがそこにあったので使ってみることにした

Goal

  • とりあえず1ページでよい
  • 費用や入居までの流れなどがわかればよい
  • デザインはシンプルかつそれなりな見栄えであればよい
  • コンテンツはMarkdownで書きたい
  • Herokuくらい簡単に公開したい

Sitespec with Sinatra

r7kamuraさんのブログ(ソース)はPadrino使ってますが、全部引用するのは忍びないのでSinatra使ってみました。

helpers do
  def markdown markdown_text
    renderer = Redcarpet::Markdown.new(Redcarpet::Render::HTML, fenced_code_blocks: true)
    renderer.render(markdown_text)
  end
end
use Rack::Static, :urls => ['/images'] #Sitespecに渡すアプリにこう書く

Others

Result

ぼちぼちコンテンツ増やしていきたいと思っています(あと入居者募集中です!)。

Conclusion

上記の画像の件ですが、Sitespecとしては "まずは画像のパスをSpecに書け" というテストファースト的コンセプトなんだと思います。RSpec派生ツールなので当然といえば当然なんですが、そこを理解するとスムーズに開発できる気がします。ほぼ学習コスト無しでいけるため、さくっと静的サイトを作りたい場合にはMiddlemanよりおすすめです、たぶん!

Links


4774158798
パーフェクトRuby (PERFECT SERIES 6)

*1:IFTTTなどでTwitterに流しているとなおさら

2011-05-31

利用中のGoogle Chrome拡張機能 2011年5月

現在利用している拡張機能とUserScriptの紹介です。各リンク先からインストールすることができます。

拡張機能

常用18個
あると便利5個

UserScript

常用11個

関連リンク


4844328468
Google Chrome OS ~最新技術と戦略を完全ガイド~

関連記事

2011-03-26

Redmine チケット一覧 ステータスで色分け表示

対応中や対応済のチケットを認識しやすくするため、色分け表示します。対象ステータスNoのclassを指定してスタイルを記述します。

こちらのテーマに合わせて編集したものですが、通常テーマでも使えます。優先度で赤と青が使われているので、それ以外で。

/* yellow style */ 
tr.odd.status-2 { background: #ffe; }
tr.even.status-2 { background: #fffff2; }
tr.odd.status-2 td, tr.even.status-2 td { border-color: #ffc; }
tr.status-2 td.status { color: #990; }
/* green style */
tr.odd.status-3 { background: #efe; }
tr.even.status-3 { background: #f2fff2; }
tr.odd.status-3 td, tr.even.status-3 td { border-color: #cfc; }
tr.status-3 td.status { color: #090; }
/* purple style */
tr.odd.status-4 { background: #fef; }
tr.even.status-4 { background: #fff2ff; }
tr.odd.status-4 td, tr.even.status-4 td { border-color: #fcf; }
tr.status-4 td.status { color: #909; }

対応済になって色が変わったりするのは、多少なりとも達成感アップにつながるんじゃないかと思います。

関連リンク

日本語環境で読みやすいRedmine用テーマ「farend basic」公開 | Redmine.JP Blog

2010-10-26

9月分の読書記録

帰省中にまとめて読めた気がします。

『そこまで言うか!』は、3者でのトーク形式だったこともあり、普段表れないような一面が散見できて面白かったです。ノーカットで正解だったと思います。

『アフィリエイトの真実とノウハウ』は、アフィリエイト業界やその仕組みについて知ることのできる高速道路的な一冊だと思います。その先で稼げるかは、ノウハウを咀嚼して自分なりに実践できるかどうかでしょうか。

9月分読書データ

期間 : 2010年09月
読了数 : 9 冊
モテキ 4.5(イブニングKC)
久保 ミツロウ / 講談社 (2010-09-07)
★★★☆☆ 読了日:2010年9月27日
ガールズサイド新鮮でよかった。一歩踏み出す勇気が世界を広げていくんだなーと。
そこまで言うか!
勝間 和代 , 堀江 貴文 / 青志社 (2010-09-02)
★★★★☆ 読了日:2010年9月25日
1冊で3人の考え方が知れて良い。まず"気づく"ことが重要
アイデアを盗む技術 (幻冬舎新書)
山名 宏和 / 幻冬舎 (2010-03)
★★★☆☆ 読了日:2010年9月20日
中心からちょっとずれた場所に目を向けて、自分だけの「おもしろい」を見つける。第四章のTV番組の要素の抽象化が参考になる
ロックインジャパンフェス 2010 2010年 10月号 [雑誌]
ロッキングオン (2010-09-10)
★★★★☆ 読了日:2010年9月20日
まさに凝縮の一冊。バックステージの内容で別角度からも楽しめる
アフィリエイトの真実とノウハウ
あびる やすみつ / 秀和システム (2010-05)
★★★★☆ 読了日:2010年9月20日
業界の善悪についての解説から専門的な指標によるノウハウまで幅広く学べる
新書がベスト
小飼 弾 / ベストセラーズ (2010-06-09)
★★★☆☆ 読了日:2010年9月18日
各レーベルのレビューがあり新書の入門として有用。多読で関心事の「衝突断面積」を増やし、アウトプット能力を高めて自己形成を図る
クラウド時代と<クール革命> (角川oneテーマ21) (新書)
角川 歴彦 / 角川書店(角川グループパブリッシング) (2010-03-10)
★★★☆☆ 読了日:2010年9月18日
「もし、コミケを認めてユーチューブを否定することがあったら、

クリエイティブ産業に身をおく自分に釤老い釤があることにならないかと自問したのである」

本・雑誌
ワールドサッカーダイジェスト / 日本スポーツ企画出版社 (2010-09-07)
★★★☆☆ 読了日:2010年9月12日
ビッグクラブの移籍を把握。CLの出場クラブが例年よりも物足りなさげ
ウェブで学ぶ オープンエデュケーションと知の革命 (ちくま新書)
梅田望夫 , 飯吉透 / 筑摩書房 (2010-09-08)
★★★☆☆ 読了日:2010年9月10日
「運や偶然をつかむ秘訣とは、誰かの心に印象を残して、大切なときに誘われる能力。それを自然にできる場所が、実践を伴なうコミュニティ」「日本にいては見えない世界の急激な変化について知り、そこからひりひりするような刺激を受けて、これからの時代を生きる自分にとってどういう意味があるのか考えてほしい」

メディアマーカー

8月分の読書記録 - 130単位 (一ヶ月前)

9月分の読書記録 - 130単位 (一年前)

2010-08-11

Mingでswf合成して変数追加

サンプル

2番目に合成したswfのActionScriptで変数を利用する場合

<?php
$swf = new SWFMovie();
$swf->setDimension(100, 100);
$swf->setbackground(0xff, 0xff, 0xff);
$swf->setRate(10);

$clip = new SWFPrebuiltClip('1.swf');
$obj = $swf->add($clip);
$obj->moveTo(0, 0);

$clip = new SWFPrebuiltClip('2.swf');
$obj = $swf->add($clip);
$obj->moveTo(0, 0);
$obj->addAction(new SWFAction('foo = "bar";'), SWFACTION_ONLOAD);

$swf->output();
  • SWFPrebuiltClipは既存swfファイルを読み込む
  • SWFMovieにSWFPrebuiltClipをadd()すると、SWFDisplayItemのインスタンスが返る
  • SWFDisplayItemにSWFActionをaddAction()する
  • SWFMovieにSWFActionをadd()してもうまくいかなかった

MingもActionScriptも超ド素人なので、もっといいやり方があるかもしれません。

SWFDisplayItem#addActionの第二引数$flags

マニュアルに載っていませんでした。

SWFDisplayItem

void addAction ( SWFAction $action , int $flags )

PHP: 404 Not Found

no title

上記からMingダウンロードして中身見てみました。

<?php
/* flags for SWFDisplayItem_addAction */
CONSTANT("SWFACTION_ONLOAD",            SWFACTION_ONLOAD);
CONSTANT("SWFACTION_ENTERFRAME",        SWFACTION_ENTERFRAME);
CONSTANT("SWFACTION_UNLOAD",            SWFACTION_UNLOAD);
CONSTANT("SWFACTION_MOUSEMOVE",         SWFACTION_MOUSEMOVE);
CONSTANT("SWFACTION_MOUSEDOWN",         SWFACTION_MOUSEDOWN);
CONSTANT("SWFACTION_MOUSEUP",           SWFACTION_MOUSEUP);
CONSTANT("SWFACTION_KEYDOWN",           SWFACTION_KEYDOWN);
CONSTANT("SWFACTION_KEYUP",             SWFACTION_KEYUP);
CONSTANT("SWFACTION_DATA",              SWFACTION_DATA);
CONSTANT("SWFACTION_INIT",              SWFACTION_INIT);
CONSTANT("SWFACTION_PRESS",             SWFACTION_PRESS);
CONSTANT("SWFACTION_RELEASE",           SWFACTION_RELEASE);
CONSTANT("SWFACTION_RELEASEOUTSIDE",    SWFACTION_RELEASEOUTSIDE);
CONSTANT("SWFACTION_ROLLOVER",          SWFACTION_ROLLOVER);
CONSTANT("SWFACTION_DRAGOVER",          SWFACTION_DRAGOVER);
CONSTANT("SWFACTION_DRAGOUT",           SWFACTION_DRAGOUT);
CONSTANT("SWFACTION_KEYPRESS",          SWFACTION_KEYPRESS);
CONSTANT("SWFACTION_CONSTRUCT",         SWFACTION_CONSTRUCT);

変数追加ならSWFACTION_ONLOADでいいっぽいです。

参考リンク

ウノウラボ Unoh Labs: Flash Liteコンテンツを動的に合成してみる 
http://labs.unoh.net/2010/04/flash_lite_2.html

PHP: SWFAction の例 - Manual 
http://www.php.net/manual/ja/ming.examples.swfaction.php

【関連記事】
CentOS5.5にApache,PHP,APC,JSON,Ming,phpMyAdminインストール - 130単位