However, I can see how Rails "gets things done", and why so many people like it.
Perhaps the author came clear with his opinion a bit too hastily, but you shouldn't ignore someone just because you don't agree with every opinion he has. This was not an article about "why I don't like Rails", that's probably why he did not explain why he doesn't like it.
What comes to the article itself, I think it was decent and I don't agree 100% but not bad advice either.
Here we go with the "magic". It is not magic, it just code. Many people are just too lazy to investigate why things works the way they do, and how to change it when the defaults don't fit their needs.
Just for the record, you are wrong about naming conventions, they don't act as mandatory, you can use configuration methods to set up things the way you like it. E.g
Class Users
set_table_name “Usuarios”
end
Rails has many drawback points, I rather prefer Django views, than Rails, but all this "magic" conspiracy theory is just childish.I happen to like the "magic" aspect of Rails. The downside is that it does make Rails suitable for certain types of development and less so for things that fall outside of its paradigm. That's Ok, as long as you know that. Having said that, my app was actually OLAP, not OLTP, but I was able to extend the framework pretty well to do what I wanted, including working with legacy schemas. So it is more flexible than some give it credit for.
To me the real power isn't in Rails though, it's Ruby, which is the best programming language I've used, albeit extremely slow and inefficient. I haven't not used Python, so want to be clear I'm not making a Ruby v. Python claim.
"Want to write Android apps? Learn Java."
"About Java [...]. The way you're going to learn how to program is completely different than the world of Java [...]."