Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: Describe your web development stack
27 points by readme on April 27, 2014 | hide | past | favorite | 24 comments
I took a bit of a hiatus and I want to use software that's fun and works well. What are you using?



More Scala and Play2 or sometimes Spray.

ElasticSearch and Postgres for databases (it used be Mongo quite often, but I've put that on the shelf).

I would love to build something in Haskell's Snap framework (so what's stopping me? Laziness).


Would be interested to know why have you put mongo away for the time being?


===Frontend===

- AngularJS (with the almost always necessary library AngularUI) for big projects. jQuery for everything else

- D3.js for graphs and pretty things

===Backend===

- Express.js (Node.js framework) for anything that's more then a tiny api

- Nginx to serve static files and proxy requests to Express.js

- PostgreSQL for my database needs

- Redis for session/temp storage

===Dev===

- Vagrant for development environments

- Chef to help with provisioning vagrant machines and once I become more comfortable, to help with server setup :)


Backend:

Haskell, PostgreSQL, Elasticsearch (wrote my Haskell ES client for this reason)

Frontend:

Just vanilla PureScript + DOM APIs so far, exploring mating it to ReactJS. Some friends might join in on this grand experiment.

Deployment:

Still Fabric (Python) but I'd like to try http://joeyh.name/blog/entry/propellor/


Across a few apps:

Rails (mixed 2.3 and 3.1, depending on when the app started) via RailsLTS (commercial fork with security patches). I personally love working in Ruby versus every other language I've ever attempted programming in, and Rails really excels at the type of CRUD apps that a) undergird large and increasing portions of the global economy and b) pay my bills. I find I'm far and away more productive at it than any other programming stack I've ever used.

I usually proxy Nginx to Mongrel, though I've got one Nginx with Phusion Passenger. In the future, there will be more of the latter and less of the former.

I use MySQL as my primary database everywhere, mostly due to familiarity. No major complaints, though sentiment among my peers is more towards Postgres.

