What are the most popular server-side high level languages right now, by active user/developer community? Is there a good way to filter client-side from server side development use in some kind of census? Admittedly, the line between client and server is a bit blurry. (Much of what's implemented on a Rails server is really UI, for example.) I'd also be curious to see 3 numbers, one for definitely client, another for pretty much server, and a third for a bit of both.
[+] [-] ihumanable|15 years ago|reply
The one thing I like about PHP more than anything is the lack of abstraction, there is no "response" object you are writing to, you want 'some-crazy-tag-with-weird-attributes' you don't have to trick your library into outputting it, everything is just strings you echo out.
With the glut of web frameworks for PHP (CakePHP, Symfony, NOLOH, etc.) you can go full blown MVC fairly easily. I prefer to work with Flourish http://flourishlib.com as I find it to be the perfect core for a website.
[+] [-] carucez|15 years ago|reply
Python is a bit more robust for all things higher-level, and I would recommend that before PHP any day (for someone starting out in).
Client side stuff is (for me) all JavaScript, always, using the JQuery library to ease my web pain.
HOWTO do divide Client from Server? Separate machines and insist that all back-end processing and storage goes on one set, and all client-side functionality goes on the other. Loading/parsing of archived data is a client-side process, as far as I'm concerned. Use standard protocols and formats to talk between the machines.
[+] [-] pavel_lishin|15 years ago|reply
[+] [-] chipmunkninja|15 years ago|reply
In my mind, the reality is that you should choose the programming language based on the skills of you or your programmer(s) and the task at hand. If I were going to implement a banking system, I'd probably look first at Java and its J2EE libraries to see what options were available there. I've used PHP recently (despite it being a reasonably painful language) because it has some wonderful productivity and scalability features that we've been able to really take advantage of.
However, I've nothing against any of the other platforms (with the exception of a slight bias away from anything that requires me running windows servers), and have been fiddling with Ruby, and also exploring Haskell, Erland, Clojure, and even Scala.
Unless we're talking in-house applications using VB or C#, or mobile phone applications using ObjC or Java, "client-side" almost always means HTML/CSS/JS these days.
So, look at the task and the talent, and go from there. Most of the common platforms that you've heard of are all going to have large enough communities for support and libraries to perform various non-standard tasks.
Good luck!
[+] [-] davidw|15 years ago|reply
[+] [-] CyberFonic|15 years ago|reply
[+] [-] adn37|15 years ago|reply
Planning to learn a Java/Scala based 'equivalent'.
[+] [-] dawsdesign|15 years ago|reply
My current favorite is Python/Flask.
[+] [-] dawsdesign|15 years ago|reply