3 ms·
I've written more C# than probably any other language, but I've never seriously considered it for anything outside of my day job. I like the language and the to
by icey 17y ago
I've written more C# than probably any other language, but I've never seriously considered it for anything outside of my day job. I like the language and the tools are nice, but for pure web applications I feel that there are far nicer options out there.
Deploying applications on Windows is pretty easy, but there are far fewer hosting options for Windows; and the options that are out there will either give you a very locked down environment or require you to have a dedicated box.
Beyond that, it's kind of a pain in the ass to do a quick edit of a file to fix something when you're on the road if you don't have all of your tools available. It's just not a big deal to make single file changes in Perl, Python or Ruby because most people don't use a full-featured IDE to edit that code and as a result files are often structured differently (which is to say generally broken up into smaller chunks).
If you're thinking about starting up on the .Net stack, there's really no reason not to if that's the stack you prefer to use. Bizspark is a nice program which allows you to delay the purchase of most licenses for 3 years. Microsoft has a long history of providing nice tools for its developers as well.
There are definitely some big sites out there that are using .Net as well (Loopt, Newegg, Woot), and there are tons of developers out there that are familiar with the stack.
I would say if that's what you are the strongest with, and you like it, there's no real reason not to use .Net - as long as you don't mind using a proprietary stack. I haven't used Mono seriously, but I've heard good things about it. However, it's still a second-class citizen when compared to the canonical .Net stack.
- johns 17y agoMono does lag behind the main .NET stack, but the gap is getting smaller because MS is opening things up. For example, MS released the ASP.NET MVC source under a license that allowed the Mono folks to basically just drop it in with few modifications so it worked with Mono on the day it was released to the public. Beyond that, it's kind of a pain in the ass to do a quick edit of a file to fix something when you're on the road if you don't have all of your tools available. If this is a priority for you, you can use ASP.NET Web site projects and edit live versions without recompiling/redeploying (for the most part). Web site projects are Webforms-only though, no MVC. However, I think not having the ability to make ad-hoc changes to production code is a feature ;)
- icey 17y agoI think not having the ability to make ad-hoc changes to production code is a feature True, but in my defense we are a continuous integration / almost continuous deployment shop ;). As soon as commits are made our tests get run, the product gets built and configured and automatically staged. Usually what happens is I get a phone call that there's a problem, fix it and then let someone test it and push the big red "RELEASE" button.
- iamelgringo 17y agoDeploying applications on Windows is pretty easy, but there are far fewer hosting options for Windows; and the options that are out there will either give you a very locked down environment or require you to have a dedicated box. I'm using a Windows/Apache/Django/Postgres back end for http://newsley.com http://newsley.com. It's all running on an EC2 Server 2003 instance. I've used their Windows slices for about a year, and I've been really really happy with them. It's a bit more expensive than a Linux VPS @ $80 a month, but I think it's worth it. I would really like Amazon to support Server 2008 on EC2, especially to make PowerShell Remoting not such a hack. You can get it to work, but it's a little dicey. Beyond that, it's kind of a pain in the ass to do a quick edit of a file to fix something when you're on the road if you don't have all of your tools available. Granted, I'm developing using Python on Windows 7, but I have a full dev setup on a $300 Netbook that I installed Windows 7 on. I've been building Newsley while traveling 50k miles the past 4 months, and I haven't really had any problems. I can run Win 7 Ultimate and my dev setup on a netbook pretty seamlessly. Would there be a reason that Visual Studio wouldn't run on a Netbook with 2GB ram?
- icey 17y agoI totally forgot that EC2 has Windows support; that pretty well removes my argument regarding hosting needing a dedicated box. You make a good point about tossing Visual Studio on a netbook, I can't think of a reason it wouldn't run, but it's still got the requirement of carrying my own gear with me. Honestly, it's not a big deal in the end, I just remote in to my main machine on the rare occasion that I have to make a fix while I'm on the road; I would just prefer to be able to do it anywhere regardless of what machine I've got handy.
- johns 17y agoYou can run Server 2008 on EC2: http://aws.typepad.com/aws/2009/12/amazon_ec2_windows_server_2008.html http://aws.typepad.com/aws/2009/12/amazon_ec2_windows_server...