Rails, and its things

Today I forgot my laptop at home and had to do an emergency installation of Ruby, Git and Rails on my sister-in-law’s (yes, this is a real story). After all the thing, I finally ran gem install rails. That’s the list of all the dependencies that were installed by Rails. I just thought it’d be funny to post it here.

$ gem install rails

Fetching: thread_safe-0.3.4.gem (100%)
Successfully installed thread_safe-0.3.4
Fetching: minitest-5.4.2.gem (100%)
Successfully installed minitest-5.4.2
Fetching: tzinfo-1.2.2.gem (100%)
Successfully installed tzinfo-1.2.2
Fetching: i18n-0.7.0.beta1.gem (100%)
Successfully installed i18n-0.7.0.beta1
Fetching: activesupport-4.1.6.gem (100%)
Successfully installed activesupport-4.1.6
Fetching: erubis-2.7.0.gem (100%)
Successfully installed erubis-2.7.0
Fetching: builder-3.2.2.gem (100%)
Successfully installed builder-3.2.2
Fetching: actionview-4.1.6.gem (100%)
Successfully installed actionview-4.1.6
Fetching: rack-1.5.2.gem (100%)
Successfully installed rack-1.5.2
Fetching: rack-test-0.6.2.gem (100%)
Successfully installed rack-test-0.6.2
Fetching: actionpack-4.1.6.gem (100%)
Successfully installed actionpack-4.1.6
Fetching: activemodel-4.1.6.gem (100%)
Successfully installed activemodel-4.1.6
Fetching: arel- (100%)
Successfully installed arel-
Fetching: activerecord-4.1.6.gem (100%)
Successfully installed activerecord-4.1.6
Fetching: mime-types-2.4.3.gem (100%)
Successfully installed mime-types-2.4.3
Fetching: mail-2.6.1.gem (100%)
Successfully installed mail-2.6.1
Fetching: actionmailer-4.1.6.gem (100%)
Successfully installed actionmailer-4.1.6
Fetching: thor-0.19.1.gem (100%)
Successfully installed thor-0.19.1
Fetching: railties-4.1.6.gem (100%)
Successfully installed railties-4.1.6
Fetching: bundler-1.7.4.gem (100%)
Successfully installed bundler-1.7.4
Fetching: sprockets-3.0.0.beta.2.gem (100%)
Successfully installed sprockets-3.0.0.beta.2
Fetching: sprockets-rails-2.2.0.gem (100%)
Successfully installed sprockets-rails-2.2.0
Fetching: rails-4.1.6.gem (100%)
Successfully installed rails-4.1.6
Parsing documentation for actionmailer-4.1.6
Installing ri documentation for actionmailer-4.1.6
Parsing documentation for actionpack-4.1.6
Installing ri documentation for actionpack-4.1.6
Parsing documentation for actionview-4.1.6
Installing ri documentation for actionview-4.1.6
Parsing documentation for activemodel-4.1.6
Installing ri documentation for activemodel-4.1.6
Parsing documentation for activerecord-4.1.6
Installing ri documentation for activerecord-4.1.6
Parsing documentation for activesupport-4.1.6
Installing ri documentation for activesupport-4.1.6
Parsing documentation for arel-
Installing ri documentation for arel-
Parsing documentation for builder-3.2.2
Installing ri documentation for builder-3.2.2
Parsing documentation for bundler-1.7.4
Installing ri documentation for bundler-1.7.4
Parsing documentation for erubis-2.7.0
Installing ri documentation for erubis-2.7.0
Parsing documentation for i18n-0.7.0.beta1
Installing ri documentation for i18n-0.7.0.beta1
Parsing documentation for mail-2.6.1
Installing ri documentation for mail-2.6.1
Parsing documentation for mime-types-2.4.3
Installing ri documentation for mime-types-2.4.3
Parsing documentation for minitest-5.4.2
Installing ri documentation for minitest-5.4.2
Parsing documentation for rack-1.5.2
Installing ri documentation for rack-1.5.2
Parsing documentation for rack-test-0.6.2
Installing ri documentation for rack-test-0.6.2
Parsing documentation for rails-4.1.6
Installing ri documentation for rails-4.1.6
Parsing documentation for railties-4.1.6
Installing ri documentation for railties-4.1.6
Parsing documentation for sprockets-3.0.0.beta.2
Installing ri documentation for sprockets-3.0.0.beta.2
Parsing documentation for sprockets-rails-2.2.0
Installing ri documentation for sprockets-rails-2.2.0
Parsing documentation for thor-0.19.1
Installing ri documentation for thor-0.19.1
Parsing documentation for thread_safe-0.3.4
Installing ri documentation for thread_safe-0.3.4
Parsing documentation for tzinfo-1.2.2
Installing ri documentation for tzinfo-1.2.2
Done installing documentation for actionmailer, actionpack, actionview, activemodel, activerecord, activesupport, arel, builder, bundler, erubis, i18n, mail, mime-types, minitest, rack, rack-test, rails, railties, sprockets, sprockets-rails, thor, thread_safe, tzinfo after 640 seconds
23 gems installed

