Eu não gostei da linguagem mesmo, nem foi tanto problema do framework. Achei esquisita demais a sintaxe.
Esse é um motivo bem besta para desgostar de uma linguagem, não acha?
Não digo isso para ser ofensivo, mas é porque eu desgostava de LISP por um motivo parecido ("acho a sintaxe muito feia", dizia eu). Até alguém falar pra mim o que eu disse aí em cima.
Existem motivos para uma linguagem ser boa ou não. Coesão e flexibilidade, por exemplo. Claro que cada linguagem é uma ferramenta, e algumas ferramentas são mais apropriadas para determinadas tarefas (nada de tentar fazer um jogo AAA em Ruby, por exemplo, ou uma aplicação web em C++).
LISP é incrível devido à flexibilidade. Dei uma chance a ela e aprendi muito. Mudei a forma como eu encaro programação.
Acho que você deveria dar mais uma chance a Ruby e procurar saber sobre como ele lida com Domain Specific Languages (que é justamente onde ele brilha sobre muitas outras linguagens) e metaprogramação (onde ele também é excelente).
No livro
The Pragmatic Programmer, o autor recomenda aprender (e se aprofundar o tanto que for possível) uma linguagem por ano. Isso melhora a qualidade do seu código nas outras linguagens, porque ajuda você a pensar de forma diferente do que já estava acostumado, e analisa situações de acordo com paradigmas que antes você desconhecia.
Já tinha ouvido falar do NodeJS, mas meu principal problema não é o servidor (<3 PHP), e sim a parte do cliente. Acho muito improdutivo ter que trabalhar com 3 linguagens, e as 3 cada uma com incompatibilidades de navegador, etc. jQuery ajuda muito neste aspecto.
Naturalmente. Uma linguagem é de marcação, a outra de estilo, a outra lógica. É difícil uma linguagem fazer tudo isso ao mesmo tempo (nem tanto se você usar uma boa DSL, mas isso é bem difícil quando se trata de web). NodeJS pelo menos tiraria o peso de colocar mais uma linguagem nesse bolo. Não que isso seja um peso para todos, claro.
Atualmente o que eu faço é criar funções/classes PHP que já cospem HTML/CSS/JS pronto. As coisas que são fixas deixo em CSS/JS externos.
Bem parecido com a estratégia do Rails. Espero que você tome muito cuidado com injections, então.
Dá para escrever aplicativos de iPhone/Android 100% em JS (http://www.appcelerator.com/). É absurdamente mais rápido e fácil do que escrever em Obj-C ou Java, mas tem a desvantagem do aplicativo ficar mais lento. É de algo assim que eu precisava para web.
E coisas assim não faltam. Se você gosta tanto de PHP, procure o Zend Framework ou o Cake PHP.