Substantially every app I write ends up integrating Memcached for ephemeral caching. It does exactly what it says on the tin. I use Redis for permanent storage of things where the "schema" changes frequently (most commonly: per-account or sub-account-object "settings" hashes, where I might accumulate another hash key or three with every new feature I ship) or where I have intermediate results that should be semi-permanent. (e.g. I have per-week and per-month historical summary statistics in Redis, particularly when they're created as a result of querying a slow external API, which describes most of my transaction processors.)

On the front-end side of things, I used to use Prototype but have jQuery for most new projects, purely because the JS community likes it and develops all manner of useful UI widgets that interoperate well. I'm likely going to start a project to justify learning Angular or Backbone at some point, since my existing ways of keeping the UI and app in sync leave more than a little to be desired.

What else? Oh, favorite APIs. Twilio, MailChimp/Sendgrid/Postmark (I do a lot with email), Stripe, and Pin Payments (nee Spreedly).

On the more devopsy side of things: Capistrano / Deprec for deploys and server management. I use Ubuntu VPSes at Rackspace for substantially everything. I'd love to figure out Puppet/Chef/etc for server management but haven't gotten there yet -- it is on the todo list for later in the year, perhaps. I use quiet a bit of server/process monitoring, including Scout, god, Dead Man's Snitch, and a bit of custom cronjobs plus Twilio. (Which should really be PagerDuty but for some reason I never bothered to get started with it.)

For backups, I've used Rackspace Cloud Files (like S3 but on the same bill as my servers) for most things. I currently use Tarsnap for sensitive data, and will probably gradually retrofit all of my backups onto it.


* Rails 3.2

* Postgres 9.2

* Redis for caching and background processes

* Nginx 1.6 (SPDY)

* Unicorn

* Capistrano for deploys

* Hosting with OVH

Looking at Monit for handling some processes - right now I'm launching a web browser that takes a screenshot of a web page using Selenium and then kills off the browser process when complete. This takes roughly 20 seconds on a quite powerful server.

It'd be a lot quicker to keep the browser running using a daemon to poll redis for jobs. Monit could kill the browser if it started leaking memory (which always seems to happen) and restart the daemon which would launch a new browser process.

Other stacks I'm interested in:

- Play/Scala and Atmosphere

- Node, Express and Mongo (MEAN)

- Go/Exlir and some front-end framework Angular/Ember/React


Frontend: Facebook React or Backbone, SCSS, plain old JS

Backend: Python+gevent or node.js+connect+gulp, nginx, lots of UNIX plumbing

Storage: redis, PostgreSQL, S3

Services: Linode or Heroku, CloudFront or CloudFlare, Stripe


Dart and AngularDart on the front end. Scala + Play! Framework in the middle tier. Scala + Akka on the back end. PostgreSQL. Jenkins for CI, Ansible for deployment.


Frontend: jQuery 2, Bootstrap 3, Highcharts, a ton of jQuery plugins, no JS MVC frameworks. Lots of AJAX around the place.

Backend: nginx, php5-fpm, MariaDB 10 on Amazon EC2 (2 instances, no caching). Homemade framework & API.

Development: OS X 10.9, Sublime Text 2, Transmit, git

I know I'm old fashioned, but it works quite well even with ~300 requests per second. Currently experimenting with node.js & Meteor.


ASP.Net mvc 4, in my opinion its the best platform at the moment. Its as easy to use as ruby on rails but the performance is much much better. C# is a great language that really hits the sweet spot in language features.

The downside is of course being tied to Microsoft but its not that big of a problem.


===Frontend===

- Sencha products (ExtJS 4.x, Touch)

- jQuery

===Backend===

- Java 7 - Jersey (for Restful Services)

- Sometimes springramework

===Deploy===

Glassfish or Tomcat fronted by Nginx and hosted on corporate servers OR aws stack OR VPS (linode/DO) depending on the project.

===Tool chain & Ops===

- Eclipse based Dev environment on Windows 7 Pro or Ubuntu

- Github, Fogbugz+Kiln or even SVN (depending on project) Trello

- Good attitude

- stackoverflow


On the front end Durandal.js Single Page App (similar to angular but MVVM). On the back end is a Rest web service written with ASP.NET Web.Api. Octopus Deploy for deployment.

It's also based on CQRS and DDD so data storage is aggregate based.


Here is my stack although I mainly use it for personal projects/ hackathons:

Node.JS using Express, and Jade+Stylus and when I need data visualization I throw up some D3.js


ruby/rails, ember, jquery, postgres, memcached


for work: asp.net mvc, jquery, bootstrap, wcf services, ms sql server, C#.

for play: play (scala), jquery, postgresql.


backend stack: macports, apache, mysql, php, silex, doctrine2 thinking about using: nginx, hhvm, postgres

frontend stack: vagrant, ubtuntu, node, npm, bower, gulp, angularjs, bootstrap, thinking about using: puppet

version control: git


You use the term 'front end' very differently to how I would. Some of things sound like middle tier.


I can agree that some of those items seem middle tier. Though the most tools to help with javascript development usually require node to be installed. Even though I won't deploy node to production. Some node modules want to be globally installed, which I'd rather avoid. Thus the use of vagrant/ubuntu to contain the global install.


Scala, Play, MySQL, jQuery


angularjs, go, nginx + ngx_postgres, postgres


node, ember, react


* Grails 2.3.7

* PostgreSQL 9.2

* Bootstrap 3

* IntelliJ 12.1 Ultimate


Backend:

============

- Django

- Scripting: bash, python

Database storage:

============

- Redis

- MySql

Webserver:

============

- Nginx

- gunicorn

Deployment:

============

- Fabric

- Also looking into saltstack for configuration

Services:

============

- Linode

- Digital ocean


dev:

- ASP.net MVC and Web Forms

- ServiceStack or Web API

- WCF

- NServicesBus

- Topshelf (for Windows Services development)

ops:

- TeamCity

- Octopus Deploy




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: