Here's my background. I'm professionally employed as a PHP developer with about 1 year of full-time PHP experience. I like to think that I write reasonably good PHP - at least I make good use of OO patterns, separating logic from presentation, etc.; not strictly MVC, but I can write a decent PHP app. I don't hate PHP nor am I in love with it. I do not have a CS degree and am mostly self-taught. I'm also competent with relational databases and have a decent grasp of SQL.
I'm exploring an app to develop and sell/support commercially - kind of like a hybrid CMS/image gallery. It would be specialized, however, for a very small market. My main requirements from a language are:
- Rapid development
- Ease of programming for non-CS geniuses
- Maintainability over the years
- Professionalism
Like I said, this will be a fairly specialized/complex app. I may be doing some SQL/XML stuff with Postgres/Oracle, I may be doing lots of complex joins, etc. Installation may not be trivial and that's OK.
So, if anyone reading this has "been there," done the PHP thing, done the Ruby thing as well... what would your advice be? Would you say it would be worth it to learn an entirely new language to start on something like this? Or would it be better to leverage my existing PHP/SQL knowledge? Is Rails an appropriate candidate language for such a project? Will I ever get a positive return on investment from learning it? I do write PHP all day at work, so that is the language I'm stuck with for 8 hours of the day. I'm trying to choose what I will be stuck with for 4 hours in the evening.
I'm exploring an app to develop and sell/support commercially - kind of like a hybrid CMS/image gallery. It would be specialized, however, for a very small market. My main requirements from a language are:
- Rapid development
- Ease of programming for non-CS geniuses
- Maintainability over the years
- Professionalism
Like I said, this will be a fairly specialized/complex app. I may be doing some SQL/XML stuff with Postgres/Oracle, I may be doing lots of complex joins, etc. Installation may not be trivial and that's OK.
So, if anyone reading this has "been there," done the PHP thing, done the Ruby thing as well... what would your advice be? Would you say it would be worth it to learn an entirely new language to start on something like this? Or would it be better to leverage my existing PHP/SQL knowledge? Is Rails an appropriate candidate language for such a project? Will I ever get a positive return on investment from learning it? I do write PHP all day at work, so that is the language I'm stuck with for 8 hours of the day. I'm trying to choose what I will be stuck with for 4 hours in the evening.