Live data from Hacker News

Unapologetically build your startup technology in C#

sirchristian.net

11–20 of 152 posts

Re: Unapologetically build your startup technology in C#

#11
there's nothing in that post that gives C# a measurable advantage over say, Java.

Visual Studio Express? still way behind JetBrains IntelliJ (the community edition is FOSS). Visual Studio is unusable without JetBrains Resharper, which isn't cheap.

Azure? AWS

Bizspark? not required for Java dev as everything's free and OSS anyway.

Popularity? most popular .net libraries/tools (NUnit, NAnt, NHibernate) are all clones of popular Java projects

Scalability? those Windows licenses will cost you a fortune once you're out of bizspark

Vendor lock-in? well it's still there with MS, just you're not paying them for three years (Bizspark)

Re: Unapologetically build your startup technology in C#

#12
I strongly agree with the author's conclusion, but I strongly disagree with many of his points. Notably, with his recommendation to consciously go all the way with the Microsoft vendor lock in.

Our startup's backend is made in C#, and we're very happy with the choice. We use Postgres, we host it on Docker containers on Linux, and our devs are equally spread over Windows, OSX and Linux. MonoDevelop is a remarkably great IDE for something with so few users, for example, and great open source like Dapper and ServiceStack.OrmLite make it super easy for us to interface with Postgres and use all of Postgres's unique features (Json as a first class data type, multiple-cursor result sets, stuff like that).

The author seems to propose "get all the free Microsoft goodies when you start, and once you really need the paid versions you're probably successful enough that the cost doesn't matter much". It is Microsoft's strategy that companies do this, and it's a valid one, but it's really not what I would do. Microsoft might've become a whole lot more open these days, but tying yourself in so much with a single provider sounds, well, dangerous no matter what.

For example, if you develop your C# app for Azure, moving to a different provider is a lot of work (much like if you want to move your Rails app away from Heroku, but with less open source out there to ease the road). If you develop your C# app to work platform-independent (or at least cloud-provider-independent) from the outset, then you're free to move whenever you want.

Re: Unapologetically build your startup technology in C#

#13
There are two people talking in my head while I read this post. One says :

Too many people obsess about backends. Yes, build your startup in C# and a .NET stack if that's what your familiar with. The backend ultimately doesn't matter, and the faster you can create and then iterate on your product, the better off you'll be. The primary factor that will decide whether your startup is successful or not is if people like your product and actually use it. None of your users will know or care what you built it in, be it .NET, RoR, Django, Yii, whatever.

The other person in my head is saying. "OH MY GOD NO". I've used the .NET stack and various OSS stacks to build complicated web applications. From this experience, I've concluded that the .NET stack sucks. Yes it works, but almost any OSS Framework will provide a much better developer experience. Better while developing the initial product, and better when maintaining and extending it.

Re: Unapologetically build your startup technology in C#

#14
post #8

Is your post about C# or the .NET stack? I can (somewhat) relate to using C# over some other languages. However what I cannot relate to is being trapped with the .NET stack. And a trap it is. You need expensive Windows Servers to host your stuff and Windows just disqualifies itself as a server platform (my subjective opinion). Having to use a powerful latest-tech machine and very recent OS version (2012?) with loads…

If I were to make a web backend of some kind I'd go with C#/F#, but NOT IIS, not SQL Server, and depending on the instance costs of hosting, perhaps not windows either.

This is a good list of frameworks, including NancyFx, ServiceStack

http://fsharp.org/guides/web/index.html

Re: Unapologetically build your startup technology in C#

#15
post #9
post #2

Interesting how the post completely ignores the quality of the language . Most people I know don't use C# for the same reason they don't use Java: Because it's often feels bloated, over-engineered and too verbose for building stuff fast. It has nothing to do with Microsoft, Azure or scaling, they just prefer whatever dynamic language they're comfortable with.

I can see people having reservations about C# for many reasons - mainly as to how closely it is tied to Microsoft and to Windows (yes, I know it is cross platform, but the focus of the eco-system in very much on Windows) - but I can't see the quality of the design of the language being much cause for concern. Personally, I think it's one of the nicer languages in that particular space at the moment - certainly much n…

"I know it is cross platform, but the focus of the eco-system in very much on Windows."

There's a funny thing about its cross-platform nature: You almost never see C# apps on other platforms. Why is that? There must be thousands of useful C#/.Net applications made that other platforms could benefit from, but the ONLY ones I've seen are the ones that targeted Mono to begin with. Nothing else.

