Nos ultimos tempos tenho metido a cara no Python, e tambem aprendendo Django, para um projeto na Concrete e realmente gostei do que vi, como mostro aqui.Nao e dificil se apaixonar pela linguagem devido a facilidade e simplicidade de suas libs.No ultimo ano aprendi Ruby e Rails e consegui trabalhar em 2 projetos usando a tecnologia. Pra mim que era ( e sou ainda!) Javaholic, mas nao Shiita, foi totalmente gratificante, ainda mais ver o projeto JRuby decolando, e facilidade e bom gosto no uso da versao para JVM e seu ecossistema.Alem das vantagens e desvantagens de cada mundo, coisas como OpenSource e consequentemente comunidade forte e vibrante, composta por muitos bons programadores facilita a queda livre no ambiente dessas linguagens .Meu conselho geral sobre a questao resume Python vs Ruby ate perguntando "como e seu trabalho de cerebro?" Porque, realmente, as duas linguagens sao aproximadamente equivalentes para a maioria dos efeitos praticos (excepto Unicode, Ruby, mas que sera fixa em breve).A grande diferenca esta no idioma e nas convencoes como por exemplo, os programadores de Ruby, tendem a ser muito mais dispostos a fazer coisas como a adicao de novas funcionalidades para o built-in classes(Ferramentas perigosas como disse Martin Fowler), enquanto que programadores Python geralmente hesitam em fazer "monkeypatching" em qualquer lugar (e nao pode faze-lo para o built-ins, porque nao sao mutaveis). Ruby tem muitos acucares sintaticos (alguns dos quais serao imediatamente familiares), mas e claro que vem com a sobrecarga de ter que aprender como eles funcionam. Python tem bem menos malabarismos, mas pode ser mais verboso as vezes. De qualquer forma, independentemente de sua escolha voce vai ter acesso a documentacao boa (Dive Into Python e um grande livro, idem o livro PickAxe no lado Ruby), comunidades fortes e as pessoas motivadas a escrever montes de codigo, solidos e reutilizaveis, dispostos a vencer de qualquer maneira esta "disputa".Para web, tanto o Django quanto o Rails sao frameworks MVC com principicos como DRY(Don't Repeat Yourself), COC(Convetion Over Configuration) alem de forte comunidade que geram muito codigo e documentacao, o que facilita e tornam mais doce a vida de qualquer equipe de desenvolvinento.Para deployment, a utilizacao do Google App Engine pode ser vantajosa e uma das primeiras linguagens que rodaram nessa plataforma de desenvolvimento foi o Python(Django), seguido pelo Java que tornou possivel o deployment de aplicacoes JRuby/Rails. Eu diria que mergulhar seus dedos do pe em ambos os grupos, em seguida, seguir com o que voce sente mais confortavel dentro dos paradigmas de programacao ajuda a se ambientar e ir sentindo o conhecimento aterrar no cerebro.Pra quem ficou curioso e quer um teste drive com essas linguagens , referencias de Ruby(JRuby) e de Python.Obrigado pelo seu tempo! JPA e uma especificacao criada pela Sun, inspirada no Hibernate. Portanto o Hibernate e a implementacao mais "famosa" do JPA. Sendo assim, JPA nao e um substituto do Hibernate.JPA e a especificacao (Java Persistence API)Hibernate e uma implementacao da JPA A confusao surge pois o Hibernate surgiu antes da especificacao JPA, em uma epoca onde nao exisitia uma solucao padronizada para a