Hi, I'm Tony Arcieri. You may remember me from such software projects as Celluloid, Reia, and Cool.io...
head :no_content
redirect_to user_url(current_user)
"So your Rails server becomes an API, and your web site, like the iOS app, is the client. It's a clean separation of responsibilies, but given what Rails was designed to do, it's like having a horse rider climb on top of an elephant."
"The view in MVC is not just HTML and CSS; it's the presentation logic, and the presentation logic needs structure. With this need, client-side frameworks like Backbone, Spine, and Ember have come into the picture."
{ "post": { "id": 1, "title": "New post", "body": "A body!", "comments": [ 1, 2 ] }, "comments": [ { "id": 1, "body": "what a dumb post", "tags": [ 1, 2 ] }, { "id": 2, "body": "i liked it", "tags": [ 1, 3 ] }, ], "tags": [ { "id": 1, "name": "short" }, { "id": 2, "name": "whiny" }, { "id": 3, "name": "happy" } ] }
"When I think of Ruby and Rails' performance, I think of Ilya Grigorik."
"There is nothing about node that can't be reproduced in Ruby or Python (EventMachine and Twisted), but the fact that the framework forces you to think and use the right components in place (fully async & non-blocking) is exactly why it is currently grabbing the mindshare of the early adopters. Rubyists, Pythonistas, and others can ignore this trend at their own peril. Moving forward, end-to-end performance and scalability of any framework will only become more important."
"Ilya mentioned the framework/ecosystem that I now consider to be the threat to Rails: Node.js [...] The biggest thing I noticed was the difference in performance. It consumed less memory than Ruby, and it served more requests per second than Sinatra or even Rack."
# httperf --num-conns=50 --num-calls=1000 Ruby Version Throughput Latency ------------ ---------- ------- JRuby HEAD 5650 reqs/s (0.2 ms/req) Ruby 1.9.3 5263 reqs/s (0.2 ms/req) JRuby 1.6.7 4303 reqs/s (0.2 ms/req) rbx HEAD 2288 reqs/s (0.4 ms/req)
Web Server Throughput Latency ---------- ---------- ------- Goliath (0.9.4) 2058 reqs/s (0.5 ms/req) Thin (1.2.11) 7502 reqs/s (0.1 ms/req) Node.js (0.6.5) 11735 reqs/s (0.1 ms/req)
16:57 sobel: i can't find it now, but arstechnica benched all the popular dynamic languages 16:58 sobel: using C/C++ as the standard (1.0) they ranked other languages as multiples of C/C++ performance 16:58 sobel: java was a 2 16:58 sobel: twice as slow as C. and it was the winner, head and shoulders above the rest 16:58 sobel: i think Erlang placed somewhat favorably 16:59 sobel: python/perl were near the middle, at something like 25-35x slower than C 16:59 sobel: Ruby: a full 72x slower than C
Web Server Throughput Latency ---------- ---------- ------- Thin (1.2.11) 8747 reqs/s (7.3 ms/req) Node.js (0.6.5) 9023 reqs/s (7.1 ms/req)