Something fishy is going on here.

Re: Unapologetically build your startup technology in C#

#16
post #8

Is your post about C# or the .NET stack? I can (somewhat) relate to using C# over some other languages. However what I cannot relate to is being trapped with the .NET stack. And a trap it is. You need expensive Windows Servers to host your stuff and Windows just disqualifies itself as a server platform (my subjective opinion). Having to use a powerful latest-tech machine and very recent OS version (2012?) with loads…

> You need expensive Windows Servers to host your stuff and Windows just disqualifies itself as a server platform (my subjective opinion). Having to use a powerful latest-tech machine and very recent OS version (2012?) with loads of patches, newest .NET framework just to host a super simple REST service with the almighty IIS is OVERKILL in every sense of the word.

This is true, I definitely agree.

I am , however, excited to know that they are taking steps to change this. ASP VNext is the next generation of asp.net applications: standalone, framework bundled, cross platform.

http://www.asp.net/vnext

Re: Unapologetically build your startup technology in C#

#17
post #8

Is your post about C# or the .NET stack? I can (somewhat) relate to using C# over some other languages. However what I cannot relate to is being trapped with the .NET stack. And a trap it is. You need expensive Windows Servers to host your stuff and Windows just disqualifies itself as a server platform (my subjective opinion). Having to use a powerful latest-tech machine and very recent OS version (2012?) with loads…

SQL Server is a great piece of software and it integrates very smoothly with other MS software. What I have done on more than one occasion, is to set up a nightly job that mirrors our main (MySql or Postgres) db to a small SQL Server. The finance people can then use this to do data mining through, using the fine suite of products from MS. No need to actually use it for a development platform just for that.

Re: Unapologetically build your startup technology in C#

#18
post #8

Is your post about C# or the .NET stack? I can (somewhat) relate to using C# over some other languages. However what I cannot relate to is being trapped with the .NET stack. And a trap it is. You need expensive Windows Servers to host your stuff and Windows just disqualifies itself as a server platform (my subjective opinion). Having to use a powerful latest-tech machine and very recent OS version (2012?) with loads…

> You need expensive Windows Servers to host your stuff and Windows just disqualifies itself as a server platform (my subjective opinion). Having to use a powerful latest-tech machine and very recent OS version (2012?) with loads of patches, newest .NET framework just to host a super simple REST service with the almighty IIS is OVERKILL in every sense of the word. This is true, I definitely agree. I am , however, exc…

> newest .NET framework just to host a super simple REST service with the almighty IIS is OVERKILL in every sense of the word.

Then you are happy to read about Owin :-)

using (WebApplication.Start(url)) { Console.WriteLine("Server running on {0}", url); Console.ReadLine(); }

Re: Unapologetically build your startup technology in C#

#19

Earlier quoted context omitted.

> You need expensive Windows Servers to host your stuff and Windows just disqualifies itself as a server platform (my subjective opinion). Having to use a powerful latest-tech machine and very recent OS version (2012?) with loads of patches, newest .NET framework just to host a super simple REST service with the almighty IIS is OVERKILL in every sense of the word. This is true, I definitely agree. I am , however, exc…

> newest .NET framework just to host a super simple REST service with the almighty IIS is OVERKILL in every sense of the word. Then you are happy to read about Owin :-) using (WebApplication.Start (url)) { Console.WriteLine("Server running on {0}", url); Console.ReadLine(); }

I've been stuck working in MVC3. I started a MVC5 app recently, and haven't had time to wonder about Owin. I'll have to look into it more.

Re: Unapologetically build your startup technology in C#

#20
post #8

Is your post about C# or the .NET stack? I can (somewhat) relate to using C# over some other languages. However what I cannot relate to is being trapped with the .NET stack. And a trap it is. You need expensive Windows Servers to host your stuff and Windows just disqualifies itself as a server platform (my subjective opinion). Having to use a powerful latest-tech machine and very recent OS version (2012?) with loads…

> You need expensive Windows Servers to host your stuff and Windows just disqualifies itself as a server platform (my subjective opinion). Having to use a powerful latest-tech machine and very recent OS version (2012?) with loads of patches, newest .NET framework just to host a super simple REST service with the almighty IIS is OVERKILL in every sense of the word. This is true, I definitely agree. I am , however, exc…

Yes, I'm also eager to see this in action. About time.

Regards, Steviee

Post reply on HN