最新でないマイグレーションを単独で実行する

Railsで複数人開発をしていると、他の人のコミットにマイグレーションファイルが含まれていることがある。 そのマイグレーションのバージョン(タイムスタンプ)が手元にあるマイグレーションのうち最新であれば、ただrake db:migrateを実行すればデータベー…

LiveCoding #11

昨日見物人として参加してきたLiveCoding #11のメモ。 Node.js + Twitter API + jpg.to + 画像アップロードアプリ @hakobeさんによるライブコーディング。 Twitterのタイムラインから#livecoding11というハッシュタグのついたツイートを拾い出し、そこに含ま…

AngularJSでRailsサーバにPOSTリクエストを非同期送信する

要するに、metaタグにあるauthenticity_tokenをPOST時のパラメータで渡す必要がある。HTML中のボタンを押すとsendHoge()関数が実行されるとする。 <div ng-controller="HogeCtrl"> <button ng-click="sendHoge()">送る</botton> </div> このときsendHoge()は次のようになる。 HogeCtrl = function($scope, $http) { $scope.sendHoge = fun…

Railsアプリでユーザのタイムゾーンを取得する方法

Railsでアプリケーションを作成していて、ユーザのタイムゾーンをユーザの手をわずらわせること無く取得したいことがあり、その方法を調べたものの、お決まりの方法らしきものを見つけることができなかった。 それでひとまず、detect_timezone_railsというge…

Red5アプリで録画の開始・停止時に処理を実行する

Red5のアプリケーションはApplicationAdapterを継承して作成する。イベントを検出するには、そのイベントに対応するApplicationAdapterのメソッドを継承する。 録画開始はstreamRecordStartが呼ばれ、録画停止時にはstreamBroadcastCloseが呼ばれるようであ…

さくらVPS 2GにRails+Nginx+MySQLでサーバを作成した記録

パッケージのインストール rootで yum install zlib-devel yum install openssl-devel yum install readline-devel yum install mysql-devel yum install mysql-server yum install libxml2-devel yum install pcre-devel yum install ImageMagick-devel yum…

Google URL Shortener APIを利用してURLを短縮・展開する

コード require 'net/https' require 'json' module Google module UrlShortener def self.shorten_url(url, api_key=nil) send_request { req = Net::HTTP::Post.new("/urlshortener/v1/url#{api_key ? '?key=' + api_key : ''}", 'Content-Type' => 'appli…

CentOS6にNode.jsをインストールする

https://github.com/joyent/node/wiki/Installing-Node.js-via-package-manager からのコピペなんですけれども。 wget http://nodejs.tchol.org/repocfg/el/nodejs-stable-release.noarch.rpm yum localinstall --nogpgcheck nodejs-stable-release.noarch.r…

SlideShare APIでスライド情報を取得する

slideshare gemを利用してスライドのURLからスライドの情報を取得する。 APIを利用するには事前に登録してAPIキー等を入手する必要がある。 SlideShareの開発者向けサイトはこちら:http://www.slideshare.net/developers require 'slideshare' url = "http:…

RailsのモデルでMarkdownを使用する

RailsでWiki的なものを作るために、簡易マークアップ言語にMarkdownを使ってみたので、そのメモ。Ruby用のMarkdownライブラリはいろいろある模様。今回はredcarpetというのを使った。特にライブラリを比較した上で選択したわけではない。 # Gemfile gem 'red…

EC2のAmazon Linux上にRailsデプロイ環境を作る際にインストールしたyumパッケージのリスト

Rails + MySQL + ruby-build + rbenv + nginx + unicornでアプリのデプロイ環境を作る際にインストールしたyumのパッケージの一覧をhistoryから拾い出して貼りつけておく。 sudo yum install git sudo yum install zlib-devel sudo yum install openssl-deve…

実践的なネットワークの知識を学びたい:Head First ネットワーク

これまでちょぼちょぼとWeb上のサービスを作ったりはしたものの、ルーターやスイッチやハブ、配線にDNSの設定など、アプリケーションを動作させるためのネットワーク環境のセットアップについてはもっぱら人任せだった。この辺りのことを今自分でやると考え…

Skyrimの感想

Skyrimのメインクエストを終えたので、感想なんぞを書いてみたいと思う。The Elder Scrolls V : Skyrim 【CEROレーティング「Z」】出版社/メーカー: ベセスダ・ソフトワークス発売日: 2011/12/08メディア: Video Game購入: 10人 クリック: 205回この商品を含…

FlexBoxでコンボボックス

FlexBox(http://www.fairwaytech.com/flexbox/)というjQueryのプラグインを使ったので、そのメモ。 概要 FlexBoxは、いわゆるコンボボックスを作るプラグインで、ユーザがテキストを入力するとその下に選択肢の候補が表示される。オートコンプリートのように…

Chrome+HTML5 ConferenceをYouTubeで見物する

Twitterのタイムラインを見ていて、今日Chrome+HTML5 Conferenceというイベントが東京で開催されていることを知り、幸いYouTubeのライブ配信で閲覧できたので、ぐずついた天気の中引きこもってイベントを見て過ごした。 http://events.html5-developers.jp/c…

AWS SDK for iOSでS3にファイルのアップロード/ダウンロード

iOS

暫定版。 アップロード - (void)uploadFile:(NSString*)filePath key:(NSString*)key { AmazonS3Client *s3 = [[AmazonS3Client alloc] initWithAccessKey:@"YOUR-ACCESS-KEY" withSecretKey:@"YOUR-SECRET-KEY"]; S3PutObjectRequest *req = [[S3PutObjectR…

Struts2のサーバで、サイズ制限を超えたファイルがポストされたことを検出するしっくりこない方法

ActionSupportを継承したクラスでvalidate()メソッドを継承し、getActionerrors()の返す文字列の中に特定のパターンのものが含まれているか否かをチェックする。 ファイルアップロード時にエラーが起きてもその詳細な理由を拾う素直な手段が見つからなかった…

HttpComponentsでファイルをアップロードする際に、進捗を観察する

HttpComponentsを使ってマルチパート・フォームデータとしてファイルをサーバに送信する際にファイルのアップロードの進捗をUIに反映させたい、ということがあって調べてみるも、公式なやり方を見つけられなかった。 それで実際にアップロード処理を実行して…

世界に1つだけの英語教科書

久しぶりにBALのジュンク堂に行ったら地下一階にまでジュンク堂が進出していた。完全にマンガフロアと化していたが、あれは隔離政策か何かだろうか。そんなことはともかく、たまたまこんな本を見つけてパラパラとめくってみたら面白そうだったので読んでみた…

アメリカでのデモンズソウルへの反応がふと気になって

今年のはじめに日本で発売されたゲーム、デモンズソウルがアメリカで先日発売された。今どきのゲームとは一線を画したこのタイトルがアメリカ人がどう受け止めているのか興味が湧いたので、アメリカのアマゾンのレビューを読んでみた。ゲームのみのバージョ…

ニコニコ動画が未来を作る 〜 ドワンゴ物語

ドワンゴができるまでの創業時メンバーたちの活動から、ドワンゴの設立、そしてニコニコ動画が生まれるまでを描いたドワンゴの社史ともいうべき本。本書のサブタイトルは「ドワンゴ物語」となっているのだが、本書の内容からするとこちらがメインタイトルで…

Macで中国語を入力する

中国語の学習を始めてもうすぐ5ヶ月になる。そのうちLang-8で中国語で日記でも書いてみたいなとは思いつつ、まだ語彙がスカスカなので日記を書けるような段階ではない。といいつつ、中国語をパソコンで書く方法を知っておくのは悪くなかろうと自宅Macでやろ…

Google App Engineをいじる夏

Google App Engine Hackathon in Kyoto に参加した。Google App Engineを使って半日で何かを作るという内容のイベントだ。今回は20〜30人の参加者が2〜5人の6チームに分かれて競い合った。うちのチームではHTML5で取り入れられるGeolocationと、Google Ma…

いまさらながら

はてなダイアリーではコードに色をつけるのが簡単にできるということを知る。 def hoge(x) x * 2 end public class Hoge { public static void main(String[] args) { System.out.println("Hoge!"); } } (define (hoge x) (print "Hoge!")) let hoge = fun s…

英語で中国語を学ぶ

英語をやり直し始めて二年弱になる。この間、言語を学ぶにはどういうやり方がよいのか考えることが多かった。しかし、いろいろ考えてみたところで実際の学習で試してみないと永遠に妄想の域を脱しない。だったら試せばいいじゃないかと思うのだが、英語につ…

天使と悪魔

原作を先に読んでから映画を見るのは久しぶりだ。 見てみて思ったのは、原作を知っていることは映画に没入するのを妨げるということ。どうしても原作との違いが気になってしまう。原作と違うからこれはダメだ、ということではない。ひとつの違いに気がつくと…

英語で考えるスピーキング

本屋でたまたま手に取った本。ドクター・ヴァンスの 英語で考えるスピーキング―すらすら話すための7つの思考法作者: ウィリアム A.ヴァンス,神田房枝出版社/メーカー: ダイヤモンド社発売日: 2009/02/16メディア: 単行本購入: 10人 クリック: 55回この商品を…

Angels and Demons

物理学研究の一大拠点であるCERNで、とある科学者が殺害された。その遺体の胸にはIlluminatiという文字の刻印が焼き付けられていた。イルミナティとは科学が宗教によって弾圧されていた時代に創設された組織で、宗教による監視の目をかいくぐって科学の啓蒙…

あまぞn

今日Yahooのニュースで、日本の内閣総理大臣をされている麻生太郎さんの著書「とてつもない日本」がAmazon.co.jpのランキングで急上昇しているという記事を見かけた。どれどれ確認してみるかとブラウザの検索ボックスにamazonと入力した。そしてGoogleの検索…

Fallout 3

オブリビオンを開発した人たちによる新作Fallout 3をプレイした。オブリビオンもプレイしたけど、こちらはあまりのめり込めずに途中で放棄しちゃったが、こちらはわりと楽しめた。オブリビオンと大きく違うのは、主人公の生い立ちがはっきりしていて、それに…