
Ask YC: Are there *any* startups using ASP.NET? - kilik
Seems like the number is small...but I'm still curious. Bonus Question: Why did you pick the web framework that you are currently using?
======
theyoungceo
I built my entire startup on .NET because I think the feature set is richer,
Visual Studio is a great tool, and speed of development is faster. I've done
extensive work in PHP and Java in the past and both were much harder to work
with IMHO. I also have backend applicatiosn and mobile devices that run
versions of the framework, so the entire solution lent itself very well to
.NET. I happily paid windows server and SQL server 2005 licenses as well;
money well spent.

Feel free to crucify me now, but remember that customers don't care what you
made it in -- just that it works and brings value to them.

~~~
bigtoga
Ditto. As a startup, MSFT makes it insanely cheap and easy to get started -
for $300 you can buy their "Action Pack" which includes Windows Server, SQL,
Exchange, Office, etc licenses for up to 10 people. When you get ready to take
the next step, it is $1400 per year for the MS Partner/MSDN package which adds
full Visual Studio, etc.

------
sadiq
The biggest issue (and the reason i'm not using it) is vendor lock-in.

If the next version of Windows Server requires something crazy or has a
massive price hike, you either accept it or have to port your entire system.

With Java, I don't have that problem. I can pick and choose the best platforms
and technologies for the job. With ASP.NET you're pretty much stuck with the
Microsoft ecosystem.

~~~
mxh
I agree with this sentiment, and would add a few (somewhat) related reasons.

a.) 'Planet Microsoft'. By this, I mean the gravitational pull all MSFT
products seem to exert on one another, apparently by design and decree of the
marketing department. With open-source stuff, it seems like I can mix-n-match
components pretty freely. I can use Django on BSD, or Linux. With MySQL, or
PostgreSQL. I can use its built-in templating, or not. With MSFT, it seems
like I'd better be using Win2K3+SQL2K5+IIS6+ASP.NET or I'm taking my life in
my hands. (And, when upgrade time comes, I better upgrade 'em _all_ , or I'll
have problems. And I better upgrade _every_ system or they won't talk to each
other.) Presumably MSFT could make its products more standalone, but prefers
not to.

b.) Inevitable screwage. I believe MSFT's goal is to establish itself as an
unavoidable presence in the IT business (ala the bad old days of DOS) and then
use that position to demand money. For the moment, thanks to open standards,
they can't do that. I'm not interested in helping them change that by
using/endorsing their technology stack.

c.) MSFT MVPs. More generally, MSFT people. With all due respect to any Planet
Microsoft hackers hereabouts, there is an _enormous_ lack of perspective found
in people who've only used MSFT tools; they tend to think 'One Microsoft Way'
is a viable approach to building code, and not just an address. If you're
reading this, and that offends you, I hereby acknowledge that there are
exceptions, and you're probably one. I don't want to flame anyone, I just want
to share an honest reason why I'd prefer to avoid the MSFT stack.

~~~
hello_moto
What makes upgrade better in other technology world compare to MS? Last time I
checked, other technologies are rarely backward compatible, cut support for
previous version not too long after new release is out, tons of controversies
on newer releases.

One choice is not to upgrade at all. No big deal I assume. It's not like
you're going to write a lot more of new code.

What makes you think open standards are better? just because they're open thus
they're better? how about the technology value behind it?

'One Microsoft Way' isn't overly bad. At least it doesn't waste your time
trying to decide which one is better (Rails vs PHP vs Django vs TurboGears vs
Pylons vs Symfony vs JSF).

You know what, these are the example of wasting your time:

Servlet (need template)-> JSP/Servlet (not good enough) -> Struts (some design
mistakes) -> Spring (mkay.. well) -> JSF (oh, we finally catch ASP.NET up)

PHP -> PEAR -> Symfony/CakePHP/Ignition

I wouldn't say Python stack is "wasting your time" yet but time will tell how
long Django/TurboGears/Pylons will last. They're cool frameworks and I like
Python more than C#. But I haven't really heard much from their communities
lately other than the Django book had finally been released after deadline
slips (I know they have good reasons but whatever).

