![長文日記](https://cdn-ak-scissors.b.st-hatena.com/image/square/04d2961dae0bc11e013780a2ae429a250b95a884/height=288;version=1;width=512/http%3A%2F%2Fi.gyazo.com%2F15a7b569a5b58c49d0679d08579c7eb2.png)
オフィスの近くに寿司屋があるんですが、平日は500円で寿司ランチを食べることができます。一方、某社のレンタルサーバーのスタンダードプランは月額500円です。ということは、レンタルサーバーを解約すれば、毎月寿司ランチを食べることができます! そこで、サーバーを使わないスタンプラリーのシステムを作りました。いくつかのネットショップがあって、ショップのサイトを全部まわるとプレゼントに応募できるという状況をイメージしてください。サイトはすべて違うドメインです。 デモ。 デモを用意しました。メインページ1つと寿司屋のサイト3つです。ドメインが用意できなくて、すべて同じドメインに置いてます。これが全部バラバラのドメインでも動きます。寿司屋のサイトでスタンプを押すと、メインページにスタンプが貯まっていき、3つそろうと何か起こります。 http://shunsuk.net/rally/rally_serv
Dropboxはここがダメ 自分はパソコンがよく壊れ、そのたびに初期化するので、データを失わないようにDropboxを使ってデータを同期し保守してきました。Dropboxを使い始めてからパソコンが壊れても助かることが多くなりましたが、DropBoxは利用者が多いこともあってか、やたらと転送速度が遅いです。 有料プランが100GBからとなっていますが、有料プランを契約し30GBほど転送していたところ同期に一週間ほどかかったこともありました。ましてやiMacやMacBookProでお互いにファイルを同期していたりするとせっかくの同期だというのにDropboxがデータをダウンロードするだけで時間が潰れる始末。これではDropboxを使ってる意味が無いです。 それに、データのやり取りは暗号化しているというものの、Dropboxの社内では生データが飛び交っているらしい・・。 いくらSSLで通信してる
no title no title Capistrano 多機能 capify -> cap setup -> cap deploy Capfile, config/deploy.rb バージョン管理しない共通ファイル/ディレクトリの管理に一工夫いる symlinkを張るタスクを定義する必要あり バージョン管理しない共通ファイル/ディレクトリは :shared_children 変数で管理できる 2013/06/10追記:[twitter:@znz]さんご指摘ありがとうございます git以外のSCMにも対応 remote-cache strategyは--recursiveなnon-bareリポジトリを保持 submodulesがあっても早い scpによるstrategyもある リリースパスにコピーしたあと.gitは消さない リリースのバージョンはタイムスタンプ capistrano-ex
いよいよ明日に迫ってきた、3DS版ドラクエ7の発売日。 ドラゴンクエストVII エデンの戦士たち出版社/メーカー: スクウェア・エニックス発売日: 2013/02/07メディア: Video Gameクリック: 65回この商品を含むブログ (24件) を見る ダウンロード版も出るってことで、備忘録的メモ。 気になるのはダウンロードに必要な容量。オリジナルのPS版は確かCD2枚組だったし・・・・ 何故か任天堂のDQ7ページには表記されてないけど以下に記載されてた。 ドラゴンクエストVII エデンの戦士たち 公式プロモーションサイト 必要なブロック数は11295ブロック(必要な空き容量2GB)とのことです。 とび森(最大1GB)より大きいとは・・・・・・プレイ時間だけじゃなくダウンロードも結構時間かかりそう(^^;; ちなみに、3DSのダウンロードソフトはSDカードに保存され、この空き容量は以
Rails プロジェクトで jQuery1.9 を使うことにしたので、jquery-migrate を導入して古い書き方が指摘されるようにしました。 ▼ Deprecated だと表示されている様子 ▼ application.html.erb <%= javascript_include_tag "application" %> <% if Rails.env.development? || Rails.env.staging? %> <%= javascript_include_tag "jquery-migrate-1.0.0b1.js" %> <% end %> 参考リンク jquery/jquery-migrate - GitHub jQuery 最新版で Deprecated になっている書き方を指摘するツールはないでしょうか - QA@IT
あと1ヶ月もすればもうクリスマスだ。そしてまた1年と1ヶ月もすれば来年のクリスマスだ。アレも欲しい、コレも欲しい。でも、本当に欲しいモノって何だっけ?欲しいモノを聞かれて、すぐに答えていた子供の頃。歳をとるほどに、自分の欲しいモノがわからなくなる。そしてプレッシャーがかかると、思わず「からあげ」と答えてしまう。僕の欲しいモノは何なんだろう。 そうだ。サーバーだ。サーバーが欲しかったんだ。僕はずっとサーバーを探していた。昔はRailsが動くレンタルサーバーなんてなかった。専有サーバーを借りるお金などなく、ロリポップの525円の共用サーバーは当時としては珍しくRubyのCGIが動いたので、妻名義で申し込んで(ごめんなさい!)、RailsをCGIモードで動かしては画面遷移するたびに10秒くらい動かない画面を見つめたりしていた。最近は、ServersMan@VPSが490円で使えて安いんだけど、や
昨日は git fetch --prune がでてこなくて、同僚(的な人) に教わりました。帰宅後「Git によるバージョン管理」を読んでいたところ、git fetch と git pull と git remote update の違いについての端的な説明がありました。 git fetch リモートブランチから情報を取得するだけで、チェックアウトしているブランチにマージしないコマンド ワーキングツリー、インデックスには影響を与えない ローカルブランチに反映せずにリモートリポジトリにあるブランチの内容を git log で確認したり、git diff で差分を確認したりできる 取り込まれたリモートブランチの HEAD は FETCH_HEAD に格納される git pull リモートブランチから情報を取得して、チェックアウトしているブランチにマージするコマンド git remote upd
天ぷらを大量に食べました。油でギットギトです。というわけで、gitで共用リポジトリにpushした変更を取り消す方法です。gitって、ローカルのリポジトリを使う参考記事は多いですが、共用リポジトリを使う記事は少ない気がしますね。でも、githubのユーザーは多いと思います。 490円のServersMan@VPS (CentOS 5) をGitサーバーにする会。 - このブログは証明できない。 追記 2010-12-03 :重要!注意を書いたつもりが書き忘れてました。共用リポジトリをいじるので、複数人で使ってる場合は他の人に影響がでますよね。注意!! あ。間違えてcommitしちゃった。しかも、共用リポジトリにgit pushしちゃった。しかも、50万円もする布団買っちゃった。まず、間違えてcommitしただけなら、git resetを使います。 $ git reset --soft HEA
PHPからSystem関数でいろいろ使う時にApache EnvironmentのPATHが通ってないと当然使えない訳ですが、そんなもんどこで設定すんねん・・・という話。たとえばImageMagickのconvertコマンド使うとして、MacPortsで入れると当然コマンドは/opt/local/bin/convertになる訳だけど、同じくMacPortsで入れたapache2の環境変数PATHには/usr/bin:/bin:しか入ってない。ので、system関数実行してもPHPがconvertコマンドを見つけられない、ってことになる。 apacheの起動ユーザーにPATH通しときゃいいのか?とか、httpd.confにそういう設定が?とか、もしかしてPHP.iniにそんな設定が?とか思ってたんですが、全部ハズレ。 どーやらapache2パッケージにenvvarsというやつが含まれてまして
MongoDBにはローカルでMapReduceを動かす機能がついていますので、発表を聞きながらちょっと試していたのですがエラーが出たので対策をここに書いておきます。MapReduce - Docs-Japanese - 10gen ConfluenceMongoDB Aggregation III: Map-Reduce Basics | Kyle Bankerドキュメントに従ってJavaScriptでMap関数とReduce関数を定義し、mapReduceメソッドを呼び出すとエラーになります。バージョンは1.8.1で、MacにHomeBrewでインストールしたものです。 > version() version: 1.8.1 > m function () { this.tags.forEach(function (z) {emit(z, {count:1});}); } > r func
Emacs 24.1 がリリースされました。さっそく emacs23.4 と比較して emacs24.1 で増えた関数/消えた関数の一覧をつくりました。 emacs24.1 にあって emacs23.4 にない関数(Gist) emacs23.4 にあって emacs24.1 にない関数(Gist) 手順は 23 がリリースされた頃と同じで、-q オプションで起動した状態を対象にしています。 emacs23 で新しく追加/削除された関数の一覧をつくった - わからん configure オプションは 24 は '--prefix=/home/m/tmp/tmp/emacs24'、23 は '--prefix=/home/m/tmp/tmp/emacs23' '--with-crt-dir=/usr/lib/i386-linux-gnu/' です。23 の方で何かつけている理由はこちら(リン
JavaScriptDebouncing Javascript Methods | Unscriptable.com 密に処理が実行されてしまうのを避けるため、二つのかたちがあるとのこと。下のデモ。throttleは、0.5秒ごとに点の位置が変わる。debounceは、0.5秒いると赤くなる。 デモ throttleひとつ目は一定間隔以内の呼び出しは間引いて無視する方法。イベントの発生頻度が多く、処理が重い場合に使う。 Function.prototype.throttle = function(threshold, alt){ threshold = threshold || 100; var me = this; var last = Date.now(); return function(){ var now = Date.now(); if(now - last debounceも
CoffeeScript にはクラスを定義するための枠組みが言語自身にあります。この記事では、CoffeeScript でのクラス、継承といった基本的な概念を「使う」ための知識と、「理解する」ための解説を書きました。JavaScript をある程度しっており、CoffeeScript をみようみまねでなんとなく使っている人を想定した内容です。念の為申し添えておきますが、JavaScript でのクラスベースのプログラミングの是非は論じていません。 クラス周辺の言語の機能、ひとめぐり class Dog を JS に展開してみます。大きく括るとコンストラクタ関数でクラスを模倣するタイプだとわかります。 class Dog # (function() { # var Dog; # Dog = (function() { # function Dog() {} # return Dog; # }
ソースコードタグシステム GLOBAL の、作者自身による解説本「GNU GLOBAL ハンドブック」を読んだので紹介します。章立ては次の通りです。長かったので少し「(省略)」と書いてはしょりました。 目次 第1部 導入編 第1章 インストール 1.1 インストールの最も簡単な説明 1.2 インストールの準備 1.3 ソースアーカイブからのインストール 1.4 CVS リポジトリからのインストール 1.5 ソースアーカイブの署名を確認する 第2章 さぁはじめよう 2.1 GLOBAL ひとめぐりのための最初の題材 2.2 タグファイルを作る 2.3 シンボルの定義場所を調べる 2.4 シンボルの参照場所を調べる(-rオプション) 2.5 定義でも参照でもないシンボルを探す(-sオプション) 2.6 ディレクトリを移動する 2.7 正規表現を使う 2.8 egrep 相当の機能を使う(-gコ
フォームをサブミットするときに、display none になっている input 要素に disabled 属性をつける JavaScript を書いたので、jQuery プラグインにしてとっておくことにしました。サブミット時に DOM のトラバースコストを払うことで、サーバサイドでは、より本質的な仕事に集中できます。フォーム部品の hide()/show() 類を多用する巨大なフォームでの利用を想定しています。 仕様 hidden 属性を持つ input 要素は対象としません input 要素自体が display none ならサブミット時に disabled 属性を付与します input 要素の親要素のどれかが display none なら、サブミット時に input 要素に disabled 属性を付与します 実装 (function($) { var is_none = fu
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く