2 ms·
Since the OP is already familiar with Java it's my assumption he'll seek out the "right way" more naturally than someone completely uninitiated. That's the rou
by dools 15y ago
Since the OP is already familiar with Java it's my assumption he'll seek out the "right way" more naturally than someone completely uninitiated.
That's the route I went: 6 months of C at uni (as well as some assembly for PIC and Motorola micros) then learned Java on the job then freelanced for a while doing PHP. I found I was immediately able to discount popular open source projects of the day (osCommerce being the most memorable) as appallingly written just due to the fundamentally broken way they made use of object orientation (this was before PHP5), even though I didn't have that deep an understanding of the "big mistakes" most people make when writing PHP. In fact one of the first things I did in PHP was write my own framework, which was a good exercise and I still use it in production but I didn't know enough to make it good/usable for others so it never went anywhere.
I'd say, also, in general the "ambience" in the PHP community has improved immeasurably. If you're using ##php as a resource, and modern articles and frameworks to learn from, you've got a far better chance of not falling into the n00b traps than you did 5 years ago.
As a side note re: RoR - I just can't take a framework seriously that would settle for an ORM tool that doesn't support composite primary keys. Same with Django. They're toys as far as I'm concerned.
I've not used RoR commercialy but I have used Django and found it's "opinionated" nature very frustrating - felt far too detached from the "real" HTTP and there were several instances where I wanted to solve a problem some way that was perfectly reasonable in terms of performance and security but Django "wouldn't let me". I assume it's the same with RoR although I've never had good reason to find out.
IMO if you're saying "get a solid grounding SQL" that is not compatible with taking up rails (or Django).