my_hash = {}
my_hash[“Cloud”][“Stats”][“Strength”] = 100
p my_hash # => {“Cloud”=>{“Stats”=>{“Strength”=>100}}}
http://ilovemetaprogramming.tumblr.com/post/4608928018/recursively-setting-deep-hash-value
Wymyśliłem kiedyś coś podobnego z procem który wskazywał sam na siebie. Aczkolwiek nigdy nie znalazłem zastosowania dla takiego korzystnia z Hasha.
Raczej lukier składniowy.
[quote=hekto5]config.cache_classes = false
[/quote]
Że też nigdy o tym nie pomyślałem… Troszkę zwolni całkowity czas testów ale przyspieszy uruchamianie pojedynczych. Z drugiej strony dzięki temu że miałem wartość na true ustawioną udało mi się znaleźć błąd w Rails, który wyszedłby inaczej dopiero przy deploy’u.
Dobra lista.
To jest skopiowane z changeloga, więc raczej oficjalnie
Czemu nie jest to agregowane podczas tagowania ?
Kolejny PaaS tym razem od RH.
Wsparcie dla rack działa całkiem przyjemnie tylko upload mają bardzo ograniczony (upload całego podstawowego bundla z rails trwa kilkanaście minut 40-100 KiB/s) wszystko oparte na AWS
http://www.youtube.com/watch?v=kWOAHIpmLAI&feature=player_embedded trzeba przyznać że ładnie się ubrał.
Jeśli wkurza was długi czas uruchamiania się railsów w ruby 1.9 polecam poeksperymentować z patchem: http://rhnh.net/2011/05/28/speeding-up-rails-startup-time
Najwyraźniej ktoś nieźle nawalił, a poprawka wygląda na niezwykle prostą.
Podejrzewam że w kodzie Ruby jest jeszcze sporo miejsc gdzie zbiory (set) są zaimplementowane za pomocą tablic (czyli źle, bo czas wyszukiwania rośnie z rozmiarem zbioru) zamiast hashy (stały czas wyszukiwania niezależnie od rozmiaru). W sumie poszukanie i poprawa takich miejsc to dobry pomysł na proste znalezienie się wśród commiterów do ruby code
Nie wiem czy suchar, ale przeglądając dziś slajdy z Scala vs Ruby wpadł mi w oko ciekawy gem:
https://github.com/mental/case
Slajdy:
Niby czemu Ruby dostał punkt za Gemy (slajdy 113-116)? Scala ma dostęp do wszystkich bibliotek Javy, których podejrzewam jest znacznie więcej.
Ruby też ma do nich dostęp AFAIK czy to przez JRuby czy przez RJB. Take porównanie ilościowe w którąkolwiek ze stron nic nie wnosi i w zasadzie nie ma sensu. Wrzuciłem jako ciekawostke i raczej nie polecam się nikomu powoływać na te argumenty.
Widać, że mocno na siłę starali się żeby finalnie wyszedł remis
-
Proste, użyteczne, genialne - Rails console inside your browser.
lib/tasks/deploy.rake
[code=ruby]require ‘net/ssh’
desc “Deploy site to production”
task :deploy => :environment do
host = ‘yourhost.com’
user = ‘username’
options = {:keys => ‘~/.ssh/keys/yourserver.pem’}
remote_path = ‘/path/to/rails_app’
commands = [
“cd #{remote_path} && sudo git fetch”,
“cd #{remote_path} && sudo git reset --hard origin/master”,
“cd #{remote_path} && sudo bundle install”,
“cd #{remote_path} && sudo touch tmp/restart.txt”
]
Net::SSH.start(host, user, options) do |ssh|
commands.each { |c| puts ssh.exec!© }
ssh.loop
end
end[/code]