| I am a c# developer of many years, and I know just a little of what GO is about. I would say it depends what you are trying to achieve. If it is a regular old web application then .NET will shine, giving you the MVC5 framework which is similar to rails, excellent database mapping, a well integrated web server, authentication and other web concerns out of the box, integration of odata. Let alone the strong typing and excellent generics which is probably the best of the C++esque languages (but its no Hindley Milner but that isn't of much practical importance for a startup). Maybe use GO if you need it to run cross platform, need to do some insane performance tuning or heavy systems programming. I.e. you are starting a digital ocean or something like that. Running .NET on linux is possible but may be more limiting. So you are probably running on Windows and the server costs could be higher BUT more than paid off by saved developer costs. Of course you are also free to use both GO and .NET, using GO where it shines and .NET for the rest of the more prosaic businessey stuff. On hiring - you will find more .NET devs for sure. Also .NET has been around a lot longer, C# is always getting great new features and there is the excellent F# if you need to do functional programming. Your biggest consideration as a startup is rapid development and time to market. .NET will get you there faster. Click a button and you have a boostrap-designed, authentication enabled application with a DB back end in a few seconds that you can easily extend. You can get an MVP out in a few hours in .NET. Without knowing more about your application, I would say it is 99% likely .NET would be a better choice. |