I made Phil Ripperger stand in line for an Xbox 360

I get blamed for lots of things. But this is the first time I’ve been blamed for making someone stand in line for an Xbox 360. Phil has a lengthy post including pictures. I love his conclusion: “Scoble, the XBox 360 is going to destroy the Playstation 3.”

But then his note turns sour. He says he’s walking away from Microsoft’s Web development tools. He’s going to Ruby on Rails and won’t be back until we get the magic back. Well, that’s what we’re working hard on and why we’re doing the Mix06 event.

One question, though. Have you checked out the latest ASP.NET and Visual Studio 2005? If so, what about it turns you to Rails?

172 thoughts on “I made Phil Ripperger stand in line for an Xbox 360

  1. OK, what made me go to Rails over Dot-Net (I am not Phil, BTW)…

    My computer industry (Software QA Manager (WHQL, WiFi, CCX, etc) job went to India, and I lost my MSDN subscription when I lost my job. So I looked for “free” tools to feed my family – and Dot-Net just didn’t qualify.

    That’s what GOT me to Rails – what’s kept me there now that I’ve started my own company – a lot of things:

    – RAPID development of the Framework – not a 3-4 year cycle, but 3-4 months.

    – Something new, and unique, that has an avid fan base, not just a large user base.

    – Since I have the source, I can work around almost anything that is just broken or (more likely) I just don’t understand how to use (yes, Dot Net is *much* better documented).

    – It’s a low resource hog. I can develop on it, and deploy on it on a rather cheap piece of hardware.

    I’ve developed on MS products for 20 years – but now I can’t afford to, and maybe that isn’t the biggest reason I am on Rails – but it *is* the reason I won’t even be looking at Dot Net anytime soon.

    Rob

    Like

  2. OK, what made me go to Rails over Dot-Net (I am not Phil, BTW)…

    My computer industry (Software QA Manager (WHQL, WiFi, CCX, etc) job went to India, and I lost my MSDN subscription when I lost my job. So I looked for “free” tools to feed my family – and Dot-Net just didn’t qualify.

    That’s what GOT me to Rails – what’s kept me there now that I’ve started my own company – a lot of things:

    – RAPID development of the Framework – not a 3-4 year cycle, but 3-4 months.

    – Something new, and unique, that has an avid fan base, not just a large user base.

    – Since I have the source, I can work around almost anything that is just broken or (more likely) I just don’t understand how to use (yes, Dot Net is *much* better documented).

    – It’s a low resource hog. I can develop on it, and deploy on it on a rather cheap piece of hardware.

    I’ve developed on MS products for 20 years – but now I can’t afford to, and maybe that isn’t the biggest reason I am on Rails – but it *is* the reason I won’t even be looking at Dot Net anytime soon.

    Rob

    Like

  3. You should seriously look hard at .NET 2.0, ASP.NET 2.0 and Visual Web Developer. Admittedly, I have only dabbled a little with RoR (so won’t claim to be an expert), but frankly it didn’t impress me compared with what you get with the 2.0 release of .NET.

    I can build an entire ASP.NET 2.0 web application with data, consistent master-page UI, forms-login security membership, role management for secure capabilities, menu navigation, personalization, and drag/drop portal web-parts in under 90 minutes building everything from scratch.

    You can watch this web-cast to literally watch someone do this in real-time as you watch (the last 90 minutes or so is a straight end-to-end demo that is mind-blowing): http://www.microsoft.com/seminar/shared/asp/view.asp?url=/seminar/en/20050510_Intro/manifest.xml&rate=2%20

    I use VS at work, and sympothize with the cost of it (although I do think it is worth the price). What is cool about the 2005 release, though, is that you can download the express editions of VS now for free. Visual Web Developer includes C# and VB support, a pretty good WYSIWYG designer (it doesn’t muck with your html anymore like past VS releases did), an awesome debugger (eclipse doesn’t come close), built-in web-server (no IIS required anymore), and optionally SQL Express (a free database that supports standard SQL support+sprocs). You can download it for free here: http://www.asp.net There are still some advanced features of VS 2005 that I can’t do without, but 90%+ of what I do every day is in the free edition.

    It is really worth checking it out. I am WAY more productive than I ever have been, and can really pound out great apps quickly now. What used to take me weeks with Java (which I used to use up until 2 years ago) and even with past releases of .NET now takes me hours or days. I wouldn’t have believed it if someone else had told me — but playing around with this stuff really is frankly amazing.

    Like

  4. You should seriously look hard at .NET 2.0, ASP.NET 2.0 and Visual Web Developer. Admittedly, I have only dabbled a little with RoR (so won’t claim to be an expert), but frankly it didn’t impress me compared with what you get with the 2.0 release of .NET.

    I can build an entire ASP.NET 2.0 web application with data, consistent master-page UI, forms-login security membership, role management for secure capabilities, menu navigation, personalization, and drag/drop portal web-parts in under 90 minutes building everything from scratch.

    You can watch this web-cast to literally watch someone do this in real-time as you watch (the last 90 minutes or so is a straight end-to-end demo that is mind-blowing): http://www.microsoft.com/seminar/shared/asp/view.asp?url=/seminar/en/20050510_Intro/manifest.xml&rate=2%20

    I use VS at work, and sympothize with the cost of it (although I do think it is worth the price). What is cool about the 2005 release, though, is that you can download the express editions of VS now for free. Visual Web Developer includes C# and VB support, a pretty good WYSIWYG designer (it doesn’t muck with your html anymore like past VS releases did), an awesome debugger (eclipse doesn’t come close), built-in web-server (no IIS required anymore), and optionally SQL Express (a free database that supports standard SQL support+sprocs). You can download it for free here: http://www.asp.net There are still some advanced features of VS 2005 that I can’t do without, but 90%+ of what I do every day is in the free edition.

    It is really worth checking it out. I am WAY more productive than I ever have been, and can really pound out great apps quickly now. What used to take me weeks with Java (which I used to use up until 2 years ago) and even with past releases of .NET now takes me hours or days. I wouldn’t have believed it if someone else had told me — but playing around with this stuff really is frankly amazing.

    Like

  5. Well, I appreciate that ASP.Net may be great – and I am glad that during the last 90 minutes of the demo they blew your socks off. I trust you have seen the Rails demo where they build a complete application in a fraction of that time?

    In any case, the barrier to entry for ASP is just too high for me, and MS needs to figure out how to manage their development tools licensing. I think they need to find a way to make them free, or we’ll see a lot more Ruby on Rails (and similar) products start eroding serious market share.

    Rob

    Like

  6. Well, I appreciate that ASP.Net may be great – and I am glad that during the last 90 minutes of the demo they blew your socks off. I trust you have seen the Rails demo where they build a complete application in a fraction of that time?

    In any case, the barrier to entry for ASP is just too high for me, and MS needs to figure out how to manage their development tools licensing. I think they need to find a way to make them free, or we’ll see a lot more Ruby on Rails (and similar) products start eroding serious market share.

    Rob

    Like

  7. Stefan: to tell you the truth, I’d be playing those too. It’s a $405 arcade game. But the graphics are unbelieveable.

    Like

  8. Stefan: to tell you the truth, I’d be playing those too. It’s a $405 arcade game. But the graphics are unbelieveable.

    Like

  9. After whoring myself out to the graphics card industry for around 3 or 4 years when I used to be a pc gamer, i’ve many amny a time come to the conclusion that graphics aren’t anything.

    i find myself playing more flash games than anything. e3 should be fun, hope microsoft puts a nice show, personally i’m going to be rooting for nintendo, but to each his own.

    enjoy the xbox 360, i know how hard it is for people to find it!

    Like

  10. After whoring myself out to the graphics card industry for around 3 or 4 years when I used to be a pc gamer, i’ve many amny a time come to the conclusion that graphics aren’t anything.

    i find myself playing more flash games than anything. e3 should be fun, hope microsoft puts a nice show, personally i’m going to be rooting for nintendo, but to each his own.

    enjoy the xbox 360, i know how hard it is for people to find it!

    Like

  11. I don’t know about Stefan, but I do know a LOT of people that hang out on Pogo. Just not into it myself…

    Like

  12. Rob, my point was that you get a full development tool with intellisense/debugging support, WYSIWYG page designer and html editor, built-in web-server, sql express database (w/ database development support in the IDE), and more for free with the express editions of VS.

    As long as you have a copy of Windows client (even home works with this) you have everything you need to build an app. I haven’t seen a tool yet that compares in terms of functionality with that at a FREE price-point (Eclipse is free but doesn’t have nearly as much functionality for web development).

    Hosting for .NET used to be expensive, but can now be gotten for $5 (or even less) a month.

    It sounds like you are happy with RoR, and that is great (I’m not a religious bigot). But if you are interested in trying new things out, I do think .NET 2.0 is worth playing with too (in the same way I like to dabble with RoR and PHP). I think you will be pleasantly surprised. I ceretainly was (and no, I’m not usually a M$ fan).

    Like

  13. Rob, my point was that you get a full development tool with intellisense/debugging support, WYSIWYG page designer and html editor, built-in web-server, sql express database (w/ database development support in the IDE), and more for free with the express editions of VS.

    As long as you have a copy of Windows client (even home works with this) you have everything you need to build an app. I haven’t seen a tool yet that compares in terms of functionality with that at a FREE price-point (Eclipse is free but doesn’t have nearly as much functionality for web development).

    Hosting for .NET used to be expensive, but can now be gotten for $5 (or even less) a month.

    It sounds like you are happy with RoR, and that is great (I’m not a religious bigot). But if you are interested in trying new things out, I do think .NET 2.0 is worth playing with too (in the same way I like to dabble with RoR and PHP). I think you will be pleasantly surprised. I ceretainly was (and no, I’m not usually a M$ fan).

    Like

  14. kr8tr,

    I agree, check out Web Developer Express. I was disappointed when I viewed the Ruby screen-casts. Lots of command-line stuff that I don’t even think about anymore.

    Anyway, in response to this post, I’ve written my own post which you can see in my comment URL. It would be tough for me to go back to this development model. .Net is just WAY too productive and powerful.

    Like

  15. kr8tr,

    I agree, check out Web Developer Express. I was disappointed when I viewed the Ruby screen-casts. Lots of command-line stuff that I don’t even think about anymore.

    Anyway, in response to this post, I’ve written my own post which you can see in my comment URL. It would be tough for me to go back to this development model. .Net is just WAY too productive and powerful.

    Like

  16. Scoble,

    Microsoft is definitely working hard to win back developers that feel that they have been left behind by the expense of your tools.

    The Express tools are a much needed breath of fresh air that shows Microsoft’s commitment to the development community.

    I was excited when I first heard about the Mix06 event. I checked out the site and eventually closed it with “Oh well, that’s nice” as my only thought.

    Why? At $995.00, it’s the most expensive “72 hour conversation” that I can think of.

    I’ll admit that as far as conferences go it might not be terribly expensive but at 1000 bucks, plus airfare, plus “discounted” hotel rates, the conference is now easily out of reach for developers like Rob (and probably a lot of developers that are lured by Ruby on Rails).

    I might be wrong, but I would think that a large part of the developers that attend these things are already working with the technology and have their businesses write it off as an educational expense. So in essence you’ve got ASP.NET developers coming to a conference about Microsoft technologies. You’re preaching to the choir.

    But what Microsoft needs to do is to get people like Rob (or other developers interested in Ruby on Rails) to come to these things; to show ’em what you got. Show them why you’re better.

    Somehow I don’t think that they’ll spend ~1700+ (I’m couting the conference cost, airfare, hotel, etc.) just to see this.

    As the original post by Phil said, “Microsoft needs to capture some of the 360 magic and use it on their web development technology or they will continue to lose developers like me.”

    This isn’t a bad idea. Here’s a suggestion. Lower the price of the conference and take a hit financially like you’ve done with the Xbox 360 knowing that it’ll pay off in the end.

    I remember reading that Microsoft would do whatever it would take to make the Xbox succeed and that Microsoft had the capital in reserve to make that happen.

    Let’s see if Microsoft is willing to do that for web developers.

    Like

  17. Scoble,

    Microsoft is definitely working hard to win back developers that feel that they have been left behind by the expense of your tools.

    The Express tools are a much needed breath of fresh air that shows Microsoft’s commitment to the development community.

    I was excited when I first heard about the Mix06 event. I checked out the site and eventually closed it with “Oh well, that’s nice” as my only thought.

    Why? At $995.00, it’s the most expensive “72 hour conversation” that I can think of.

    I’ll admit that as far as conferences go it might not be terribly expensive but at 1000 bucks, plus airfare, plus “discounted” hotel rates, the conference is now easily out of reach for developers like Rob (and probably a lot of developers that are lured by Ruby on Rails).

    I might be wrong, but I would think that a large part of the developers that attend these things are already working with the technology and have their businesses write it off as an educational expense. So in essence you’ve got ASP.NET developers coming to a conference about Microsoft technologies. You’re preaching to the choir.

    But what Microsoft needs to do is to get people like Rob (or other developers interested in Ruby on Rails) to come to these things; to show ’em what you got. Show them why you’re better.

    Somehow I don’t think that they’ll spend ~1700+ (I’m couting the conference cost, airfare, hotel, etc.) just to see this.

    As the original post by Phil said, “Microsoft needs to capture some of the 360 magic and use it on their web development technology or they will continue to lose developers like me.”

    This isn’t a bad idea. Here’s a suggestion. Lower the price of the conference and take a hit financially like you’ve done with the Xbox 360 knowing that it’ll pay off in the end.

    I remember reading that Microsoft would do whatever it would take to make the Xbox succeed and that Microsoft had the capital in reserve to make that happen.

    Let’s see if Microsoft is willing to do that for web developers.

    Like

  18. First I’ll admit that I’m not up to speed with ASP.NET as delivered by VS 2005 – that’s scheduled as a Christmas holiday exercise (sorry, kids – Daddy’s got to play).

    But I’m sceptical that it’s going to offer anything like the experience – the sheer excitement – that RoR does with just a command line and a text editor.

    I’ll freely admit to being a Ruby fan. I’m a VB – since v1.0 – and C# fan too, don’t get me wrong. Ignoring the minor (heh) difference that one’s an interpreted scripting language and the others are industrial-strength, enterprise-ready and all the other stuff, I think the big difference is the .NET family are impressive whereas Ruby (on its own, never mind what happens when Rails comes into the picture) is… well, it’s gorgeous.

    There’s been a lot of talk in the scripting world about domain-specific languages and the desirability or otherwise thereof. Rails actually goes a long way towards delivering such a beast: there are valuable features that can be delivered declaratively (and simply). VS.NET gets this, I think, although in a syntactically less straightforward, flexible or elegant way, with the introduction of attributes.

    I may be surprised – I hope so, I like being surprised – but I expect to find that the latest ASP.NET is a great tool that I may one day use for a web site that needs to scale big with industrial strength. But I also expect that it’ll take a lot longer to build anything really useful.

    Whatever, it’s all fun.

    Like

  19. First I’ll admit that I’m not up to speed with ASP.NET as delivered by VS 2005 – that’s scheduled as a Christmas holiday exercise (sorry, kids – Daddy’s got to play).

    But I’m sceptical that it’s going to offer anything like the experience – the sheer excitement – that RoR does with just a command line and a text editor.

    I’ll freely admit to being a Ruby fan. I’m a VB – since v1.0 – and C# fan too, don’t get me wrong. Ignoring the minor (heh) difference that one’s an interpreted scripting language and the others are industrial-strength, enterprise-ready and all the other stuff, I think the big difference is the .NET family are impressive whereas Ruby (on its own, never mind what happens when Rails comes into the picture) is… well, it’s gorgeous.

    There’s been a lot of talk in the scripting world about domain-specific languages and the desirability or otherwise thereof. Rails actually goes a long way towards delivering such a beast: there are valuable features that can be delivered declaratively (and simply). VS.NET gets this, I think, although in a syntactically less straightforward, flexible or elegant way, with the introduction of attributes.

    I may be surprised – I hope so, I like being surprised – but I expect to find that the latest ASP.NET is a great tool that I may one day use for a web site that needs to scale big with industrial strength. But I also expect that it’ll take a lot longer to build anything really useful.

    Whatever, it’s all fun.

    Like

  20. Stefan: Microsoft typically has a pretty lame booth at E3. The three main hardware booths (Microsoft, Sony, Nintendo) are never the best place to begin with, but Microsoft is the weakest of the three. The worst was probably E3 2004, where they literally had only a small rectangular space with a bunch of third party games in it and NO HALO 2, which just floored me since it was coming out later that year and just the year before they showed the famous Halo 2 demo which didn’t quite make it into the final game.

    Sorry to go off topic like that 😉

    Like

  21. Stefan: Microsoft typically has a pretty lame booth at E3. The three main hardware booths (Microsoft, Sony, Nintendo) are never the best place to begin with, but Microsoft is the weakest of the three. The worst was probably E3 2004, where they literally had only a small rectangular space with a bunch of third party games in it and NO HALO 2, which just floored me since it was coming out later that year and just the year before they showed the famous Halo 2 demo which didn’t quite make it into the final game.

    Sorry to go off topic like that 😉

    Like

  22. Argh, sorry to double post. Just thought I would put a little disclaimer that my thoughts on the Xbox booth are not indicitive of my thoughts on Xbox or its games, just that Microsoft has trouble “wowing” me at E3.

    Like

  23. Argh, sorry to double post. Just thought I would put a little disclaimer that my thoughts on the Xbox booth are not indicitive of my thoughts on Xbox or its games, just that Microsoft has trouble “wowing” me at E3.

    Like

  24. Rails runs on linux/apache.
    The code rails generates looks better than most of the code I write.
    A lot of people have been burned by the past code generation facilities of the VS products, particularly in the web tier.
    Ruby, the language, has some really interesting properties that make it interesting to work with.
    If the geniuses at Microsoft were allowed to develop what they want, instead of being driven by “not invented here” madness, we probably would see things like Ruby and standard Java running on the CLR. Instead, driven by competiveness, they continue to support fracturing the language landscape. I think Microsoft could develop a faster Java Virtual Machine for Windows than Sun can, but they just won’t.

    Like

  25. Rails runs on linux/apache.
    The code rails generates looks better than most of the code I write.
    A lot of people have been burned by the past code generation facilities of the VS products, particularly in the web tier.
    Ruby, the language, has some really interesting properties that make it interesting to work with.
    If the geniuses at Microsoft were allowed to develop what they want, instead of being driven by “not invented here” madness, we probably would see things like Ruby and standard Java running on the CLR. Instead, driven by competiveness, they continue to support fracturing the language landscape. I think Microsoft could develop a faster Java Virtual Machine for Windows than Sun can, but they just won’t.

    Like

  26. Here’s what’s great about rails:

    I’m not a programmer. I wrote Quimble.com quickly and elegantly. I can read the code as if it were English and it all makes sense.

    I was able to use my Macintosh (sorry if that’s a dirty word to some) to develop and test before uploading to my server.

    It’s REALLY fast and it runs on LINUX! I have dealt with running a Win2k3 server, it doesn’t compare with the speed, flexibility, and security of a linux server. And – I hate command lines, but using windows is harder.

    That’s my little rant. I have used aspx in the past, Ruby on Rails is just a tighter, easier, quicker package. Hands down.

    Like

  27. Here’s what’s great about rails:

    I’m not a programmer. I wrote Quimble.com quickly and elegantly. I can read the code as if it were English and it all makes sense.

    I was able to use my Macintosh (sorry if that’s a dirty word to some) to develop and test before uploading to my server.

    It’s REALLY fast and it runs on LINUX! I have dealt with running a Win2k3 server, it doesn’t compare with the speed, flexibility, and security of a linux server. And – I hate command lines, but using windows is harder.

    That’s my little rant. I have used aspx in the past, Ruby on Rails is just a tighter, easier, quicker package. Hands down.

    Like

  28. Why do I use Rails instead of VS.net 2005?

    I was burned by the 2003 version.

    See, I come at this from a designer’s perspective. In the summer of 2003, I was working on an internal application to display products with a web store, and handle inventory and orders in the backend.

    It was supposed to be really simple, more about the site’s design than anything else. But I was sucked into all the hype surrounding .NET and the excellent Microsoft Patterns & Practices books (which I love the free downloads for, btw).

    To make the long story shorter, in the end, after learning C#, winforms, asp.net from 2002, and then 1.1 in 2003, I finally realised that ASP.NET 1.1 COULDN’T MAKE VALID XHTML!

    Which symbolizes *all* the problems I was having in .NET up until then.

    See, the conventions, the assumptions in ASP.NET about my development needs were incorrect and Rails fits this sort of application *much* better.

    .NET assumes you don’t care about the XHTML or CSS or JS or anything, but just want drag-and-drop form creation tools. It assumes you want – you need – Visual Studio for the Internet.

    But I don’t. I just want a web application I can style myself, that’s simple and does just what I want.

    So I have to laugh when people need a huge IDE for web development. I mean, part of why the web succeeded so well is *you could write it in Notepad!*

    Rails shines with the proper tools, like TextMate from http://www.macromates.com/ (Mac OS X only, sadly) but when you can just use Notepad to get the job done, and it fits with other web designer tools like DreamWeaver for XHTML/JS and StyleMaster for CSS, why bother looking into anything else?

    Ruby is simple. Rails is simple. ASP.NET 2.0 needs VS.

    Like

  29. Why do I use Rails instead of VS.net 2005?

    I was burned by the 2003 version.

    See, I come at this from a designer’s perspective. In the summer of 2003, I was working on an internal application to display products with a web store, and handle inventory and orders in the backend.

    It was supposed to be really simple, more about the site’s design than anything else. But I was sucked into all the hype surrounding .NET and the excellent Microsoft Patterns & Practices books (which I love the free downloads for, btw).

    To make the long story shorter, in the end, after learning C#, winforms, asp.net from 2002, and then 1.1 in 2003, I finally realised that ASP.NET 1.1 COULDN’T MAKE VALID XHTML!

    Which symbolizes *all* the problems I was having in .NET up until then.

    See, the conventions, the assumptions in ASP.NET about my development needs were incorrect and Rails fits this sort of application *much* better.

    .NET assumes you don’t care about the XHTML or CSS or JS or anything, but just want drag-and-drop form creation tools. It assumes you want – you need – Visual Studio for the Internet.

    But I don’t. I just want a web application I can style myself, that’s simple and does just what I want.

    So I have to laugh when people need a huge IDE for web development. I mean, part of why the web succeeded so well is *you could write it in Notepad!*

    Rails shines with the proper tools, like TextMate from http://www.macromates.com/ (Mac OS X only, sadly) but when you can just use Notepad to get the job done, and it fits with other web designer tools like DreamWeaver for XHTML/JS and StyleMaster for CSS, why bother looking into anything else?

    Ruby is simple. Rails is simple. ASP.NET 2.0 needs VS.

    Like

  30. Scoble,

    I have looked at the latest VS 2005 and ASP.NET 2.0. I admit they are an improvment over VS 2003 and ASP.NET 1.1. A big improvment in fact. But to me, MS web development technology seems to be moving in the direction of including every possible feature, including the kitchen sink.

    That’s not what I need when it comes to web application development. Sure, ASP.NET 2.0 and SharePoint are cool technologies, but they are so complicated that companies get bogged down in the install process, not to mention deployment and security (I mention SharePoint because every web development technology at MS seems to be going that way). Throw in SQL Server and you just added another layer of complexity. In my last job, I spent most of my time trying to get web apps installed correctly and worrying about security configurations, software installations, and other deployment issues. What I wasn’t doing very much was the actual development work, which is what matters when it comes to new features and giving the customer what they want.

    I just got fed up. Rails offers me a simple framework that is thoughtfully designed and compels me to write well-structured code. And I can do so much more with less work. The Rails demo videos are only a glimpse of what is possible. Once you really know the language and framework, development is so much more fun and productive.

    So that’s the reason I switched. Rob has some good points, as do the others who are using Rails. But to me, it’s not a Linux vs Windows debate (I have developed Rails apps on Windows too, but prefer to use OS X for tools like TextMate). It comes down to simplicity and elegance. Rails is simple and elegant, and it doesn’t come with the kitchen sink, which leaves more room for me to work.

    Like

  31. Scoble,

    I have looked at the latest VS 2005 and ASP.NET 2.0. I admit they are an improvment over VS 2003 and ASP.NET 1.1. A big improvment in fact. But to me, MS web development technology seems to be moving in the direction of including every possible feature, including the kitchen sink.

    That’s not what I need when it comes to web application development. Sure, ASP.NET 2.0 and SharePoint are cool technologies, but they are so complicated that companies get bogged down in the install process, not to mention deployment and security (I mention SharePoint because every web development technology at MS seems to be going that way). Throw in SQL Server and you just added another layer of complexity. In my last job, I spent most of my time trying to get web apps installed correctly and worrying about security configurations, software installations, and other deployment issues. What I wasn’t doing very much was the actual development work, which is what matters when it comes to new features and giving the customer what they want.

    I just got fed up. Rails offers me a simple framework that is thoughtfully designed and compels me to write well-structured code. And I can do so much more with less work. The Rails demo videos are only a glimpse of what is possible. Once you really know the language and framework, development is so much more fun and productive.

    So that’s the reason I switched. Rob has some good points, as do the others who are using Rails. But to me, it’s not a Linux vs Windows debate (I have developed Rails apps on Windows too, but prefer to use OS X for tools like TextMate). It comes down to simplicity and elegance. Rails is simple and elegant, and it doesn’t come with the kitchen sink, which leaves more room for me to work.

    Like

  32. As someone who has built a career off of using MS tools to deliver solutions to customers I can tell you what’s made me look at Rails and what’s making me use Rails instead of ASP.NET for my little home applications.

    Rails is FAR easier than ASP.NET.

    (note the period)

    ASP.NET 2.0 is getting worse. Now you’ve got generics thrown into the mix, which is supposed to make some things easier. But most people I know don’t understand them, heck I’m not even sure I can correctly explain the benefits of generics.

    Not to mention all of the Rails docs and tutorials go about building web sites the same way. If you look at the MS tutorials you’re told one way to build a web site, if you look at the blogs they all tell you that the MS way is wrong and you should build big tiered applications, even if all you want is a bookmark storage application like delicious.

    I could care less about the platform, all the OS is to me is a way to load and display data.

    Rails makes the simple things even easier, but the complicated things harder. ASP.NET makes the simple things harder than they need to be, and the complicated things possible.

    Like

  33. As someone who has built a career off of using MS tools to deliver solutions to customers I can tell you what’s made me look at Rails and what’s making me use Rails instead of ASP.NET for my little home applications.

    Rails is FAR easier than ASP.NET.

    (note the period)

    ASP.NET 2.0 is getting worse. Now you’ve got generics thrown into the mix, which is supposed to make some things easier. But most people I know don’t understand them, heck I’m not even sure I can correctly explain the benefits of generics.

    Not to mention all of the Rails docs and tutorials go about building web sites the same way. If you look at the MS tutorials you’re told one way to build a web site, if you look at the blogs they all tell you that the MS way is wrong and you should build big tiered applications, even if all you want is a bookmark storage application like delicious.

    I could care less about the platform, all the OS is to me is a way to load and display data.

    Rails makes the simple things even easier, but the complicated things harder. ASP.NET makes the simple things harder than they need to be, and the complicated things possible.

    Like

  34. “Rob, my point was that you get a full development tool with intellisense/debugging support, WYSIWYG page designer and html editor, built-in web-server, sql express database (w/ database development support in the IDE), and more for free with the express editions of VS.”

    Dammit, I wish people would quit spreading this un-truth. VS Express is not FREE FOREVER. It’s FREE until Nov of next year. After that, it’s reasonably priced. But right now it’s only free for a limited time.

    Like

  35. “Rob, my point was that you get a full development tool with intellisense/debugging support, WYSIWYG page designer and html editor, built-in web-server, sql express database (w/ database development support in the IDE), and more for free with the express editions of VS.”

    Dammit, I wish people would quit spreading this un-truth. VS Express is not FREE FOREVER. It’s FREE until Nov of next year. After that, it’s reasonably priced. But right now it’s only free for a limited time.

    Like

  36. Sheesh, I need to make fewer comments. 😉

    “If the geniuses at Microsoft were allowed to develop what they want, instead of being driven by “not invented here” madness, we probably would see things like Ruby and standard Java running on the CLR. Instead, driven by competiveness, they continue to support fracturing the language landscape. I think Microsoft could develop a faster Java Virtual Machine for Windows than Sun can, but they just won’t.”

    Exactly, Scoble how about a C9 interview with the IronPython creator? What’s happening with dynamic languages in the CLR?

    Like

  37. Sheesh, I need to make fewer comments. 😉

    “If the geniuses at Microsoft were allowed to develop what they want, instead of being driven by “not invented here” madness, we probably would see things like Ruby and standard Java running on the CLR. Instead, driven by competiveness, they continue to support fracturing the language landscape. I think Microsoft could develop a faster Java Virtual Machine for Windows than Sun can, but they just won’t.”

    Exactly, Scoble how about a C9 interview with the IronPython creator? What’s happening with dynamic languages in the CLR?

    Like

  38. The key problems with .net is you need to spend money for it, then you need to spend money on deployment licenses for the windows machines you have to use to deploy the stuff. Remote management of windows is sucky compared to unix. Open source frameworks are portable and provide choices for deployment that M$ just isn’t providing.

    Plus, how can I take M$’s web offerings seriously when they can’t ship a decent browser?

    Like

  39. The key problems with .net is you need to spend money for it, then you need to spend money on deployment licenses for the windows machines you have to use to deploy the stuff. Remote management of windows is sucky compared to unix. Open source frameworks are portable and provide choices for deployment that M$ just isn’t providing.

    Plus, how can I take M$’s web offerings seriously when they can’t ship a decent browser?

    Like

  40. Scott:

    >>> Dammit, I wish people would quit spreading this un-truth. VS Express is not FREE FOREVER. It’s FREE until Nov of next year. After that, it’s reasonably priced. But right now it’s only free for a limited time.

    That is simply not true. If you download it over the next 12 months it *is* FREE FOREVER.

    What they have said is that new downloads of it might (or might not) cost money in 12 months from now (I think they are scared of tanking their VS revenue if everyone decides they can make to with the free version). But anyone who downloads it over the next year is able to use and build apps with the express editions FOREVER.

    Like

  41. Scott:

    >>> Dammit, I wish people would quit spreading this un-truth. VS Express is not FREE FOREVER. It’s FREE until Nov of next year. After that, it’s reasonably priced. But right now it’s only free for a limited time.

    That is simply not true. If you download it over the next 12 months it *is* FREE FOREVER.

    What they have said is that new downloads of it might (or might not) cost money in 12 months from now (I think they are scared of tanking their VS revenue if everyone decides they can make to with the free version). But anyone who downloads it over the next year is able to use and build apps with the express editions FOREVER.

    Like

  42. Scott, you can’t honestly defend this statement:

    >>> ASP.NET 2.0 is getting worse. Now you’ve got generics thrown into the mix, which is supposed to make some things easier. But most people I know don’t understand them, heck I’m not even sure I can correctly explain the benefits of generics.

    Most language features are optional in both asp.net and rails. There is nothing in asp.net that requires the use of generics (which is a feature most developers, including me, love btw). The fact that I can *optionally* take advantage of rich language features and a ton of APIs is a huge value-add to .NET. The fact that I can do it in any language is also huge. Having more tools in my tool-chest is not a bad thing but a good thing.

    BTW — have you checked out Ruby’s “mix-in” model to-do multiple inheritance? This is a cool, powerful, feature (like generics for .NET). But to claim it is “easy” is simply not true. Thankfully, like generics .NET, your need to deeply understand and use it is not forced on you.

    Like

  43. Scott, you can’t honestly defend this statement:

    >>> ASP.NET 2.0 is getting worse. Now you’ve got generics thrown into the mix, which is supposed to make some things easier. But most people I know don’t understand them, heck I’m not even sure I can correctly explain the benefits of generics.

    Most language features are optional in both asp.net and rails. There is nothing in asp.net that requires the use of generics (which is a feature most developers, including me, love btw). The fact that I can *optionally* take advantage of rich language features and a ton of APIs is a huge value-add to .NET. The fact that I can do it in any language is also huge. Having more tools in my tool-chest is not a bad thing but a good thing.

    BTW — have you checked out Ruby’s “mix-in” model to-do multiple inheritance? This is a cool, powerful, feature (like generics for .NET). But to claim it is “easy” is simply not true. Thankfully, like generics .NET, your need to deeply understand and use it is not forced on you.

    Like

  44. “That is simply not true. If you download it over the next 12 months it *is* FREE FOREVER.”

    That is absolutely true, I just checked up on the MSDN page and I was wrong. If you download it between now at Nov 2006 it is free for you to use forever. I sit corrected.

    Like

  45. “That is simply not true. If you download it over the next 12 months it *is* FREE FOREVER.”

    That is absolutely true, I just checked up on the MSDN page and I was wrong. If you download it between now at Nov 2006 it is free for you to use forever. I sit corrected.

    Like

  46. Mixins are pretty easy to use. IMO. They aren’t about multiple-inheritance. The extension methods in C# 3.0 are analogous to Ruby’s mixins. Python has a similar functionality, but I’m not aware of what it is called. But C# 3.0 won’t be out for some time. There’s a good summary here.
    http://dotnetjunkies.com/WebLog/anoras/archive/2005/09/18/132798.aspx

    I can honestly defend 1/2 of that statement. 😉 ASP.NET 2.0 is making web development using .NET worse. Whether or not generics are the boon to development that people make them out to be depends on your POV. To me, generics look like an attempt to shove duck typing into a statically typed system. Now, we’ve spent 5 years teaching people how to develop ASP.NET applications one way and along comes ASP.NET 2.0 and turns it all on it’s head. I tried converting two of our web projects to 2.0 and failed completely. Now I’ll have to re-factor or re-write them to get them to work with 2.0. Then they’ll just be functional, they won’t be using any 2.0 features. Bleh, left a bad taste in my mouth.

    I’ve found with Rails, I spend less time thinking about my back-end support code and more about my application logic and features. It’s almost like I was coding in VB 6 Forms again. 🙂

    Like

  47. Mixins are pretty easy to use. IMO. They aren’t about multiple-inheritance. The extension methods in C# 3.0 are analogous to Ruby’s mixins. Python has a similar functionality, but I’m not aware of what it is called. But C# 3.0 won’t be out for some time. There’s a good summary here.
    http://dotnetjunkies.com/WebLog/anoras/archive/2005/09/18/132798.aspx

    I can honestly defend 1/2 of that statement. 😉 ASP.NET 2.0 is making web development using .NET worse. Whether or not generics are the boon to development that people make them out to be depends on your POV. To me, generics look like an attempt to shove duck typing into a statically typed system. Now, we’ve spent 5 years teaching people how to develop ASP.NET applications one way and along comes ASP.NET 2.0 and turns it all on it’s head. I tried converting two of our web projects to 2.0 and failed completely. Now I’ll have to re-factor or re-write them to get them to work with 2.0. Then they’ll just be functional, they won’t be using any 2.0 features. Bleh, left a bad taste in my mouth.

    I’ve found with Rails, I spend less time thinking about my back-end support code and more about my application logic and features. It’s almost like I was coding in VB 6 Forms again. 🙂

    Like

  48. Hmm. I just re-read my comment and I don’t think I was clear enough.

    To me, the problem with ASP.NET 2.0 is that it was almost designed to fit the already-existing Visual Studio mindset. One magic tool to do it all.

    But Rails is different. David Heinemeier Hansson also worked with Allan Odgaard on “deciding features [and] tweaking [the] behavior”[1] of TextMate[2], a better-than-notepad text editor for the Mac.

    And it shows. Because unlike ASP.NET applications, you really can quickly and easily write test cases and code for real applications in something as simple as notepad! With the advanced macro and autocomplete options TextMate has, it’s even faster. But that’s optional, and that’s my point.

    Simplicity means quickly understand and make decisions or get things done – it doesn’t mean “less complex” or “less powerful”. Just the opposite, I’d say. Imagine what you could do, if you knew what to do, at all times in this world of infinite choices?

    That’s the power Rails gives you, while letting you ignore it when you need to. ASP.NET just forces itself on you though VS.

    I followed 37signals long before they launched RubyOnRails, because I’d been very interested in their thoughts on design and simplicity, as I read other blogs by characters like Zeldman, Meyer and Tantek, mostly on web standards and CSS. (Before they were called blogs, of course.)

    I wouldn’t be surprised if part of why I like rails is because it was born from a real project, made by this design firm to solve a problem they had. And because 37signals was *so* focused on usability and friendly error messages, and more modern application designs, they built Rails with the assumptions that you too would care about validation responses or error messages or in making life easier for the people that need to use your product.

    There’s no barriers to this thinking, instead they go out of their way to help people. From friendly URLs to Rails’ “flash” concept (envied in other languages like Java[3]) to built-in validation handling, it feels like they’ve thought of everything that I need to get something practical finished, quickly.

    And unlike what some comments hinted at, above, it’s *very* easy to go well beyond Rails, thanks to Ruby. Anything is possible, from working with other languages and technologies through SOAP or sockets or whatever, to writing your own C++ for Ruby.

    Ruby’s been around for a long time now, and over the years has expanded in every direction, with lots of good documentation too. From ri to browse the documentation built with rdoc, to excellent tools like rake for running build/testing/anything tasks, to the huge supply of third-party “gems” to extend the standard library classes. (Rails is packaged as a gem too).

    [1] http://wiki.macromates.com/textmate/show/DavidHeinemeierHansson.html
    [2] http://www.macromates.com/
    [3] http://forum.java.sun.com/thread.jspa?threadID=692386

    Like

  49. Hmm. I just re-read my comment and I don’t think I was clear enough.

    To me, the problem with ASP.NET 2.0 is that it was almost designed to fit the already-existing Visual Studio mindset. One magic tool to do it all.

    But Rails is different. David Heinemeier Hansson also worked with Allan Odgaard on “deciding features [and] tweaking [the] behavior”[1] of TextMate[2], a better-than-notepad text editor for the Mac.

    And it shows. Because unlike ASP.NET applications, you really can quickly and easily write test cases and code for real applications in something as simple as notepad! With the advanced macro and autocomplete options TextMate has, it’s even faster. But that’s optional, and that’s my point.

    Simplicity means quickly understand and make decisions or get things done – it doesn’t mean “less complex” or “less powerful”. Just the opposite, I’d say. Imagine what you could do, if you knew what to do, at all times in this world of infinite choices?

    That’s the power Rails gives you, while letting you ignore it when you need to. ASP.NET just forces itself on you though VS.

    I followed 37signals long before they launched RubyOnRails, because I’d been very interested in their thoughts on design and simplicity, as I read other blogs by characters like Zeldman, Meyer and Tantek, mostly on web standards and CSS. (Before they were called blogs, of course.)

    I wouldn’t be surprised if part of why I like rails is because it was born from a real project, made by this design firm to solve a problem they had. And because 37signals was *so* focused on usability and friendly error messages, and more modern application designs, they built Rails with the assumptions that you too would care about validation responses or error messages or in making life easier for the people that need to use your product.

    There’s no barriers to this thinking, instead they go out of their way to help people. From friendly URLs to Rails’ “flash” concept (envied in other languages like Java[3]) to built-in validation handling, it feels like they’ve thought of everything that I need to get something practical finished, quickly.

    And unlike what some comments hinted at, above, it’s *very* easy to go well beyond Rails, thanks to Ruby. Anything is possible, from working with other languages and technologies through SOAP or sockets or whatever, to writing your own C++ for Ruby.

    Ruby’s been around for a long time now, and over the years has expanded in every direction, with lots of good documentation too. From ri to browse the documentation built with rdoc, to excellent tools like rake for running build/testing/anything tasks, to the huge supply of third-party “gems” to extend the standard library classes. (Rails is packaged as a gem too).

    [1] http://wiki.macromates.com/textmate/show/DavidHeinemeierHansson.html
    [2] http://www.macromates.com/
    [3] http://forum.java.sun.com/thread.jspa?threadID=692386

    Like

  50. My technology choices are all connected.

    I’ve been developing full time with Ruby on Rails for over a year. It integrates perfectly with MySQL, UNIX, and Apache, all technologies that are easy to install (from a command line on a raw server, no less), update, and I can apply fixes, patches, or adaptations at my own pleasure. Why work with .NET when I need to use a server operating system I can’t maintain easily over console, which has little grassroots support, and which isn’t easily extendable?

    Further, I like to use a useful, pragmatic, and no-hassle operating system. For the last two years, for me, that’s been OS X. I was a Windows fan for many years, but suddenly realized its difficulties and problems when I looked at the ‘other side’. Being able to do a lot of sys admin from a command prompt is useful.. Windows’ offerings in the shell world are rather poor. Developing on .NET is not practical on a non Windows platform, and I can’t lower my standards to use it.

    Microsoft produces some very interesting technologies, but while they’re limited to a proprietary, non UNIX OS, non POSIX OS, it’s a no-go. Since all my favorite tools are maintained by people using open source operating systems (consider Perl, Ruby, Apache, etc).. it’s a real pain when trying to install and use Windows versions in many cases.

    I subscribe to a certain philosophy, and while Microsoft intrigues me, and I feel their technologies are pretty great in certain areas, it seems you have to accept WIndows to accept Microsoft, and I can’t afford the drop in productivity to do that.

    Like

  51. My technology choices are all connected.

    I’ve been developing full time with Ruby on Rails for over a year. It integrates perfectly with MySQL, UNIX, and Apache, all technologies that are easy to install (from a command line on a raw server, no less), update, and I can apply fixes, patches, or adaptations at my own pleasure. Why work with .NET when I need to use a server operating system I can’t maintain easily over console, which has little grassroots support, and which isn’t easily extendable?

    Further, I like to use a useful, pragmatic, and no-hassle operating system. For the last two years, for me, that’s been OS X. I was a Windows fan for many years, but suddenly realized its difficulties and problems when I looked at the ‘other side’. Being able to do a lot of sys admin from a command prompt is useful.. Windows’ offerings in the shell world are rather poor. Developing on .NET is not practical on a non Windows platform, and I can’t lower my standards to use it.

    Microsoft produces some very interesting technologies, but while they’re limited to a proprietary, non UNIX OS, non POSIX OS, it’s a no-go. Since all my favorite tools are maintained by people using open source operating systems (consider Perl, Ruby, Apache, etc).. it’s a real pain when trying to install and use Windows versions in many cases.

    I subscribe to a certain philosophy, and while Microsoft intrigues me, and I feel their technologies are pretty great in certain areas, it seems you have to accept WIndows to accept Microsoft, and I can’t afford the drop in productivity to do that.

    Like

  52. I should clarify, before someone corrects what I said previously, that while Windows has a POSIX compatability layer, I would not consider it a POSIX compliant OS due to the problems inherent with POSIX support in Windows.

    Like

  53. I should clarify, before someone corrects what I said previously, that while Windows has a POSIX compatability layer, I would not consider it a POSIX compliant OS due to the problems inherent with POSIX support in Windows.

    Like

  54. Some of us got sick of Microsoft’s tactics back in the 90’s when we had shit like Visual Basic shoved down our throats via incestuous deals struck on the golf course by IT Directors and MS Sales reps.

    Who can do anything to promote MS’s agenda and still have a clear conscience? The anti-trust violations were just the tip of a corrupt iceburg.

    Like

  55. Some of us got sick of Microsoft’s tactics back in the 90’s when we had shit like Visual Basic shoved down our throats via incestuous deals struck on the golf course by IT Directors and MS Sales reps.

    Who can do anything to promote MS’s agenda and still have a clear conscience? The anti-trust violations were just the tip of a corrupt iceburg.

    Like

  56. I like, and use, both. No tool is 100% perfect and there are things that ASP.NET just does better and vice versa.

    I like a lot of what Rails has to offer but to be honest what I really like is that it’s something new to play with. There are a ton of frameworks for ASP.NET that can get you equivilent functionality as Rails in roughly the same amount of time (I didn’t say the *same*, but the basics).

    Rails also was allowed to grow out of a single need by a single company which helps keep it focused and simple, one of the reasons people love Ruby. Microsoft is trying to create a framework that will work for everyone in every situation, offering a ton of different ways to do things. How different would Rails have been if it was imagined as an end-all, be-all solution for everything and everyone? How different will it be in 3 years? How many additional packages and updates and patches for this or that feature will you need?

    Both have their place and I’ve learning things from both that I’ve used in the other (make sense?) and to me that’s the true power of Rails, it’s just good design that you can take away and learn from.

    Like

  57. Have you checked out ScottGu’s blog post from a few days ago: http://weblogs.asp.net/scottgu/archive/2005/12/18/433484.aspx

    If you have large ASP.NET 1.1 apps built using VS 2003 I’d definitely recommend using the tutorials using the new Web Project Download on his site.

    We had a 1600+ page site that we were very worried about upgrading because of some of the project model changes (we spent a few hours with beta2 trying to port it and then backed off and decided to wait and just build new apps in vs2005 instead of upgrading old ones). Using the new web project download they put out last week we were able to upgrade the entire site to VS 2005 in only 30 minutes. Basically VS now supports the old project model, so no code changes were needed. We’ve changed our upgrade plans completely based on this and will now be able to take advantage of all the new 2.0 features starting in Jan. I’d recommend walking through one of your apps to use the new project model download this week. You might find it a very nice xmas present! 🙂

    Take care (and I hope my comments above didn’t sound harsh, I didn’t mean them to sound bad if it came across that way!).

    Like

  58. I like, and use, both. No tool is 100% perfect and there are things that ASP.NET just does better and vice versa.

    I like a lot of what Rails has to offer but to be honest what I really like is that it’s something new to play with. There are a ton of frameworks for ASP.NET that can get you equivilent functionality as Rails in roughly the same amount of time (I didn’t say the *same*, but the basics).

    Rails also was allowed to grow out of a single need by a single company which helps keep it focused and simple, one of the reasons people love Ruby. Microsoft is trying to create a framework that will work for everyone in every situation, offering a ton of different ways to do things. How different would Rails have been if it was imagined as an end-all, be-all solution for everything and everyone? How different will it be in 3 years? How many additional packages and updates and patches for this or that feature will you need?

    Both have their place and I’ve learning things from both that I’ve used in the other (make sense?) and to me that’s the true power of Rails, it’s just good design that you can take away and learn from.

    Like

  59. Have you checked out ScottGu’s blog post from a few days ago: http://weblogs.asp.net/scottgu/archive/2005/12/18/433484.aspx

    If you have large ASP.NET 1.1 apps built using VS 2003 I’d definitely recommend using the tutorials using the new Web Project Download on his site.

    We had a 1600+ page site that we were very worried about upgrading because of some of the project model changes (we spent a few hours with beta2 trying to port it and then backed off and decided to wait and just build new apps in vs2005 instead of upgrading old ones). Using the new web project download they put out last week we were able to upgrade the entire site to VS 2005 in only 30 minutes. Basically VS now supports the old project model, so no code changes were needed. We’ve changed our upgrade plans completely based on this and will now be able to take advantage of all the new 2.0 features starting in Jan. I’d recommend walking through one of your apps to use the new project model download this week. You might find it a very nice xmas present! 🙂

    Take care (and I hope my comments above didn’t sound harsh, I didn’t mean them to sound bad if it came across that way!).

    Like

  60. Robert,
    A few years back, I developed medical applications with VS/C++ for deployment on Win2000/XP boxes. I knew little about open source, thought highly of Microsoft tools, and initially bought a MSDN Universal license when I began to explore web development. When it came time to begin development on a web venture, I chose Ruby on Rails over PHP/Python/Java/MS frameworks.

    The biggest point against Microsoft was this: you didn’t explicitly encourage Mono. If MS felt good enough about its tools and server platforms, it should have championed Mono as an open source alternative, even if Mono would always be one step behind the bleeding-edge .NET framework. That would have eased my mind considerably.

    The other big point was the beauty of the Ruby language (Ruby.NET?) and how convention is used to enhance that elegance in Ruby on Rails.

    Now that I am familiar with the open source world, Microsoft will have trouble getting me back into the MS developer world. I’ve got a great amount of respect for Gates and the way he’s used his wealth (no MS-basher here), but your technology needs to work on more than just MS platforms, and by that, I mean there needs to be legal assurances that the alternatives, like Mono, won’t be shut down if they get too good.

    Like

  61. Robert,
    A few years back, I developed medical applications with VS/C++ for deployment on Win2000/XP boxes. I knew little about open source, thought highly of Microsoft tools, and initially bought a MSDN Universal license when I began to explore web development. When it came time to begin development on a web venture, I chose Ruby on Rails over PHP/Python/Java/MS frameworks.

    The biggest point against Microsoft was this: you didn’t explicitly encourage Mono. If MS felt good enough about its tools and server platforms, it should have championed Mono as an open source alternative, even if Mono would always be one step behind the bleeding-edge .NET framework. That would have eased my mind considerably.

    The other big point was the beauty of the Ruby language (Ruby.NET?) and how convention is used to enhance that elegance in Ruby on Rails.

    Now that I am familiar with the open source world, Microsoft will have trouble getting me back into the MS developer world. I’ve got a great amount of respect for Gates and the way he’s used his wealth (no MS-basher here), but your technology needs to work on more than just MS platforms, and by that, I mean there needs to be legal assurances that the alternatives, like Mono, won’t be shut down if they get too good.

    Like

  62. Hi all,

    I’ve been working with MS technologies since 96 after I moved from the Apple field. I learned the Win 32 API, the COM stack and more recently .Net. 2006 Looks like the year I’ll change fields again, this time I’ll join the open source crowd embracing Ruby and dynamic languages alike.

    I still use .Net simply because my company has not, yet, seen the advantages of using Ruby, but I’ll keep spreading the word 🙂 On my personal projects I’ve stopped using .Net. In the last 6 month I have not done a personal project using .Net or C#. Ruby is much more fun and allows me to express much better, and way faster, my ideas into code.

    Regarding ASP.Net I’ll share here something that happened last week while I was teaching ASP.Net to graduates at my company. At one time one of the students asked me if I could build an ASP.Net app without using Visual Studio, so that he could really understand how it works. Remarkably I was able do it, if I didn’t use any code behind, but when I tried to demo the code behind functionality it got pretty complicated to manage without VS. This is one of the biggest disadvantages of ASP.Net it assumes you have VS.

    C# 3.0 looks great but still too far away. C# 2.0 looks like an intermediate step, now that we know about C# 3.0.

    Like

  63. Hi all,

    I’ve been working with MS technologies since 96 after I moved from the Apple field. I learned the Win 32 API, the COM stack and more recently .Net. 2006 Looks like the year I’ll change fields again, this time I’ll join the open source crowd embracing Ruby and dynamic languages alike.

    I still use .Net simply because my company has not, yet, seen the advantages of using Ruby, but I’ll keep spreading the word 🙂 On my personal projects I’ve stopped using .Net. In the last 6 month I have not done a personal project using .Net or C#. Ruby is much more fun and allows me to express much better, and way faster, my ideas into code.

    Regarding ASP.Net I’ll share here something that happened last week while I was teaching ASP.Net to graduates at my company. At one time one of the students asked me if I could build an ASP.Net app without using Visual Studio, so that he could really understand how it works. Remarkably I was able do it, if I didn’t use any code behind, but when I tried to demo the code behind functionality it got pretty complicated to manage without VS. This is one of the biggest disadvantages of ASP.Net it assumes you have VS.

    C# 3.0 looks great but still too far away. C# 2.0 looks like an intermediate step, now that we know about C# 3.0.

    Like

  64. .Net can’t do this

    class Users ActiveRecord::Base
    end

    Users.FirstName = “John”
    Users.Save

    without some massive code generation (and regeneration) or XML mapping files.

    O/R mapping in .Net is weak (only LLBLGen is decent, but it contains too much crufts)

    Solve this issue and you will win back developers otherwise RoR is looking really good.

    Like

  65. .Net can’t do this

    class Users ActiveRecord::Base
    end

    Users.FirstName = “John”
    Users.Save

    without some massive code generation (and regeneration) or XML mapping files.

    O/R mapping in .Net is weak (only LLBLGen is decent, but it contains too much crufts)

    Solve this issue and you will win back developers otherwise RoR is looking really good.

    Like

  66. The biggest thing that turns me away from MS web technolgies is the company’s constant insistence to not support web standards. Ever tried to get a large ASP.Net app to validate as compliant XHTML and work consistently in more than just IE? It’s rather difficult.

    Sure, MS is planning to try and get CSS at least half right with IE 7, but to me it seems to be too little to late.

    I walked away from MS platforms and technologies a while ago, turning to Linux, OSX, and numerous open source alternatives. The only time I load up Windows (or any Microsoft product for that matter) anymore is to see how badly IE is displaying my validated CSS – the same CSS sheet that Firefox, Safari, Opera, Konquerer, Mozilla, and OmniWeb all display without any problem whatsoever.

    Like

  67. The biggest thing that turns me away from MS web technolgies is the company’s constant insistence to not support web standards. Ever tried to get a large ASP.Net app to validate as compliant XHTML and work consistently in more than just IE? It’s rather difficult.

    Sure, MS is planning to try and get CSS at least half right with IE 7, but to me it seems to be too little to late.

    I walked away from MS platforms and technologies a while ago, turning to Linux, OSX, and numerous open source alternatives. The only time I load up Windows (or any Microsoft product for that matter) anymore is to see how badly IE is displaying my validated CSS – the same CSS sheet that Firefox, Safari, Opera, Konquerer, Mozilla, and OmniWeb all display without any problem whatsoever.

    Like

  68. I like RoR and .NET 2.0 … they each have their advantages.

    Let’s get real; Microsoft makes the best IDEs on the planet. VWD is free, it publishes valid XHTML, and is great for rapid development. That said, I think that RoR is currently a slightly superior development framework.

    I have full confidence in Microsoft’s ability to develop a superior development platform. They have a proven track record of crushing the competition when it counts.

    This time it may be different. The real problem is the .NET developer community that Microsoft has bred (or lack thereof). MS developers are stuck in an M$ world. We don’t support open source projects, we’re late to adopt new technologies such as AJAX, we avoid client side scripting, and we don’t care about cross browser compatibility.

    Microsoft seems to be catching on, but the community is late to figure it out. The community is still developing HUGE USELESS applications that will be destroyed the lighter easy to use applications being created by the RoR community.

    At this point, I think the development methodology is much more important than the platform used. You can build similar applications on both platforms, in roughly the same amount of time. The greatest divide is the perception that AJAX and XHTML isn’t available to .NETers, and the fact that the .NET community is lacking cohesion and awareness.

    Like

  69. I like RoR and .NET 2.0 … they each have their advantages.

    Let’s get real; Microsoft makes the best IDEs on the planet. VWD is free, it publishes valid XHTML, and is great for rapid development. That said, I think that RoR is currently a slightly superior development framework.

    I have full confidence in Microsoft’s ability to develop a superior development platform. They have a proven track record of crushing the competition when it counts.

    This time it may be different. The real problem is the .NET developer community that Microsoft has bred (or lack thereof). MS developers are stuck in an M$ world. We don’t support open source projects, we’re late to adopt new technologies such as AJAX, we avoid client side scripting, and we don’t care about cross browser compatibility.

    Microsoft seems to be catching on, but the community is late to figure it out. The community is still developing HUGE USELESS applications that will be destroyed the lighter easy to use applications being created by the RoR community.

    At this point, I think the development methodology is much more important than the platform used. You can build similar applications on both platforms, in roughly the same amount of time. The greatest divide is the perception that AJAX and XHTML isn’t available to .NETers, and the fact that the .NET community is lacking cohesion and awareness.

    Like

  70. Dody,

    ASP.NET 2.0 includes a built-in membership system for storing and managing users and roles. Out of the Box you can say:

    Membership.CreateUser(“John”, password, email);

    And you’ll securely add a new user to the credential system for that app (each app or site on a box by default has a separate password store). It optionally includes password complexity rules (to enforce password lengths), role mappings for capabilities, password reset/recovering, and admin logging (to watch for false password attempts, etc). It also doesn’t store anything in cleartext, and does secure defaults out of the box.

    All of the membership apis are extensible via a provider model, so if you don’t want to go against a sql database or active directory (which are built-in), you can sub-class your own membership provider and build your own implementation (there is an OSS version for MySql already available).

    If you want to store property information about a user, you can then define a new profile object by adding these lines in your web.config file:

    You can then just say “Profile.Age = 40” anywhere in the site and it will store it for the logged in user (no OR mapping required).

    What is then the icing on the cake are the login controls that come out of the box. You can just say:

    and without having to write any code you have a login page that talks to the membership system (regardless of whether you have the AD, SQL or MySQL provider configured). There is also then a built-in admin tool for managing these users that comes in the box.

    I hear you that .NET needs a built-in O/R mapping tool (in theory this is part of what the new LinQ language stuff being added to VB and C# are providing). Both for membership/roles/profile management I gotta say that .NET has RoR beat in terms of what comes out of the box.

    Like

  71. Dody,

    ASP.NET 2.0 includes a built-in membership system for storing and managing users and roles. Out of the Box you can say:

    Membership.CreateUser(“John”, password, email);

    And you’ll securely add a new user to the credential system for that app (each app or site on a box by default has a separate password store). It optionally includes password complexity rules (to enforce password lengths), role mappings for capabilities, password reset/recovering, and admin logging (to watch for false password attempts, etc). It also doesn’t store anything in cleartext, and does secure defaults out of the box.

    All of the membership apis are extensible via a provider model, so if you don’t want to go against a sql database or active directory (which are built-in), you can sub-class your own membership provider and build your own implementation (there is an OSS version for MySql already available).

    If you want to store property information about a user, you can then define a new profile object by adding these lines in your web.config file:

    You can then just say “Profile.Age = 40” anywhere in the site and it will store it for the logged in user (no OR mapping required).

    What is then the icing on the cake are the login controls that come out of the box. You can just say:

    and without having to write any code you have a login page that talks to the membership system (regardless of whether you have the AD, SQL or MySQL provider configured). There is also then a built-in admin tool for managing these users that comes in the box.

    I hear you that .NET needs a built-in O/R mapping tool (in theory this is part of what the new LinQ language stuff being added to VB and C# are providing). Both for membership/roles/profile management I gotta say that .NET has RoR beat in terms of what comes out of the box.

    Like

  72. We have an entire blog devoted to this very topic (well, also programming tips for .NET developers moving to Rails)… softiesonrails.com. Ironically, we’re in the process of writing a 6-part series (of which we’ve posted 2 so far) on why we’re switching.

    Like

  73. We have an entire blog devoted to this very topic (well, also programming tips for .NET developers moving to Rails)… softiesonrails.com. Ironically, we’re in the process of writing a 6-part series (of which we’ve posted 2 so far) on why we’re switching.

    Like

  74. My Profile and Login sample above didn’t come out (they use tags, and apparently the comment form eats them). But each was about 3 lines of simple text…

    Like

  75. My Profile and Login sample above didn’t come out (they use tags, and apparently the comment form eats them). But each was about 3 lines of simple text…

    Like

  76. I’ve never had an interest in .NET, and I’m mostly a front-end developer, but here’s why I went into Rails development:

    * Free
    * Momentum
    * Easy to understand MVC model with no massive XML configuration
    * I don’t like being tied to any one operating system.
    * Open source, so I or others can change it for particular needs, and it remains unbloated.
    * After 15 years on a PC, I switched to an Apple Powerbook, and I can’t see myself going back to Windows, though I could see myself going to Linux.
    * It’s just the right size for the type of sites I’m building. I still most of my programming in text editor (textmate), mostly because I find IDEs to be bloated.
    * All the cool kids are doing it.

    Like

  77. I’ve never had an interest in .NET, and I’m mostly a front-end developer, but here’s why I went into Rails development:

    * Free
    * Momentum
    * Easy to understand MVC model with no massive XML configuration
    * I don’t like being tied to any one operating system.
    * Open source, so I or others can change it for particular needs, and it remains unbloated.
    * After 15 years on a PC, I switched to an Apple Powerbook, and I can’t see myself going back to Windows, though I could see myself going to Linux.
    * It’s just the right size for the type of sites I’m building. I still most of my programming in text editor (textmate), mostly because I find IDEs to be bloated.
    * All the cool kids are doing it.

    Like

  78. I’m of the generation of developers that cut their teeth on UNIX when it was young. Of the early 80s. Before Windows. Before DOS, really.

    RoR embodies exactly one foundation concept, so clearly, so plainly, and so simply, that everything else falls out from it, a concept I learned to respect and to some degree revere from those years:

    Succinctly put, “less is more.”

    The MS direction, starting with COM, COM+, DCOM, the first “.NET” (which confused the hell out of everyone for several years), then by the unending, breathless, spewing geyser of changes to the Windows platform and tools and frameworks – oh my, then the “real” .NET (platform and tools, not marketing term), now the “new new” .NET 2.0, and the dramatic architectural differences between plain old ASP, ASP.NET(1) and ASP.NET(2) just leave my head spinning.

    Succinctly put, with Microsoft, every two years I basically have to relearn the platform. Knowledge half-life is very short. And thus less valuable.

    And the platform just seems to grow more and more complex. I just can’t keep up with it. It wears me out. My skillset never develops true mastery; I’m always racing with the next generation over the next wave of Microsoft “innovations.”

    And they are cool, mind you, but not that cool. Flashy, bright and shiny things.

    Java more or less sucked all the oxygen out of the room for almost a decade, from an architectural and a general Computer Science perspective; .NET was a true innovation, and a breath of fresh air that awakened the market to the fact that yes, Virginia, there are Other Ways of doing things than “pure java” and J2EE. The platfom *was* still important.

    But it’s so complex, the tools and platform are so expensive, and the learning curve across so many spaces so steep that it’s just not worth the time to pick up.

    Especially when competing with “free” as the alternative.

    I learned everything I needed to know about Ruby and Ruby on Rails from a 10-minute read of the ONLamp article “Rolling with Ruby on Rails.” I was productive in 10 more minutes, by following the simple instructions to download and install the tools – on Linux, and on Windows. The code is by definition portable, perhaps even more portable than java. So I’m portable across all the major platforms, I’m productive out of the gate, and I’m writing real-world code that works on minute 1.

    Succinctly put, the learning curve for RoR is shallow, rather than steep, as it is for .NET.

    And in the end, portability *is* a key issue. I can’t run my .NET code on Linux. That, in the end, is a huge handicap for any truly open market application. You want the widest variety of hosting solutions. Windows cuts off 60% of the hosting alternatives.

    I love the innovations Microsoft has developed, especially the new Visual Studio, C#, the new effort to work with Hibernate, and so on. I like the platform, too. If I were developing applications for the Windows desktop, or the Windows 2003 server platform, or any of the constituent Microsoft products that inhabit that ecosystem (e.g. Exchange Server and Outlook), then there’s only one tool to look at, and it’s quite a nice tool.

    But for (portable, widely hostable, cheap, simple) web-based applications, RoR seems to hold a great deal more potential, especially in leveraging my time and expertise, than ASP.NET 2.0 – especially given the opportunity cost of learning a platform that, at best, will (apparently) be “as good as” RoR.

    Sorry if I sound a bit harsh. I’m not a Microsoft basher. But there it is.

    What’s Microsoft to do? Radical thought:

    Ruby.NET and RoR integrated into the .NET ecosystem. Why not? Embrace and extend….

    Like

  79. I’m of the generation of developers that cut their teeth on UNIX when it was young. Of the early 80s. Before Windows. Before DOS, really.

    RoR embodies exactly one foundation concept, so clearly, so plainly, and so simply, that everything else falls out from it, a concept I learned to respect and to some degree revere from those years:

    Succinctly put, “less is more.”

    The MS direction, starting with COM, COM+, DCOM, the first “.NET” (which confused the hell out of everyone for several years), then by the unending, breathless, spewing geyser of changes to the Windows platform and tools and frameworks – oh my, then the “real” .NET (platform and tools, not marketing term), now the “new new” .NET 2.0, and the dramatic architectural differences between plain old ASP, ASP.NET(1) and ASP.NET(2) just leave my head spinning.

    Succinctly put, with Microsoft, every two years I basically have to relearn the platform. Knowledge half-life is very short. And thus less valuable.

    And the platform just seems to grow more and more complex. I just can’t keep up with it. It wears me out. My skillset never develops true mastery; I’m always racing with the next generation over the next wave of Microsoft “innovations.”

    And they are cool, mind you, but not that cool. Flashy, bright and shiny things.

    Java more or less sucked all the oxygen out of the room for almost a decade, from an architectural and a general Computer Science perspective; .NET was a true innovation, and a breath of fresh air that awakened the market to the fact that yes, Virginia, there are Other Ways of doing things than “pure java” and J2EE. The platfom *was* still important.

    But it’s so complex, the tools and platform are so expensive, and the learning curve across so many spaces so steep that it’s just not worth the time to pick up.

    Especially when competing with “free” as the alternative.

    I learned everything I needed to know about Ruby and Ruby on Rails from a 10-minute read of the ONLamp article “Rolling with Ruby on Rails.” I was productive in 10 more minutes, by following the simple instructions to download and install the tools – on Linux, and on Windows. The code is by definition portable, perhaps even more portable than java. So I’m portable across all the major platforms, I’m productive out of the gate, and I’m writing real-world code that works on minute 1.

    Succinctly put, the learning curve for RoR is shallow, rather than steep, as it is for .NET.

    And in the end, portability *is* a key issue. I can’t run my .NET code on Linux. That, in the end, is a huge handicap for any truly open market application. You want the widest variety of hosting solutions. Windows cuts off 60% of the hosting alternatives.

    I love the innovations Microsoft has developed, especially the new Visual Studio, C#, the new effort to work with Hibernate, and so on. I like the platform, too. If I were developing applications for the Windows desktop, or the Windows 2003 server platform, or any of the constituent Microsoft products that inhabit that ecosystem (e.g. Exchange Server and Outlook), then there’s only one tool to look at, and it’s quite a nice tool.

    But for (portable, widely hostable, cheap, simple) web-based applications, RoR seems to hold a great deal more potential, especially in leveraging my time and expertise, than ASP.NET 2.0 – especially given the opportunity cost of learning a platform that, at best, will (apparently) be “as good as” RoR.

    Sorry if I sound a bit harsh. I’m not a Microsoft basher. But there it is.

    What’s Microsoft to do? Radical thought:

    Ruby.NET and RoR integrated into the .NET ecosystem. Why not? Embrace and extend….

    Like

  80. “Both for membership/roles/profile management I gotta say that .NET has RoR beat in terms of what comes out of the box. ”

    DotNetFan, membership/roles/profile management accounts less than 5% that a website has to deal with. And in most cases, you will have to build your own bloody provider anyway.

    O/R mapping accounts nearly half if not more of shit we .Net developers have to deal with (thank God for Code Generators, but they are still weak/complex)

    And Atlas AJAX code framework is still too bloody complex compared to the function helpers that come with RoR. And VS 2005 doesn’t help anything to code JavaScript code.

    I love Generics and Closures in C# 2 but boy, .Net needs a decent production quality dynamic language yesterday (Python or Ruby).

    C# 3.0 is innovative and I’m looking forward to expression trees, but right now, RoR is looking good and I switch my company from exclusive .Net shop to doing RoR for GreenField development (new web system) and ASP.Net et pal for projects requiring heavy integration.

    If you are building a brand web product, it makes little sense to start with ASP.Net right now. Ever tried prototyping with ASP .Net? It sucks. Sure .Net has higher performance than RoR, but RoR allows me to make money faster and majority of website are not “Enterprise strength” application and having to scale to 10 million transactions a day.

    RoR is created by a bunch of part time programmers with a few fulltimers. ASP.Net has an army of developers. Yet it deploys updates and add features far more regularly than ASP.Net platform. Do you need more proof that Ruby makes you more productive?

    C# 3.0 needs to come out next year, otherwise a lot of .Net developers will be switching to other more productive dynamic languages web development platform.

    Like

  81. “Both for membership/roles/profile management I gotta say that .NET has RoR beat in terms of what comes out of the box. ”

    DotNetFan, membership/roles/profile management accounts less than 5% that a website has to deal with. And in most cases, you will have to build your own bloody provider anyway.

    O/R mapping accounts nearly half if not more of shit we .Net developers have to deal with (thank God for Code Generators, but they are still weak/complex)

    And Atlas AJAX code framework is still too bloody complex compared to the function helpers that come with RoR. And VS 2005 doesn’t help anything to code JavaScript code.

    I love Generics and Closures in C# 2 but boy, .Net needs a decent production quality dynamic language yesterday (Python or Ruby).

    C# 3.0 is innovative and I’m looking forward to expression trees, but right now, RoR is looking good and I switch my company from exclusive .Net shop to doing RoR for GreenField development (new web system) and ASP.Net et pal for projects requiring heavy integration.

    If you are building a brand web product, it makes little sense to start with ASP.Net right now. Ever tried prototyping with ASP .Net? It sucks. Sure .Net has higher performance than RoR, but RoR allows me to make money faster and majority of website are not “Enterprise strength” application and having to scale to 10 million transactions a day.

    RoR is created by a bunch of part time programmers with a few fulltimers. ASP.Net has an army of developers. Yet it deploys updates and add features far more regularly than ASP.Net platform. Do you need more proof that Ruby makes you more productive?

    C# 3.0 needs to come out next year, otherwise a lot of .Net developers will be switching to other more productive dynamic languages web development platform.

    Like

  82. I’ve seen what happened to VB 6 developers and I just don’t trust anything that isn’t open source. To be fair, this extends beyond Microsoft (and even extends to Sun). I just want my tools and platform to be free of authoritarian vendor control.

    Moreover, why pay for it when something great (or even good enough) is free?

    Like

  83. I’ve seen what happened to VB 6 developers and I just don’t trust anything that isn’t open source. To be fair, this extends beyond Microsoft (and even extends to Sun). I just want my tools and platform to be free of authoritarian vendor control.

    Moreover, why pay for it when something great (or even good enough) is free?

    Like

  84. And if you switch to RoR, your boss can’t really outsource you; no, it’s not because they aren’t any Ruby developers in India (a few) but it’s because the idea/implementation turnout is much tighter on RoR. And with the advantage of onsite development, your productivity offset any risk and management overhead required for outsourcing your project.

    Like

  85. And if you switch to RoR, your boss can’t really outsource you; no, it’s not because they aren’t any Ruby developers in India (a few) but it’s because the idea/implementation turnout is much tighter on RoR. And with the advantage of onsite development, your productivity offset any risk and management overhead required for outsourcing your project.

    Like

  86. Basically, I Choose rails over ASP because it runs on the platform I use for development these days; OSX.

    The real question is why I chose Rails over J2EE, and it would be the same reasons I would have chosen Rails over ASP.NET if I were on windows: speed of development, small footprint, fun to develop again, more cutting edge.

    Like

  87. Basically, I Choose rails over ASP because it runs on the platform I use for development these days; OSX.

    The real question is why I chose Rails over J2EE, and it would be the same reasons I would have chosen Rails over ASP.NET if I were on windows: speed of development, small footprint, fun to develop again, more cutting edge.

    Like

  88. I’ll echo most of “Louis”‘s comments above. I work with ASP.NET at work and Rails at home.

    ASP.NET even in 2.0 retains an attitude which is, at its core, anti-web. It seems as if its designed and built for people who not only don’t care passionately about web standards and browser compatibility, but by and for people who ACTIVELY DISLIKE THE WEB.

    The simple fact that ASP.NET cannot produce simple, readable, styleable valid XHTML is just plain ignorance. ASP.NET seems to go out of its way to shield me from the very things I want by-hand control over, and to provide me with endless stupid options that are not useful to me. Fuck man, ASP.NET takes over all the #id attributes of my HTML elements! That’s bullshit, just bullshit.

    Rails treats XHTML as a first-class delivery vehicle, assumes I want model validation and user-friendly errors from the get go. It assumes I will design and develop my application in layers that correspond to the principles unobtrusiveness: the CSS layer will not be baked into the HTML; the Javascript will not minimally autogenerated from my framework.

    Plus, yes, Ruby is a deeply beautiful language. Rails extends that beauty to the web framework world. The OS X text editor TextMate is something approaching a work of art. Why would I want to spend my work time in a tool environment I felt any less deeply about?

    Like

  89. I’ll echo most of “Louis”‘s comments above. I work with ASP.NET at work and Rails at home.

    ASP.NET even in 2.0 retains an attitude which is, at its core, anti-web. It seems as if its designed and built for people who not only don’t care passionately about web standards and browser compatibility, but by and for people who ACTIVELY DISLIKE THE WEB.

    The simple fact that ASP.NET cannot produce simple, readable, styleable valid XHTML is just plain ignorance. ASP.NET seems to go out of its way to shield me from the very things I want by-hand control over, and to provide me with endless stupid options that are not useful to me. Fuck man, ASP.NET takes over all the #id attributes of my HTML elements! That’s bullshit, just bullshit.

    Rails treats XHTML as a first-class delivery vehicle, assumes I want model validation and user-friendly errors from the get go. It assumes I will design and develop my application in layers that correspond to the principles unobtrusiveness: the CSS layer will not be baked into the HTML; the Javascript will not minimally autogenerated from my framework.

    Plus, yes, Ruby is a deeply beautiful language. Rails extends that beauty to the web framework world. The OS X text editor TextMate is something approaching a work of art. Why would I want to spend my work time in a tool environment I felt any less deeply about?

    Like

  90. I’m a professional ASP.Net developer and a freelance RoR developer, and I have to tell you that apps in RoR are soooo much simpler and cleaner to implement than those in ASP.Net. All of the database access stuff is gone, which is the stuff that I waste so much time on. I just haven’t seen any good O/R persistence frameworks for .Net yet, and I am simply not interested in building my apps by dragging and dropping components around. That just leads to messy, messy code. RoR frees me from having to do that while giving me a clean, elegant way to interact with my database.

    I’m also a big fan of web standards, and I am sick and tired of how Microsoft’s browser-specific code generation insists on giving Mozilla one thing while giving IE something else. With RoR I have total control over that, and it doesn’t add much development time. I can have clean, compatible sites that behave fine in any browser without having to outthink the system.

    RoR is cheap. I can get a VDS running Linux that gives me my OWN SERVER for $20/month. Can you do that with Windows? Nope… I’ve been trying to get my hands on a dedicated Windows server for years, but the cost of the OS coupled with the cost of the DB (SQL Server) has kept it out of my reach. Not so with RoR.

    Simple, fast, and clean… I really like the idea of less is more, and RoR really embodies that with deb apps. .Net is great for enterprise-wide heavy duty stuff, but that’s not what I do. I build web apps, and for that ASP.Net is just too heavy for me to want to use, unless I have to.

    P.S. Don’t be afraid of the command line! It’s your friend!

    Like

  91. I’m a professional ASP.Net developer and a freelance RoR developer, and I have to tell you that apps in RoR are soooo much simpler and cleaner to implement than those in ASP.Net. All of the database access stuff is gone, which is the stuff that I waste so much time on. I just haven’t seen any good O/R persistence frameworks for .Net yet, and I am simply not interested in building my apps by dragging and dropping components around. That just leads to messy, messy code. RoR frees me from having to do that while giving me a clean, elegant way to interact with my database.

    I’m also a big fan of web standards, and I am sick and tired of how Microsoft’s browser-specific code generation insists on giving Mozilla one thing while giving IE something else. With RoR I have total control over that, and it doesn’t add much development time. I can have clean, compatible sites that behave fine in any browser without having to outthink the system.

    RoR is cheap. I can get a VDS running Linux that gives me my OWN SERVER for $20/month. Can you do that with Windows? Nope… I’ve been trying to get my hands on a dedicated Windows server for years, but the cost of the OS coupled with the cost of the DB (SQL Server) has kept it out of my reach. Not so with RoR.

    Simple, fast, and clean… I really like the idea of less is more, and RoR really embodies that with deb apps. .Net is great for enterprise-wide heavy duty stuff, but that’s not what I do. I build web apps, and for that ASP.Net is just too heavy for me to want to use, unless I have to.

    P.S. Don’t be afraid of the command line! It’s your friend!

    Like

  92. I am a .Net developer that tried to get on the RoR band wagon but couldn’t even get the car started. I just could not get Linux and Apache or lighttpd and MySQL to work. The CLI of linux is very cool but ultimatly I need something that works. Not something that has to have x many things installed before it works. I know part of my issue was a lack of Linux expereince, but I can walk my mom through setting up an ASP.Net site, whereas I had several people on irc fail to help me setup RoR on Linux.

    I agree with some of the statements about ASP.Net and some of their design choice. Particulary the part about trying to hide the things you want control over. There does need to be more support for web developers that want (and because of cross browser issue) and need a high degree of control over the markup.

    O/R support. Bullshit plain and simple. NHibernate, is a perfectly fine O/R toolkit, it gets the job done and is made in development with Hibernate. Don’t like that style take a look at db4o, Bamboo, iBatis, NPersist, etc. There is a lot of support for O/R in .Net and from what I can see .Net 2.0 Generics is going to raise the roof in Very interesting ways.

    If you want the style of development that RoR has, just look at http://www.castleproject.org and what they are doing with a RoR style port for .Net. They have a killer Front Controller pattern going that is MonoRail, the have IoC out the yin-yang covered with their MicroKernel, and the have an ActiveRecord pattern in Castle.MicroKernel. They are also working with Aspect# people to weave AOP support in to the project as well.

    Scoble, take a look at what Hammett is doing over there. I think he is doing some very interesting work for the .Net environment.

    RoR is great as is .Net, and everything language has projects that are a best fit for it, but as a sole developer for my firm I love that I can take the .Net platform everywhere I need to solve a problem.

    dru

    Like

  93. I am a .Net developer that tried to get on the RoR band wagon but couldn’t even get the car started. I just could not get Linux and Apache or lighttpd and MySQL to work. The CLI of linux is very cool but ultimatly I need something that works. Not something that has to have x many things installed before it works. I know part of my issue was a lack of Linux expereince, but I can walk my mom through setting up an ASP.Net site, whereas I had several people on irc fail to help me setup RoR on Linux.

    I agree with some of the statements about ASP.Net and some of their design choice. Particulary the part about trying to hide the things you want control over. There does need to be more support for web developers that want (and because of cross browser issue) and need a high degree of control over the markup.

    O/R support. Bullshit plain and simple. NHibernate, is a perfectly fine O/R toolkit, it gets the job done and is made in development with Hibernate. Don’t like that style take a look at db4o, Bamboo, iBatis, NPersist, etc. There is a lot of support for O/R in .Net and from what I can see .Net 2.0 Generics is going to raise the roof in Very interesting ways.

    If you want the style of development that RoR has, just look at http://www.castleproject.org and what they are doing with a RoR style port for .Net. They have a killer Front Controller pattern going that is MonoRail, the have IoC out the yin-yang covered with their MicroKernel, and the have an ActiveRecord pattern in Castle.MicroKernel. They are also working with Aspect# people to weave AOP support in to the project as well.

    Scoble, take a look at what Hammett is doing over there. I think he is doing some very interesting work for the .Net environment.

    RoR is great as is .Net, and everything language has projects that are a best fit for it, but as a sole developer for my firm I love that I can take the .Net platform everywhere I need to solve a problem.

    dru

    Like

  94. PoR is an order of magnitude more productive than any commercial platform (and all but a few non-commercial ones), it is well documented, it is deployment platform agnostic, it is written in a language that is a joy to use, it adheres to sound design principles and the developer community is generally technically qualified, responsive and not overwhelmed by the over-credentialed and under-qualified.

    Have used asp.net v.2, asp.net v.1 and associated tools. While v.2 offers a huge improvement over v.1 of the same, it is still too expensive, too unproductive, emits goofy html, is tied to a single grossly insecure and exorbitantly expensive platform, is poorly documented, and has way too much technically unqualified fan-boy noise in its surrounding community. Can’t develop mission-critical apps in something with support as dismal as asp.net has.

    Like

  95. PoR is an order of magnitude more productive than any commercial platform (and all but a few non-commercial ones), it is well documented, it is deployment platform agnostic, it is written in a language that is a joy to use, it adheres to sound design principles and the developer community is generally technically qualified, responsive and not overwhelmed by the over-credentialed and under-qualified.

    Have used asp.net v.2, asp.net v.1 and associated tools. While v.2 offers a huge improvement over v.1 of the same, it is still too expensive, too unproductive, emits goofy html, is tied to a single grossly insecure and exorbitantly expensive platform, is poorly documented, and has way too much technically unqualified fan-boy noise in its surrounding community. Can’t develop mission-critical apps in something with support as dismal as asp.net has.

    Like

  96. The ship is listing to port as the gapping hole lets in more water. There are no ‘true’ hatches and it’s only a matter of time.

    Like

  97. The ship is listing to port as the gapping hole lets in more water. There are no ‘true’ hatches and it’s only a matter of time.

    Like

  98. Dru’s comments above are well-taken, but I can’t really give it a whole lot of weight because he didn’t really *use* RoR. While there are lots of O/R frameworks out there (for many different platforms), why are there tons of Java developers that have been using Hibernate bailing out for Rails? Because even though Hibernate (and NHibernate) provide the O/R layer, ActiveRecord does it with NO CONFIGURATION. No XML required, nothing. That’s something that is NOT provided by any O/R framework in .Net. (and really can’t be provided, because of the compiled vs. scripted language of .Net vs. Ruby) And quite honestly, that’s a major factor in me not using .Net in some cases. There’s WAY more to RoR than that, but that’s still the one that makes me giggle like a little nerd when start on a new project…

    Like

  99. Dru’s comments above are well-taken, but I can’t really give it a whole lot of weight because he didn’t really *use* RoR. While there are lots of O/R frameworks out there (for many different platforms), why are there tons of Java developers that have been using Hibernate bailing out for Rails? Because even though Hibernate (and NHibernate) provide the O/R layer, ActiveRecord does it with NO CONFIGURATION. No XML required, nothing. That’s something that is NOT provided by any O/R framework in .Net. (and really can’t be provided, because of the compiled vs. scripted language of .Net vs. Ruby) And quite honestly, that’s a major factor in me not using .Net in some cases. There’s WAY more to RoR than that, but that’s still the one that makes me giggle like a little nerd when start on a new project…

    Like

  100. Why is Ruby on Rails so popular? For the same reason that Firefox is slowly gaining ground on IE. Sure, part of it is because the Anything But Microsoft crowd is piling on, but it’s also because both RoR and FF are just simply done right: they implement standards and patterns as expected; they leave the developer in full control; and they benefit from full and immediate input and direction from the user community (and also lessons learned from all those who have gone before).

    Some things in my opinion that make RoR stand out:
    – MVC for dealing with controlling flow
    – Domain Model pattern for dealing with data objects
    – Built-in validation that looks good from a designer point of view
    – Full control of the generated code which equals standards compliance
    – Aesthetically pleasing URLs (trivial but important)

    On the flip side, .Net offers:
    – The Page model and all the fun of postbacks and viewstate, etc. While these offer great conveniences, they make for a lazy programmer and a bloated page and can lead to their own set of headaches. ebay, yahoo, amazon, etc. have managed to be successful without this pattern.
    – The DataSet model and directly binding from your presentation tier to the data tier. Why is that everyone knows that Domain Model is a really nice way to deal with data but it is nearly impossible to find MS examples?
    – A half-baked attempt at data validation controls in 1.1 that rapidly fell short once you got past basic validation.
    – I’m not sure how VS2003 ever got released without being able to generate compliant pages and still having the ‘feature’ to mangle your hand-crafted html (especially since everyone has complained about that since the earliest days of FrontPage).
    – Having page extensions on all your urls might seem pretty trivial but once you go to ‘clean urls’, you’ll never want to go back. Not only are the pleasing to work with, but they are platform agnostic.

    Don’t get me wrong. Microsoft has been my bread and butter for the past 10 years. I can’t leave. However, I follow a lot of designer types (Zeldman, Cederholm, Meyer, etc.) and am envious of the sites, applications, and tools that come out of their side compared to things that come from the Microsoft community. I just hope that RoR puts a little more pressure on MS just like FF. Competition is a good thing.

    Like

  101. Why is Ruby on Rails so popular? For the same reason that Firefox is slowly gaining ground on IE. Sure, part of it is because the Anything But Microsoft crowd is piling on, but it’s also because both RoR and FF are just simply done right: they implement standards and patterns as expected; they leave the developer in full control; and they benefit from full and immediate input and direction from the user community (and also lessons learned from all those who have gone before).

    Some things in my opinion that make RoR stand out:
    – MVC for dealing with controlling flow
    – Domain Model pattern for dealing with data objects
    – Built-in validation that looks good from a designer point of view
    – Full control of the generated code which equals standards compliance
    – Aesthetically pleasing URLs (trivial but important)

    On the flip side, .Net offers:
    – The Page model and all the fun of postbacks and viewstate, etc. While these offer great conveniences, they make for a lazy programmer and a bloated page and can lead to their own set of headaches. ebay, yahoo, amazon, etc. have managed to be successful without this pattern.
    – The DataSet model and directly binding from your presentation tier to the data tier. Why is that everyone knows that Domain Model is a really nice way to deal with data but it is nearly impossible to find MS examples?
    – A half-baked attempt at data validation controls in 1.1 that rapidly fell short once you got past basic validation.
    – I’m not sure how VS2003 ever got released without being able to generate compliant pages and still having the ‘feature’ to mangle your hand-crafted html (especially since everyone has complained about that since the earliest days of FrontPage).
    – Having page extensions on all your urls might seem pretty trivial but once you go to ‘clean urls’, you’ll never want to go back. Not only are the pleasing to work with, but they are platform agnostic.

    Don’t get me wrong. Microsoft has been my bread and butter for the past 10 years. I can’t leave. However, I follow a lot of designer types (Zeldman, Cederholm, Meyer, etc.) and am envious of the sites, applications, and tools that come out of their side compared to things that come from the Microsoft community. I just hope that RoR puts a little more pressure on MS just like FF. Competition is a good thing.

    Like

  102. “If you want the style of development that RoR has, just look at http://www.castleproject.org and what they are doing with a RoR style port for .Net.”

    Bleh, it has all the learning curve of RoR, none of the elegance.

    “O/R support. Bullshit plain and simple. NHibernate, is a perfectly fine O/R toolkit, it gets the job done and is made in development with Hibernate. Don’t like that style take a look at db4o, Bamboo, iBatis, NPersist, etc. There is a lot of support for O/R in .Net and from what I can see .Net 2.0 Generics is going to raise the roof in Very interesting ways.”

    Nope; wrong. There is no decent O/R support in .Net outside code generators like LLBLGen. Everything else needs bazillion pages of XML configuration.

    db40 is an object db, not a O/R mapper.

    Like

  103. “If you want the style of development that RoR has, just look at http://www.castleproject.org and what they are doing with a RoR style port for .Net.”

    Bleh, it has all the learning curve of RoR, none of the elegance.

    “O/R support. Bullshit plain and simple. NHibernate, is a perfectly fine O/R toolkit, it gets the job done and is made in development with Hibernate. Don’t like that style take a look at db4o, Bamboo, iBatis, NPersist, etc. There is a lot of support for O/R in .Net and from what I can see .Net 2.0 Generics is going to raise the roof in Very interesting ways.”

    Nope; wrong. There is no decent O/R support in .Net outside code generators like LLBLGen. Everything else needs bazillion pages of XML configuration.

    db40 is an object db, not a O/R mapper.

    Like

  104. I now develop everything in RoR.

    I managed a development of an internet portal system for a University. I was employed for three years (until the end of this month!) and had a project budget of £1.2 million. We built in .NET and based most of the framework on Microsoft Content Management Server. It took 4 developers, 2 SQL boxes, several hundred thousand lines of code and many, many hundreds of thousands of pounds to get something that was so-so together.

    I reimplemented the whole thing in RoR in about a week, on my own, and it was a quicker system when it was finished. I was able to develop on my feeble little iBook, deploy onto a FreeBSD server and plug it into MySQL. The finished product looked identical to the MS solution but was cheaper, quicker and more fun to develop.

    .NET has come a long way since 2002 when we started out the project, but still – the trouble it caused me has left a bitter taste in my mouth. Part of the problem is that RoR’ers tend to be just better coders, whereas .NET’ers for hire tend to be people who learnt to code out of a book because it sounded like a neat idea.

    There are lots of reasons why I am now a full-time RoRer, but principally:

    – I can develop on the OS of my choice
    – I can deploy to an OS of my customer’s choice (even W2k3 if they need, but they normally ask for something which, you know, works)
    – I can develop quicker
    – Ruby is more fun to work with than ASP.NET by a long, long way. That makes me a more productive developer, which is a Good Thing.
    – I don’t need heavy hardware to develop or deploy with – I can get by with a puny 400Mhz celeron if I need to.
    – It’s completely free
    – I have the source code to patch, work around, learn from
    – My customers pay less which means I can now compete with off-shore developers on cost terms: if they’re using .NET and I’m using RoR, I’ll deliver a better system for less money and in 1/10th the time and yet I still have my nice European lifestyle. Sure the off-shorers will catch up, Rails is so quick I can spend more time talking to my customers and understanding their needs better, so I’ll probably still win out.

    It’s a no-brainer. The fact MS can’t see that .NET in its current form is a ridiculous proposition as a development platform for freelance and SME developers makes me laugh. .NET epitomises the Enterprise developer: close-minded, overly complicated, etc.

    Start supporting mono, I’ll think about coming back, but only if VS is ported to OS X and can run as smoothly on my iBook as Textmate does. 🙂

    Like

  105. I now develop everything in RoR.

    I managed a development of an internet portal system for a University. I was employed for three years (until the end of this month!) and had a project budget of £1.2 million. We built in .NET and based most of the framework on Microsoft Content Management Server. It took 4 developers, 2 SQL boxes, several hundred thousand lines of code and many, many hundreds of thousands of pounds to get something that was so-so together.

    I reimplemented the whole thing in RoR in about a week, on my own, and it was a quicker system when it was finished. I was able to develop on my feeble little iBook, deploy onto a FreeBSD server and plug it into MySQL. The finished product looked identical to the MS solution but was cheaper, quicker and more fun to develop.

    .NET has come a long way since 2002 when we started out the project, but still – the trouble it caused me has left a bitter taste in my mouth. Part of the problem is that RoR’ers tend to be just better coders, whereas .NET’ers for hire tend to be people who learnt to code out of a book because it sounded like a neat idea.

    There are lots of reasons why I am now a full-time RoRer, but principally:

    – I can develop on the OS of my choice
    – I can deploy to an OS of my customer’s choice (even W2k3 if they need, but they normally ask for something which, you know, works)
    – I can develop quicker
    – Ruby is more fun to work with than ASP.NET by a long, long way. That makes me a more productive developer, which is a Good Thing.
    – I don’t need heavy hardware to develop or deploy with – I can get by with a puny 400Mhz celeron if I need to.
    – It’s completely free
    – I have the source code to patch, work around, learn from
    – My customers pay less which means I can now compete with off-shore developers on cost terms: if they’re using .NET and I’m using RoR, I’ll deliver a better system for less money and in 1/10th the time and yet I still have my nice European lifestyle. Sure the off-shorers will catch up, Rails is so quick I can spend more time talking to my customers and understanding their needs better, so I’ll probably still win out.

    It’s a no-brainer. The fact MS can’t see that .NET in its current form is a ridiculous proposition as a development platform for freelance and SME developers makes me laugh. .NET epitomises the Enterprise developer: close-minded, overly complicated, etc.

    Start supporting mono, I’ll think about coming back, but only if VS is ported to OS X and can run as smoothly on my iBook as Textmate does. 🙂

    Like

  106. dru said:
    “I am a .Net developer that tried to get on the RoR band wagon but couldn’t even get the car started. I just could not get Linux and Apache or lighttpd and MySQL to work. The CLI of linux is very cool but ultimatly I need something that works.”

    Why did you choose to use Linux if you are not comfortable with it? I do all of my Rails development on Windows, and the “Instant Rails” package makes development setup dead-simple:

    http://instantrails.rubyforge.org/

    Like

  107. dru said:
    “I am a .Net developer that tried to get on the RoR band wagon but couldn’t even get the car started. I just could not get Linux and Apache or lighttpd and MySQL to work. The CLI of linux is very cool but ultimatly I need something that works.”

    Why did you choose to use Linux if you are not comfortable with it? I do all of my Rails development on Windows, and the “Instant Rails” package makes development setup dead-simple:

    http://instantrails.rubyforge.org/

    Like

  108. curt said:
    “Why did you choose to use Linux if you are not comfortable with it? I do all of my Rails development on Windows, and the “Instant Rails” package makes development setup dead-simple:”

    I needed to deploy my app to the web server, and this is where I got hosed. I was able to install on a windows box quite easily. 🙂

    Dody said:

    “Nope; wrong. There is no decent O/R support in .Net outside code generators like LLBLGen. Everything else needs bazillion pages of XML configuration.”

    How does the amount of config releate to the ability of the O/R to perform? I concur that a lot of XML need be written to NHibernate up and running, but I believe that is a problem that can be resolved. As for RoR’s O/R support what do you do when you have to model complex relationships? I plead ignorance here but what if you need to store data in a non-standard way? Does RoR support the concept of IUserType that Hibernate has?

    “db40 is an object db, not a O/R mapper. ”
    – I stand corrected 🙂

    Ed W. said:
    “If you don’t like the command line bits of RoR then check out RadRails for a phenominal RAD environment for rails:”

    Very cool.

    dru

    Like

  109. curt said:
    “Why did you choose to use Linux if you are not comfortable with it? I do all of my Rails development on Windows, and the “Instant Rails” package makes development setup dead-simple:”

    I needed to deploy my app to the web server, and this is where I got hosed. I was able to install on a windows box quite easily. 🙂

    Dody said:

    “Nope; wrong. There is no decent O/R support in .Net outside code generators like LLBLGen. Everything else needs bazillion pages of XML configuration.”

    How does the amount of config releate to the ability of the O/R to perform? I concur that a lot of XML need be written to NHibernate up and running, but I believe that is a problem that can be resolved. As for RoR’s O/R support what do you do when you have to model complex relationships? I plead ignorance here but what if you need to store data in a non-standard way? Does RoR support the concept of IUserType that Hibernate has?

    “db40 is an object db, not a O/R mapper. ”
    – I stand corrected 🙂

    Ed W. said:
    “If you don’t like the command line bits of RoR then check out RadRails for a phenominal RAD environment for rails:”

    Very cool.

    dru

    Like

  110. “How does the amount of config releate to the ability of the O/R to perform? ”

    It does because it tightens the turnaround from schema to code. Alter your table, and your object model automatically reflect that changes without a single line of code needed to be changed.

    All your columns become your object model properties automatically. So if you want to have composite property (IUserType), just add to your model a property that return or assign values to other fields. And you can override the default column properties to return or access funky stuff that is not a primitive type. (Check out http://api.rubyonrails.com/ to see what you can do with ActiveRecord)

    There is nothing that RoR can do that ASP.Net or other frameworks cannot do or emulate. It’s how it does it is the key.

    ActiveRecords supports 1:1,1:m,n:m relationships with hierarcy, list, and some estoric act_as_taggable mixins.

    You model the relationships directly on your Model class definition with has_many Orders, has_one etc, etc

    Like

  111. “How does the amount of config releate to the ability of the O/R to perform? ”

    It does because it tightens the turnaround from schema to code. Alter your table, and your object model automatically reflect that changes without a single line of code needed to be changed.

    All your columns become your object model properties automatically. So if you want to have composite property (IUserType), just add to your model a property that return or assign values to other fields. And you can override the default column properties to return or access funky stuff that is not a primitive type. (Check out http://api.rubyonrails.com/ to see what you can do with ActiveRecord)

    There is nothing that RoR can do that ASP.Net or other frameworks cannot do or emulate. It’s how it does it is the key.

    ActiveRecords supports 1:1,1:m,n:m relationships with hierarcy, list, and some estoric act_as_taggable mixins.

    You model the relationships directly on your Model class definition with has_many Orders, has_one etc, etc

    Like

  112. ASP.Net however is still the most productive and powerful webframework framework if you require a lot of integration with other systems and workflow.

    And right now I don’t care about more libraries from Microsoft. Give us a more powerful and productive language (C# 3.0) and it will improve our productivity in .Net because we can express more with less code.

    Like

  113. ASP.Net however is still the most productive and powerful webframework framework if you require a lot of integration with other systems and workflow.

    And right now I don’t care about more libraries from Microsoft. Give us a more powerful and productive language (C# 3.0) and it will improve our productivity in .Net because we can express more with less code.

    Like

  114. Wow. It was a lot of fun reading the past 70 posts or so. I agree with every one of them. I’ll admit I haven’t played around enough with ASP.NET 2.0, and I’ve seen people develop applications quickly in webcasts and videos at MSDN.

    But when I try to follow along, to do it myself, it only goes that quickly until the demo ends. After that, I’m stuck drowning in the 20 different ways to do something that’s almost what I want to do, but not quite. And of course, stuck in Visual Stuido, which as someone else mentioned above, is really a requirement for .NET development.

    Glad to hear other Zeldman-Meyer types are attracted to Rails. I wouldn’t be surprised if RoR has more designers and artists playing with it than .NET does. That’s the beauty of simplicity.

    Time after time, while working on a Rails application in Ruby, I find myself thinking, “That’s it?” I expect so much more sweat, tears and code to do something simple … but in Ruby, it really *is* that simple.

    There’s no pretense about creating a windows application with HTML, or the godawful avalon markup that reminds me of the worst HTML 3.2 I’ve ever seen. Designers know to separate presentation from data, with CSS and XHTML. No or here, thank you.

    And .NET reminds me of PHP, in the way everything is included in a monster package. Rails relies heavily on packaging features as independent and easily upgradable parts. Rails itself isn’t one thing, it’s made up of 5-6 ruby “gems”, like ActiveRecord for databases and ActionWebService.

    You can download “plugins” for rails, make your own individual classes and modules in the lib folder, or reuse parts of your application as engines or components. And it’s not just Rails, you can easily install “gems” for Ruby, like Rails itself, and then use the new classes with just one line. RedCloth, for example: http://www.whytheluckystiff.net/ruby/redcloth/

    The best part? You only need to know one or two commands. “gem install redcloth” from any cmd prompt, and wham, it’s done. No need for a web browser. “gem update” and you’ve just upgraded everything. Want to try writing an application for EdgeRails – the SVN version?

    “rake freeze_edge” in your Rails application’s folder, and now your local application is running edge rails from the /vendor folder. It’s that easy. 1000x faster than installing a .NET 2.0 beta.

    Worried that your web host doesn’t have the exact gem and rails versions you need? “rake freeze_gems” and your rails gems are copied to /vendor. Other gems are easy to add, because they’re packaged the same way, in one folder for easy xcopy. “rake” does even more, of course. Look over “rake –tasks” – from testing to doc generation to db maintenance, it can help you do it all, quickly.

    Don’t be afraid of the command line. It’s fast, and really not half as scary as you think it is. Lost? Type a command or ruby script with –help at the end. Faster than waiting for MSDN to load …

    Like

  115. Wow. It was a lot of fun reading the past 70 posts or so. I agree with every one of them. I’ll admit I haven’t played around enough with ASP.NET 2.0, and I’ve seen people develop applications quickly in webcasts and videos at MSDN.

    But when I try to follow along, to do it myself, it only goes that quickly until the demo ends. After that, I’m stuck drowning in the 20 different ways to do something that’s almost what I want to do, but not quite. And of course, stuck in Visual Stuido, which as someone else mentioned above, is really a requirement for .NET development.

    Glad to hear other Zeldman-Meyer types are attracted to Rails. I wouldn’t be surprised if RoR has more designers and artists playing with it than .NET does. That’s the beauty of simplicity.

    Time after time, while working on a Rails application in Ruby, I find myself thinking, “That’s it?” I expect so much more sweat, tears and code to do something simple … but in Ruby, it really *is* that simple.

    There’s no pretense about creating a windows application with HTML, or the godawful avalon markup that reminds me of the worst HTML 3.2 I’ve ever seen. Designers know to separate presentation from data, with CSS and XHTML. No or here, thank you.

    And .NET reminds me of PHP, in the way everything is included in a monster package. Rails relies heavily on packaging features as independent and easily upgradable parts. Rails itself isn’t one thing, it’s made up of 5-6 ruby “gems”, like ActiveRecord for databases and ActionWebService.

    You can download “plugins” for rails, make your own individual classes and modules in the lib folder, or reuse parts of your application as engines or components. And it’s not just Rails, you can easily install “gems” for Ruby, like Rails itself, and then use the new classes with just one line. RedCloth, for example: http://www.whytheluckystiff.net/ruby/redcloth/

    The best part? You only need to know one or two commands. “gem install redcloth” from any cmd prompt, and wham, it’s done. No need for a web browser. “gem update” and you’ve just upgraded everything. Want to try writing an application for EdgeRails – the SVN version?

    “rake freeze_edge” in your Rails application’s folder, and now your local application is running edge rails from the /vendor folder. It’s that easy. 1000x faster than installing a .NET 2.0 beta.

    Worried that your web host doesn’t have the exact gem and rails versions you need? “rake freeze_gems” and your rails gems are copied to /vendor. Other gems are easy to add, because they’re packaged the same way, in one folder for easy xcopy. “rake” does even more, of course. Look over “rake –tasks” – from testing to doc generation to db maintenance, it can help you do it all, quickly.

    Don’t be afraid of the command line. It’s fast, and really not half as scary as you think it is. Lost? Type a command or ruby script with –help at the end. Faster than waiting for MSDN to load …

    Like

  116. Correction: In the 5th paragraph, “No or here” was supposed to say “No (font tags) or (center tags) here”.

    … and even as I talk about rails being simple and less code, I sure wrote a lot. Sorry :p

    Blame it on the extra productivity 😀

    Like

  117. Correction: In the 5th paragraph, “No or here” was supposed to say “No (font tags) or (center tags) here”.

    … and even as I talk about rails being simple and less code, I sure wrote a lot. Sorry :p

    Blame it on the extra productivity 😀

    Like

  118. I have been doing rails for about 2 weeks now, purchased the Agile book and have been playing around with it. There are a few reasons I will not be switching to ruby and I really hope someone can respond to this and prove me wrong because I always love to use the latest and greatest.

    Some background about my business and position I’m in. I own my company, we are not a software company, we are a manufacturer; we do several million a year in sales with a minimal staff. I believe we accomplish what we do because, unlike others in our industry, our software is custom built and allows to have features others can’t compete with except the few big players in our industry without needing the resources. I am a software engineer at heart, one of my degrees is in computer science and I have experience working for large enterprise apps and small startups.

    Why I won’t be doing new development or changing development to RoR:

    1. Testing Before Deployment: I hire developers overseas, I currently have two full time developers on staff. One in Romania and one in India. Right now I can just check out their changes from source control, merge them with whatever little changes or bux fixes I have made, do a compile and it tells me right away what I need to fix. Once the compile time checks are done I do my unit tests with NUnit and fix any remaining errors. I do some basic UI testing or have one of my secretaries check the UI to make sure it works, then I deploy it over the weekend so when everyone comes in on Monday, it just works. How does RoR give me a significant advantage over my current situation?

    2. Development and Maintenance Time: I use LLBLGen Pro to generate my ORM layer. There is no xml configuration, you point it at your database and it gives you objects that work right away. You can easily add validation and display information in a web page. It’s the greatest thing ever and I’ve been using it for 9 months, has increased productivity incredibly. There are no stored procedures to write, you just dive into writing code. This combined with the number 1 above and our maintenance is a breeze.

    3. Refactoring: A few months ago we expanded our software to allows sales people to use the intranet application to open up cases and track their sales and commissions and interact with the office staff while on the road. Problem was we had no real security. There was only admin and user, but now we needed row level security access. Meaning that certain users could see certain rows and not be mutually exclusive. While taking on this task we decided to add history tracking so we could see what users made changes and when. I did it over the weekend while I was visiting the inlaws. 12 hours to refactor the entire application so that every single table has a History table that stores all changes made and to implement row level security. Row level security gives our sales people access to just their customers, but gives our office access to all customers, and gives customers access to only their information.

    4. Visual Studio: With Visual Studio I know exactly what properties all of my objects have so I don’t have to think about it. Our application uses around 40 tables. Wouldn’t it be difficult to always have to look up every name of every column?

    5. Time: I only get to actually write software 1-2 hours a day because I’m on the phone, in meetings, traveling, etc. When there is a critical bug in the software that must be fixed asap I can fire up our exception tracking webpage and figure out exactly where the exception is occuring, even the values of the variables involved in the exception through .Net reflection and create a test case, repeat the problem, and then deploy the fix in a matter of about 15 minutes. Granted, some problems might take a little longer to solve, but we’ve never had a bug keep us down for more than an hour, nothing that is a show stopper.

    6. Other applications: Our intranet application can be given access to the LLBLGen objects because it’s within our internal network, but what about our applications that sit on hosted servers in datacenters? The web apps our customers access? They use .Net remoting, which is VERY fast and doesn’t require us to write much more code. No need for web services with .Net remoting. Also, we have system services and a few desktop integrated apps (fedex and ups integration, some quickbooks integration for AP) that use the SAME objects our web platform does. It was wonderful to write the security into our objects and then have it automatically be used by report generation to ensure no one could generate and print reports they shouldn’t be able to.

    7. More bugs: Duplicating business logic in RoR just creates more places to have bugs. Having a standard set of objects in .Net that my ASP .Net, desktop apps, system services can use makes me feel much more confident.

    8. Salary: This one doesn’t matter for me, but I wonder why other people haven’t mentioned it. I’m a developer at heart and I sometimes wonder what it would be like to go back to the world of programming so I occasionally check the job boards for C# and .Net software engineer positions. In my area I could be pulling down a salary of 80k-150k for a lead developer position. There just aren’t enough .Net developers to fill the positions out there so you’re going to get a great salary rather than learning RoR.

    RoR was great initially. It let me get an app that could search our database for orders up and running quickly, could even let me display the order quickly, but then as soon as I needed to do something more indepth, for instance the security model or communicating with our other services, I found things to be the same level of difficulty (after overcoming the learning hurdles) as using LLBLGen because at least I had the Visual Studio IDE to tell me everything I needed to know about an object.

    I want someone to prove me wrong because RoR is a great product, but sometimes working with it made me feel like I was working with a nice framework built around old ASP.

    Like

  119. I have been doing rails for about 2 weeks now, purchased the Agile book and have been playing around with it. There are a few reasons I will not be switching to ruby and I really hope someone can respond to this and prove me wrong because I always love to use the latest and greatest.

    Some background about my business and position I’m in. I own my company, we are not a software company, we are a manufacturer; we do several million a year in sales with a minimal staff. I believe we accomplish what we do because, unlike others in our industry, our software is custom built and allows to have features others can’t compete with except the few big players in our industry without needing the resources. I am a software engineer at heart, one of my degrees is in computer science and I have experience working for large enterprise apps and small startups.

    Why I won’t be doing new development or changing development to RoR:

    1. Testing Before Deployment: I hire developers overseas, I currently have two full time developers on staff. One in Romania and one in India. Right now I can just check out their changes from source control, merge them with whatever little changes or bux fixes I have made, do a compile and it tells me right away what I need to fix. Once the compile time checks are done I do my unit tests with NUnit and fix any remaining errors. I do some basic UI testing or have one of my secretaries check the UI to make sure it works, then I deploy it over the weekend so when everyone comes in on Monday, it just works. How does RoR give me a significant advantage over my current situation?

    2. Development and Maintenance Time: I use LLBLGen Pro to generate my ORM layer. There is no xml configuration, you point it at your database and it gives you objects that work right away. You can easily add validation and display information in a web page. It’s the greatest thing ever and I’ve been using it for 9 months, has increased productivity incredibly. There are no stored procedures to write, you just dive into writing code. This combined with the number 1 above and our maintenance is a breeze.

    3. Refactoring: A few months ago we expanded our software to allows sales people to use the intranet application to open up cases and track their sales and commissions and interact with the office staff while on the road. Problem was we had no real security. There was only admin and user, but now we needed row level security access. Meaning that certain users could see certain rows and not be mutually exclusive. While taking on this task we decided to add history tracking so we could see what users made changes and when. I did it over the weekend while I was visiting the inlaws. 12 hours to refactor the entire application so that every single table has a History table that stores all changes made and to implement row level security. Row level security gives our sales people access to just their customers, but gives our office access to all customers, and gives customers access to only their information.

    4. Visual Studio: With Visual Studio I know exactly what properties all of my objects have so I don’t have to think about it. Our application uses around 40 tables. Wouldn’t it be difficult to always have to look up every name of every column?

    5. Time: I only get to actually write software 1-2 hours a day because I’m on the phone, in meetings, traveling, etc. When there is a critical bug in the software that must be fixed asap I can fire up our exception tracking webpage and figure out exactly where the exception is occuring, even the values of the variables involved in the exception through .Net reflection and create a test case, repeat the problem, and then deploy the fix in a matter of about 15 minutes. Granted, some problems might take a little longer to solve, but we’ve never had a bug keep us down for more than an hour, nothing that is a show stopper.

    6. Other applications: Our intranet application can be given access to the LLBLGen objects because it’s within our internal network, but what about our applications that sit on hosted servers in datacenters? The web apps our customers access? They use .Net remoting, which is VERY fast and doesn’t require us to write much more code. No need for web services with .Net remoting. Also, we have system services and a few desktop integrated apps (fedex and ups integration, some quickbooks integration for AP) that use the SAME objects our web platform does. It was wonderful to write the security into our objects and then have it automatically be used by report generation to ensure no one could generate and print reports they shouldn’t be able to.

    7. More bugs: Duplicating business logic in RoR just creates more places to have bugs. Having a standard set of objects in .Net that my ASP .Net, desktop apps, system services can use makes me feel much more confident.

    8. Salary: This one doesn’t matter for me, but I wonder why other people haven’t mentioned it. I’m a developer at heart and I sometimes wonder what it would be like to go back to the world of programming so I occasionally check the job boards for C# and .Net software engineer positions. In my area I could be pulling down a salary of 80k-150k for a lead developer position. There just aren’t enough .Net developers to fill the positions out there so you’re going to get a great salary rather than learning RoR.

    RoR was great initially. It let me get an app that could search our database for orders up and running quickly, could even let me display the order quickly, but then as soon as I needed to do something more indepth, for instance the security model or communicating with our other services, I found things to be the same level of difficulty (after overcoming the learning hurdles) as using LLBLGen because at least I had the Visual Studio IDE to tell me everything I needed to know about an object.

    I want someone to prove me wrong because RoR is a great product, but sometimes working with it made me feel like I was working with a nice framework built around old ASP.

    Like

  120. I used to be pretty active in the C# world. I even tried my hand at writing an article for the Code Project at one point. (IMHO, a Code Project look-alike is one thing the open source, and especially Ruby/Rails community could really use. Maybe I’ll write it. Should take me maybe a week or two with Rails.)

    At the time, I considered C# to be a really strong contender compared to Java. It had it’s problems, to be sure, not the least of which was Fusion, which I still consider as its real Achilles heel. Although there’s also the ASP.Net deployment nightmares, and the difficulty in getting workable MVC stuff going in ASP.Net, and the obvious lack of XHTML support.

    But overall, I thought it was workable. I got around the Fusion issues by just learning the ugly quirks inside and out. I got around the MVC issues by writing my own custom framework. And I got around the lack of XHTML support by pretty much throwing the entirety of ASP.Net out the window. If you haven’t already figured it out by now, the main reason I was still hanging out in the .Net community by this point was the language itself. C# is reasonably nice. Yeah, it’s an obvious rip-off of Java in many cases. But it’s a damn fine rip-off. You guys stole the good parts of Java and ditched the cruft. The class library actually even makes sense. Kudos.

    But then, one day, I was reading Slashdot. I don’t normally read Slashdot, and if I do, it’s a quick glance and back to whatever. But on this particular day, there was an article by Curt Hibbs on Rails. I had some free time, so I went through the tutorial. And in about twenty minutes, I was hooked. I mean, really, really hooked. Instead of having to hack half the system apart to get it to do what I needed/wanted, it was smart enough to get the hell out of my way and let me do whatever I damn well pleased. I don’t need drag-and-drop crutches. The command line doesn’t intimidate me, I know better. The worthless coders that just barely squeaked through CS or SE might need their hands held, but I don’t.

    In any case, long-story-short, a year later, I find myself using a PowerBook instead, because it has TextMate. For me, TextMate and the Unix command line were the killer apps that switched me off Windows and onto the Mac. Take note!

    Rails works fine on Windows, but it has its quirks. And since I was deploying to a FreeBSD box, it was just a lot more sensible to switch to a system closer in nature to what I was deploying on.

    In the end, the reason Microsoft .Net will fail is simple. It attempted to make coding so easy that anyone could do it. The guys who couldn’t hack it in a CS theory class love this, and will rave about your product. But at the end of the day, all you’ve got is a bunch of guys, who should’ve switched majors, writing really bad code.

    When I visit my bank’s website, I see “.aspx” suffixing each URL. And then I see the login page “protected” by SSL that requires merely a 4 digit numeric pin number and the account number printed on every one of my checks. The site doesn’t employ any countermeasures whatsoever against brute force password attacks, and I was able to pummel my way into my own bank account in about 10 minutes. I was never notified of the several thousand attempts to access my account with an incorrect password from the same IP address.

    Attracting stupid coders is a patently stupid idea. Microsoft has only tried to hire the best of the best for its own coding talent for a long time, but when it comes to their own products, they try to lower the barriers to entry as low as they can make them. The result is insecure code written for an insecure platform and a mass migration of the smart guys in the room to open-source/Apple’s products.

    Like

  121. I used to be pretty active in the C# world. I even tried my hand at writing an article for the Code Project at one point. (IMHO, a Code Project look-alike is one thing the open source, and especially Ruby/Rails community could really use. Maybe I’ll write it. Should take me maybe a week or two with Rails.)

    At the time, I considered C# to be a really strong contender compared to Java. It had it’s problems, to be sure, not the least of which was Fusion, which I still consider as its real Achilles heel. Although there’s also the ASP.Net deployment nightmares, and the difficulty in getting workable MVC stuff going in ASP.Net, and the obvious lack of XHTML support.

    But overall, I thought it was workable. I got around the Fusion issues by just learning the ugly quirks inside and out. I got around the MVC issues by writing my own custom framework. And I got around the lack of XHTML support by pretty much throwing the entirety of ASP.Net out the window. If you haven’t already figured it out by now, the main reason I was still hanging out in the .Net community by this point was the language itself. C# is reasonably nice. Yeah, it’s an obvious rip-off of Java in many cases. But it’s a damn fine rip-off. You guys stole the good parts of Java and ditched the cruft. The class library actually even makes sense. Kudos.

    But then, one day, I was reading Slashdot. I don’t normally read Slashdot, and if I do, it’s a quick glance and back to whatever. But on this particular day, there was an article by Curt Hibbs on Rails. I had some free time, so I went through the tutorial. And in about twenty minutes, I was hooked. I mean, really, really hooked. Instead of having to hack half the system apart to get it to do what I needed/wanted, it was smart enough to get the hell out of my way and let me do whatever I damn well pleased. I don’t need drag-and-drop crutches. The command line doesn’t intimidate me, I know better. The worthless coders that just barely squeaked through CS or SE might need their hands held, but I don’t.

    In any case, long-story-short, a year later, I find myself using a PowerBook instead, because it has TextMate. For me, TextMate and the Unix command line were the killer apps that switched me off Windows and onto the Mac. Take note!

    Rails works fine on Windows, but it has its quirks. And since I was deploying to a FreeBSD box, it was just a lot more sensible to switch to a system closer in nature to what I was deploying on.

    In the end, the reason Microsoft .Net will fail is simple. It attempted to make coding so easy that anyone could do it. The guys who couldn’t hack it in a CS theory class love this, and will rave about your product. But at the end of the day, all you’ve got is a bunch of guys, who should’ve switched majors, writing really bad code.

    When I visit my bank’s website, I see “.aspx” suffixing each URL. And then I see the login page “protected” by SSL that requires merely a 4 digit numeric pin number and the account number printed on every one of my checks. The site doesn’t employ any countermeasures whatsoever against brute force password attacks, and I was able to pummel my way into my own bank account in about 10 minutes. I was never notified of the several thousand attempts to access my account with an incorrect password from the same IP address.

    Attracting stupid coders is a patently stupid idea. Microsoft has only tried to hire the best of the best for its own coding talent for a long time, but when it comes to their own products, they try to lower the barriers to entry as low as they can make them. The result is insecure code written for an insecure platform and a mass migration of the smart guys in the room to open-source/Apple’s products.

    Like

  122. Regarding Charles Stapleton’s comments above:

    1. How does RoR give me a significant advantage over my current situation?

    Assuming we’re talking web applications here, because difficult-to-test presentation logic is better separated, IMHO, you can get a bit more thoroughness in your testing. It’s not revolutionary, but it helps.

    2. I use LLBLGen Pro to generate my ORM layer.

    Sounds neat. I hadn’t heard of LLBLGen Pro before, but it sounds fairly similar in nature to the concept of Rails’ ActiveRecord, just a little less dynamic. In this case, Rails’ main advantage on this point is likely to be cost and the ability to modify it, if necessary, since I assume LLBLGen Pro is not open-source.

    3. Refactoring.

    Depends. On the subject of row-level security, I’m pretty sure I saw a drop-in module for doing this in ActiveRecord just the other day. If I’m wrong on that one, a generic drop-in module would still not be all that difficult to write. Assuming the module fit your requirements, it possibly could have been a 30 minute job instead of a 12 hour job. Hard to say. But I’m quite sure it would not be longer than the 12 hour timeframe you quoted if you had to write it manually.

    4. Wouldn’t it be difficult to always have to look up every name of every column?

    That’s one reason why I use multiple desktops and I keep my PostgreSQL frontend open whenever I’m coding in Rails. If I had to pick one thing that’s nice about Visual Studio, it would hands-down, without question, be Intellisense. If you use the Rails plugin for Eclipse, I believe you get some of this back, but personally, I still prefer TextMate. I expect TextMate to be getting a superior clone of Intellisense pretty much any minute now. That one’s only a matter of time. Obviously, though, if you’re on Windows, TextMate is irrelevant.

    5. We’ve never had a bug keep us down for more than an hour, nothing that is a show stopper.

    The same can generally be said for Rails. Usually the exact location of the problem will be detailed in the stack traces found in the log files. Similarly, it’s usually as simple as adding in a new unit test and fixing the bug.

    6. .Net Remoting?

    Ruby has DRb if you need it. But I would pick a RESTful webservice over remoting any day of the year at this point. I used to do a lot of work with .Net Remoting, and while I completely agree about the speed isue, I personally found the tight coupling to be much too scary for my tastes. The security thing might be a bit trickier.

    7. Duplicating business logic in RoR just creates more places to have bugs.

    No arguement there. Running C# code side-by-side with RoR code that does essentially the same thing would probably be a bad idea. Don’t Repeat Yourself.

    8. In my area I could be pulling down a salary of 80k-150k for a lead developer position.

    RoR is a bit too new to tell for sure, but honestly, I would expect the salary to be about on par with C#. But there can be no doubt that RoR is growing by leaps and bounds and the demand for RoR people is picking up scary-fast.

    “I want someone to prove me wrong because RoR is a great product.”

    Unfortunately, I doubt you’ll find someone to “prove you wrong” because frankly, I think you probably made the most practical choice under the circumstances. You should always use the right tool for the job. And while I’m pretty certain that RoR is not a substantially worse choice, you already have preexisting code, and I see no sufficiently good reason to migrate it to Ruby. If you were starting something from scratch, I would probably have recommended RoR, if for no other reason than momentum, but under the circumstances, I think you made the right choice. But I would constantly keep reevaluating that choice — three months from now, it could very well be the wrong one.

    Like

  123. Regarding Charles Stapleton’s comments above:

    1. How does RoR give me a significant advantage over my current situation?

    Assuming we’re talking web applications here, because difficult-to-test presentation logic is better separated, IMHO, you can get a bit more thoroughness in your testing. It’s not revolutionary, but it helps.

    2. I use LLBLGen Pro to generate my ORM layer.

    Sounds neat. I hadn’t heard of LLBLGen Pro before, but it sounds fairly similar in nature to the concept of Rails’ ActiveRecord, just a little less dynamic. In this case, Rails’ main advantage on this point is likely to be cost and the ability to modify it, if necessary, since I assume LLBLGen Pro is not open-source.

    3. Refactoring.

    Depends. On the subject of row-level security, I’m pretty sure I saw a drop-in module for doing this in ActiveRecord just the other day. If I’m wrong on that one, a generic drop-in module would still not be all that difficult to write. Assuming the module fit your requirements, it possibly could have been a 30 minute job instead of a 12 hour job. Hard to say. But I’m quite sure it would not be longer than the 12 hour timeframe you quoted if you had to write it manually.

    4. Wouldn’t it be difficult to always have to look up every name of every column?

    That’s one reason why I use multiple desktops and I keep my PostgreSQL frontend open whenever I’m coding in Rails. If I had to pick one thing that’s nice about Visual Studio, it would hands-down, without question, be Intellisense. If you use the Rails plugin for Eclipse, I believe you get some of this back, but personally, I still prefer TextMate. I expect TextMate to be getting a superior clone of Intellisense pretty much any minute now. That one’s only a matter of time. Obviously, though, if you’re on Windows, TextMate is irrelevant.

    5. We’ve never had a bug keep us down for more than an hour, nothing that is a show stopper.

    The same can generally be said for Rails. Usually the exact location of the problem will be detailed in the stack traces found in the log files. Similarly, it’s usually as simple as adding in a new unit test and fixing the bug.

    6. .Net Remoting?

    Ruby has DRb if you need it. But I would pick a RESTful webservice over remoting any day of the year at this point. I used to do a lot of work with .Net Remoting, and while I completely agree about the speed isue, I personally found the tight coupling to be much too scary for my tastes. The security thing might be a bit trickier.

    7. Duplicating business logic in RoR just creates more places to have bugs.

    No arguement there. Running C# code side-by-side with RoR code that does essentially the same thing would probably be a bad idea. Don’t Repeat Yourself.

    8. In my area I could be pulling down a salary of 80k-150k for a lead developer position.

    RoR is a bit too new to tell for sure, but honestly, I would expect the salary to be about on par with C#. But there can be no doubt that RoR is growing by leaps and bounds and the demand for RoR people is picking up scary-fast.

    “I want someone to prove me wrong because RoR is a great product.”

    Unfortunately, I doubt you’ll find someone to “prove you wrong” because frankly, I think you probably made the most practical choice under the circumstances. You should always use the right tool for the job. And while I’m pretty certain that RoR is not a substantially worse choice, you already have preexisting code, and I see no sufficiently good reason to migrate it to Ruby. If you were starting something from scratch, I would probably have recommended RoR, if for no other reason than momentum, but under the circumstances, I think you made the right choice. But I would constantly keep reevaluating that choice — three months from now, it could very well be the wrong one.

    Like

  124. I’ve had a discussion with other people about this issue on the LLBLGen forums and the consensus seems to be that if you’re developing a web only application and you don’t need access all of the enterprise features then RoR is the way to go, which seems to be what everyone else has come to discussing this ASP .Net vs RoR issue.

    But I’m always evaluating what can help, that’s what attracted me about RoR in the first place.

    I wish LLBLGen got more exposure because it’s great at what it does: create an ORM layer. It doesn’t try to be everything and that’s why it’s so perfect for ORM.

    And as far as your bank using .aspx and brute forcing an attack, anyone could have done that on any platform, not just .Net. If you’re suggesting that Visual Studio makes idiots out of programmers, I agree. I think that people should have a good background in using a command line and vi through CS courses in college, but once you’ve covered the theory and have a grasp on how it all works together VS is a great tool to assist you in developing/maintaining applications quickly.

    You know part of the reason RoR interested me so much is because I really really want to get rid of my Toshiba laptop and get an iBook to write code. Certaintly not the most important reason, but a nice benefit.

    Like

  125. I’ve had a discussion with other people about this issue on the LLBLGen forums and the consensus seems to be that if you’re developing a web only application and you don’t need access all of the enterprise features then RoR is the way to go, which seems to be what everyone else has come to discussing this ASP .Net vs RoR issue.

    But I’m always evaluating what can help, that’s what attracted me about RoR in the first place.

    I wish LLBLGen got more exposure because it’s great at what it does: create an ORM layer. It doesn’t try to be everything and that’s why it’s so perfect for ORM.

    And as far as your bank using .aspx and brute forcing an attack, anyone could have done that on any platform, not just .Net. If you’re suggesting that Visual Studio makes idiots out of programmers, I agree. I think that people should have a good background in using a command line and vi through CS courses in college, but once you’ve covered the theory and have a grasp on how it all works together VS is a great tool to assist you in developing/maintaining applications quickly.

    You know part of the reason RoR interested me so much is because I really really want to get rid of my Toshiba laptop and get an iBook to write code. Certaintly not the most important reason, but a nice benefit.

    Like

  126. Hello, very interesting comments.

    I am a team leader in a software company in Romania – we developed an ERP based on a client – server architecture (visual foxpro clients – oracle database).

    The problem wich we are faced is that we need to make user interface on web for some parts of the ERP, but we want to maintain also the desktop applications.

    We discussed about the strategy to take – and concluded that we need to develope a bussiness layer physically separated from the user interface and the data layer that we can use in the desktop applications and in the web applications.

    In Visual Foxpro we want to use ComCodebook (free framework) to make dll’s that we can use in an ASP.NET app (PHP/ASP, but we incline towards ASP.NET) as datasource bussines objects and also in our Visual Foxpro apps.

    We already tried it on a small internal project to see how it works.

    This would lead to .NET.

    For now we don’t have anyone who has worked before with asp.net apps or even with .net apps – so, if we take this route – we must all learn .net.

    I am very excited with ROR after taking Curt Hibbs’s tutorial – I feel my coleagues will too. I think the learning curve is be much flatter than on Asp.Net.

    Before I can talk with my coleagues about ROR as an alternative I want to ask a couple of questions.

    First question – ROR knows how to work with bussiness objects wrapped in dll’s?

    The second one – Is it even possible to make bussines logic code that we can use in ROR and in a Visual Foxpro app?

    Like

  127. Hello, very interesting comments.

    I am a team leader in a software company in Romania – we developed an ERP based on a client – server architecture (visual foxpro clients – oracle database).

    The problem wich we are faced is that we need to make user interface on web for some parts of the ERP, but we want to maintain also the desktop applications.

    We discussed about the strategy to take – and concluded that we need to develope a bussiness layer physically separated from the user interface and the data layer that we can use in the desktop applications and in the web applications.

    In Visual Foxpro we want to use ComCodebook (free framework) to make dll’s that we can use in an ASP.NET app (PHP/ASP, but we incline towards ASP.NET) as datasource bussines objects and also in our Visual Foxpro apps.

    We already tried it on a small internal project to see how it works.

    This would lead to .NET.

    For now we don’t have anyone who has worked before with asp.net apps or even with .net apps – so, if we take this route – we must all learn .net.

    I am very excited with ROR after taking Curt Hibbs’s tutorial – I feel my coleagues will too. I think the learning curve is be much flatter than on Asp.Net.

    Before I can talk with my coleagues about ROR as an alternative I want to ask a couple of questions.

    First question – ROR knows how to work with bussiness objects wrapped in dll’s?

    The second one – Is it even possible to make bussines logic code that we can use in ROR and in a Visual Foxpro app?

    Like

  128. I love both RoR and .NET, but RoR is my first choice these days. I have only 2 points to contribute here:…

    Discovering Rails shook my confidence in Microsoft. I remember thinking “Why isn’t ASP.NET as nice as this? I almost *expect* Microsoft to be better than this little open source movement…”. They have such abundance of good people and skills yet ASP.NET didn’t come close to the elegance and feel-good-factor of Rails, in my opinion at least. That’s not encouraging, I’m suddenly in a position where I’m questioning Microsofts ability to their job as a vendor of development tools.

    One thing I do love about .NET over RoR is the abundence of polished, professional and robust components and libraries available. I know that if my client needs sophisticated multi-lingual reporting then I can go out and find 10 potential component vendors who will sell me something pretty solid, and respond to my support requests within 12 hours. This gives me confidence that I don’t always get when developing a RoR app. However, I’d love to see a commercial component market open up around RoR that can offer such things!

    There’s my 2 pence worth!

    Like

  129. I love both RoR and .NET, but RoR is my first choice these days. I have only 2 points to contribute here:…

    Discovering Rails shook my confidence in Microsoft. I remember thinking “Why isn’t ASP.NET as nice as this? I almost *expect* Microsoft to be better than this little open source movement…”. They have such abundance of good people and skills yet ASP.NET didn’t come close to the elegance and feel-good-factor of Rails, in my opinion at least. That’s not encouraging, I’m suddenly in a position where I’m questioning Microsofts ability to their job as a vendor of development tools.

    One thing I do love about .NET over RoR is the abundence of polished, professional and robust components and libraries available. I know that if my client needs sophisticated multi-lingual reporting then I can go out and find 10 potential component vendors who will sell me something pretty solid, and respond to my support requests within 12 hours. This gives me confidence that I don’t always get when developing a RoR app. However, I’d love to see a commercial component market open up around RoR that can offer such things!

    There’s my 2 pence worth!

    Like

  130. I hate to say this for many reasons (my company Xtras.Net sells .NET tools and also because the cult-leader-like behavior of the Rail creators), but Ruby On Rails has many, many things over ASP.NET 2.0. It appears it was designed as “pragmatic” as opposed to Microsoft’s “visionary.” What’s more, the paradigm of ASP.NET is, IMO, all wrong. The forms/controls paradigm with VIEWSTATE and __DoPostBack() and very little use of real-world patterns. Microsoft usually solves 85% of the problem but then leaves developers to repeatedly reinvent the wheel with the remaining 15%. I think one of the key reasons is Microsoft’s developer division architects don’t actually use their tools to create real-world apps. The RoR folks do. Necessity is the mother of invention. What I think Microsoft should do is provide a grant to the MonoRail folks so they can add a bunch of full time programmers to the project so that it can grow and become a mature alternative to RoR. But if they do, Microsoft shouldn’t control it. Instead, the team should look to get as many real-world projects implemented using MonoRail as possible, and offer seats on the paid developer team to people who would be a MonoRail liason between a real world project and also be on the MonoRail developer team. I’d sign up for that and rebuild http://www.xtras.net and http://www.howtoselectguides.com using MonoRail.

    Like

  131. I hate to say this for many reasons (my company Xtras.Net sells .NET tools and also because the cult-leader-like behavior of the Rail creators), but Ruby On Rails has many, many things over ASP.NET 2.0. It appears it was designed as “pragmatic” as opposed to Microsoft’s “visionary.” What’s more, the paradigm of ASP.NET is, IMO, all wrong. The forms/controls paradigm with VIEWSTATE and __DoPostBack() and very little use of real-world patterns. Microsoft usually solves 85% of the problem but then leaves developers to repeatedly reinvent the wheel with the remaining 15%. I think one of the key reasons is Microsoft’s developer division architects don’t actually use their tools to create real-world apps. The RoR folks do. Necessity is the mother of invention. What I think Microsoft should do is provide a grant to the MonoRail folks so they can add a bunch of full time programmers to the project so that it can grow and become a mature alternative to RoR. But if they do, Microsoft shouldn’t control it. Instead, the team should look to get as many real-world projects implemented using MonoRail as possible, and offer seats on the paid developer team to people who would be a MonoRail liason between a real world project and also be on the MonoRail developer team. I’d sign up for that and rebuild http://www.xtras.net and http://www.howtoselectguides.com using MonoRail.

    Like

  132. I am a software engg. and before days i m working in .NET but now days i m working in Rails. i Think its a more user friendly compair to .NET.

    Like

  133. I am a software engg. and before days i m working in .NET but now days i m working in Rails. i Think its a more user friendly compair to .NET.

    Like

  134. I am in the process of early design/architecture of a multiplayer computer game. As part of my never-ending search for knowledge, I ran across ruby on the XProgramming.com site by Ron Jeffries, and that led me to Ruby on Rails, which led me to Ajaz… and fell in love with the ruby language syntax. I liked python, but either it or I was not up to enterprise/bet my paycheck standards for larger projects.

    Anyhow, after reading enough of the Programming Ruby book, I decided to give Linux another chance (I’d tried a SuSe, version 4 or 5, and Mandrake, versions 6-8. I searched through my cd collection, found a copy of DSL Linux, noted that my newer computer had more than 50 mb free drive space, and used the Mepis burn instead.

    Well, it had ruby 1.8.2 and, more importantly, did not have irb, RDoc and a couple other things. And the Debian apt-get said, sorry, ask again later. So I gritted my teeth and installed ruby from source. And it gave ruby -v -> 1.8.2. I modified Makefile to use /usr instead oof /usr/local. ruby -v -> 1.8.2. Hmmm.

    After a snack, I modified config for /usr instead of /usr. ruby -v 1.8.4! I verified that Hello, world and irb ran, intalled gems and installed rails. Due to not using Linux/root for about 5 years, this project (from deciding I wanted Linux at home to getting a rails project running) took – almost 8 hours.

    How long would it take, from deciding I needed a new version of Windows to installing a major new app on my new OS, with major glitches at each step? (I omitted the glitches for brevity). A week? Three weeks? $1500? An MSDN purchase?

    Oh, yes. I was a software developer from 1974 to 2002. My last project was a conversion TO IBM 390 MVS (that’s to, not from). Before that, I was a .NET developer (anyone want a few beta 2 coasters?).

    Anyhow, I’m advising my friends to short MSFT and SUNW, and hedge with a long AMD. I expect major new developments will encourage sales of new computers. The biggest of these is new apps using ruby/rails/ajax flying out the door in 3-9 months.

    Anyone hiring RoR programmers?

    Like

  135. I am in the process of early design/architecture of a multiplayer computer game. As part of my never-ending search for knowledge, I ran across ruby on the XProgramming.com site by Ron Jeffries, and that led me to Ruby on Rails, which led me to Ajaz… and fell in love with the ruby language syntax. I liked python, but either it or I was not up to enterprise/bet my paycheck standards for larger projects.

    Anyhow, after reading enough of the Programming Ruby book, I decided to give Linux another chance (I’d tried a SuSe, version 4 or 5, and Mandrake, versions 6-8. I searched through my cd collection, found a copy of DSL Linux, noted that my newer computer had more than 50 mb free drive space, and used the Mepis burn instead.

    Well, it had ruby 1.8.2 and, more importantly, did not have irb, RDoc and a couple other things. And the Debian apt-get said, sorry, ask again later. So I gritted my teeth and installed ruby from source. And it gave ruby -v -> 1.8.2. I modified Makefile to use /usr instead oof /usr/local. ruby -v -> 1.8.2. Hmmm.

    After a snack, I modified config for /usr instead of /usr. ruby -v 1.8.4! I verified that Hello, world and irb ran, intalled gems and installed rails. Due to not using Linux/root for about 5 years, this project (from deciding I wanted Linux at home to getting a rails project running) took – almost 8 hours.

    How long would it take, from deciding I needed a new version of Windows to installing a major new app on my new OS, with major glitches at each step? (I omitted the glitches for brevity). A week? Three weeks? $1500? An MSDN purchase?

    Oh, yes. I was a software developer from 1974 to 2002. My last project was a conversion TO IBM 390 MVS (that’s to, not from). Before that, I was a .NET developer (anyone want a few beta 2 coasters?).

    Anyhow, I’m advising my friends to short MSFT and SUNW, and hedge with a long AMD. I expect major new developments will encourage sales of new computers. The biggest of these is new apps using ruby/rails/ajax flying out the door in 3-9 months.

    Anyone hiring RoR programmers?

    Like

Comments are closed.