Building a Startup - Defending .NET
61–70 of 89 posts
Re: Building a Startup - Defending .NET
#62.NET is great. It's fast, clean, and the framework libs are incredibly good. C#, IronPython, and F# are amazing. I still haven't found an IDE that compares to VS in terms of productivity and usability. Despite all the things going for it, it's decidely un-trendy and people hate on it. I'm guessing it's primarily because it's from Microsoft. Software trends are silly.
The elephant in the room here is cost. I work in various flavors of Visual Studio every day, and it is a nice IDE, but if I was bootstrapping a company, I'm not sure I'd want to shell out the money for an MSDN subscription[1]. I get the impression from the post that the toolset was already in place (paid for).
[1] I haven't looked at subscription options recently, so perhaps there is a start-up friendly level these day?
Re: Building a Startup - Defending .NET
#63.NET is great. It's fast, clean, and the framework libs are incredibly good. C#, IronPython, and F# are amazing. I still haven't found an IDE that compares to VS in terms of productivity and usability. Despite all the things going for it, it's decidely un-trendy and people hate on it. I'm guessing it's primarily because it's from Microsoft. Software trends are silly.
I recently started using C#, VS and TFS after many years with Java and Python, SVN, and IntelliJ/Eclipse.
I can see why people prefer C# to Java, C# is better than Java.
TFS for version control I have more trouble liking. It seems to be inefficient across slow WAN's and is far below GIT etc. But if everyone is local and your needs are simple it can work.
Visual Studio for me (with Resharper installed) is slow, buggy and just dumb. In Eclipse or IntelliJ code updates during debugging worked ok, better if Zero Turnaround was installed, VS not so much. Navigating with IntelliJ was just better, with visual clues about how to get to implementations etc. And Visual Studio hangs for me regularly.
But worst of all clicking any of the Test buttons results in 15 seconds of waiting before I see a pass or fail. This just kills me.
I see a strong pro Microsoft bias in the .Net development community and I think this is a strong negative. It reminds me of the days before log4j beat Sun's util logging when inferior Sun technology won in the Java community.
Re: Building a Startup - Defending .NET
#64.NET is great. It's fast, clean, and the framework libs are incredibly good. C#, IronPython, and F# are amazing. I still haven't found an IDE that compares to VS in terms of productivity and usability. Despite all the things going for it, it's decidely un-trendy and people hate on it. I'm guessing it's primarily because it's from Microsoft. Software trends are silly.
I still haven't found an IDE that compares to VS in terms of productivity and usability. The elephant in the room here is cost. I work in various flavors of Visual Studio every day, and it is a nice IDE, but if I was bootstrapping a company, I'm not sure I'd want to shell out the money for an MSDN subscription[1]. I get the impression from the post that the toolset was already in place (paid for). [1] I haven't looke…
Re: Building a Startup - Defending .NET
#65I object the "VS" is the best IDE statement. For C#, maybe that is true. But I used Intellij IDEA and VS. VS still looks like glorified notepad against IDEA. I think most developers are living under their language bubble. Also, unlike ruby-python, C# and Java are IDE languages. You cannot program without one.
Recentely JetBrains has also released IDEs for Ruby/Rails (RubyMine) and Python/Django (PyCharm). It will be interesting to see if they gain any momentum within their respective communties.
Re: Building a Startup - Defending .NET
#66I object the "VS" is the best IDE statement. For C#, maybe that is true. But I used Intellij IDEA and VS. VS still looks like glorified notepad against IDEA. I think most developers are living under their language bubble. Also, unlike ruby-python, C# and Java are IDE languages. You cannot program without one.
Re: Building a Startup - Defending .NET
#67Re: Building a Startup - Defending .NET
#68Earlier quoted context omitted.
That's an interesting dilemna. I'm a Java web developer, I know the platform / libraries / tools really well, and know how to get things done with it. I've dabbled with more powerful languages in my spare time, but I've been using Java 8+ hours a day for the last 3 years. If I were to launch a startup, should I go with the "cool shiny powerful" language, or should I stay with the boring verbose language that I know w…
Have you done anything with Grails or Groovy yet? My experience is that it's probably the easiest transition for Java devs, because Groovy is something that can be interchanged in each file with "plain old Java".
I've only tried a small "create-your-blog-in-15-minutes" Grails tutorial, and it was actually quite effective. I haven't revisited it since then. Thinking about it, my Groovy avoidance is absurd, and I WILL look at it again with an open mind. I remember "dismissing" Groovy a while ago, after reading a few articles raving about Scala being the next JVM language. I think it was quite dumb of me actually.
A colleague of mine used Grails to build a small issue tracker for a client, and he loved it. The only drawback, according to him, were some of the plugins: when the default plugin configuration wasn't what he needed, it was sometimes hard to change it. Since they were open source, he simply forked them / hacked at the code / submitted patches to improve them. These drawbacks are expected, though, since the language is still young, and plugins will mature.
Spring Roo also looks interesting, for those who want to keep using Java. It's inspired by Rails / Grails, and uses code generation to speed up development: http://www.infoq.com/interviews/roo-ben-alex
Re: Building a Startup - Defending .NET
#69Existing expertise If the goal is to get to a minimum viable product quickly (like most startups) then existing knowledge is a pretty good reason to go with a certain stack. He even mentions having the main algorithm already implemented in C# so at that point it's pretty much no contest. He can always go the route similar to StackExchange in using Linux & Open Source on utility servers (Caching/Load Balancing) and ke…
That's an interesting dilemna. I'm a Java web developer, I know the platform / libraries / tools really well, and know how to get things done with it. I've dabbled with more powerful languages in my spare time, but I've been using Java 8+ hours a day for the last 3 years. If I were to launch a startup, should I go with the "cool shiny powerful" language, or should I stay with the boring verbose language that I know w…
I think the danger with this decision is that we tend to get a "grass is always greener across the street" mentality. I have yet to find a programming language that has no serious warts.
Certainly different languages have different warts, and thus suit different jobs better. However, just because we haven't used a language enough to appreciate its warts, that does not mean we will not discover them to our cost at exactly the wrong moment in our new project.
Moreover, with newer or more recently popularised languages, there is sometimes a tendency for the community to bury its head in the sand. Some defenders might claim that we "just don't understand" if we identify a serious shortcoming. Sometimes the individual or group that defines/specifies a language will have a blind spot and make seemingly arbitrary decisions that we don't agree with. In contrast, with longer-established languages, the shortcomings tend to be well-known and acknowledged, and the emphasis in the community is often on sharing the most effective workarounds or alternative techniques.
Obviously these generalisations aren't necessarily universal. We find helpful people in otherwise intransigent communities and awkward people in otherwise helpful communities. Still, I have seen the pattern repeat over the years for many different languages as they evolve from the Newer And Better Thing to a mainstream tool and ultimately to an older tool that is superceded by the next newer and better thing.
When I'm choosing the tools for a project, I usually favour the middle of that spectrum over either extreme. Out-of-date and underpowered is bad, but tried-and-tested is good. YMMV.
Re: Building a Startup - Defending .NET
#70Existing expertise If the goal is to get to a minimum viable product quickly (like most startups) then existing knowledge is a pretty good reason to go with a certain stack. He even mentions having the main algorithm already implemented in C# so at that point it's pretty much no contest. He can always go the route similar to StackExchange in using Linux & Open Source on utility servers (Caching/Load Balancing) and ke…
How far do you take it though? What if someone knows c+cgi? I forget the exact quote, but something along the lines of 30 years experience doesn't mean much if it's the same year 30 times .
Your quote is apt, but it cuts both ways. Using the same old tool indefinitely, even when newer tools can do the job better and much faster, might be foolish. On the other hand, learning to do the same task over and over again using different tools, each only a modest improvement on the last, might also be foolish.
In the case of your C+CGI example, I would agree that it makes sense to prefer any of the more modern "scripting" languages, which typically have both good library support for networking protocols and much more powerful integrated string handling than C.
On the other hand, there is little offered by any mainstream language ecosystem today that can't be achieved at least reasonably proficiently using tools from the .Net world as well (ignoring the obvious limitation of having to run on a .Net platform).