~~~
g-e
"Last time I checked, other technologies are rarely backward compatible"

7 years ago I created one of the first Web2.0 websites in PHP. It became very
popular and is still up and running and used by hundreds of thousands of
people a month. Without any modification. On a managed server that has been
updated to new versions of LAMP countless times.

I also wrote ASP (not .net) code at that time. It is long dead and gone.

------
damon
I recommend asp.net to all my competitors!

~~~
kogir
It's not such horrid advice to follow.

As mentioned in another comment already, Loopt uses ASP.Net in addition to
other Microsoft and open source technologies.

If I could start over, I'd use it again.

ASP.Net the _framework_ is great. By framework I mean the request pipeline and
everything else on which the high level items like the TextControl are built
atop. There's a lot of crap at the top (built in controls, page viewstate,
etc), but you're not forced to use it. Hooks are exposed at almost every level
of the stack where you can override the default behavior to do what you want
(and I do). The trick is knowing when to NOT use the built in stuff.

Also of note is that while ASP.Net necessitates IIS and Windows, it doesn't
lock you down any further if you're willing to take a few risks (no vendor
support). From the beginning Loopt's website has used a custom session state
provider: At first it stored all user state in encrypted cookies, but now it's
moving to a fault tolerant, distributed Erlang based store. Results from
PostgreSQL servers running on FreeBSD power many of our GIS based features.
*nix based boxes perform all of Loopt's geocoding and map generation tasks.

At Loopt we try to pick the best tool for the job. Sometimes it's sold by
Microsoft.

Sidenote: You can pay for Microsoft software on a per box per month basis, and
only pay for what you use. I think that Windows Server Web Edition is only
about $10/box/month. Not actually that big a deal in the big scheme of things.
For example, good developers are WAY more expensive than software =P

~~~
hello_moto
Thanks for the insight kogir. There are a lot of young people that don't
really know MS pricing scheme.

------
tx
There are _plenty_ of startups using ASP.NET or Java-based tech. In fact most
companies started by "business types" are .NET/Java because they are easier to
find disposable coders for.

You don't see as many .NET shops here because most posters are (a) young, (b)
non-business types, and they had a chance to pick a technology. Most went with
something dynamic and Linux-based.

We did too. We're on RoR, despite having tons of .NET expertise. And here is
why: (a) speed of developemnt, (b) cost of decent dedicated hosting, (c) more
fun

~~~
axod
Please don't group Java together with .NET :D

