News for hackers. Stuff that matters.
Re:Web Applications Should Be Compiled by mdasen on Tuesday June 02, 2009 @09:37AM (#637784)
The reason why people choose to go with languages like Ruby is because the trade-off on speed is worth it.

Web front-ends scale very easily. You can just add more web heads and load balance between them. Databases are much harder to scale since you need to keep data consistency and can't just throw more boxes at the problem.

So, you don't need to be computationally efficient. However, you do need to develop fast. You need to be able to create features before your competition. You need to be able to make your system more reliable and bug-free than your competition. And that's where Ruby (and similar languages) helps you.

Sure, you and Linus have a point that selection of language can keep out the riff-raff (Linus Torvalds having a huge rant against C++ simply because of the programming community), but it also means that you're missing out on the good parts of the community. Ruby programmers tend to put a lot of thought into user experience. While you've ranted against testing, I don't think any IT manager would agree with you there. Testing substantially improves one's ability to create new features because you can easily spot anywhere you've broken something. And that leads to better quality applications too.

There's a difference between speed and scaling and if something scales fine, that's ok. Look at it this way, array indexing in a slower way to go through an array in C than incrementing a pointer. And if you had a lot of code you could go through and change all instances. However, it wouldn't be worth your time. Such an improvement wouldn't net you any real benefit while you'd be neglecting improving your product.

Your product is what matters.

Re:Web Applications Should Be Compiled by baguasquirrel on Tuesday June 02, 2009 @12:29PM (#638063)
I think your point is exacerbated by the fact that it's hard to get web UIs "right". I was critical of languages like python and ruby until I had to do the frontend for some company code. Box looks like it needs to be shifted a few pixels right? Modify code, compile, check. Logo looks better with an offset? Modify code, compile, check. Writing in a scripting language makes it just Modify, check.

You just can't do that in compiled languages, and the compiled language of choice for the web-- Java --isn't known for blazing compilation speed. You'd probably also have to jar it up and copy the damn thing over, whereas psps could be modified in-place. I think this is something that compiled folks like me simply failed to grasp: all the things about scripting languages that make them orders of magnitude faster for developing, especially for the web.

Re:Web Applications Should Be Compiled by ontilt on Tuesday June 02, 2009 @04:21PM (#638554)
I've done a lot of webapp development in both Java and Rails. I would agree that the iteration cycle is shorter in Rails, but it's not as bad as your description makes it sound. If you have to redeploy a jar file as part of your development process, then that's a problem with your process, not your language.

When I do Java webapp development in Eclipse, it compiles and hot-swaps my code in the background without requiring any restart or redeployments. Works pretty well.

I do have to restart occasionally because the hot-swapping has limitations, so that does slow things down a bit, but when you consider the time saved by having good compiler integration, then I don't think there's a big difference in productivity.

Re:Web Applications Should Be Compiled by baguasquirrel on Tuesday June 02, 2009 @06:24PM (#638775)
Good point. Thanks for the tip! :)

That said, I don't need no stinkin IDE integration for .psps. Being able to log in remotely and edit something with vi is kind of handy.