niedziela, 26 lutego 2012

How to proper test scopes (named scopes)


I just read few posts about "how to test named scopes". I'm asking - why should I use FactoryGirl and create tons of unnecessary objects just to test `order(:position).first`?!

How not to do this


We've just created .. let's count .. 5 objects and made 2 unnecessary db queries

How to do this


It's useless to test Rails (it's really proper tested). We need to spec messages that goes between objects and given parameters.

czwartek, 16 lutego 2012

named_accessors: attr_accessors na sterydach

attr_accessor jest świetne (szczególnie jeżeli ktoś przychodzi do Rubiego np. z Javy), ale ma jedną zasadniczą wadę - nazwa zmiennej instancji == nazwa metody (settera i gettera). W 99% to bardzo dobrze, ale dla tego jednego procenta powstało named_accessors.

Mam nadzieję że komuś się kiedyś przyda :)

poniedziałek, 23 stycznia 2012

param_protected i Devise

Kilka dni temu pisałem już o gemie param_protected. Jeżeli używamy go razem z Devise, będziemy musieli zrobić zmodyfikować kontrolery i dodać definicję dozwolonych parametrów.

Po pierwsze musimy zmapować URL-e na nasze nowe kontrolery.


niedziela, 22 stycznia 2012

Hakierzy

Mam dość komentarzy na temat tych ciągłych ataków na rządowe strony. Jak można wypowiadać się na dany temat bez żadnej wiedzy.

Anonymous - cyber Al-Kaida?

Anonymous (ang., rzeczownik niepoliczalny), Anonimowi, Grupa Anonimowych – niezidentyfikowana grupa aktywistów z całego świata podejmująca protesty oraz inne działania w internecie. Działania przypisywane grupie "Anonymous" są podejmowane przez niezidentyfikowane jednostki, które przybierają nazwę "Anonymous" atakując serwery rządowe lub korporacyjne.
W ostatnim czasie, na fali protestów przeciwko SOPA, PIPA czy ACTA w sposób zatrważający moim zdaniem roście poparcie dla grupy Anonymous. Poparcie graniczące wręcz z uwielbieniem. Chociaż może się wydawać, że Anonimowi są naszą ostatnią linią obrony, ostatnim bastionem wolności należy się zastanowić nad słusznością ich działań.



sobota, 21 stycznia 2012

Tapeta dla Rubistów

Choć grafik ze mnie żaden zrobiłem taką oto tapetę dla Rubistów: (oryginał tutaj. tak wiem, nałożyłem tylko logo Rubiego :P)
Link do pobrania

Pulpit prezentuje się teraz znokomicie :)

czwartek, 19 stycznia 2012

Haskell-Platform (+ GHC) na Mac OS X 10.7 (Lion)

Czym jest haskell każdy wie (jak nie, to zapraszam tu), więc nie będę go reklamował tylko od razu przejdę do sedna. Zakładam też że każdy użytkownik OSX używa Homebrew do zarządzania pakietami (jeśli nie to gorąco zachęcam!).

Ponieważ instalacja ghc (kompilatora Haskella) chwilę trwa dlatego dobrze jest uruchomić instalację z opcją -v żebyśmy widzieli cały czas co się dzieje i czy przypadkiem nie występują błędy kompilacji etc.

Opcja 64 też jest ważna! Bez niej nie skompilujemy prawidłowo haskell-platform


Teraz możemy uruchomić REPL Haskella (komendą ghci)

sobota, 14 stycznia 2012

param_protected wycina potrzebne parametry

param_protected to świetny gem, który przenosi funkcjonalność attr_accessible oraz attr_protected do kontrolerów. Składnia jest bardzo prosta:

Jedyny problem jest taki, że nie ma defaultowej listy dozwolonych parametrów. Tzn. że wycinane są takie atrybuty jak action, controller, id, utf8 czy (w przypadku używania devise) authenticity_token. Formularze nie będą przez to działać poprawnie, będziemy cały czas wylogowywani itd.