~~~
Goladus
System.Console.WriteLine("Hi, I'm a .NET library function for the CLR being
called in C#");

System.out.println("Hi, I'm a Java library function for Java being called in
Java");

Java The Language and C# are extremely similar, and if the differences bother
you that much you can use J#. Java and .NET both provide managed runtime
environments. Java and .NET both provide a large library of functions for that
environment.

I'd say if you're going to put Java and .NET into different categories, you
should have some solid reasons, so let's hear them.

~~~
axod
Java and C#/C++ are very similar languages as far as I know. ASP.NET seems
very similar to PHP. .NET just sounds a horrible mess. VB.NET? why would
anyone touch anything that has a language 'visual' 'beginners'. Don't those
two words hint at anything?

Comparing Java (the language) to .NET (the system that lots of m$ languages
run on) doesn't make much sense though IMHO.

~~~
pc
"C#/C++" is about as valid as "Java/JavaScript".

~~~
DanielBMarkham
Nice slogan, but fails when put to the test. C#/C++ = both OOP languages,
semi-color delimited, mostly early binding, strong typing, etc. Java and
JavaScript are not anywhere near as close. OOP vs prototypes, loose typing vs.
strong typing, closure-functional style vs imperative style, etc.

~~~
nkohari
No offense, but you clearly have not used both languages. When you consider
the platform in addition to the syntax, C# is absolutely nothing like C++. C#
is managed, garbage collected, bytecode-based and JITted. Saying C++ and C#
are similar is like saying that technically a unicycle and an airplane are the
same because they can both help you get somewhere.

~~~
DanielBMarkham
Everybody knows that Java is just C++ with the sharp edges taken off. C# is
Microsoft's Java-killer. C# and C++ are directly related to each other. It's
the same lineage. Where do you think you get the idea of constructors,
interfaces, friends, volatile methods, etc? I understand that C# is managed,
but how the runtime handles memory allocation to me just isn't the deal-killer
you're making it out to be. There's lot's of ways to have managed C++ code.
Third-parties have been making smart memory managers for C++ for as long as I
can remember.

Look -- I love C++. It's my favorite language of all, not that I'd code
anything in it anymore. I've done Java, I've done Javascript (a lot of it),
and I've done a lot of C#. I know the languages. C# is much closer to C++ than
Java is to Javascript.

You made a cute comment. I called bs on you. Get over it. Best way to get out
of a hole is to stop digging.

~~~
nkohari
I didn't make the first comment. I just showed up to say that you were
completely wrong in your retort. I also don't know exactly what you're arguing
about, so I'll just let you ramble in peace. :)

~~~
DanielBMarkham
The original comment was: "C#/C++" is about as valid as "Java/JavaScript"

It was a really bad analogy. I believe I have made my point that C# is a lot
closer to C++ than Java is to Javascript. Thanks for joining in, though. I
take it you stand by your comment that I "clearly have not used both
languages"

As for rambling, one does what one can.

------
iamelgringo
I'm finishing a survey of web development technologies class. We've covered
everything from PHP to Perl + CGI, classic ASP and ASP.NET, and JSP. I spent
this past summer learning RoR, and I plan on picking up Django next summer.

[non-flame-bait personal opinion]

And, I have to say that I came to a strong dislike for ASP.net. In fact I was
carrying a 4.0 until this ASP.NET project. I disliked it so much, I didn't
finish the project. Perhaps if I spent more time on it, It might fit a little
better, but from what I"ve seen, I hate it mightily.

 _The benefits_ :

It works well with IIS and the Microsoft Server stack. If that's what you
know, stick with it. You'll spend months learning unix shell commands, and
file structure, and how to install things, etc... I'm more of a unix guy and
prefer to develop with unix on the server side. If that's not your cup of tea,
then stay on the Microsoft side of life.

_The cons_ :

I also didn't like the idea of ASP.NET pages. I found it really combuersone to
code all the labels in the body of the <script> tags, and then output them at
the bottom in the html. I simply found it really hard to get my mind around
the ASP.NET way. I really didn't want to understand the ASP.NET way, I guess.
I don't like how it handles SQL queries. I found it burdensome and cumbersome
to write 5-6 lines of code on every page that access the database, to set the
SQL query to a variable, execute the query. put the SQL query into a reader,
then transfer the reader to another variable that's usable. Too long, clanky,
too long. And, doing that for every page you're working on: BOORRRIIIINnnnggg!
:)

 _Disclaimer_

I was just starting out with ASP.NET, and I'm sure there's tips and tricks
that would speed development up, and I'm sure I went about things all wrong.
It's just that Rails really spoiled me this past summer. with the MVC model.
Set up database connections once, access what you need through active record.
Variables are there for you in the controller. Spit them out and format them
in your views. It's like Ron Popeil says about his rotisserie: You set it and
forget it!

[/non-flame-bait personal opinion]

~~~
DanielBMarkham
I'll jump into the flames -- what the heck.

The problem isn't ASP.NET: it's probably the way you were taught how to use
it. The Microsoft tools do so much crap that it's like being put into a room
full of levers and knobs with cryptic labels on them. Hard to know where to
start or how to make things work.

Sit down with somebody who is using one of the automated DALs (like NetTiers,
NHibernate, CSLA, etc) and knows what the heck they are doing. You'll find it
very intuitive and the speed of development can keep pace (or surpass,
depending on the domain) any other kind of web development.

Now for the BUT part. BUT you have to be doing straight-forward business
development. Stuff in the middle of the road. Writing a check. Checking your
email. Posting a message.Viewing your box scores. Etc. If you want something
like an animated dancing baby that does different dances depending on your
current stock portfolio and can sing out your RSS feeds in different
languages, you're back to basics, and all that abstraction is going to get in
your way big time. Also, if you want to scale up to 100K users quickly you're
going to be learning a lot more about tweaking IIS and ASP.NET than you
probably wanted. But for a lot of stuff, it's just fine. Not everybody is
writing the next YouTube, and you can't beat the libraries available to you
over on the "dark" side.(grin)

~~~
brlewis
You mean that subset of straightforward business development that Microsoft
thinks ASP.NET is for. If you want to put subtotals in a grid of financial
numbers, for example, you either have to jump through hoops or move it off to
Microsoft Reporting Services or Crystal Reports.

There's a wide gap between where ASP.NET's usefulness ends and where the
really fancy stuff begins.

And yes, you totally can beat the libraries available on the "Dark Side."
You'd have to try hard not to.

~~~
dbrush
Can you point me to someone that has beaten the libraries of the "Dark Side"?
I'd like to check them out.

~~~
brlewis
Java libraries, CPAN, and the Unix/C universe of libraries are three examples.
But you should only check them out if there's a library that does the specific
thing _you_ want.

~~~
jsnx
Yeah, I really have to second this one. It's not just the UNIX/C universe,
though -- it's the UNIX scripting universe. As a particular example, how do
you tie your graphing software to your analysis software to your screen
scraping software? You could try writing them all in Python -- or you could
just use pipes and tie together GNU plot and wget with some custom filters in
Python. It takes a few years to get confident with this stuff; but once you
are, you will never write so little code :)

