記事一覧    ブログパーツ    carp_qr    まとめったー    deliciousブクマ数API    リンク集

急にターミナルが動かなくなっちゃったよ\(^o^)/

今日の話なんですけど、Macで作業しているときに chown とか chmod で権限まわりをごにょごにょしていたら、変えちゃいけない権限を変えちゃった?のか、ターミナルを新規に立ち上げようとするとこんなエラーが出て強制終了するようになってしまいました・・

エラーメッセージ

(((゚Д゚))) ヒィー


と思って必死でググり何とか元に戻せてよかった。。(あまりいないとは思いますが)同じ問題にハマってしまう方もいるかもしれないのでやり方を共有しときますね!!

まず、Applications > Utilities > Disk Utility を起動します。

ディスクユーティリティ
あとは Repair Disk Permissions をクリックして修復するだけです。簡単ですね。

【参考】Odd Lion Terminal Problem MBP 2011 - MacRumors Forums



年末なのでそろそろ2011年を振り返ってみよう

ビーチエンジニア

恒例の振り返りをやりましょうか〜。今年はビーチエンジニア何やってたかなぁ。
あ、去年 はこういう目標を掲げてたんですが、、、

> 来年の目標はズバリ「今まで経験したことの無いことを一つやってみる」です。

達成しますた!!実は今年は初めて本を執筆させていただいたのです。NoSQLデータベースファーストガイド という本なので、もしよかったら買ってください読んでください (´∀`*)

たいやきを作ったのも初めての経験でしたw 味もなかなかでした。



それ以外にも Regional RubyKaigi 等でちょこちょこ発表させてもらったり (´・ω・`)


道頓堀のグリコ兄さんも激写してきた!!



そうそう。入社しました忘年会 では初めて司会もやらせてもらいました。司会ってむずかしいんですよみなさん!><

広島までカープの試合も見に行ったりもしましたね〜♪ いやぁ、開放感があって素晴らしいスタジアムでした。9回裏、石原のサヨナラデッドポールが見れたのは良かった!興奮した!





一時期は「くろたつ」になってて、黒い発言が多く関係各位から心配されたりしましたが(参考:sasata299さんの闇 - Togetter)、今は浄化されたので大丈夫です。(∩´∀`)∩ワーイ

あと、今年は色んな人と知り合えた一年でした。今まで一方的にしか知らなかった人と実際に会って話すのはすごく楽しい。来年も色んな人とお会いしてキャッキャウフフしたい。

・・・とまぁ色々ありましたねぇ。でも駄目なところもいっぱいあった。。その反省をふまえて来年は「webサービスを立ち上げる!」と「もっとgithubにコードを上げる!」の二本立てで頑張ります。よろしくお願いします〜 :-)

Herokuって便利だし利用までたった3ステップですお!!

Ruby Advent Calendar jp: 2011 : ATNDの20日目の記事です。19日目はtamootさんでWindows環境で torquebox + JRuby + #tDiary を動作させる - 会長@腹部日記(2011-12-19)でした。

さて、ブログ書くのちょーひさびさですが、今日は Heroku について書きます><
# ちなみに去年の Ruby Advent Calendar ではこんな記事を書きました

プログラマたるもの、Webサービスを作りたいと考えるのは自然なことでしょう。ただ問題は作ったものをどうやって公開/運用するか、です。自宅サーバやレンタルサーバでももちろん良いのですが、Ruby の場合だと Heroku を利用する、という選択肢もあります。

Heroku は Ruby / Rails をクラウド上で動かすことのできるホスティングサービスです。しかも基本的な機能であれば無料で利用することが可能です(有料だとさらに高機能になります)。なんてすばらしい!(´∀`*)

以下のような機能が無料で提供されています。

  • Webアプリケーションサーバの1プロセス (1dyno) を利用できる
  • DB として PostgreSQL が利用できる (5MBまで)
  • ソースコードのやりとりに git が利用できる

ちょっとしたWebサービスであれば無料でも十分に捌けます!ありがたいですねぇ。

ではさっそく使い方を説明していきましょう〜

0. 準備

まずは何も言わずに heroku という gem をインストールしてください。この gem をインストールすることで コマンドラインから heroku コマンドが使えるようになります。

gem install heroku

1. Herokuのサイトでユーザ登録

まず、heroku.com でユーザ登録をしてください :-)

heroku_スクリーンショット

2. アプリの作成

で、次は適当なアプリを作って、commit します。これも特に問題ないですよね。

rails new [app_name]
cd [app_name]
git init
git add .
git commit

3. Herokuにデプロイ

ssh の公開鍵を登録します。これは ssh で Heroku にソースコードを push する際に必要です。

heroku keys:add

Heroku に新たなアプリを登録します。ちなみに、heroku create したときには heroku という名前のリモートリポジトリが自動で設定されますが、git clone などでソースコードを取ってきたときには明示的に git remote add してあげる必要があります。

その後、git push heroku master するとソースコードが Heroku に送信され、そのままデプロイまで行われます。

heroku create [heroku_app_name]

# git clone とかして持ってきたときには明示的に追加する
# git remote add heroku git@heroku.com:[heroku_app_name].git

git push heroku master

デプロイされたWebサービスはこのコマンドで確認できます(ブラウザで開きます)。

heroku open

これで Heroku を利用してWebサービスを公開することが出来ました!自分で作ったWebサービスがこんなにも簡単に公開できてしまうなんてビックリです。

