Java is an enterprise technology, if you are going to stay in the enterprise then by all means Java is the way to go, it is not going anywhere for a long time. That being said, by your post I can tell that that is not where you want to be. A lot of people will say just use what you know, but ignoring trends does not make them go away. There is a reality and that reality is there is a lot of cool problems that are being solved and that work is not happening in Java. There are cool problems being solved in Java don't get me wrong, but what you you are looking for, is easier found in other language cultures. It is a reality whether we like it or not. That being said there are ways to leverage your Java knowledge and still move towards that culture. Specifically there are two languages that utilize the JVM and the existing Java libs they are Scala and Clojure. I recently made the full switch over to Clojure because I want to work on something else, and it has been a great experience. While it is not as popular as Ruby, the work available for the market it some of the most impressive projects I have seen. This was a big factor in my choosing it as a technology to invest my time in and it is a very valid reason to do so. Anyways point being yes you should absolutely learn Ruby if the market seems to be solving problems that you want to work on, but in saying that there are some other really cool languages out there running on-top of the JVM that some interesting work is available for, if you just want to get into interesting work, you might want to take a minute to investigate the others because your experience with the JVM and Java libs will give you a head start in moving over to them.