Hacker News new | ask | show | jobs
by bragh 3773 days ago
.NET isn't cool in the start-up world because of the pricing and licensing issues. You can happily start developing a PHP+MySQL application on a used 100 EUR ThinkPad: good free IDEs are readily available (if you even need one), no licensing headaches and can start hosting it with your nearby 20 EUR/month web host with shell access.

Although the situation is changing for the better in the .NET world, the hardware cost, obfuscated licensing and pricing issues still remain. I had to buy an i5 machine with SSD and 16 GB of RAM to get the same development experience with VS2015 that I had with Netbeans on Linux with 4 GB of RAM. Also, a project in progress went for ASP.NET MVC 5 + Azure SQL on Azure and I'm afraid every day that we might get hit with some unexpected performance or insane pricing issues after the launch. Even the reddit thread on /r/dotnet wasn't very encouraging with regards to that: https://www.reddit.com/r/dotnet/comments/46rgf6/do_you_run_a...

2 comments

I wouldn't lose sleep over performance problems. C#'s much faster than most of the other languages. Most of the ASP.Net MVC sites I've written have sub-50ms server responses even on tiny VPSes.

One of my old employers had 100s of installs of its VBscript, then ASP.Net, program, with a complicated salesforce-esque application that clients could customize themselves with extra code, so there was a wide range of code written by programmers of wildly differing ability. And they did all sorts of crazy stuff.

Almost all performance problems were SQL related.

In the 3 or 4 years I was there we had a bug with IIS once, some crazy specific thing, I can't remember it exactly but it would be like if you'd chose a very particular and obscure variable name and the value passed via query string was this one very particular value it would cause that thread to hang. Even that was fairly trivial to identify because a google search brought up an MSDN.

And when we were genuinely stuck by then we had some sort of partner status and could phone them up. When we were using silverlight when it first came out our technical director actually ended up chatting to one of their core programmers about a specific bug. I seem to remember this only happening with silverlight and with a very obscure tech we were using (some sort of strange clientside control that IE6 had that you wrote in vbscript that no-one really used that I honestly can't remember the name of now).

If your project depends on saving $500 on a computer (the one thing you really need to do you job, as opposed to say a carpenter who needs $5000 in equipment just as a basis), is that project really worth doing?
You willfully mixed up and misrepresented the 2 paragraphs of my post. I hope that wasn't with malicious intent, so I will clarify.

The first paragraph dealt with the 'poor college student in Eastern Europe' side of doing a project, where every dollar counts and must be scraped for. In that world, going for .NET was unheard of, but the situation is slowly changing with VSCode and vNext.

As for the second paragraph, even well-funded projects have limits. Sure, let's say the limit for cost is 50k EUR with 300 EUR/month expected hosting costs. How happy will your client be when your cloud provider changes their pricing scheme and hosting cost is now 10-100x as large? Or when the requirements change and you need to buy some $EXPENSIVE_PLUGIN for that and you are locked in with your technology stack to one provider?

Mainly speaking: why should someone make a company and build some website and fill applications and all that (always with the high possibility of rejection), when you can just do 'apt-get install <technology-stack>' or as an alternative, git-clone-configure-make-sudo-make-install for the same thing? It's all about barriers to entry.

No, but building your project in a language that currently costs 2-10x per production instance with licensing/hosting costs thrown in sure as heck can.

I love C# compared to Java but I write more Java today because I hate Windows and want no part of automating cloud deployments to Windows target servers. So maybe one day when (soon?) .Net Core gets production ready in Linux I'll make the jump- but I'm not going to vastly increase my hosting costs for a language when all of the others can be done on a cheaper, more well suited system.

x 5 developers, + unknown extras with an enterprise giant...

There's a good reason you don't hear of many new startups running on a .NET stack.