OSX 空ディレクトリに.keepを作る
find . -type d -empty -print0 |xargs -0 -I % touch %/.keep
参考ページ ありがとうございます!!
空のディレクトリをgit管理下に入れるワンライナー(empty directories) | アプレンティス プラクティス
1行の時は波括弧、複数行の時はdo-endという暗黙のルール
1行の時は波括弧、複数行の時はdo-endという暗黙のルール
http://d.hatena.ne.jp/shunsuk/20081114/1226661036 文化というだけで明確な理由はないようです
最終的なゴールを決めるためのファシリテーション
Question。「最終的なゴールはなんですか?」
何かをやるときに最終的なゴールを決めてから動くのはとても重要なことだと思います。 しかし、最終的名ゴールを決めるのはとても難しいことです。
取り組むのが難しい疑問・課題は違う角度から考えてみることも重要です。
比較対象を経由して答えを見つける
Webサービス運用を開始してから半年ほど、思うように伸びず様々な仮説を立てて考察しています。 そういう状況でプロダクトオーナーに対して「最終的なゴールはなんですか?」という質問が出ました。
いきなり答えるのは難しいと感じたので「Webサービスを始める前に思い描いていた理想と、現状で違うところはなんでしょうか?」と質問しました。
いくつかでてきました。
次に「Webサービスを始める前に思い描いていた理想と、現状で違うところはなんでしょうか?」と質問してみました。
また、いくつか出てきました。
最後に「新しくゴールを設定しようとしたときに、Webサービスを始める前に思い描いていた理想との違いはなんでしょうか?」と質問しました。 このとき、プロダクトオーナーの頭の中は整理された状態になっています。 最初に質問したときと違います。
少しの間をおいたあと、新しいゴールを語り始めてくれました。
施策を抽象化する
見つけた答えや新しいゴールは、具体的な施策であることが多いです。 具体的な施策=実行可能なので、とても良いことなのです。 しかし、施策の内容が重複することや、やるべき施策が漏れてしまうことがあります。
具体的な施策を抽象化して、大きな課題として定義します。 その上で、課題に対する施策をもう一度みんなで考えます。
こうしてプロダクトオーナーが語ったゴールや施策を共通点ごとにまとめて、提示しました。 同僚から足りない課題を追加していただき、その上で施策を考えることができました。
haml view以外でhamlを使う。そして、ヘルパーも使いたい!
template = File.read("file_path") haml = Haml::Engine.new(template) base = Class.new do include ActionView::Helpers::NumberHelper end.new haml.render(base, params)
rails migrateとrollbackの両方ができなくなってしまった
教訓
- migrationファイルは手動で編集しないこと
- カラムを変更するなど、rollbackが出来ないmigrationファイルを作成しないこと
事象
ステージングでdb:migrate
とdb:rollback
が効かなくなりどうしょうもなくなってしまった。
原因
migrate済みのファイルを二つに分割したあと、rollback不可能なmigrationをしてしまったことが原因となります。
手順1
最初にmigrateファイルを作成し、stagingで実行します。
class AddAAndBToHoge < ActiveRecord::Migration def change add_column :hoges, :a, :string add_column :hoges, :b, :string end end
heroku run rake db:migrate
手順2
ロールバック不可能なmigrateファイルを作成し、stagingで実行します。
class ChangeCFromHoge < ActiveRecord::Migration def change change_column :hoges, :c, :boolean end end
heroku run rake db:migrate
手順3
そのあとでmigrationファイルを2つに分割します。
class AddAAndBToHoge < ActiveRecord::Migration def change add_column :hoges, :a, :string end end
class AddAAndBToHoge < ActiveRecord::Migration def change add_column :hoges, :b, :string end end
手順4
この後でmigrateを実行しようとするとcolumn :b
が既に存在するため、migrate errorとなりました。
対処
手順1
MySQLにログインし、hogesテーブルからカラムbを削除します
ALTER TABLE hoges DROP b;
手順2
DBからschema.rbを生成
heroku run rake db:schema:dump
手順3
migrationを実行します
heroku run rake db:migrate
haml フォームの外側から要素を送れるボックス
= form_tag xxx_path, id: 'hoge_form' do .. something = text_area_tag :comment, '', form: 'hoge_form'
参考情報
会社の同僚が書いたコードを参考にさせていただきました、ありがとうございます!