GAEやappengineなど表記が揺れててどうもググラビリティが低いので併記してみました。 環境 homebrewでapp engine sdkを入れています。 % brew list |grep app-engine app-engine-go-64 GAE用のGOPATH設定 普通のgoと違ってPaaSの性質上GAEでは使えない機能がある。そういったライブラリを読み込んでるとコンパイルできないので、普通のgoとGAEではGOPATHの設定を変える必要がある。ややこしい。 GAE用のGOPATH設定はいくら調べてみてもこれで決まりというのがわからなかった。いくつかある中で、未設定ならばsdk内のデフォルトが使われるようなのでdirenvでunsetするという方法をとることにしました。 通常のGOPATHは~/に設定しています。通常のGO用のライブラリはここに入り、GAE用はsdkの中に
railsらしいやり方、turbolinksともマッチするjavascriptの書き方ができるturboctrlというgemをリリースしました。 komagata/turboctrl これは何? /posts/1にアクセスしたらapp/assets/javascripts/controllers/posts_controller.js.coffeeにあるPostsControllerクラスのshowメソッドが呼ばれるというものです。 # app/assets/javascripts/controllers/posts_controller.js.coffee: class @PostsController show: -> console.log "Hey!" なぜ作ったのか 「さっさとwebアプリを書きたい。」 「RailsのRailから外れる面倒なことはしたくない。」 「Railsはj
KRAYの@amachinさんにこう言われたので書きます。 うまいやり方を知りたいです。 ”ペアプロは疲れるけれど、コツが分かってくると、うまいやり方をすればとても有用だと知りました。” https://t.co/Ao7lVvmD8y — amachin (@amachin) 2015, 11月 30 実ペアプロ時間1年未満の僕がコツなんて言うのはおこがましいですが、ペアプロオンリーでやっているMediweb社さんのやり方の受け売りです。 1台のPCを共有しないペアプログラミングは1台のPCを使って交代しながらやるものですが、エディタの違いとか環境の違いをあわせるのはクッソストレスが溜まるのでやりません。EmacserとVimmerは一生わかりあえません。 かわりにラップトップを持ち寄って1台の外部ディスプレイを交代でつなぎます。(Thunderbolt Displayは電源も一緒になって
TL;DR HerokuでPull Request毎にステージング環境が勝手にできるようになりました。 Review Apps自体はHeroku Buttonから続くWebアプリデプロイの自動化の流れの成果の内の一つとです。もともとPipelinesを自分で色々やればできたろうとは思いますが、管理画面だけでPR毎の自動環境構築ができるのはクッソ便利です。 Sendagaya.rb #127で下記の発表をさせていただきました。 Sendagaya.rb #127に行ってきました - komagata Review Appsで無限ステージング環境 // Speaker Deck スライドみればわかりますが、githubとconnectして、環境変数・addon選んでapp.json生成して、PR作れば勝手にステージング環境ができます。PRがmergeされれば消えます。 AWS + docker
初日、行ってまいりました。 流行りの環境うんぬんは単なる手段であり、"経営陣を含めたマインドセットの更新が大事"ってのはありますが、そんな話みんな読みたくないでしょ? 僕が調べた現状と、こういう風に持って行きたいという理想の環境を書き出してみました。 現状 本番環境 さくらのマネージドサーバー(FreeBSD) ステージング環境 共有開発サーバー(社内に古めのCentOS) 開発環境 共有開発サーバー(社内に古めのCentOS) ソースコード管理 svn 共有開発サーバーのコードを担当者一人が全員を代表してsvnにコミットする。バックアップ的な役割 タスク管理 社内の独自タスク管理システム デプロイ 共有開発サーバーのソースをFTPでアップする 開発マシン Windows7 コーディング規約 PEAR標準コーディング規約をカスタマイズしたもの コードレビュー なし チャット IP-Mess
こちらの記事の解決編です。 ActiveRecord::RecordNotFoundのエラーは放置すべきか? - komagata @hiroshi3110さんからズバリな答えをいただきました。 @komagata ... とかやってました。 ActiveRecord::Notfound がでるときはバグというのがすぐわかるように — hiroshi (@hiroshi3110) 2015, 1月 6 怖話で実装 # lib/record_not_found_by_trustless_param.rb: class RecordNotFoundByTrustlessParam < StandardError; end # app/controllers/comics_controller.rb: class ComicsController < ApplicationController
Legacy routing EOL on October 20th. On Ocober 20th 2014 we are turning off the legacy “.heroku.com” routing path. herokuのbamboo stackが使ってたlegacy routingが廃止されるということで、昔、www無しでアクセスしたい場合に直接IPで指定してた系のサービスがアクセスできなくなった。 U2Plusにも通知が来てたのでメンテしてる@tkawaさんに聞いてみたらGehirnのDNSで対応したらしい。 俺も使ってみたらアラ便利。ALIASレコードが使えて無料で2ドメインまで、レコード無制限ってのは海外含めてあんまり無いんじゃない? Gehirnって聞くようになってからだいぶ経つのでいきなり無くなる感じはしないし、ええやんけ! GehirnDNS | ゲヒルン
rubocopデフォには「おい、それはちょっと口うるさすぎるでしょう?」という項目が結構あって、"複数行ブロックの場合は->じゃなくてlambda使え"というのもその一つ。 % rubocop app/models/comment.rb Inspecting 1 file C Offenses: app/models/comment.rb:11:26: C: Use the lambda method for multi-line lambdas. scope :except_blocked, -> { ^^ でもどのルールをオフにしたらこれが許されるのかわからなかったが、-Dをつければルール名も表示してくれるらしい。 % rubocop -D app/models/comment.rb Inspecting 1 file C Offenses: app/models/comment.rb
$LOADED_FEATURESっていうのがある。 % pry [1] pry(main)> $LOADED_FEATURES => ["enumerator.so", "/usr/local/opt/rbenv/versions/2.1.0/lib/ruby/2.1.0/x86_64-darwin13.0/enc/encdb.bundle", "/usr/local/opt/rbenv/versions/2.1.0/lib/ruby/2.1.0/x86_64-darwin13.0/enc/trans/transdb.bundle", "/usr/local/opt/rbenv/versions/2.1.0/lib/ruby/2.1.0/x86_64-darwin13.0/rbconfig.rb", "/usr/local/opt/rbenv/versions/2.1.0/lib/ruby
内部ツール(僕らでいえば256interns.comとか)は管理画面作らずGUIアプリで変更とか結構便利です。とはいえ、railsなどのアプリ側のみでvalidationしてると不整合が起きるので要注意。これ前提で制約追加するのもいいかも? Sequel Pro MySQLのGUIクライアント。これを教えてもらって訝しげに使ってみたんですが、今風のMacの使い勝手で使えるのがすごく気に入っちゃいました。 SSL経由やsshで入ったサーバー踏み台にしての接続も一発できて便利。 PG Commander PostgreSQLのGUIクライアント。Sequel Proに比べると使い勝手は良くないけど、HerokuのDBに接続できる!これがデカイ。 接続先のブクマを5個以上保存しておくにはLisenceを買う必要があります。Herokuを多用するから5個あっという間に超えちゃうので買いました。 B
最小プランは無料であるHerokuに静的ファイルを置くための雛形を作っときました。 $ git clone git://github.com/komagata/heroku-static.git $ cd heroku-static $ heroku create foo-bar-buz $ git push heroku master komagata's heroku-static at master - GitHub html, js, css, imageなど、静的ファイルだったらpublicディレクトリに置いてpushすればすぐ公開。 あんまり無料ホームページとして使われてもHerokuは困るだろうけど、git必須な時点で誰も彼も使うということにはならんでしょう(多分)。僕はjsとかのデモやサンプルを置く場所として使ってます。 中見てもらえばわかりますが、こういうのを置いてるだけ
以前はコレだったけど、 puts "-----------------------------------" puts @posts.inspect puts "-----------------------------------" railsのdebugの疑問 - komagata 今はputsしてPowのログを見る方式にした。(ログを見るのはtailかConsole.app) # app/controller/home_controller.rb: class HomeController < ApplicationController def index puts 'foo' end end Powの標準出力と標準エラー出力はlogに向いてるのでただputsするだかけなのは楽だ。
会社(FJORD, LLC)で怖話というサイトを2年やってきました。 僕らは2人の会社なので月に70万の利益があれば諸々の雑費を含めて運営していけると考えました。そして開始時に今度のサービスは2年はやろう。SEOは我慢だ。と思って2013年の9月に単月で70万の利益があったらプロジェクトは成功。達しなかったら失敗と定義付けてやってきました。 そしてその2013年の9月が来て結果は失敗となってしまいました。それについてはFJORDのブログに書きました。 【失敗】怖話2年間の総括【無念】 « 合同会社フィヨルド ブログにも書きましたが感想はとにかくお金稼ぐの難しいなぁという感じです。 あとは、これは俺がアホだということもありますが、技術面のWebサービスのマネタイズやプロモーションに及ぼす影響の余りの無さにびっくりしました。 Webサービスで技術が優れているというのは、下記のような影響を与えま
皆どうやってるんだろう。 僕の場合、debuggerはstep実行が必要で無い限り使わない。(step実行が必要な程難しい問題が滅多に無いので殆ど使ってない) railsのdebug系の記事は定期的に上がるけど、実際にdebuggerを使ってるところを見たこと無い。 結局、 puts "@posts: #{@posts.inspect}" とか、他の出力と混ざって見つけづらいので、 puts "-----------------------------------" puts @posts.inspect puts "-----------------------------------" などと書いてrails sしたconsoleで確認している。loggerを使っても他の出力に埋もれるので結局putsする。もう何年も使ってるのにこれはショボイ気がする。 Ruby on Rails Gu
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く