Customer’s WordPress attacked

Recently, three customers have had their WordPress sites attacked. The first customer got weird redirects to porn or dating sites and site misfunctioning in general, due to some rewrites in the htaccess file and the root index. The second client got the same kind of misfunctioning, without the redirects, and also some extra posts in the database with outgoing links. The third one had all (yes, all) WordPress core files rewritten and this wierd piece of code was laying at the top of every file.

Now we’re using WordFence to check traffic and block suspicious IPs. Let’s see if it helps…


Thumbs up for YNAB

You Need A Budget is great software that helps you budget your money. I’ve been using it for three weeks and its simplicity and clarity is helping me to keep track of my money for the first time in my life. (Yeah, I am this bad at money…)

Besides its virtues as software, it is also awesomely designed. I fell in love with it again today when I entered my license key after testing the free version for the past weeks. This is how they welcomed me. Isn’t it lovely?

YNAB welcome screen

Being Focused

Being focused is crucial to me in my everyday work. However, I lose attention quite easily, so I try to keep off as many distractions as I can. Here’s a few things that help me being focused:

A clean desktop

Just a place for having the files I’m working on, if needed. Clean by default.

Minimalist Dock

Docks can become a garbage can. I just have the Downloads and Documents folders and Preview, because I always use this in a drag and drop way and for scaling images when working on HTML/CSS mockups. To launch apps I use Spotlight.

Minimalist Spotlight

Spotlight is my common tool for launching apps, though I use the Terminal as well. I set preferences to only list applications, so I don’t get a lot of rubbish there or hit the wrong thing by mistake. You know how Spotlight works, don’t you? Just hit Cmd + Space and there you go.


Mail can be a really distracting thing, specially if you’re a freelance and talk to customers or collegues via email. First, I don’t have the app open when working, and check it just a few times during the day. Second, I have the mails list area to its minimum size, so I only see four emails at a time. That helps being focused on the email I’m actually reading.

SelfControl App

SelfControl is a simple desktop app that blocks access to websites. I have a blacklist with the sites that distract me the most. Just fill the list, set a time lapse, and work. You can get SelfControl here.

Sobre cognoms i validacions

Ja m’he trobat amb uns quants webs que no em permeten escriure el meu nom de manera correcta: Carles Jove i Buxeda. En destaco YouTube i Facebook, dues xarxes socials en les que, d’entrada, sembla ser que s’hauria de respectar el màxim possible les identitats individuals.

A Facebook vaig poder comprovar que altres conjuntors com el germànic “von” sí que són permesos, de manera que imagino que el problema és que l’expressió regular que valida els cognoms, traduïda a català planer, deu dir: “valida tan sols cordes que continguin caràcters de l’alfabet (a-z) i que si estan formades per més d’una paraula aquestes estiguin separades per un únic espai i siguin de, com a mínim, dues lletres”.

Doncs bé, ja m’han fomut.

No es pot posar la i entre cognoms a YouTube

El poder dels desenvolupadors web

Imatge d'un web clausurat pel seu dissenyador

Fa uns dies, pels voltants de l’u de maig, en Jeffrey Zeldman va fer retuit de l’acció d’un dissenyador web que té problemes per cobrar la seua feina. L’acció és contundent, i ens mostra el poder real dels dissenyadors i desenvolupadors web. Sovint ens queixem de la nostra debilitat envers un client que no paga, o que ens exigeix més del que ha contractat. Aquesta acció ens demostra que de poder en tenim, i molt. La nostra manera de fer vaga podria molt bé ser tancar els webs problemàtics. Al cap i a la fi, el disseny és nostre fins que el client el compra.