

Ask HN: Microsoft Shop (ASP.NET MVC 4/5) for a New SAAS Web Project - codegeek

We love to talk about PHP, Ruby&#x2F;Rails, Python (Django&#x2F;Flask) etc for web applications. But what are your thoughts on using Microsoft stack specially given the advancements they have made so far with the whole ASP.NET MVC stuff.<p>I am asking because I have a SAAS project for which I need a technical co-founder and ended up talking to my brother who is excellent at MS stack (he does it for a living). of course he is biased and for every question I had for him (can it handle sessions well, ORM etc), he had an answer.<p>I know that stackoverflow is a huge MS shop but anyone else doing it at a large scale?<p>To give you more background, this SAAS project will involve latest web functionalities including drag drop builders, lot of client side javascripting (jquery etc)<p>For me, it is critical that the technical co-founder knows the stack more than what I think is good (i personally love to play with Flask btw:). So I am leaning towards giving him a go ahead but I know there are shit load of licenses to buy :)
======
Someone1234
We use Microsoft's MVC stack at work, it is wonderful, particularly combined
with Entity Framework.

Off the top of my head the biggest issue with using Microsoft's MVC is not
within the framework itself, it is within the wider Microsoft ecosystem.

If you use MVC you now need Microsoft Servers (which cost more), maybe CALs,
and you'll eventually need to pay for MSDN (for the latest Visual Studio and
tooling, TS Online is wonderful however).

For us it made sense since we're in education so Microsoft gives us tons of
stuff for either free or at a massive discount.

If I myself started a small business (with a limited budget) I'd likely look
at something which offered a similar experience but without the dependencies
(namely Ruby on Rails).

But I'd rate the MVC 5/Entity Framework 6/MS SQL setup alone very favorably.
It definitely helps your productivity hugely and if done within the MVC-style
will help maintainability somewhat (although you can write anything badly).

It is just the dependencies. That's really the only major downside.

PS - Speed wise it is pretty similar to compiled Java. Faster than [most] PHP
(compiled or not).

PPS - If you go this route check out Stack Overflow's wonderful Miniprofiler.
Great tool for SQL development (it work with anything Entity Framework can
connect to including non-MS SQL servers like Oracle SQL).

~~~
codegeek
thx for your advice. really helpful. I totally understand the cost and
dependency issues but i am willing to consider it as long as i can build a
good scalable system.

Oh and Yes, I love Visual Studio. That's one MS tool I have used heavily
before and absolutely love it. The debugging features is second to none in my
opinion. i will definitely check out SO's miniprofiler more. looks awesome.

------
nicks451
I think the MS stack is extremely usable especially if you leverage Azure to
get started. It abstracts away a lot of the pain points that I've run into
with dealing with the stack in my day job (mainly IIS). You should also check
out the BizSpark program which will give you access to an Ultimate MSDN
subscription and an Azure credit every month.

------
damagednoob
I'm an ex-C# guy (7 years) doing Ruby (2 years) with a little bit of Java
thrown in. My company is currently finding it tough hiring Ruby devs (no
different from when I was hiring C# devs) and subsequently we're casting the
net wide enough to include C#/Java/etc. guys that want to change to Ruby. We
have a standardized technical test that asks the candidate to create a web
application in 1.5 hours in the language of their choice.

Coming from a C# background, I'm continuously shocked at how poorly the
C#/Java guys fair on the test. Most of the Ruby guys use Rails and a
reasonable percentage nail the test but none of the C#/Java guys have even
come close to about 10% of the full test. I don't think it's because they are
necessarily bad coders. Some of the C# code reminds me a lot of what I used to
write with IoC containers and design patterns galore. The point is that I
think the language and platform ecosystem is so much better that it gets out
of the way and let's you solve the business problem.

Is the test biased to quickstart projects? Possibly. How often do you need to
click 'New Project' in Visual Studio, anyway? After thinking about it, it just
doesn't seem that way. There is just so much overhead in doing things 'the
right way' in C#/Java. Tests shouldn't go to the database. You need interfaces
everywhere to inject your repositories into services or your services into
controllers. This is not a one off thing. You'll have to do this everyday to
keep your code base clean.

From a developer productivity point of view, it just seems like you can get
further, faster with Ruby/Rails then with C#/Java.

------
brudgers
StackOverflow is a huge website. Its still a small Microsoft shop, and Jeff
Atwood, Geoff Dalgas and Jarred Dixon pretty much coded it up...and for a long
time ran it on a single dev/production box.

------
dits59
I used MVC 1.0 for my startup in 2009. That time, not much open-source
contribution was seen in Microsoft world, but that's not the scene now.

And in my previous job, we switched from ASP.NET MVC to Django, got a Django
guy in our team. Still it took a double the time for developers to pick it [in
a way money]. So I say unless technology is not a concern for the product,
stick with it and build the product, make it successful, you can switch
technology later also.

At the end of the day, customers don't care what platform you used.

If your bro is ready to go with Django/Ruby awesome, but keep in mind time &
money before making a decision.

