Fog Creek Software
Discussion Board

C# Programming Soon To Be Worth The Effort

Apparently JetBrains are making a C# version of IDEA meaning the that C# programmers will be able to use the best IDE in the world. :) (I'm not sure about the state of the C# IDE market but it may also mean that C# gets its first IDE with refactoring support)

I wonder if this was part of JetBrains' initial plans or if it is partly caused by the number of:
* free Java IDEs
* Java developers whining "but I have to pay for it" (these same people clearly have very well spec'ed machines if they can run NetBeans or Eclipse with adequate performance)

Walter Rumsby
Sunday, May 4, 2003


Have you even tried VS.NET (1.0 or 2003)?  It _IS_ the best IDE for .NET/C# in the world.  I played with IDEA for Java, it's nice, but I don't understand what the hoopla is all about (I've used Visual SlickEdit for doing java dev, so I wasn't much impressed by IDEA.)

Sunday, May 4, 2003

Yeah, man - whether you like Microsoft or not, Visual Studio .NET is an amazing IDE. In terms of core language features and basic ASP/ADO/Forms programming, it is flawless; if you use a lot of the hardcore web/enterprise features (to automate away certain tasks), you will find bugs, but... oh well. Nothing else is in the same universe as Visual Studio.

Dan J
Sunday, May 4, 2003

Honestly, I'm not all that pleased with VS.NET. The project build system is clearly broken. The "visual" editors are chop your code into tiny little pieces which are impossible to put back together. The only reason we use it is because of its first rate Intellisense.

If someone comes out with an IDE that's built around NAnt (project system that generates NAnt build scripts instead of VS.NET project ilfes) and supports Intellisense and refactoring, I would pay hundreds of dollars for it without question (presuming I could test it first, of course).

Brad Wilson (
Monday, May 5, 2003

"Nothing else is in the same universe as Visual Studio."

Obviously you've never used Delphi. :)

I find these VS proclamations amusing considering we Delphi developers have been enjoying a top shelf language and IDE for all these years.  Unfortunately it's not "Microsoft Delphi" so it's largely ignored.

Sorry for the threadcrap, didn't mean to derail the discussion.  Move along, nothing to see here.

Where Would We Be Without The Delphi Trolls?
Monday, May 5, 2003

I should have explained my rant more fully in my previous post.  I recently purchased VS.Net to learn C#.  I am amazed at how clunky and unnatural the IDE feels compared to Delphi.  I feel like the IDE is fighting me every step of the way.  Anyone who's used Delphi will know what I'm talking about.  Admittedly I'm still new to VS.Net so perhaps I just haven't figured out the intricacies of the environment yet.  I'll keep at it until I become comfortable with it.

I do love the language though.  It's clean, clear, and concise.  There are many similarities to Delphi which isn't surprising considering it was architected by Anders Hjelsberg, the man who also created Delphi.

Where Would We Be Without The Delphi Trolls?
Monday, May 5, 2003

"Admittedly I'm still new to VS.Net so perhaps I just haven't figured out the intricacies of the environment yet."

Joel has a good take on this in his UI book. I'm too lazy to go find which chapter it was, but it's towards the beginning, where he describes how PC and Mac users both think the opposing interface is "impossible". For every "Oh my god, you have to click the Start button to shut down?" there's a "What? You eject the floppy disk by putting it in the trash can?"

Basic programming in VS .NET brings a smile to my face. C# is an amazing language by itself (as it should be, considering it was founded with Microsoft's money and the ability to learn from the mistakes of C++, Java, etc.), and VS provides a lot of easily-accessible information without getting cluttered. Does Delphi offer the same thing? Maybe, but that doesn't mean my way doesn't kick ass.

Dan J
Monday, May 5, 2003

Clarification: when I said "Basic programming ... brings a smile to my face", I was referring to programming even if it doesn't involve the latest-and-greatest toolkit, not programming with Visual Basic. I don't know if Visual Basic programmers smile or not (ha!).

Dan J
Monday, May 5, 2003

Does Visual Studio have refactoring support?

Does Visual Studio support NUnit and NAnt (I'm pretty sure IDEA will as it supports the Java versions of these products)?

I've done Java development with Visual Studio 6 and IDEA is leaps and bounds ahead of that release. I've watched over the shoulder of people using Visual Studio.NET (and tried to use it for script debugging - I think it took over from the script debugger) and it didn't seem that much of an improvement on 6 (i.e. I can get more out of IDEA than they seemed to be able to get out of VS.NET).

I agree Visual Studio is a great product. For a long time VS was the best Java IDE. So much of Microsoft's dominance can - at least in part - be attributed to the quality of their developer tools and their support for developers. But, when IDEA for C# is released download an evaluation, give it a run and then see what you think.

Walter Rumsby
Monday, May 5, 2003

My experience with Delphi is a downloaded personal edition version 6. I found the IDE primitive and the language painful to program in. A not so helpful IDE and a painful language? Do the math: Delphi is top notch, but not very attractive.

And not all Delphi features in C# are that great for the programmer. For the compiler, perhaps, but not the programmer.

Thomas Eyde
Monday, May 5, 2003

Just me (Sir to you)
Monday, May 5, 2003

I trust Martin Fowlers judgement of IDEA. According to him it is the first IDE that's excited him since Smalltalk.

I use both regularly and I have to say they are both great products. But of the two I would take IDEA, and thats saying a lot for a swing app.

Rhys Keepence
Monday, May 5, 2003

They actually built the C# version of IDEA by running a very small Perl script on the source code for the Java version:

while (<STDIN>)

Beth Linker
Monday, May 5, 2003

Some reasons Eclipse and IDEA are superior to VS.NET

1. Continuous incremental background compilation. No more having to explicitly run build to see what compilation errors are in your code. The error lines on the side of the IDE, which indicate where your build errors are is useful as well.

2. Extensive refactoring support

3. More code generation templates, like getters/setters

4. A somewhat more comprehensible plugin system

John Harvard
Monday, May 5, 2003

[The project build system is clearly broken]

I agree here with Brad. I would like to be able to add/remove classes for certain builds and be able to specify more options for my builds. Right now I use NAnt because of's weakness in the build area.

I've never used IDEA but I'm willing to experiement if I get some free time. Nothing like a little competition to bring the features out.

Ian Stallings
Monday, May 5, 2003

[I don't know if Visual Basic programmers smile or not (ha!). ]

No. They .MakeHappyFace()

Ian Stallings
Monday, May 5, 2003

Ian, et al...

The build system (supposedly) has been overhauled in VS.NET 2003.  I haven't had to use it yet, but it does support pre & post build events (IIRC, VS.NET 1.0 did not)

Monday, May 5, 2003

I feel compelled to jump in the Delphi/C# thing. I'm a huge fan of Delphi and always preferred it to anything else I've tried (language and IDE). Then I got an academic/trial/whatever copy of Visual Studio .NET they were handing out on their tour and LOVED C# and Visual Studio. I'm still not using it for a few reasons: I use Delphi for work, I'm already so comfortable in Delphi I'm resistant to move, propagation of the .NET runtime hasn't quite hit critical mass with the general public as far as I can tell. But from the perspective of just working on code, I thought VS/C# was a step up from Delphi. And I get the impression that some people at Borland agree:

I assume the IDE shown there will make it's way into their other products.

Ryan Eibling
Monday, May 5, 2003

I've never used Delphi, but as a long time Visual Studio and Visual Studio.NET user, I'd be willing to bet that I would think that the Delphi interface is "clunky and difficult to use."

Likewise, it's no real shock that Delphi users have a hard time adapting to Visual Studio.NET.

I remember all the cries and screams from WordPerfect users when they switched to Word.

It's what you're familiar with....

Mark Hoffman
Monday, May 5, 2003

So, what does everyone think of the C#Builder demo?

Frederik Slijkerman
Monday, May 5, 2003


Thanks for the info, I'll have to get the 2003 version and see if the build system is better.

Ian Stallings
Monday, May 5, 2003

One nice thing about VS.NET is that if there's something you don't like about it, you can usually do something about it.

Check out C# Refactory for refactoring support integrated into the IDE.

For unit tests check out NUnitAddin that gives you quick access to running selective NUnit tests from the IDE.

Monday, May 5, 2003

Gordon Weakliem has some good info on using VS.Net and NAnt:

He also has a  Nant build script to convert existing VS.Net projects into Nant build files using his style sheet:

Jeffrey McManus on when and why to use Nant over

Using NAnt you can also tie your build process into a daily build tool such as CruiseControl.Net(

Just some options for those that dislike the VS.Net 1.0 build features :-)

Ian Stallings
Monday, May 5, 2003

The borland c# demo didn't really impressed me: I mean, yes it's cool, but what's the diff with Delphi programming? A few (very welcomed) IDE amelioration? Ok that's nice.

I've this good feeling that most of the 'innovations' introduced in C# aren't all that new.

Why is this a good feeling? Because (unfortunately) Delphi isn't going anywhere, and C# has been getting all the hype lately.

And regarding the sandbox/bytecode approach I don't really like it (let alone for confidentiality/reverse engineering reasons) but why not...

I just finished a huge 3-year project in Delphi and now I have to go back to find another job. Delphi is not very regarded around here.

So bottom line, isn't C# a really cool way to leverage years of using Delphi?

Monday, May 5, 2003

Just use Obj-C. Gives you full object-orienedness and you don't have to learn much extra over normal C.

Monday, May 5, 2003

CBT for sale on 8 CDs to learn C# fast


Wednesday, May 7, 2003

*  Recent Topics

*  Fog Creek Home