興味のある方は他にもいろんなコマンドがあるので heroku help して確認してみてください〜

明日は @todesking さんです。楽しみですね!

ネットで知ってるあの人とリアルで会える!? つながり短冊をリリースしました

急に寒くなってきましたが、みなさまいかがお過ごしでしょうか。さてさて、いきなりですが先日 つながり短冊 というfacebookアプリをリリースしました!

つながり短冊

なぜ作ろうと思ったのか

忘れもしない、あれは7月の暑い日のことでした…。あれ、8月だっけ?まぁ細かいことは良いではないですか。

練馬で RubyKaigi2011 (FinalRubyKaigi) という Ruby のイベントが行われていたんです。で、僕も参加してたんですよ。もちろんセッションも聞いてたんですけど、それ以外にもロビーみたいなところで他の参加者の人と話したり、ジュンク堂書店の出張所のところで「買ってください><」とかやって(販促活動)たりしてました。

そういうときにたいやき部の部長でもある @ktou さんと一緒にいる時間が結構あって、「誰か会ってみたい人いる?紹介するよ」みたいなことを言ってもらいました。いろんな人を紹介してもらって、ほんとにありがたかったです(あ、これこの前の記事でも書いたな…)。ネット上での関係も楽しいですが、リアルで実際会うとやはり嬉しいものです(よね?)。

で、思ったんです。日頃から「あの人に会いたい」って言っとけば @ktou さんのように紹介してくれる人もいるんじゃないだろうか、って。でも「僕○○さんと会いたいんですよ。紹介してください」って直接相手に言うのは気が引けます。相手の負担になったら嫌だし、「えっ、君をあの人に紹介?いや、それは、、」みたいになったらと考えると…… (///)

でもあなたが誰と会いたがってるかなんて言わなきゃわかんないじゃないですか。それに、言うだけなら自由なんですよ!そこで、「○○さんに会いたい」というのを気軽に伝えられるサービスを作ろうと考えました。ちなみにつながり短冊という名前は、お願いはするけど叶うかどうかはわかんないよ、というところが短冊っぽい、というところから名付けてますw

会いたいって言われた方も、自分の知り合い同士が会いたがってるんだったら紹介してあげようって思う人も多いと思うんですよね。それに、実際に紹介するかどうかは自由なので負担にもならないかなぁと。

技術的な話について

ハマったこと、困ったことはたくさんありました…。が、いざ書こうと思うといろいろあって面倒なのでまた今度書きます (キリッ

やってることは、あなたの友達と、あなたが会いたいと思っている人(仮にAさんとします)の友達から、共通の友達をランダムにひとり探し出してあなたがAさんに会いたがっていることを伝えるだけです。共通の友達がいなければ何もしません。

とりあえずコードはこちらにあるので興味がある方は見てみてください〜
https://github.com/sasata299/tanzaku

Sinatra on Heroku で静的ファイルを扱う

実はこのブログではシンタックスハイライトを使ってコードに色づけしてるんですが、そのために js と css を 自宅サーバでホスティングしてます。

ただ僕の場合、自宅サーバだと稼働させるのが難しいときがあり、非稼働時には js と css の読み込みが出来ずシンタックスハイライトが効かない、とか、ずっと読み込み中になっててレスポンスが遅い、みたいな問題がありました。これではいろいろと不便です。。

sinatra

そこで、解決策として Sinatra を使って js と css を返す簡単なプログラムを作って、それを Heroku 上で運用することにしてみました。何と言ってもタダですからね!!ちなみに初めて Sinatra を使ってみたわけなんですが、本当に簡単ですな〜

まず適当なファイルを作成します。ここでは app.rb としましょう。

# app.rb
require 'rubygems'
require 'sinatra'

get '/' do
  'Hello, world'
end

このように書いて、ruby app.rb するだけでサーバの完成です( http://localhost:4567/ にアクセスすると「Hello, world」と表示されます)。パターンを増やして行けばいろいろなリクエストに対してレスポンスが返せるようになります。

パターンにマッチしないときには、js や css といった静的ファイルを探してくれます。静的ファイルは public ディレクトリがベースになるので、例えば hoge.css というファイルを public/hoge.css と置いた場合には http://localhost:4567/hoge.css でこの css にアクセスできます。

あとは必要な gem を Gemfile で管理します。最低限だとこんな感じでしょうか?

source :rubygems
gem 'sinatra'

開発時に手元で動かす分にはこれだけでもいいのですが、実際には Sinatra の起動スクリプトとして config.ru というファイルも用意してあげましょう。

require './app' # 最初に作ったファイル名を指定する
run Sinatra::Application

ひとつだけ気を付けることがあります。ローカルだと config.ru で require 'app' とすれば良いのですが、Heroku 上で動かすには require './app' とする必要があります。またひとつバッドノウハウが増えましたね!

(追記)※これは Heroku 上で動いている Ruby のバージョンがデフォルトだと 1.9.2 なのが原因のようですね。
ささたつについて


寄稿した記事

Ruby Freaks Lounge (28,30)
NoSQLを試してみる

作ったもの

カープ戦速報ボット
まとめったー
YouTube Oricon Ranking
NicoNicoブックマーク
ねたばれ見る?


この日記のはてなブックマーク数


ブックマーク数



購読者数





つぶやき
あわせて読みたいブログパーツ
Archives
Amazonサーチ
RSS登録
Subscribe with livedoor Reader