3 ms·
Ask HN: What if PHP is the only thing you know?
I'm good enough with PHP to be able to write code professionally, but I don't know Python, I don't know Ruby, I don't know C++, I don't know Java, I don't know ASP.
If I ever wanted to leave my job, how limited are my prospects, knowing only PHP?
Or, to frame the question another way: What kind of possibilities -- in terms of opportunity and salary -- would be opened up if I were to commit to learning one other programming language ... and which should I learn?
- KevinMS 16y agoI'm guessing you are going to stick to "web development", in which case, knowing C++ is irrelevant. In the case of python and ruby, while these jobs are high profile, they are relatively rare at the moment, especially python. Java and ASP seem to be their own walled gardens of career development. Try to climb in if you want, but they don't really lead to anything else, but might be a good place to be. Only knowing PHP is a good problem to have. Lots of jobs there, especially contracting.
- bwh2 16y agoI would suggest learning both Ruby (plus Rails) and Python (plus Django). There are plenty of PHP shops with nasty code bases thinking (even if only superficially) about developing to those languages and frameworks. Even if that never actualizes, it makes you as a candidate look more attractive. I would also suggest really wrapping your head around client-side technologies if you haven't already. In particular, JavaScript plus jQuery.
- deleted 16y ago[deleted]
- rcoder 16y agoI've been on the hiring side of the interview table for web developer positions a lot in the last few years. While only having professional experience in PHP isn't a big deal, I have to say that folks who've never shown an interest in another language or facet of software development don't tend to impress. PHP is a very pragmatic, simple language with a complex and baroque set of libraries. It's great for hacking together websites, but working with PHP (even for many years) doesn't tend to teach you the kind of technical and aesthetic judgement that differentiates an assembly-line coder from a productive, engaged hacker. Learning Ruby or Python might be the shortest path to another gig, but it probably won't push you outside your comfort zone far enough to really improve your programming if you stick to the usual Rails/Django garden path. If you want to really push yourself and grow as a developer, learn something completely unrelated to the standard LAMP stack. Lisp (especially in a modern form like Clojure) is a good choice, as are Smalltalk and Erlang. C++, Java, or C# may let you jump up a pay grade or two, but tend to lead into dead-end "enterprise" coding, unless you're lucky enough to stumble into a top-notch shop that happens to be using them for their efficiency rather than their "manager-approved" status. Most importantly, I'd suggest actually building something in whatever language(s) you decide to pick up. Reading blog articles and tutorials is all well and good, but it's far more impressive for you to be able to show code and talk from experience about the relative strengths and weaknesses of the languages you've worked with. Even a half-finished side project hosted on GitHub (or hauled into your interview on a personal laptop) will go a lot further than regurgitating buzzwords on demand.
- gregory80 16y agoexcellent point, pushing yourself outside the comfort zone is critical, at least that I what I have found. Though, I have also found that companies are willing to hire and teach you, if you can exhibit excellent projects (and code), even if they are in PHP
- byoung2 16y agoAt the last company I worked for (Internet Brands), there were about 100 developers. 90 PHP, 6 Java (for CarsDirect.com), and 4 .NET (for a handful of sites like Tjoos.com that haven't been migrated). Some of the PHP devs also know a little Perl or Ruby (helpful for migrations or legacy code). IB's business model is to migrate newly-acquired sites to PHP/MySQL whenever possible. This keeps development cheap because PHP devs are cheaper than Java or .NET devs. The Java or .NET guys probably make 2x what PHP devs make there, but those positions are in very short supply. PHP is good to know if only for the sheer volume of jobs out there, even if the starting pay is lower. Keep in mind that highly able devs familiar with any language will make more money.
- skowmunk 16y agoDo you know MySQL and AJAX also? How long have you worked on PHP? If you are looking for prospects, I did be interested in seeing if your profile matches what I am looking for. email id on profile. good luck.
- konad 16y agoDepends how well you can actually write programs. ASP is a platform, not a language. Its runtime languages are VBScript and JScript and others (PHP included I think). Their modus operandi is very similar to PHP. I prefer JScript but VBScript is simpler. You probably know quite a bit of Javascript already from PHP so it should be easy enough to migrate to that. All the imperative languages are pretty much the same. X = Y + Z; If X then Y else Z; While X do Y; For(X in Y) do Z. The most different from that list to PHP I would say is C++ because it introduces the dreaded MEMORY MANAGEMENT.