------
jsjenkins168
If you are not against Java you might want to check out JSF. Code your pages
using Facelets though, its better than using JSP. JSF is nice because (unlike
ASP.net) it cleanly separates behavior and presentation (its purely MVC).

And its a component based architecture which is rendering format agnostic
(HTML, WML, XHTML-MP, cHTML). So you can code one page which can render the
contents in a different format depending on the client device. This is what
the JSF MobileFaces library does when you hit the page from a mobile phone. It
automatically renders the page in the proper format for the target device
without the developer needing to worry about the details.

The problem is JSF is complicated, which can be very frustrating. For this
reason I just use it as the underlying framework, which basically just directs
to my GWT pages.

~~~
sohail
Thank you sir for justifying me staying away from all these frameworks.

~~~
jsjenkins168
What did I say that would justify you staying away? Java? I would take JSF
over ASP.net any day. I consider ASP.Net to be on a similar level to old
fashioned JSP (mixing and mashing of model and presentation all over the
place). JSF on the other hand is a true MVC framework

So my point is: JSF is very powerful if you can master it.

~~~
hello_moto
Wikipedia entry for JSF:

"According to the author of the book Core JSF, JSF offers a means for Java to
compete with ASP.NET/Visual Studio in the area of Rapid application
development (RAD). The addition of the Sun Java Studio Creator IDE provides a
RAD environment similar to Visual Studio 2005, potentially lowering
development cost and other barriers to entry."

So basically the world of J2EE pre-JSF is worse than ASP.NET and with JSF,
J2EE _is_ catching up with ASP.NET stack.

------
ubelt
On top of my head:

predictify.com

loopt.com

pickspal.com/pickspop.com

triphub

You can look at craigslist to get a feel of startups using .Net.

<http://sfbay.craigslist.org/search/jjj?query=c%23+startup>

------
tpatke
Using it.

Name a company other then MSFT which spend BILLIONS every year building a
development platform.

How can anyone suggest that after 20 years of billion dollar investments
including contributions from the top minds in computer science - that Ruby is
the better PLATFORM?

It is not about the language, it is about the platform.

btw: I have full java certification and work full time as a java developer.
Java sucks.

