I worked at 2 start-ups so here are the technology stacks:<p>The first company was started 3 years ago and our technology included:
(1) Python-Flask
(2) Postgresql
(3) SQL Alchemy
(4) JQuery for web
(5) Objective C for IOS
(6) Bootstrap<p>In my second company we wanted to take advantage of the growing ecosystem around Node. We also did not want to have to manage a DB, migrations, and server scripts. Our rationale is that we should focus more on the customer and turning the customer requirements into the product than on the technology working. We are an enterprise software company and so the less complicated the technology the better since we are not doing anything ground breaking from a technology standpoint. Our stack includes:
(1) NodeJS/Express
(2) Heroku
(3) Angular JS (I don't get all the negative comments about Angular lately because it works fine for us)
(4) Lodash (Javascript utilities)
(5) S3 - static file storage (images and files)
(6) Jquery
(7) Bootstrap
(8) Firebase
(9) Angular Fire (to connect firebase with angular)<p>Using our current backend, we were able to build the SAAS product in about 1 month with only myself as a developer instead of 2-4 months that might be required if we had used the previous technology stack. Firebase, Angular, and the Node ecosystem really helped make the coding much faster than before.
I am using openresty,couchdb and jquery.<p>Openresty because it so much fun :) It uses lua which is a very pleasant language to work with (I love the idea of multiple return values from functions) and it built on top of nginx which is a big win for me since I always use nginx in front of my app server.<p>With openresty I can use nginx both as an app server and as a proxy. I think that if anyone is already using nginx they should look into openresty because it opens up so many possibilities.<p>couchdb because of it's ease of use. It has a simple http api that works well with openresty's `location.capture/capture_multi` capabilities. It has a server side javascript environment which can be used to validate data/render templates etc,the common js module system is very capable. It also gives me an excuse to have erlang in my stack, ready just in case.<p>jquery because it is reliable. The other javascript framework that I like is knockout js but I use it only when I need to have a complex client side logic and knockout js works well with jquery.
If I do my own REST back-end: node/express or good old php. If I go no-backend: parse.com or firebase.com (different use cases). Front-end: BackboneJS and the usual mix (CSS, HTML5, Bootstrap, Jquery, etc) and I am looking into adding ReactJS to the stack.<p>Increasingly I am using more free/paid SAAS for services like file uploads, emails, storage, monitoring, etc. Not sure if we can call this approach a "stack" but surely it is becoming very relevant and it solves most requests I get. I guess it is also interesting to rapidly hack an MVP with such tools and if the thing picks up (traffic/user base) you can scale the services (pay more) or start programming them yourself, if the think flunks time/money was not wasted. It is also a big plus that these services play super nice with mobile native and mobile web, SDKs are always available. Maybe I am a wishful thinking hipster but somehow I feel this is the trend to follow.
Languages: Ruby / Clojure / JS<p>Frameworks: Rails / AngularJS / Cordova<p>DB: Postgres / Redis / Elasticsearch / Memcached / DynamoDB<p>Messaging: SQS<p>Plan on learning in the next few months:<p>More Clojure<p>Machine Learning<p>ReactJS (Hopefully a replacement for AngularJS / Cordova from above)<p>I've been picking things to learn based on reading programming books and observing trends. 7 concurrency models in 7 weeks, 7 languages in 7 weeks, and 7 databases in 7 weeks are all good places to start for finding something new to learn. As you can tell, I'm a big fan of the series as an introduction to a topic that can then be explored in more depth after reading.
Depending on the frontend, I use either PHP or Node. Python is a better language and more enjoyable to code in, but I often pass my projects on to junior devs to maintain. It's a lot harder to find someone to take over a Python project than a PHP or JavaScript one. All the good Python devs seem to be gobbled up by larger companies.<p>I'm getting into Go now, but I'm hopeful Rust will become the language of the future. I'm desperate for a great type system in a web framework. Elixir is cool, but I don't think I could find anyone to work on it for me.
Languages: C# / JS
Frameworks: .NET / AngularJS / jQuery
Database: SQL Server or SQLite if needed for a tiny system
Tools: TeamCity / Octopus<p>Nothing too fancy on my end. I build standard CMS based websites at my day job using ASP.NET MVC. At home, I occasionally work with Django, but with all the news about .NET support across Linux I've put Python down and have been toying with writing C# on my Ubuntu box.
My current stack:<p>- Server: Node & express<p>- DB: Mongo (using mongoose)<p>- Frontend: Knockout.js using components (introduced in 3.2), Cordova when developing mobile.<p>- Hosting (db, services): Azure<p>Pretty standard with the exception of Knockout.js, which I think is criminally underrated following the introduction of components in 3.2, especially given all the recent hype around component/module based separation of concerns. Also Azure, mostly because I get $150 free monthly from MSDN.
At work it is Scala with Spray, that is becoming now Akka Http. In Spray you have to write your our implementation / helpers for many things as Spray is quite minimal. Scala gives your type-safety, but sometimes it feels like too much typing (say, for prototype app). So for hobby projects I started to look at Clojure / Luminous and Elixir / Phoenix.
I have joined a few startups and architected a few as well. I currently love one of the following two stacks, depending on the need:<p>GoLang -> Postgres -> React
Meteor -> MongoDB -> Blaze<p>Of course, most of those are interchangeable. We use Redis for caching, Docker/Ansible for deploy, etc.
Golang + Gorilla, running the built in Golang net/http web server on a Linode VPS. Frontend is just HTML/JS/CSS with assorted JS libraries like jQuery and Bootstrap. I use this for several side projects.
My current development stack:<p>( During my day job )
Front-End: AngularJS
BackEnd: ROR
Database: Postgress<p>( For my side projects )
Android Development
ROR
Redis/Postgress/freebase and lots of reading about Material Design
Plain ol' LAMP stack here (with some extra goodies thrown in - memcache, varnish, redis). You should use what you're most productive with, not the new, shiny thing of the day.
Meteor. It's a fun, fast and modern web framework that uses javascript on both the server and client so it's easy to pick up if you already have web skills.