スキップしてメイン コンテンツに移動

投稿

2011の投稿を表示しています

あなたが参加したイベントの出席者はあなたが知らないこんなイベントにすでに参加しようとしている。

(この記事は、 Clojure Advent Calendar 2011  21日目の記事です。) 前々からATNDでAPIが利用できることを知ってましたので、週末起業的な意味で、以下のサービスをHeroku上で作って見ました。当然Clojureです。 サービスの内容はブログのタイトル通りです。 http://find-event.herokuapp.com/users/tnoborio 作ったときに残したメモを頼りに、Herokuでどんな感じで作っていったかをさくさくっと書いていきたいと思います。 まずはLeinigenを作ってディレクトリを作成しますがそこらへんは割愛。 Herokuにアプリケーションを作るときに、--stack cedraを忘れずに作ります。アプリの名前を付けないと、flower-company-hogehoge-xみたいな名前がつくので最初から決めといたほうがいいです。 $ heroku apps:create --stack cedar find-event それ以外にHeroku出動かすからという理由で必要だった作業はしProcfileを作る位でした。 こんな感じです。 web: lein run -m find-event.web あとはgitを使ってガンガンプッシュしていきます。 $ git push heroku master といっても、開発時はEmacs上でslimeつないで検証していく方が早くておすすめです。 プロジェクトを起ち上げた当初はproject.cljに必要なライブラリを追加して行く作業になりますが、clojarsからライブラリの最新バージョンを確認したり、どんなものがあるかというのを調べるのに最近では以下の直接のリポジトリから探すことが多いです。 http://clojars.org/repo/ その結果、project.cljはこんな感じになりました。 (defproject find-event "1.0.0-SNAPSHOT"   :description "FIXME: write description"   :dependencies [[org.clojure/cloj

Clojureの会社を作った話。

(この記事は、 Clojure Advent Calendar 2011 6日目の記事です。) Advent Calendarでお掃除ロボのルンバをClojureで制御するという記事を書こうと思ったんですが、Bluetoothデバイスとの繋ぎこみがうまく行かなかったので、一年前にニャンパスというClojureな会社起業した話を書きます。 Clojureという決してメジャーではない言語を選んだということで、人によってはそんな言語で起業なんてしてしまって問題ないのかと驚かれることもありますので、この機会にまとめときたいと思います。 なぜ、Clojureを選んだのか 改めて考えてみました。ふんだんに主観が入ってますのでこういう見方もあるんだな位に考えてください。 JVMの安心感 - 人によって考え方はいろいろあるでしょうが、僕は結構信頼してます。受託の場合、お客さんも安心です。 Javaのライブラリが使える - 後発のプログラミング言語の場合、いくら生産性高いといっても、ライブラリの充実度も重要です。そうでないと、サービスを公開する前に作らなきゃいけないライブラリを多くて、逆に回り道になってしまいます。その点Clojureの場合Javaで書かれている既存のライブラリが利用できるため安心ですし、Clojure用にJavaライブラリのラッパーが意外と揃っています。 Lisp - いろいろと言語を触って来ましたが、Lispに落ち着きました。書いてて楽しいです。マクロの魅力もあります。 Clojureを選んだといっても、サーバサイドに限った話で、iOS / Androidアプリを開発する場合にはネイティブな言語を使います。(無理にClojureでAndroidアプリを書くことはしてません。) Q&A このブログを書いているとき隣の席に、フリーランスエンジニア 桃太郎君 がいました。業務委託で仕事を頼んでいる普段Ruby使いの彼に、唐突にClojureの会社なんだけど何か質問ある?と聞いて出してもらった質問に対して、解答をまとめてみました。 - Clojureの情報、ドキュメントは揃っているのか。 日本語だとあんまりないです。みんなで頑張って書いていくしかないですね。ただ、PC買うときに回りにWindowsの人が多いのか、Ma

地域コミュニティとレイクタウン北自治会の話

いつもブログの更新間隔が長いので、書くたびにどんな語尾で書いていたかを忘れてしまう。 今年1月に長男が生まれて、彼が大きくなったら2011年という君が生まれた年はパンダがやってきた年だったんだよと言おうくらいの、今思えば歌的な会話してたんだけど、それが今やエライコッチャな感じになっていて、それはつまり抽象的な表現になっちゃうけど、大きいシステムで持続可能ではなかったものがどんどん崩壊していっている時代なんじゃないかなと思う。 そういった現在進行形で、大きな古いシステムにさよならを告げていく中で、小さい単位(=顔が見えるくらい)でのコミュニティの重要性が高まっていくんじゃないかなと勝手に妄想している。(3.11を経験したこともあって、近くの人とつながっているというのは重要なこととして捉えられて行っているんじゃないかなと思う。) そういった思いがむくむくとあるなかで、去年から住んでいるレイクタウンという町は、町としてできたのがまだ二、三年という大変新しいところで、まだ自治会がなかった。 半年前に自治会をつくろうという有志の集まりに参加し、そこから半年間かけて、レイクタウンで暮らす方々となって自治会の設立に向けてにやってきたが、今月の初めに自治会設立の総会が開かれ、晴れて設立の運びとなった。 ニャンパスという会社も"おはよう++(インクリメント)"という経営理念でやっていて、それはつまりおはようを言い合える近くの人をITの力で増やすことが目的だった。 自治会の参加は最初の一歩くらいに思っていて、具体的に小さいコミュニティが活発になれるようなサポートを具体的にやりたいと思っている。 (そういえば、去年ニャンパスという会社を立ち上げたことなど今二期目に入ったことなど気がつけば何も書いてなかった。ニャンパスとしての近くの人をつなげるサービスも進行中なのでその話はまた別で。) という訳で、レイクタウン北自治会の広報委員会会長になりました。 よろしくお願いします。

函数プログラミングの集い

9/17に行われました函数プログラミングの集いにて、Clojureとその界隈での最近の更新やどういったものがきているのかという話をさせていただきました。 函数プログラミングの集い | 発表資料 内容としては、Clojure 1.3の非常にざっくりとした話と、ClojureScript、Herokuで動くようになりましたよという3つで、狙いとしてはClojureがいろんな環境で動くことを知ってもらい、同時に短い期間でこれだけのサービス、ライブラリが立ち上げっていることからClojureがきている感じを伝えられればというところでした。 普段から仕事で使っていて、使い勝手のよい、楽しい言語なのでもっと日本ででも広がればと思っています。