What I do miss are good, well documented, stable libraries. For example, I currently process RSS/Atom feeds with FeedTools, whose own creator says he's tired of maintaining (I totally understand him and am extremely thankful for the time he put into it). I assume if there were more people coding Ruby, there would be a better chance someone would step up and take his place. So, having a community that is more welcoming to newcomers would eventually benefit us all.
By "open to newcomers" I don't mean that Ruby-celebs should stop posting snarky comments at each other in their blogs. This is pretty negilible. I mean stuff like having better documentation, for example, online, free, in googleable format (rather than screencasts or print books). IMHO PHP3 annotated online docs back in 1999 were significantly more usable than what Rails has to offer now.
Is it more the fact that the community is small or that fewer people share their code than in the Python community? Just wondering.
BTW another example that comes to mind regarding beginner-friendliness is how long it took to get Rails working with Apache. Before Phusion you were supposed to run your own mongrel cluster or similar fringe solutions - it was insane to ignore the world's most widely installed server. Personally I only started considering Rails production-worthy after mod_rails turned out to be fast and stable. Sure, I can run Thin/nginx or whatever, but I don't want to learn a new server (and wait for it to mature) just so I can use Rails.
It seems to me most Rails jobs are either for companies who chose Ruby because they really know their stuff, which is great, or companies who chose Rails because 2 years ago it was touted as some sort of Web app pixie dust in Wired Magazine, which is often less fun :)
I recommend watching it. Good talk. Takeaway point - always err on the side of charging too much :)
I don't like Rails, but I hate Apache.
Do you mean for the core language? Are you not happy with http://www.ruby-doc.org/ ?
http://ruby-doc.org/q/<your search string>Here again I think it's interesting to compare to PHP's annotated docs ca. 2000, which were a great resource since they usually contained a few common usage examples for every function. The language itself was less consistent and mature than Ruby, but the user contributed (pre-Web 2.0! ;)) docs made up for it.
I have very few issues with Ruby as a language, in general it let's me get from thought to working code quicker than any other language I've used. Honestly the largest issues I've run into with Ruby typically deal with people trying to be too clever.
Ruby certainly provides a lot of ways for people who want to look incredibly clever to hang themselves and anyone using their code. I typically avoid libraries or frameworks where clever code is the norm (I'm looking at you Rails), and because of this I tend not to have too many problems.
It's certainly not perfect, and I've been frustrated by bad error messages, stupid type system mistakes, etc. But I've found that those issues simply replace issues in other languages.
I still feel that Ruby gets me from Thought to Code quicker, and for the kind of projects I typically do, that's worth dodging a couple of warts.
I agree with you about Thought-to-Code and even though I argued in favor of monkey patching earlier, the willingness to use it without discipline has raised a red flag for me and is the biggest sign of this "too cleverness" that you're referring to (at least for me). If Ruby becomes the new Java, maintaining irresponsibly monkey patched legacy systems could be a nightmare for the enterprise developer in the years to come.