views:

933

answers:

11

I'm a Java EE person who would like to climb the .NET learning curve.

I've always had the impression that one important difference between Java and .NET was that the Microsoft suite required that you (or your employer) had put up some coin to get access to the tools. A Java person has the advantage of being able to download a JVM, Eclipse or NetBeans, Tomcat or Glassfish, MySQL or PostgreSQL, and they're in business. Is that still fair? What's the best way for a guy who works in a Java EE shop to learn C# without breaking the bank? Is it possible learn C# well without a paid subscription to MSDN?

+20  A: 

No subscription is required. You can even download the free Visual Studio Express Edition, and also access to the MSDN library is free. And there is also Sql Server Express edition which is also free.

Add to this all the great free online resources, like stackoverflow, asp.net, codeproject, blogs etc. and you are ready to go.

M4N
Thanks to all, most appreciated.
duffymo
+1  A: 

If you are a student you can get access to the MSDN Academic Alliance. Also, you can use the express editions to learn the languages, but they're not fully featured and if you plan to actually develop software commercially on them, you will have to buy a full license.

Malfist
+2  A: 

http://www.microsoft.com/Express/ - Express IDE's are lighter weight free IDE's meant for students or hobbyists. They do not include all the bells and whistles but should be sufficent to learn how to code anything.

The compiler for .Net is distributed with the framework so you could actually code in Notepad (Although I'd just get the free IDE)

Also if your a new company (less then 3 years old), have less then 1 million in revenue a year and are privatley you should checkout http://www.microsoft.com/BizSpark/. With Bizspark you can get a full featured license of MSDN with VSTS. You only pay $100.00 when you leave the program.

Had we known about this eight months ago we'd have saved ourselves tons of cash.

JoshBerke
Wow, thanks for the info on BizSpark!
Fred
welcome its an awsome program
JoshBerke
+2  A: 

You can download Visual Studio Express for free and the documentation is available on the MSDN site. Another great tool is Reflector which is also free. So if you're looking into .NET on your own, you don't have to spend any money.

Another great tool (and free as well) for digging into the details of .NET is Debugging Tools for Windows (WinDbg + SoS.dll will let you look at loads of details not accessible from Visual Studio).

Brian Rasmussen
+1  A: 

Is it possible learn C# well without a paid subscription to MSDN?

In short yes.

  1. Download VS2008 Express
  2. Buy books
  3. MSDN is online
  4. Program
  5. Ask questions
  6. Profit!
John Nolan
Head First C#? Or a Jon Skeets tome?
duffymo
Reading c# in depth right and I'm impressed. But wasn't referring specifically to that one. Would suit someone with Java roots though.
John Nolan
+1  A: 

Well, MSDN is free on the web so your reference isn't a problem.

The .NET Framework and compiler are free too.

Visual Studio is not free but that is just a development environment. You can write code with just notepad and some of the books out there do just that as they are teaching c# and not how to use the VS IDE.

So you sure can but it is much easier with Visual Studio.

EDIT Ack! I forgot c# Express - Show how easy you can get hooked to 'Da Man!'

Brody
Visual Studio Express Editions are free
JoshBerke
+1  A: 

Get the "Express" version of Visual Studio (which includes the compiler and libraries), and the Microsoft Windows SDK (which includes the help files), both of which are free ... and the express version of SQL Server if you want that.

ChrisW
+1  A: 

The best way to learn would be just to download the Microsoft Visual Studio Express for C#. This has all, or almost all, of the features of the full/pro versions, but is great for just hobby/learning.


You can access the MSDN help online. The MSDN subscription I think you are referring to is for software, etc, and isn't necessary to develop code.

jeffl8n
+1  A: 

With the huge amount of information available online these days you do not need an MSDN subscription to make a useful start with .NET/C#.

  1. Read about and then download the express editions of the tools you're interested in
  2. Browse the MSDN Developer Centre
  3. Read some of the many getting started guides available online
  4. Wish you'd done it sooner
+7  A: 

In addition to the Express tools that have already been mentioned, you'll also want IIS for web development. That comes included in the various pro/business versions of Windows.

The MSDN documentation is available online for free as well.

The main difference between the free Express and the paid versions of Visual Studio is that you don't get support for plug-ins, some debugging tools, some projects (such as Windows services), Crystal Reports, installers, and other tool which are useful in business, but aren't important for learning.

After you've learned C#, if you need features that aren't in the free versions, you can buy the tools you need separately from the MSDN and save some cash. Visual Studio standard is about $250 and SQL Developer is about $50. The primary advantage of the MSDN is that it gives you all of the tools you need for development using the Microsoft stack. Depending on the type of MSDN (pdf) you get desktop and server OSes, Office, Visual Studio, and various server applications. Those can be very useful, but certainly aren't needed for learning.

Microsoft also provides 30+ day evaluations of many of their professional tools. Windows Server, Visual Studio, SQL, Sharepoint, Expression

In my opinion, there is absolutely no reason you need an MSDN subscription to learn C# well. But it is useful for a professional developer who focuses on Microsoft tools.

Mitchell Gilman
Thank you Mitchell, most appreciated.
duffymo
You are very welcome. :-)
Mitchell Gilman
A: 

Two more things not yet mentioned:

  1. Not only is the MSDN library available for free online, but it can also be downloaded for free, in two flavours: 300MB express (core) version, or 2GB full version.

  2. In addition to Microsoft's free Visual C# Express, there is also a complete, high quality, open source IDE for C#, VB.NET and Boo called #develop (or SharpDevelop). This has a number of features not present in VC#E, and vice versa.

Colin Pickard