タグ

ブックマーク / rosylilly.hatenablog.com (6)

  • gofu is tofu clone implemented by golang - 鳩舎

    go 言語かけるようになるとメス鳩のウケが良いと聞いたので頑張って勉強しました。リリースは大安か友引の日を選ぶタイプの鳩、ロージーです。 gofu(護符) という、弊社の id:mirakui さんが作ったイケてる画像リサイズサーバー、 tofu の go 実装です(tofu についてはこのへんを見ると良いです)。 もちろん全部機能が載ってるわけでもなく、ひみつのハッシュ値あたりとかはどう実装されてるのか知らんし今回必要ないのでつけてません。 護符が出来ることは以下で全てです。 S3 から画像をとってきて表示することが出来ます(/image/path.jpg にアクセスすると S3 の /image/path.jpg を取ってきます) 取ってきた画像からは自動的に Exif その他のメタ情報が消えています。 これらのパラメータでリサイズなどの処理を付与できます。 w : 画像の横幅を変更し

    gofu is tofu clone implemented by golang - 鳩舎
  • ファイルアップローダを作ろう - 鳩舎

    How to じゃなくて、何かの言語を学ぶ、もしくはあるパラダイムにチャレンジするとき、に僕がよく使うサンプルアプリケーションとして、ファイルアップローダというのがあり、それの仕様をまとめておこうと思い至っただけです。 ちょっと研修資料っぽい感じになっちゃったけど、まぁいいか。 アプリケーションの概要 非ログイン型のファイルアップローダです。ファイルの保持先は S3 や Disk 、 DB への Blob などいくつかの選択肢が提供されます。 HTTP のフォームからファイルがアップロードされ、リストで表示されるだけの簡単なアプリケーションです。 ファイルには有効期限があり、それを過ぎるとダウンロードできなくなる、かつリストにも表示されなくなります(保存先の実ファイルも削除されていることが望ましいです)。 また、ファイルにはプライベートモードがあります。プライベートモードのファイルはリスト

    ファイルアップローダを作ろう - 鳩舎
  • golang を始めた時 - 鳩舎

    そういやまだ新しい経験だから覚えてるし、 golang を勉強していった過程を書いておく。 正しさとかは気にせず、動くものが出来るまでがむしゃらに。 Hello, world まで 特にひねりはない。 homebrew は便利だ。 $ brew install go $ cd ~ $ mkdir -p go/src/hello_world $ export GOPATH=${HOME}/go $ cd go/src/hello_world $ cat main.go package main import "fmt" func main() { fmt.Println("hello, world") } $ go run main.go hello, world 手軽。 入門、そして組み込みパッケージを使う http://golang.org/pkg/ に組み込みパッケージの一覧があるので

    golang を始めた時 - 鳩舎
  • Gondler という bundler for golang を作った - 鳩舎

    2番煎じ乙。 Gondler という Bundler みたいなツールを go 向けに作りました。gom という先行実装があるのでもう作らんでもええかな感があったのですが、Ruby っぽいけど Ruby じゃない Gomfile とか、bundle exec 相当の機能がないとか、そういう理由でわざわざ自作しました。 基的には bundler なので、バージョン、というよりコミットハッシュとかをロックするのに使います。 fork 元の gom との違いは インストール先ディレクトリがデフォルトでは .gondler になっている(変更可能(gom は変えられない)) Gondler 環境下の repl が起動できる(gondler repl) Gomfile を自動生成する機能はない Travis 用の yml を自動生成する機能はない bundle exec 相当の gondler ex

    Gondler という bundler for golang を作った - 鳩舎
  • プログラミングの話 - 鳩舎

    この辺見て、いつも思ってること。 プログラミングはアプリを作ることの手段なのか - 銀の人のメモ帳 プログラミングはそれ自体が目的であっていい - mizchi log プログラミングを勉強したい人が勉強する前にすべきこと - もとまか日記 プログラミングは手段です。僕にとっては。 「動けばいいコード」は糞コードだ でしょうね。としか言い様がないです。 あえて例え話にして、プログラミングを車の運転だとします。プログラマは運転手です。 でまぁ、アプリを作るってのが伊豆の旅館に行くことだとしましょう。この時、僕の運転する目的は伊豆に行くことです。間違っても運転することは目的じゃないです。なので別に運転に特に気を使うことはありません。 そこに突然 F1 ドライバーがやってきて、『お前のカーブの曲がり方は下手くそだ』とか『もっといいルート選択がある』とか『こんな運転の仕方じゃガソリン代がもったいな

    プログラミングの話 - 鳩舎
  • 適切な名前がつかないモデル - 鳩舎

    ちょっと目についたので。Dis りたい訳じゃないです。 これ適切な名前が見つからないとき困るんだよなぁ。あとで思いついて変更なんて作業はしたくないし。割り切ってRoomUser式に統一した方が気が楽だと思う。 http://b.hatena.ne.jp/kensatou/20130512#bookmark-145186810 id:kensatou さんの言う『適切な名前が見つからない時』がわからないのでなんとも言いがたいのですが、割りきって RoomUser 式に統一は悪手だと僕は思っています。 大体からして何らかの案件なり要望なり青写真なりをモデルに落とし込んでいる時に『名前がつかないモデル』が出てくるということは、それは何かが噛み合っていない状況のアラートだと思っています。 ぱっと思いつく状況だと 英語力が足りない: 僕は大抵このパターンなので辞書を引きます。それでもわかんなかったら

    適切な名前がつかないモデル - 鳩舎
  • 1