------
sohail
I have used ASP.NET, CGI, CherrryPy, some of these in anger.

I am currently looking at Common Lisp. I have been burned by MS too many times
and I don't need their blessing to program. I posted these links yesterday as
well, but if you are interested, I am updating my blog with my adventures into
a web app in Common Lisp:

[http://uint32t.blogspot.com/2007/11/web-programming-
framewor...](http://uint32t.blogspot.com/2007/11/web-programming-
frameworks.html)

[http://uint32t.blogspot.com/2007/11/update-web-
programming-f...](http://uint32t.blogspot.com/2007/11/update-web-programming-
frameworks.html)

[http://uint32t.blogspot.com/2007/11/lisp-web-framework-
desig...](http://uint32t.blogspot.com/2007/11/lisp-web-framework-
designer.html)

All in all, I find that Common Lisp + Slime is a great environment to develop
in. All the tools you need are there, there is just the matter of a small
investment of time.

------
DanielBMarkham
I have been looking around for partners for the last few months and ran across
something very interesting.

Three guys, on three different occasions, said they wanted to go linux or
nothing. Note that all of these conversations had nothing to do with the
question of whether the business was viable or whether it could turn a profit.
On a couple of occasions, we had some really good chemistry and the plan was
looking hot. But they were convinced that ANY business idea that ran on .NET
was a bad one.

I've never had somebody say it had to be .NET or nothing. I'm not sure what
that means, but there it is. It doesn't make much sense to me from a business
standpoint.

~~~
jsnx
I am definitely in sympathy with your three guys. Were they really convinced
that "...any business idea that ran on .NET was a bad one." or just that it
was Hell to work with .NET?

> It doesn't make much sense to me from a business standpoint.

It's really about quality of life. I tried using Windows for a spell, for XBox
development -- I ended up running Linux under Moka5 for a userland, and then
switching into Windows once in awhile to kick the XBox. Until I got that in
place, I was miserable.

------
sosuke
I am doing a startup in ASP.NET 2.0 because its easy money. The developers
make hand over fist when compared to similar open PHP positions.

As to the technical reasoning, I started web development in PHP for 2 years
before working with .NET and so far I am supremely impressed with some of the
things that just work. The startup to get running is really slow but I think
things will pickup as I continue development.

------
ubelt
I'm not generalizing but I know a lot of people who hate/won't use .Net mainly
because it is a Microsoft product.

What I believe is good with .Net is the 3rd-party support (free or
commercial). The Visual Studio tool is also very easy to use and ramps up your
development.

------
andrewfong
One of the student groups I did web work for back in college used a less-than-
legit copy of ASP.NET. IMHO, it works well enough. I had limited *nix
experience when I first started coding and Visual Studio lets you do things
like drag and drop components and various HTML elements into a pseduo-WYSIWYG
environment. The Windows Server environment also made it easy for us to train
our non-tech people to remote login and do simple things like restart the
server, fix typos on the site, and even execute basic SQL queries.

That said, I'm using RoR now. Fast, easy to learn, and an active community.

------
prakash
plentyoffish.com

------
nailer
The article below includes a script to test yourself.

<http://www.venturecake.com/web-20-is-built-on-open-source/>

------
nkohari
I'm disappointed that no one here has mentioned MonoRail
(www.castleproject.org). When people say they hate ASP.NET, what they're
really saying is that they hate WebForms. WebForms are an abomination that
should be stricken from the earth. MonoRail is a web MVC system for ASP.NET,
originally based on ActionPack from RoR.

------
nreece
At Feedity (<http://www.feedity.com>) we have been using ASP.NET and C# (.NET
2) exclusively. Quite stable and scalable, even during surges. Recently we
moved our application platform to a web farm (clustered hosting), and its
working out quite well.

------
danw
Right here, the startup I'm at uses ASP.Net and for us it's an advantage.

