The joys of having a Forever Project
0 notes

Remember kids, RTFM!

Today I wasted over 40 minutes on meaningless code debugging all because instead of this:

mount_uploader :avatar, AvatarUploader
I did this:
mount_uploader :avatar

0 notes

TextMate 2 now on GitHub

Ciekawe co z tego wyjdzie…

(Source: thechangelog)

22 notes

UltiSnips - moje nowe ulubione snippety w Vimie

Jakiś czas temu postanowiłem po raz kolejny przestawić się z Sublime Text 2 na Vima, związek z którym kończył się już kilkukrotnie.

Jako developer jestem z natury leniwy dlatego też jedną z najważniejszych funkcji, oprócz automatycznego usuwania białych znaków i dodawania znaku nowej linii na końcu pliku, której wymagam od edytora tekstu jest obsługa snippetów.

Podczas moich poprzednich przygód z Vimem korzystałem z snipMate, a później snippetsEmu. Tego ostatniego chciałem zaprząc do pracy i tym razem, trafiłem jednak na coś znacznie lepszego (i nadal rozwijanego w przeciwieństwie do dwóch pozostałych skryptów) - UltiSnips.

UltiSnips różni się od pozostałych rozwiązań przede wszystkim możliwością zagnieżdżania w snippetach wyrażeń w Vimscripcie i Pythonie, a także na umieszczanie wyniku poleceń wywołanych w shellu. Pozwala to na konstruowanie naprawdę złożonych szablonów kodu.

Autor nakręcił serię screencastów, które są niezłym wprowadzeniem do UltiSnips (część 1, 2, 3, i 4), ale jeśli ktoś miał już do czynienia ze snippetami, powinien objeść się i bez nich.

Instalacja jest trywialna jeśli korzystamy z Vundle:

W ~/.vimrc umieszczamy:

Bundle "SirVer/ultisnips"

" Pozwala na przeładowywanie istniejących snippetów (tylko jeśli instalujemy
" skrypt przy użyciu Vundle)
let g:UltiSnipsDontReverseSearchPath="1"

Restartujemy Vima i wywołujemy :BundleInstall UltiSnips będzie dostępny przy ponownym uruchomieniu. Polecam zajrzeć do :help UltiSnips.txt od razu po instalacji.

0 notes

I’m starting to become more and more convinced to start decoupling business models (e.g. ActiveRecord classes) from business logic. The whole “fat model” anti-pattern just looks silly to me now.

0 notes

Tinkering with Rubnius. Trying to figure out if it would be a suitable choice for a production environment. I have yet to find a library that Rubinius can’t handle (even those using C extensions compile without any problems, let it be psych or pg).

0 notes

Three coin types I’ve designed for my latest project.

Three coin types I’ve designed for my latest project.

0 notes

Interesting YAML behavior in 1.9.3-p125:

0 notes

Day auto adjustment in Time.local/Time.gm

0 notes

factory_girl overrides

Overridden data is not set through mass assignment. That means you can safely overwrite all of your protected attributes:

0 notes