“Visual Studio 2010 and .NET Framework 4 have something for every developer. The new editor, now using Windows Presentation Foundation, supports concepts such as the use of multiple monitors. This enables a developer to have one monitor with code, another with the user interface designer, and yet another with database structure. Developers have integrated access to SharePoint functionality into the Visual Studio integrated development environment. Windows Azure tools make it easy to quickly develop, debug, test and deploy cloud applications from within the familiar Visual Studio environment.”
Visual studio is such a waste of money. It’s a piece of crap and any serious coder is using Eclipse anyways.
Why does Visual Studio have problems with standards compliant code that compiles in GCC perfectly fine (C++98 and C++03)? and vice verse (non standard c++ code not compiling in GCC)
You know, there are some people who professionally develop for Windows, getting payed for it.
Such people use VS because it makes life much, much easier when you need MFC, ATL, C#/WPF, ASP.NET, SQL Server, whatever.
Open source fanatics can troll as much as they want about gcc and whatever floss ide being better, that trolling doesn’t change a thing.
Edited 2010-04-12 16:10 UTC
Would it be trolling to point out that the only reason that you need VS is because you use stuff that was created in previous versions of VS?
MFC was decent (as is WxWidgets) but ATL and all COM pretty much showed MSFT’s strategy; make complex APIs then make them dependent on the tool that helps them with the API.
If the API was better you would not need the tool. It is hard to believe that MSFT’s API inferiority is not purposeful.
why doesn’t eclipse not suck so much?
Seriosuly… Eclipse could learn a lot about debugging and integrated UI design from VS.
Eclipse is a good IDE, but is best suited for other kind of work. It can’t replace Visual Studio.
You really shouldn’t hold up gcc to be a strict standards compliant c compiler. Historically, at least, it hasn’t always demanded strict compliance with any standard. Don’t ask me to recall them, its been awhile since c was my primary language.
I haven’t used Visual Studio in a while, but I hear good things. I absolutely have grown to dislike eclipse. Its fully featured, but as fast and nimble as station wagon full of cement.
So…no express edition?
I couldn’t find one – hence expensive waste of cash
I didn’t mind testing it out when I could get it for free, simply to see if it compiled any better than mingw/gcc
Now you can
http://www.microsoft.com/express/Downloads/
Maybe no Express yet, but you can download RC for free: http://www.microsoft.com/downloads/details.aspx?FamilyID=f9c0b89b-4…
I’m using it for a month now. After it expires – one year after you donwload it – I’ll either buy Professional or use Express if I won’t need all the features.
And if you are a student you can get it for free via DreamSpark:
https://www.dreamspark.com/Products/Product.aspx?ProductId=25
Oh, and there’s also an Express version indeed (don’t know if you have to be a student to get than one on dreamspark.com, maybe someone can check it out):
https://www.dreamspark.com/Products/Product.aspx?ProductId=29
http://www.microsoft.com/express/
I downloaded VS2010 via the DreamSpark website for free and I really like it. After years of coding OSS software I decided to see what all the fuzz was about. And I must say that I really like developing for my Windows 7 machine using WPF in VS. It has a great set of tools, the new IntelliTrace is a great feature and I am really productive.
Add to it the Blender tools for graphical development and you can easily see why so many developers are using the VS over the alternatives. Say what you want about Microsoft but they do take care of their developers (just look at Xbox vs PS3!).
These are the words from someone running Linux for 10 years (and I own a PS3 and no 360 btw). I just try to keep an open mind.
Let’s not forget Windows Phone 7.
I actually deliberately skipped Windows Phone 7 since I have no clue what the development tools for it looks like. But judging from Visual Studio, .NET, DirectX and XNA it wouldn’t surprise me if they are good. Microsoft is pretty good at making nice tools for developers.
They are also very friendly on MSDN and I really like the Codeplex.
Still, there’s a lot of stuff that I miss but credit where credit is due.
So MS categorizes developers into 3 archtypes; Mort, Elvis, and Einstein
Mort doesn’t really care about programming that much. He took some courses cause he could make money at it, he comes in at 9 and leaves at 5:01 every day. Any improvement he makes as a developer requires training provided by his company. He works hard, but he isn’t exactly a “rockstar”. Mort has a hard time with any programming that doesn’t involve using his mouse.
Elvis loves programming. He is all about providing the best possible solutions in the most efficient way possible. In a large corporate environment, he is probably the team lead. Elvis enjoys reading blogs and going to conferences, and he will probably shun most of the drag and drop stuff in favor of more maintainable code.
Einstein is brilliant, but doesn’t trust anything he hasn’t written himself. He will choose going low level over using a framework every time, and wouldn’t be caught dead using a mouse to code.
MS has sliced up their audience based on the representation of those three archtypes (if you ever hear the phrase “mort needs controls”, this is what they are talking about). Unfortunately, there are a hell of a lot more “morts” out there then anything else, so tools cater to mort before the other two.
Once you understand that, you understand the tools. The MS platform is hands down the best out there for quickly banging something out when you don’t care about code quality or maintainability. It’s ok for building big projects quickly, although you often find yourself using APIs or doing things in a way that feel like second class citizens to the drag and drop way. It isn’t that great for the Einsteins.
I believe you have no idea what you’re talking about. Your explanation has no sense and doesn’t really reflect the quality of .NET developing with VStudio.
Please, refrain yourself from looking like an idiot. Trust me.
I’ve got 4 years experience developing in microsoft-land, and 8 years overall. How much do you have? How many conferences have you been to? The developer persona thing isn’t a secret or anything, anybody who actually reads microsoft blogs would have at least heard of it. Did you bother googling?
http://www.codinghorror.com/blog/2007/11/mort-elvis-einstein-and-yo…
Now, when you look at ASP.net guidance and tutorials, what do you see? “Drag a grid to the page, drag a sql data source to the page, wire them up, profit!”. Sql in the markup. Yeah.
Edited 2010-04-13 00:50 UTC
Let’s see, I’m 34. Started programming with a Ti99 4/A then Spectrum ZX when I was around 8-10 years old, a few years later started with Visual Studio 3 and the Atrocity of the MFCs. Those were my first “real MS†tools. Prior to that, Borland Turbo C++ in DOS (and some Pascal at college).
Some Assembly at college too.
I was part of the beta for .NET, that’s when I started with C# (barely touched VB, tho I did some work in VB6).
Since then, all the way up to .NET 3.51, soon 4.0.
Also participated in Objective-C projects (XCode/Cocoa), which I prefer and I’m considering on dropping all MS tools and environments.
I am a MCSE (which is useless and I couldn’t care less about it), also have a few exams for MSSE, but didn’t feel like doing that.
I don’t count honestly, I’m not a big conference guy (too much money, too little return other than a good breakfast). Since I’ve been a MS Certified Partner since 1998, I’ve been invited countless times to different events (some of which I’ve attended).
After the useless credential interchange that we just had, let me tell you that the “developer persona thing†is famous, but that doesn’t have anything to do with microsoft tools.
The Jeff Atwood text (a blog I follow since its inception possibly), doesn’t automatically make the comparison valid. Jeff is (or was) a known VB Guy and always had weird (according to his own words) vision of .NET (and VB in general).
Luckily for the rest of the world, Stack Overflow is (afaik) in C#/ASP.MVC.
Microsoft Tools are the best tools I had the opportunity to work with, and I assume they will continue to be excellent at what they do. They have awful things and sometimes you just wish they didn’t exist. But no amount of eclipse/netbeans/vi will replace that.
The “einstein†as you call it, doesn’t feel slowed down by VS. On the contrary I’d say. VS can be powerful, only the retards will believe its a simple “Visual Toolâ€.
If there’s something visual, I’d say Interface Builder is more “visual†with all the Drag/Drop to make connection between UI elements and code.
All in all, I want to move away from MS, too many years in it.
Haha, I thought you were calling me an idiot for the developer persona thing. If someone doesn’t know about that, they obviously have very little experience in the MS world, which is why I was questioning you. This is actually a completely different conversation then I thought it was, and I’m sorry for making assumptions.
I never said it was a ‘simple visual tool’. What I said it that everything seems geared towards doing the quickest/easiest way. Now a caveat on that, I’m a web guy, and my experience with .net is with building ASP apps and services, so this may just be an ASP.net thing, but like I said, the guidance, tools, and APIs are geared towards doing things the wrong way. You can work around it, but when you do that you tend to give up the things that make visual studio visual studio.
A good example is databinding. As soon as you think having sql in your datasource is a bad idea, you start giving up large amounts of functionality. You can get most of it back, but it will probably mean quite a bit of reading of sites that are not msdn, about stuff that are not covered in MS books. That is because the way things are geared is what I described before “drag a grid to a page, drag a datasource to a page, wire them up, and don’t care about how it serializes out everything to a hidden field that will go over the wire on every page load”
Now you brought up the apple tools. I have only played with them a little bit, but from what I can see, they guide you down a pretty good path. If you look at something like rails or django, same deal, you actually have to work pretty hard to end up with a big ball of mud.
There is more too. WF, while pretty, is slow as a mule, and even worse to debug. Sharepoint is a nightmare to build for, and the end product is pretty terrible from a web development perspective. EF has taken years to not totally blow, and that is mostly because now you have the option to not use their tooling. MSBuild and MSTest are like slower, obsolete versions of NUnit and NAnt, which themselves are hardly revolutionary to bein with. And don’t even get me started on commerce server. Probably the worst e-commerce platform I have ever worked with, where it is joined by MS CMS, which (at least a few years back when we were using it), is the worst CMS in existence.
Thats not to say there isn’t brilliant stuff from MS as well, but typically, those are things that allow you to not have to use their tooling. As for studio itself, I think it leads the way with its debugger, but its editor is above average, and its additional wizards, design surfaces, and tools more often then not should be avoided if you want to have clean, maintainable code.
Dude, you are not making it any better, just cut it, nobody (except some other trolls) are drinking your kool-aid.
I think google_ninja is being pretty fair. Some of the Visual tools are not likely to lead you down the path to cleanliness and maintainability. They’re likely good enough to get you to a certain ‘scale’ and then you’re likely to need some other way to get beyond that.
But there’s a lot of money to be made and business to be had at that level.
The big confusion came from the fact that he does ASP.NET and I have nothing to do with that. I understand that certain ASP.NET “ideas†are those of Drag, Drop, Databind and Boom.
Something that, as everyone seems to agree, it leads too poor code.
I guess that the whole confusion comes from your ASP.NET experience. I have barely done any ASP.NET development. The only ASP I did was in ASP 2.0 with VBScript (!) back in 1999 or 2000 where we had to implement something during the Internet Bubble.
Databinding controls is not new. It has been available since early Visual Studio incarnations (not sure since which one, but I vividly remember it in VS6). The truth is that nobody really used that (and those who did were looking for troubles).
I wish Databinding worked fine, but you *always* find a problem with it and end up having to do it manually.
When they show you the samples and stuff, it all works fantastically, but in the end, it sucks.
The only place where Drag and Drop more or less is useful is in the LINQ designer, but only once, then you better use SQLMetal or similar from the command line.
XCode is nice, Interface Builder too, but they have certain annoyances that VS doesn’t (maybe because VS is more “experienced�). However, COCOA/Obj-C is a different world.
I’ve tried Netbeans and Eclipse a couple of times for Java stuff and they are awful, but that’s my experience. Java’s UI is possibly the worst invention (Swing…) ever created. The lack of attention to detail is so big that you just give up. Java as a language is nice (as good as C# if not better in some things) but the lack of a real UI toolkit, a real visual designer, makes it an impractical joke for desktop applications. Add to that the fact that Java “multi-cross-super†platform is also not 100% true. That’s why many new companies chose NET over Java.
After trying the RCs of the VSTUDIO 2010 I can say that “this time†they finally improved it. VS2003,5 and 8 were the same crap, with more crap and minor adjustments. This time there is a serious change.
This is the year of Visual Studio… (pun intended).
😉
I concur. Visual Studio is also geared towards the extreme programmer.. Test Driven Development, Profiling tools anyone?
I’ve never had the power in debugging and performance tooling that I’ve received with VS2010 before. Never. It is the best, most productive IDE bar none.
Are you saying that someone who doesn’t trust anything that he hasn’t written would trust visual studio? As a somewhat neutral party, that seems to be true. I’m becoming more and more like that myself.
That’s a pretty big generalization, and it is not very accurate either. It is true that people that doesn’t “love” programming and sees it more as a job than a profession are doing well thanks to the tools that Microsoft (and others) provide them, the assumption that catering to more than one kind of people is impossible is bogus.
I know a lot of great programmers that love what they do and are really good at it whom, guess what, uses Visual Studio. Impossible? No. Different tools works for different people. But generalization are wrong.
It’s like saying that only people using Linux are truly good at computers, because Windows is used by people that are not. Nothing in life is that simple.
how long will it take mono to catch up to this version? 3 years? 🙂
They actually had a lot of .net 4 implemented well before Microsoft shipped
Yet their visual tools (winforms, arguably the most used tech of VS) was really bad last time I checked.
Unless you’re porting a hello world or a .DLL project without win calls (obviously), mono is very limited in its cross-platformness. I remember managing to make Gentle.NET in Mac using Mono, but that was a “wow!†because you could hardly do anything else.
A properly designed program should be able to run headless, if it adheres to proper separation of concerns.
I’ve had very limited issues with replacing full blown WinForms or WPF frontends with Gtk#.
MonoDevelop is not perfect, but it is approaching becoming one of the best non-Windows IDEs.
I spitted all my Tea.
I ignore the complexity of those systems, but I am dubious that they are nothing more than a series of Winform buttons/labels and such.
MonoDevelop is nice, but if that is “one of the best†non-Windows IDEs, I understand why the majority of .NET developers use any form of Visual Studio under Windows.
Given a properly designed application, which has been my experience, your object model has no notion of any UI toolkit.
I’m able to switch between Wpf, WinForms, and Gtk# with very little fuss because from the beginning my Views had a corresponding Adapter which implemented an INotifyPropertyChange rendition of my object model.
Gtk# has an addon library called Gtk-Databind to facilitate this.
A few things broke on Mono, but MOMA helped me track then down and I was able to work around them pretty easily.
Outside of Visual Studio, there is really no competition. Some people swear by Eclipse, I swear at Eclipse.
What’s wrong with most programs running headless?
Name a program that could not/should not be run without a gui.