------
dshah
My startup, HubSpot (<http://www.HubSpot.com>) is built on ASP.NET.

Though there are certainly irritations and annoyances, it has worked fine for
us.

------
jdavid
myspace moved to asp.net after they were bought by news corp.

~~~
simonw
My impression was that they moved to asp.net when they were having scaling
problems and Microsoft promised them free consulting to solve those
problems... provided they switched to .NET.

------
sbarbour
I'm using it, basically because I'm extremely familiar with it. No ramp up
time trying to suss out new language and framework specific work-arounds.

------
boucher
Although I'm sure the answer is no, I'd be interested in knowing if anyone
here had ever even considered using WebObjects for development.

~~~
dcurtis
I think the entire Apple.com store is developed in WebObjects. I have never
heard of any other site using it, though.

~~~
boucher
It is used widely by Apple -- iTunes uses it as well, as does .Mac. It has a
few users outside Apple, but as far as I know the number is incredibly small.

I'm curious if anyone even thinks about it anymore, its been off the radar
screen for a while I think. It is, however, very powerful.

~~~
dcurtis
Does anyone know of ANY other users of WebObjects? I can't seem to find any,
anywhere.

~~~
DarrenStuart
<http://en.wikipedia.org/wiki/WebObjects> has a list of sites using it. not
sure how up to date it is but there is nothing special there.

------
DarrenStuart
docstoc is .net I do believe.

I use it and make a decent living programming it.

Use the best tool for the job and don't bogged down with what is trendy.

As someone already stated its easy to find talent. Also most of the fortune
100 websites use it.

mySpace use it so it scales well enough.

MVC is available for those that are willing to look around. However there is
an official MVC toolset coming soon which will make some big gains on ROR.

At least its not Java :p

------
dbrush
Splashup is hiring .NET developers, as it were.

Anyone interested should email me at dave@splashup.com

------
run4yourlives
plentyoffish.com

------
henning
There are plenty of companies using ASP.NET.

~~~
nailer
There's a re plenty of companies using Fortran too. The poster asked
specifically about startups.

------
jdavid
we are using .net, anyone here an expert .net user? with "nhibernate"
experiance?

we want to move to mono on ec2 in 2008.

~~~
DarrenStuart
have you checked out <http://www.flexiscale.com/>

Its like s3 and ec2 combined and they have an sla.

Its fairly easy to get it up and running and they have load balancing out
features too.

~~~
jdavid
yeah, there are a few problems for us with their service,

1\. we live in America and because our politicians suck so much, our currency
is falling (go home ownership, at the cost of our currency, frickn idiots) and
its hard to track what we are really spending on a service that bills in
pounds.

2\. they are expensive, and in some cases about 2x what ec2 is.

3\. they do not have an image deployment system like amazon, nor do they have
an s3 solution.

all and all, i think that once we move to linux, with mono we will be better
off, as we can run RoR, PHP, C#, and Java all side by side on a scalable
server platform.

~~~
DarrenStuart
yeah good point I am in the uk. There storage system is integrated into the
package and is actually pretty neat. They do have a way to setup your server
and then save that setup and then startup other instances like it.

I have not looked at mono for a while I might go back and have a look.

~~~
jdavid
a local .net developer claims that mono is really good at matching microsofts
.net deployment in every way.

------
pius
Nope, not a one. :P

------
cellis
I plan on using it.

------
dbrush
Splashup.com

~~~
ivankirigin
What are the benefits? What is bad about it?

~~~
dbrush
After trying a few different languages .NET was definitely the fastest outside
of C/C++. I didn't feel like learning C++ and then having to build a homebrew
everything on top of it.

My history is primarily ECMAScript, so it was very easy for me to pick up C#.
Going between ActionScript 3 and C# constantly is a breeze. I couldn't imagine
going between say.. Lisp and ActionScript 20 times a day. It would be such a
detriment to my productivity.

~~~
cellis
Seriously, I agree 100%. I code in AS3/ JS/ and C# without a problem. Anytime
I have to write SQL or VB (for my newly acquired day job), I cringe because of
the syntax. Gotta love those curly brackets :}

------
jeffw
eppraisal.com

