Then decided to port one of the PHP app to Ruby. Not so much with the goal to port for practical use, how to obtain experience. First started doing as a CGI app, debugging in the console. Then I wanted to see in the browser, I saw, I wanted to test the speed — I was horrified. Decided to look for options. Here's what I found:
1. TCPServer — somehow does not inspire
2. Various web server modules for Apache/nginx is understood that no particular difference
3. Rack — for him and there is no difference :) as I understand the analogue of WSGI in Python
4. Sinatra — like all simply and immediately tell what is missing, like WebOb first sight or like a naked PHP :) Written and immediately realized what is missing — working with forms and bind them to the database
5. RoR — as-all strongly encapsulated, I think for the first little fit, it's like starting to learn PHP with symfony or Yii. Like going, what's under the hood going on...
Here I stand at a crossroads of how to proceed. 1 and 2, there is no — raw HTTP processing is not desirable. A toss-up between Rack and Synatra. Or all Rails? :-/ What's more will learn to solve a variety of real problems, but at the same time without creating artificial? Maybe even a option?