Personally, I'd go with PHP. Why? - It's easy to get things done fast. - There are plenty of classes available online that'll make things even easier. - It's easier to maintain (IMHO) than some other languages. - It'll run on almost all web hosting services cheaply. - It's scaleable. If and when you need something more powerful, a seamless transition can be made over to another language.
Large webapp and seamless transition to another language are not really compatible.
Ask HN: Building a large webapp today - what language for the backend, and why?
51–60 of 64 posts
Re: Ask HN: Building a large webapp today - what language for the backend, and why?
#52Personally, I'd go with PHP. Why? - It's easy to get things done fast. - There are plenty of classes available online that'll make things even easier. - It's easier to maintain (IMHO) than some other languages. - It'll run on almost all web hosting services cheaply. - It's scaleable. If and when you need something more powerful, a seamless transition can be made over to another language.
But PHP is quite good. Especially PHP 5.4, which has lots of nice things like short array syntax.
Re: Ask HN: Building a large webapp today - what language for the backend, and why?
#53For a 'large' webapp I would honestly go with Java. A good stack is Jetty for the http server, and Jersey/JAX-RS for the web framework. The JVM is unbeatable, and you will have an easy time onboarding people since everyone knows Java. It's not as 'hip' as Rails/Django but you will be very productive and you will have the benefit of the plethora of Java libraries out there that are performant and reliable. Not to ment…
I would prefer ASP.NET MVC (thus C#) over the Java platform. The .NET stack is extremely powerful (much better than Java imho) and the ASP.NET MVC framework has a lot of the features that make RoR great (it's just must faster than Ruby).
A great example of this stack, is that it powers stackoverflow.com
Re: Ask HN: Building a large webapp today - what language for the backend, and why?
#54See my post here for specifics: http://forum.linode.com/viewtopic.php?t=9230&p=53085#p53...
For the Web UI I recommend GWT by using Eclipse and the GWT Designer GUI web designer they bought from the excellent folks at Instantiations back in 2010.
https://developers.google.com/web-toolkit/tools/gwtdesigner/ https://developers.google.com/web-toolkit/tools/gwtdesigner/...
If you have customers that demand a platform GUI application which accesses your web backend, Google donated WindowBuilder to Eclipse.
Re: Ask HN: Building a large webapp today - what language for the backend, and why?
#55lein new noir myBigWebApp http://webnoir.org/ I think Clojure makes a lot of sense for the web, emphasis on immutability etc. I also am a sucker for lisps, and I think the Hiccup templating system is nice. Noir seems to do middleware well. Plus, real nerds get on that ClojureScript. Then again, I kind of also believe that the back-end really shouldn't do much more than process CRUD commands, and that most of your ser…
* The property list pattern and inheritance-like behavior are very natural and convenient with maps and records. I think that sort of thing is very helpful with large applications.
* Clojure has the ability to abstract the database (I'm thinking of Korma here) in a way that preserves and works with the relational model more directly than ORM.
Clojure's ability to leverage Java libraries also means you're unlikely to ever get stuck implementing common functionality from scratch[0] when another language would have a library.
[0] I did, however once write a CSV library for Clojure because it seemed easier than using an existing Java library for the subset of functionality I needed or writing a wrapper.
Re: Ask HN: Building a large webapp today - what language for the backend, and why?
#56I like Node.js + Mocha
* Development in Node is super fast
* Mocha makes TDD or its variants really fun
* Node feels natural for webapps (the Hello World example is an HTTP server)
* JavaScript is a really flexible and elegant language if you get past its minor quirks
* The community is fantastic
* The built-in package manager is fantastic
* The open-source libraries are fantastic (pick the right DB for the job, there are good drivers for all of them)
There's lots to say about Node. No language is perfect for every task.
EDIT: fixed spacing
Re: Ask HN: Building a large webapp today - what language for the backend, and why?
#57Re: Ask HN: Building a large webapp today - what language for the backend, and why?
#58lein new noir myBigWebApp http://webnoir.org/ I think Clojure makes a lot of sense for the web, emphasis on immutability etc. I also am a sucker for lisps, and I think the Hiccup templating system is nice. Noir seems to do middleware well. Plus, real nerds get on that ClojureScript. Then again, I kind of also believe that the back-end really shouldn't do much more than process CRUD commands, and that most of your ser…
I am starting to rebel a bit against really fat JavaScript/CoffeeScript/ClojureScript clients as the default implementation strategy. For many apps, using old fashioned forms, render on the server, and after you have functionality convert bits to AJAX as needed to make the web app nicer to use. It is an economic decision: is the cost of a slick fat client justified for a given project?
Re: Ask HN: Building a large webapp today - what language for the backend, and why?
#59Re: Ask HN: Building a large webapp today - what language for the backend, and why?
#60Personally, I'd go with PHP. Why? - It's easy to get things done fast. - There are plenty of classes available online that'll make things even easier. - It's easier to maintain (IMHO) than some other languages. - It'll run on almost all web hosting services cheaply. - It's scaleable. If and when you need something more powerful, a seamless transition can be made over to another language.
There are simply other languages which have all the goodness you mentioned of the "Personal Home Page"(PHP) language, as well as some more advangtages over PHP in a long term development procedure.