views:

1978

answers:

9

I'd like some feedback regarding how to begin learning ASP.net (C#) and SharePoint development. What have you found useful to jump start your career? Any particular books, videos, boot camps, college courses, web sites, etc. that have helped to shorten the path to becoming a developer? I've gone through a couple of books and begun parts of others, but I feel like I'm just not able to get over the hump so that I can develop something on my own. Everything I'm doing is essentially self-taught; is that a good idea? Is there a better way? I have background in Microsoft systems administration and Cisco network administration but I'm looking to get into the other side of the IT world. I'm open to any recommendations for jump-starting my career in .net development.

Thanks!

+4  A: 

Being self-taught is fine, particularly if you're motivated. I've often found that hanging around on forums like this and trying to solve other people's problems is a good way of learning.

I would strongly recommend that you try to learn the "core" of C# and .NET before jumping into ASP.NET and SharePoint. You'll find it a lot easier to work out the difficulties of those "peripheral" platforms when you have a solid foundation.

How much development experience do you already have? Accelerated C# 2008 (sanitised Amazon link) and C# 3.0 in a Nutshell (sanitised Amazon link) are both good books if you're not completely new to programming, but they'd be a bit daunting to a total newbie.

Jon Skeet
+5  A: 

Here are a few free resources to get you started:

There are other free MS dev courses here.

As Jon suggested, a solid grounding in the .NET framework and one of it's languages will make things easier.

Mitch Wheat
+1  A: 

I don't really have any experience. I made it through Head First HTML with CSS and XHTML and then I began Head First C# before realizing about halfway through that I just wasn't following. Then I tried Beginning ASP.net 3.5 in C# 2008 (APRESS) and found that it referenced a lot of C# that I didn't yet understand. So I then moved to Beginning C# 3.0 (WROX) by Jack Purdum and found it to be very good in the beginning, but as I moved along I feel like I'm getting bogged down again and not really grasping much in the text. I feel like I keep hitting a wall. I know I need somewhat of a foundation before I can begin creating something, but I'm ready to get going and it's just not happening yet. This doesn't seem as easy to pick up as networking and systems administration, but I realize it's a completely different type of skill.

RJ Russell
Unfortunately, I suspect that many of the more experienced OO developers here have forgotten what it's like to really not know any OO languages at all - I know I have. That means we're not in a great position to judge introductory texts beyond accuracy. (Continued)
Jon Skeet
I think there's room in the market for a good, light-weight "C# from nothing" book which doesn't try to pack in too much stuff (which I think HFC# does) but which tries to be absolutely accurate in everything it teaches. I'm hoping to write a book like that some day, but I don't know of one now...
Jon Skeet
Andrew Troelson's C# Apress book is a good starting point.
Mitch Wheat
Isn't 1370 pages a bit overwhelming for a newcomer though? I know it would be for me :)
Jon Skeet
+5  A: 

As far as SharePoint development goes, I'd work on picking up ASP.NET and C# or VB.NET first, and then once you're comfortable with that, migrate to SharePoint. There is a huge learning curve, and ASP.NET development is not always the same skillset as SharePoint development.

As far as SharePoint books go, I've found it helpful to pick up a few books (Inside Windows SharePoint Services 3.0, SharePoint 2007 Development Unleashed, SharePoint Server 2007 Bible, and SharePoint 2007 Development) to keep on hand. The variety of topics that make up SharePoint development make it difficult to read through cover-to-cover; however, they're very good cross-references every time you have to do something new.

If there are any user groups or developer's conferences in the area, check them out. It won't give you a deep understanding of the subject, but it's a good jump-start. (As far as SharePoint goes, I recommend Doug Ware's SharePoint Survival Guide presentation; slides are on his site.)

Also, if you're just getting into SharePoint development, realize that not everyone is a master at every part of SharePoint. You will start out learning one or two things really well, but knowing almost nothing about the rest of SharePoint. You'll find there are very, very few (if any) experts in everything SharePoint does.

DylanW
A: 

So most developers have picked up their skills by purchasing books? What about the people who write the books? Are they just superhuman? I think I'm struggling to wrap my head around some of the concepts, not necessarily any particular programming topic. It's like I'll read through and then get to a point where it seems like the book is written in Arabic or something. Does anyone use mentors, training schools, or anything else to make quick advances in skill acquisition or do most people simply read books? I'm getting a little burned out by my lack of progress. It's frustrating.

RJ Russell
+3  A: 

Regarding sharepoint

There is two levels of Sharepoint knowledge. The fist level is beeing able to build and configure Sharepoint sites using the web UI and Sharepoint Designer. You dont need any coding skills for this, although there is still a lot to lean.

The second level is beeing able to develop code for sharepoint: WebParts, custom workflows and so on. This requires a very good understanding of C#, .net and ASP.NET, since it builds on top of ASP.NET, but additionally requires understandig of the Sharepoint development model and API which is pretty baroque.

I think it would be very hard to learn ASP.NET by jumping straight into SharePoint development. I recommend you get a solid level of experience developing non-Sharepoint ASP.NET applications first.

Regarding books

You should alternate between reading and experimenting with your own mini-projects. When a book becomes too dense, its because you havent internalized the previous pages. Take a break and experiment until you feel comfortable. The best thing is to continue to choose toy projects which are at the right level: challenging but still possible to solve.

JacquesB
+1  A: 

OK, so with the end result being SharePoint development, I should actually put that on hold until I have a firm grasp of C#.net? Then I should proceed with learning ASP.net before thinking about developing anything on the SharePoint platform?

If that's the case, then where would be a good place to begin with .net and C#? It seems to me that books are the only mentioned option. Are there any other methods such as websites, schools, mentors, etc. that have been used? Has anyone else began their programming career knowing nothing before attempting to pick up C#? Any tips?

Also, as I mentioned, this is the very good book that has caused me to struggle a little after I breezed through the initial chapters: http://www.amazon.com/Beginning-3-0-Introduction-Oriented-Programming/dp/0470261293/ref=pd_bbs_sr_1?ie=UTF8&s=books&qid=1223538585&sr=1-1

Mitch, you mentioned "Pro C# 2008 and the .NET 3.5 Platform" by Andrew Troelson here: http://www.amazon.com/2008-NET-Platform-Fourth-Windows-Net/dp/1590598849/ref=pd_bbs_sr_1?ie=UTF8&s=books&qid=1223640246&sr=1-1

but don't you think that the Beginning book (that I currently own) would be more appropriate: http://www.amazon.com/Beginning-ASP-NET-3-5-2008-Professional/dp/1590598911/ref=sr_1_3?ie=UTF8&s=books&qid=1223538483&sr=1-3

Also, is this too much: http://www.amazon.com/NET-3-5-Wrox-Box-Domain-Driven/dp/0470387998/ref=sr_1_6?ie=UTF8&s=books&qid=1223538483&sr=1-6

Regarding my own development projects, is there a good online repository for these or do I just create them on my own? The problem is that I have plenty of ideas, but I think my ideas are well beyond the scope of my knowledge.

I probably sound like a total n00b, but it's been a much bigger challenge to cross over from systems administration and networking administration into programming than I originally thought.

RJ Russell
+2  A: 

http://www.mssharepointdeveloper.com/ That has hands on labs and a VPC you can download and use with all the tools you need.

Chris Johnson
+1  A: 

I don't know if you're a studen or not but if you are check out Microsoft's Dreamspark initiative. You can download all the software needed to start doing .NET and SharePoint development (you'll only get the version of SharePoint that comes with the Server install though).

knight0323