

Ask HN: PHP/JS world from Java/C# world, Suggestions?  - atiw

I am more interested in Web related stuff.
Have been for a year now.
But my full time job is in Java.
And it is not web related, although we make the UI using GWT. Interesting company here.<p>I have also been working on my startup for almost a year now.<p>Been a Java programmer, C# programmer, novice PHP programmer, and much more. (Check out "Little history" towards the end.)<p>Just wondering, if it might be a good option to start learning PHP and JavaScript on the side, after I am done with version 1 of my startup's software, so that sometime next year I can apply to some startup in CA, and move there.
Also that gives me a chance to work on web programming, serious web programming, hopefully with millions of users, kind of stuff.
I guess my question is:<p>1. Do I jump into PHP and make that my career? Do people get good paying jobs in CA doing that?<p>2. What about JS? Is that an absolute requirement for a web related job? I don't think so. 
But I would like to know from "real" web programmers who are doing jobs in PHP or JS, out there in CA, preferably in startups, but not necessary. I just want to work somewhere interesting, in CA.<p>3. What's the money like for web development jobs in PHP/JS in CA?<p>4. Keep in mind, I would love to learn both PHP and JS, so that I can make at least one complete application before applying for a job.<p>P.S. - Little HISTORY Grew too much, so pushed towards the end.<p>LITTLE HISTORY<p>I graduated with a MS last year and founded my startup here in Dallas, Texas, last September. 
Applied for a couple of funds, tried YC twice, never really got anything.
Realized I practically ran out of money and into debt, took a contracting job, one thing let to another, they loved me, and offered a position , Java related.<p>I got that, and I loved it. Since the job mostly involved tools like GWT, Java , Spring, hibernate and more.
It was big enough so I wouldn't get bored.
Small enough that I can probably learn it inside out in a few months. Turned out to be deeper, so still having fun learning it.
Oh yeah, immigration issues started creeping in too.<p>I found out you can only do your startup for so long, before they would deport me. Or at least that was one option. Some lawyers say true , some say not. So, picked up a job.<p>My startup involves making a generic solution for a lot fo NP complete problems, and making it fast enough, and simple enough for non-expert users to use it.
Well towards the end of version 1.
(Hoping to launch it to HN users first when it is ready.)
======
kls
Given your Java experience, you should consider learning JavaScript, jQuery or
Dojo Toolkit and JAX-RS. Learn to write JSON services with JAX-RS and to use a
client side JavaScript framework to make calls to those services and render
the UI. Throw away, JSP, Struts, Tiles and all the other cruft. Use pure CSS,
HTML and Javascript to build your UI. With JAX-RS It is as rapid as ROR or
Django or any of the other "rapid" frameworks and is drop dead simple.

The reason you want to do this, is because then you know how to build web UI's
without any non-W3C technologies. What this allows you to do is take the same
front-end and back it with services in any language. So you can start to write
JSON services in python, PHP, Ruby or whatever language you want to learn
without having to rewrite your UI. This will allow you to try different
languages without having to invest heavily in learning large web frameworks.
You can write one service in Java and the next in python, the next in Ruby.
This will allow you to evaluate which one feels right to you.

After doing this your UI skills are portable across any stack you come across
because you have removed the UI from server side stacks.

As for the server side languages for web, PHP is the most popular by a large
margin. It is unfortunate given that it is such a poorly designed language, if
you are in it for the gigs then learn PHP.

Python would probably be the second most popular (if you exclude Java/JSP and
.NET / ASP) and is more rewarding if you are looking for something that has
good job prospects with an elegant language.

Ruby would probably come right after the first two, there are jobs and it is a
well designed language, worth learning if you want to go that way.

------
stratospark
Definitely learn Javascript, it's the language of client side web (becoming
more popular on the server side with projects such as node.js). It only gets
more interesting as browsers become more capable (local storage, WebGL, web
workers, etc.)

As for PHP, it's definitely established as one of the most popular server side
languages. You'll be able to find plenty of companies that could use PHP
skills to maintain existing infrastructure. However, newer startups are more
likely to be based on Ruby or Python, with the more adventurous exploring
Clojure, Scala, node.js, etc.

With Clojure or Scala, you'd be able to leverage your existing Java skills, so
that might be something to think about. I bet you'd enjoy the new programming
paradigms these new languages offer. With PHP, you're not going to be learning
many new concepts.

As for finding a job, you're just going to need to check the job postings in
the areas you want to move to. You'll find a bunch of PHP like I said, but see
what else people are looking for. Good luck!

