Hacker News new | ask | show | jobs
Ask HN: Is using ASP.NET MVC, C# with Azure a bad idea for startup?
10 points by mehack 4234 days ago
I have idea that I want to start working on (website first). I have experience with Microsoft stack c#, asp.net MVC 5 and Azure. I think these are very good tools if not the best. I am very excited for MVC 6. The only concern I have is to find people who would want to join me (In case I am on to something). the other option is to learn latest technologies in open source world and AWS but that will require lot of learning time for me.

Any thoughts?

12 comments

I've been developing on the .net stack since its inception and it has worked well for me. I scaled and e-commerce company to $24 million in revenue using MS commerce server and .net. I use azure to host (while I have credit via bizspark). There are legions of programmers who work on this stack day in day out. Stackoverflow is a classic example of a high traffic site built using the MS stack. Why don't I ever hear people say is Ruby on Rails on AWS a bad idea?
thanks! Stackoverflow and POF are great examples of building scalable app on MS stack. That was enough reason for me to go with .NET. I asked this question because I hear everyone talking about Ruby/node.js/scala/java etc. I am happy that .net is embracing open source now.
Go with what you know - get out there and test/validate the concept instead of learning another technology.

FYI go check out BizSpark which is a pretty amazing program - 60k/yr of hosting credits and whilst you continue to host on Azure there are no licensing costs. Architect your software stack properly using repositories/interfaces and develop against these if you are worried about lock-in to Azure - done correctly it will allow you to adopt a hybrid approach of mix and match of offerings between vendors.

Some basic considerations:

a) Ability to find quality .NET talent in your local area? (It's not hard to stand out and attract quality developers in .NET simply by adopting a strong open-source usage/contribution policy. Using languages such as F# behind the scenes will make you stick out even more.)

b) .NET makes hiring simpler - you'll obtain the opportunity to use and reuse the same language/code on the server-side as on the client side. Using Xamarin means you don't need to hire a Android mobile guy to do the app, then hire a iOS guy to redo the same project in another language. You get product/feature release parity for essentially free.

c) Are you in this for the long haul or are you aiming for exit? If exit consider the technology stack of potential acquirers.

I think it's most important to prove the idea, even if you do that with a stack you later throw away for another.

I doubt that the .NET stack is the "best" for anything. But that's something to consider later down the road once you've proven your idea is good enough to warrant more sweat investment.

I agree. I think whichever stack you pick will be the "wrong" one for some people, anyway :). What matters is bringing something useful and usable right up front, because if you even can't do that, then it doesn't matter which stack you pick, you'll never get off the ground. I'd suggest picking the one you're most comfortable with, that helps you get things done instead of getting in your way. Once you've proved a concept and gained a bit of feedback and traction, then you can start looking at other stuff, if that's even necessary.

(Full disclosure: I build things using both ASP.NET MVC and node.js: they both have their strengths, and both have their weaknesses). Which one is "best"? IMO, it depends on the context, and what you're trying to do.

The startup I've been helping out is using the Microsoft stack. Why? The exact reason you stated...when you already know everything there is to know about the .NET world, learning something else is time being spent that could've been used to get to market sooner. They've got 30 years combined experience in .NET, why would they use anything else?

They're using NancyFX for their application server. MVC 5 for the consumer-facing website. Mobile app is written in C# using Xamarin.

We're in a smaller city, where everyone seems to use .NET, so finding people OUTSIDE the .NET world is actually a bigger problem where I'm at. Silicon Valley is certainly the exact opposite.

What are you using as the backbone of your Xamarin app? Forms? MvvmCross? ReactiveUI?
Not at all..... 'start-up' ... you start quickly and go up.... so whatever takes you up is fine...don't overthink and don't try to be perfect. And don't get emotional on the choice of language or platform. One company I worked for uses asmx web services, their coding is like late 90s, Database schema sucks and they even use aspx pages with query parameters to give to clients. BUT guess what? They are earning so much and have big clients. Now they have good money, they are rebuilding the code, database better..... so don't focus more in technology, it's all about selling your idea
Just keep in mind that it will affect recruiting.

For example, I wouldn't consider a job working with that kind of stack and I'm sure many other people like me exist.

That can be said about any stack, can't it? If he chooses language A, and I only know language B, C and D, then obviously I will not apply.
Of course, but I might anticipate the effect of a straight Microsoft stack to be a bit more off putting than most stacks for various reasons.
even if its cool company? what about Stackoverflow? :)
I'd be more concerned your startup idea is a bad idea :-) -- if you're a Pro .Net Developer with 'deep' knowledge of the stack, go with that.
only one way to find it out ;). I am not pro in asp.net (well I dont know much web stuff) but know enough to get things started.
Just as an anecdote, I'm currently doing iOS contract work for two different start-ups in my area that use .Net and MVC as their stack. It hasn't affected their ability to execute at all. One of them is building on Azure and one is on AWS.
Put an e-mail address in your HN profile so I can contact you. How can someone join you on your adventure if we can't contact you?
done :)
Just clicked on your profile. Nothing there.
Generally, I advise against using Microsoft stack. But since your goal is to build a company/startup and you have experience with MS stack I think it's a good idea to use what you already know. That way you can have more time to focus on the product/business development matters. Learning a completely new technology stack while you are trying to build a business doesn't seem right to me.
thanks!
Well .NET is open source now. great reason to stick with it :)
If you know the Micro$oft stack and you can develop in it efficiently . . . definitely build your MVP with it.