Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I'm just looking for some tips on getting away from using PHP for web development. I'm self-employed but it seems like all of the work I find deals with PHP. I'm not complaining about the work -- just the poor choice of a language that is incredibly popular.

I'd love to do my web development in Python, Perl, C#, or even a fun and fancy functional language. There's the old saying that you don't tell a carpenter what kind of a hammer to use. At the same time, you do tell them what kind of material to build your house out of and how much you're willing to spend.

The problem I am running in to is that I don't know how to get out of this spiral. I can't just turn down work because then I wouldn't have any. I really don't want to go work for another company -- and even if I did, I'd probably still be stuck using something I don't enjoy. I'm hoping someone has "been there" before and might have some good ideas on how to get out of this situation.

Thanks!

share|improve this question
    
As long as you are making construction analogies, language/platform is a lot more like "material to build with" than tool. Tool would be the OS you use, IDE/text editor, etc. So, in that sense, clients are pretty justified specifying the language. –  NickC Oct 24 '11 at 15:54

4 Answers 4

up vote 5 down vote accepted

I understand that the great bulk of the work out there is being done in PHP. But does that mean it needs to be done in PHP? I imagine that employers aren't going to say "we've looked into all the available tools for this type of job, and we've decided PHP is the best".

Well, actually, they might, if their main concern is maintainability. If they lose your services, will they be able to find another developer who can pick up where you left off? Maybe not if you wrote it in "a fancy functional language", but I can't imagine that Python and Ruby coders are impossible to find.

But I'd say that the burden is on you to reassure them. It's not ridiculous to propose that PHP, despite its ubiquity, isn't the best language for the project. A basic web search will find plenty of testimony that PHP is usually a mediocre choice at best. If an employer doesn't have an open mind about that, sounds like a free thinker like yourself might not want to work for them anyway. But do also provide statistics to show that Python, Ruby, or whatever is a thriving concern, that they won't be throwing money into an incomprehensible niche language that they'll never be able to find anyone else willing to develop in!

I suppose my point is: your prospective employers aren't just being obstinate when they ask you to work in PHP, they've determined that it (apparently) does the job and it's easy to find people who can do it. If you can demonstrate, with proper evidence, that your language of choice will do it better, quicker, and more cheaply than PHP, and won't leave them in a deep hole if you get hit by a bus tomorrow, then they'd be crazy not to go with your suggestion, wouldn't they?

share|improve this answer
    
While these are all good answers, I think you've done a great job at re-affirming what I already believe and answering the question. I just have to be confident in myself to the point where I can really push them in the right direction. Thanks a lot! –  Kurtis Jun 27 '11 at 3:26

Unless you have the financial cushion, you're going to need to learn Python or whatever else you want to learn on your own time while still taking on PHP jobs for income. Once you get proficient enough at the new language of your choice you can start taking on projects in it, and slowly transition away from PHP altogether.

share|improve this answer
    
Thanks for the answer. I actually do play with languages quite a bit in my spare time so that's not a big problem for me. My main concern is actually finding the work. Rarely do I have projects where I get to start from scratch. When I do, they usually already have their hosting plans setup with cheap, shared hosting servers where you don't have a lot of options (e.g. ancient versions of php and perl interpreters ran only through CGI). –  Kurtis Jun 26 '11 at 21:35

I had the same problem about 18 months ago. I was sick and tired of PHP. So I learned Ruby and Ruby on Rails. Now when I'm looking backward at PHP... I can't even imagine that I used it for about 10 years.

Regarding Ruby: It is very easy to switch to it from PHP and it's a pleasure to code on Ruby. The things are a bit more complicated about Ruby on Rails but it worth it.

About the spiral: Just start to learn the new language, and when you feel that you can "speak" in this language a bit do try to switch to it completely. This is how I did.

share|improve this answer
    
It's good to hear that I'm not the only one who's felt that way! So after you learned Ruby and how to use the RoR Framework, was it pretty easy to find the work? I'm not sure if it's just my area -- or possibly my networking but I haven't ran across any work for the web outside of PHP. The exception being if you go look on a job web site and then it seems like everybody wants either Java, .Net, or PHP. –  Kurtis Jun 26 '11 at 21:57
    
Actually there is enough work on RoR. Besides, on RoR you can do everything (or even more) you can do on PHP. Another way is to explain to your client the benefits of using RoR instead PHP. I don't know a person who wouldn't like his project finished 2-4 times faster, with less bugs, easier to maintain, and so on. And it is surprising for me to hear that you haven't ran across any work for the web outside of PHP, Java, .Net. As long as I know RoR is very popular in USA. And BTW I would never learn Java or Python fow the web. Especially after I learned RoR. –  JohnZ Jun 26 '11 at 22:17
    
I think I'll have to go and take a good luck at RoR again. Thanks! –  Kurtis Jun 27 '11 at 3:25

I would suggest going in a new direction by creating a product. It can be done along side your current work and probably you already thought about it, but using the lure of new tech to get you moving on it might just be enough.

It doesn't have to be huge, maybe even something you can upsell to your current clients.... A nice off the shelf support system, a backup/restore solution that makes them independent from service providers... Who knows, but something you can Market to your current base.

share|improve this answer
    
While I don't think this is the quickest way to get out of being stuck to PHP coding, I think this is a great idea on getting a foot out of the door. Especially if it's a service, as opposed to a product, then I don't have to take into consideration the client's web server. Thanks! –  Kurtis Jun 27 '11 at 3:24

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.