プログラミングと目的

桐島、Rubyやめるってよ」ってプレゼンが有って、まぁ論理的じゃなくふんわりしててあんま好きじゃないんだけど、それはそれとして、職業プログラマなら目的なかったらアホだけど、自宅でやるならアリだよね。

 
んで、目的ナシで成果が出るときってどんな場合だろう?って考えてた。んで突き詰めてくと、道具って目的を内包してるなと気づいた。トンカチ握ると何でも釘に見えるという揶揄があるが、それはそれとして、トンカチの作り出された目的は釘を叩くことである。プログラミングするってことはプログラミング言語を使うことであり、プログラミング言語も勿論道具であって、プログラミング言語の作り出された目的はコンピュータをうまく動かすことである。つまり、コンピュータの長所を活かすことでならプログラミング言語と戯れることで成果を残す可能性がある。
 
コンピュータの長所って言うと、
  • 計算が速い
  • 決められた順番に間違いなく実行してくれる
  • 繰り返しに強い
  • 寝ないで働ける
  • 大量の情報を扱っても疲れない

などなど。

 

これらの方面では成果を残せる可能性があるわけだ。インターネットとその先のデバイスを含めるとまぁ膨大なことができる。が、汎用ロボットは発達してないので物資界への関わりは限定的かな。そして人工知能はまだ居ないので創造性のあることはできない。あと、非プログラマの人々の力がないとできないことっていっぱいあるよね。

 

というわけで、成果がコンピュータに関わる範囲で収まるので満足できる人には、目的なしでプログラミングに打ち込むのもいいんじゃないでしょうか。

iPhoneにはてなブログアプリ入れてみた

これで万年床から書けるので更新頻度上がるかも?

しばらく停止してたのですが毎日100人前後は来てくれるみたいで有難いことです。

アクセス解析が付いてるとやっぱいいね。誰かが見てくれるっていうのは励みになりますね。というか誰も見てくれななかったら絶望する。自分が見てればいいという人もいるかもだけど。

アクセス解析見たら1日700人ぐらい来てた。ありがてえ。ところで、はてなブログアプリがサクサク動かなくてイラッとする。画面切り替えで溜めが入る感じ。

「ふーん、で、君はウェブサービスでどれが好きなの?」

「オウフwwwいわゆるストレートな質問キタコレですねwww
おっとっとwww拙者『キタコレ』などとついネット用語がwww
まあ拙者の場合ウェブサービス好きとは言っても、いわゆるビジネスとしてのウェブサービスでなく
メタSF作品として見ているちょっと変わり者ですのでwwwジェイン・マクゴニガルの影響がですねwwww
ドプフォwwwついマニアックな知識が出てしまいましたwwwいや失敬失敬www
まあソーシャルのメタファーとしてのFacebookは純粋によくできてるなと賞賛できますがwww
私みたいに一歩引いた見方をするとですねwwwポストTwitterのメタファーと
商業主義のキッチュさを引き継いだサービスとしてのですねwww
Instagramの文学性はですねwwww
フォカヌポウwww拙者これではまるでオタクみたいwww
拙者はオタクではござらんのでwwwコポォ」

Heroku に Rails 3.1 アプリを git push すると rake assets:precompile でエラーが出るときの対処法

Heroku で Rails 3.1 アプリを git push heroku master するとこんなエラーが出ることがあると思います。

-----> Preparing app for Rails asset pipeline
       Running: rake assets:precompile
       rake aborted!
       Failed to connect to a master node at localhost:27017

       Tasks: TOP => environment
       (See full trace by running task with --trace)
       Precompiling assets failed, enabling runtime asset compilation
       Injecting rails31_enable_runtime_asset_compilation
       Please see this article for troubleshooting help:
       http://devcenter.heroku.com/articles/rails31_heroku_cedar#troubleshooting

で、その末尾に書いてある URL を読むと、どうもこのタスクが実行される時点では環境変数(heroku config で見れます)が存在してないらしい。なので、config/database.yml や config/mongoid.yml で、ENV["DATABASE_URL"] とか ENV["MONGOLAB_URI"] を使用してると、nil が返り空白になり、デフォルトアドレス・デフォルトポート(この場合は localhost:27017)を見に行ってコケるらしい。


んでもって、何もコミットせずに再度 git push heroku master とかしてみたら、"Everything up-to-date" とか出やがる。あー、git push 自体は受け入れられてるのね。
ってことで、

$ heroku run rake assets:precompile

と後付けでやったところ、うまく動きましたとさ、めでたしめでたし。
(staging 環境とか作ってる人は適当に --app つけたりして脳内で補って下さい)