Ask HN: Best Back end web-frameworks for startups in 2017? - 2_listerine_pls
======
richardknop
It's still Django obviously. You can never go wrong with Django. Mature and
battle tested.

I think it will be easier to hire for Django as there are more Python devs and
they can learn Django quickly if they don't know it already.

Second choice would be RoR if you want to be fancy but might be little it
harder to hire for.

------
devrandomguy
I'm partial to Compojure API ([https://github.com/metosin/compojure-
api](https://github.com/metosin/compojure-api)). The thing I like about it, is
at the point where I've just scaffolded a barely functional prototype, I also
have a spec and interactive documentation. That documentation serves as the
service's first UI. UX peeps think I am sadistic, but I like having the
controls embedded in the manual.

It is also very beautiful. If you look at the examples, there are few forms
(keywords, in other languages) that are not related to the domain of an HTTP
API. The code is dense, but rich in relevant information.

If you want to explore the underlying architecture, look up the Ring project.
It contains the lower level server primitives that several web frameworks are
built on top of.

------
trcollinson
Ruby on Rails! It's a beautiful framework. It's nice to work with and
batteries are included. It is well tested and battle hardened in many
production environments. Give it a shot!

------
assafmo
The ones you feel the most comfortable with.

~~~
2_listerine_pls
You need to take into account new hires, development speed, community,
maintainability, etc...

------
e59d134d
Laravel

Tons of PHP programmers and PHP is a lot more mature language now.

~~~
jwdunne
Recently used Lumen in a project. Very nice microframework based on laravel
packages and a faster router.

With PHP7, I recommend reading the RFCs too. Some nice stuff on the way.

------
jklein11
Intersystems Cache ObjectScript and Ensemble! The language is battle tested
(~60 years old) and no need to worry about setting up database connections
because the language has a persistence built in!

The Ensemble integration engine has adapters for almost any web protocol you
can imagine and make it a breeze to create microservices.

------
tomascot
I'm really productive with Symfony, so Symfony it is.

------
rtcoms
I'll vote for Ruby on Rails unless my app has heavy frontend requirements
(Single page apps, complex ui interactions).

~~~
2_listerine_pls
what's best for complex UI interactions?

