2 ms·
> The real web development headache is just how many of these layers you need to understand: SQL, a server-side language, HTML, CSS, JavaScript, and multiple li
by Yoric 16y ago
> The real web development headache is just how many of these layers you need to understand: SQL, a server-side language, HTML, CSS, JavaScript, and multiple libraries designed to make server-side and client-side coding sane.
So I take it that you agree with me on the brokenness of web development, even if you consider that setting things up is not all that bad?
You mention the layers themselves as a headache, and I could certainly have added them to my rant - for many, they are a nightmare by themselves.
But let's just assume that we're all seasoned developers and that no language or sum of languages is too scary for us, as long as they interoperate correctly. We still have a nightmare, here, because these languages simply do not cooperate. Just getting them to work together takes considerable amounts of glue.
And please tell me if I missed something, but last time I checked, RoR + Heroku really didn't solve much of the glue nightmare.
- bricestacey 16y agoThere is no glue nightmare. You get a full stack each time you type `rails new myproject` that works seamlessly. You can code right away and put off tweaking your database and web server until later. Also, if you add additional libraries there is no dependency hell because RVM and Bundler are each a work of art.
- Yoric 16y agoLet's stick to the vocabulary I imposed with my rant :) That's the _dependency nightmare_ you're mentioning. I agree that RoR solves a non-negligible chunk of it. But I have never seen a "rails new foobar" configure my SELinux or introduce any sane security policy in the database, for instance. So, the nightmare is still here. The _glue nightmare_ appears when you're trying to pass non-trivial data from the client to the server, or worse, from the server to the client. Or when you're trying to validate the heck out of input data to ensure that there is no CouchDB injection or SQL injection or anything such.
- ekidd 16y agoSo I take it that you agree with me on the brokenness of web development, even if you consider that setting things up is not all that bad? I completely agree that web development is a mess. I just don't think that the first major problem described in your rant (choosing a programming language, web server, database, server-side framework, and client-side framework) is actually a major problem these days: Just pick any modern stack, and use the defaults. And please tell me if I missed something, but last time I checked, RoR + Heroku really didn't solve much of the glue nightmare. Rails provides excellent glue between the database and server-side code, at least if you like the sort of APIs provided by ActiveModel. (I do, some people don't.) Rails provides less glue between the server-side code and the client-side code, at least out of the box. Basically, it pre-configures Prototype, and makes it easy to do basic AJAX stuff via view helpers and unobtrusive JavaScript. If you prefer jQuery, you can switch over in about 30 seconds using jquery-rails. Rails does not provide a default client-side toolkit for highly interactive JavaScript applications, such as those typically built using Backbone.js or SproutCore.
- Yoric 16y ago> I completely agree that web development is a mess. I just don't think that the first major problem described in your rant (choosing a programming language, web server, database, server-side framework, and client-side framework) is actually a major problem these days: Just pick any modern stack, and use the defaults. Actually, the first problem mentioned was not choosing, it was _dependencies_ and then _documentation_.