tags:

views:

182

answers:

6

For reference, I have attempted to search for something similar to what I'm looking for here:

http://stackoverflow.com/questions/188495/open-source-virgin-what-steps-to-take

http://stackoverflow.com/questions/184231/how-do-i-join-an-open-source-project

http://stackoverflow.com/questions/240972/getting-started-with-open-source

http://stackoverflow.com/questions/27793/well-written-open-source-projects-for-learning

http://stackoverflow.com/questions/203369/finding-an-open-source-project-to-work-on

http://stackoverflow.com/questions/193473/is-there-an-easy-way-to-find-small-open-source-projects

I didn't come across anything, so I hope you don't mind if I ask below.

I'm really trying to teach myself C#, but haven't been able to effectively do so yet. I was hoping there is some sort of basic open source C# project that I could look at to get me going. Most of what I have found is too advanced for me as I'm really just beginning. I have read one book on C#, and have learned the basics of the language, but still can't make the jump to projects with hundreds of files working together for the project. It's too fragmented for me to understand. (I would consider getting a few more books, but college isn't easy on the wallet.) Anyone out there have any projects/methods they recommend to start putting some pieces together? Any help is appreciated!

A: 

I'd start with http://stackoverflow.com/questions/143088/open-source-c-projects-that-have-very-high-code-quality-to-learn-from. A good portion of the answers to your question will mirror the answers in that question.

Aside from that, just search SourceForge.net or CodeProject for small projects that use C#.

Robert S.
+1  A: 

I would suggest checking out CodeProject and downloading several of the bits of code there. Many of them are very well written and will give good, succinct examples of how to accomplish certain tasks in C#.

That being said, there's no substitute for programming it yourself, and learning by trial and error.

David Morton
I was going to say the same thing. Try to think of a simple tool that you'd like to use and go from there. You may have nothing to show off when you're done, but you'll have a whole HEAP of knowledge under your belt.
Dillie-O
+1  A: 

I think you should take a look at the Microsoft C# Virtual Labs. These are free virtual environments where you follow a tutorial and it shows you the basics of creating a Web app or a windows app. Once you begin to understand how a project is set up and where the files go, you can start grabbing the source code to some larger projects and see what it's all about.

Nathan DeWitt
+1  A: 

You don't need books or more theory. You need experience. Just go to any of the tutorial websites out there, such as CodeProject and start perusing articles, then download the code for something you find interesting and play with it. Many of the articles are smaller projects that should give you a better understanding of how things work.

Mystere Man
+2  A: 

If you're at the level where "hundreds of files" are off-putting, then I would suggest just writing some of your own code. If you're looking to be a programmer then there's no substitute for programming, so just jump right in and start doing it. Some of the other answers here point to places where you can find short bits of example code that you can put together to learn how to do things.

Starting with a significant, existing open source project is going to be a lot of work. Start small and work your way up. Good luck!

Greg Hewgill