Skip to main content
gamedev.net
📌 Pinned 🔒 Locked

C# Workshop - Supplemental Text

Started by JWalsh 29 replies 14k views
Original Post
JWalsh
JWalsh
Hello All, The further we get into the Workshop, the more I'm concerned about the Specification being impossible for beginning programmers to learn by. As a result, I want to propose an alternate or supplemental text. Those people who are having problems reading the C# Specification may be interested in reading the supplemental text FIRST. The book is called .NET Book Zero by Charles Petzold and does a relatively good job of explaining the contents of the C# Specification in a gentler fashion. It's about half the size of the C# Specification and appears to generally avoid all of the "If M is a variable belonging to class I.." crap. It seems to be a pretty quick read, and might be a good primer for those people who want to read the Specification as well. I'd like both tutors and participants to download the .NET Book Zero .pdf and examine chapter 6. Please provide me with your feedback about whether you feel this is more your speed. If you're interested in getting a sneak peak at next week's topic, feel free to read chapter 7 from .NET Book Zero as well. Get the Supplemental Text: .NET Book Zero here: http://www.charlespetzold.com/dotnet/ Cheers!
simesf
simesf
Absolutely positively 100% great idea. This is much, much easier to deal with. All credit to you for taking this step. Might I suggest, if it's not already the case, that this be the principal text & that the $%^&%*** 1.2 specification be a backup text to be referred to in posts if needed.

I'll be honest with you. I was getting a great deal of enlightenment from the forum posts and a great deal of discouragement from the specification. Given how limited time is I had resigned myself to reading just the posts for as long as there were brave souls who would tackle the text. With this I'm right back on board.
JWalsh
JWalsh
Quote:
Original post by simesf
Absolutely positively 100% great idea. This is much, much easier to deal with. All credit to you for taking this step. Might I suggest, if it's not already the case, that this be the principal text & that the $%^&%*** 1.2 specification be a backup text to be referred to in posts if needed.

I'll be honest with you. I was getting a great deal of enlightenment from the forum posts and a great deal of discouragement from the specification. Given how limited time is I had resigned myself to reading just the posts for as long as there were brave souls who would tackle the text. With this I'm right back on board.


If enough people speak up and voice their interest in using the new book, we'll use it as the primary text, with the specification as the supplementary, more complete text. People who are interested in reading the specification will be encouraged to do so.

Cheers!
Ezbez
Ezbez
[opinion]
Which text we use does not really matter to me. Whichever one is deemed the primary text, I will read happily, but I doubt that I will read both simultaneously. I like that the .Net Book Zero is a quick and fast read, but I also like how complete the reference is.
shawnre
shawnre
I love the way the material is presented in the Petzold alternate text. However, is it as in depth with its coverage? Also, would that put all the work you have already prepared for the specifications in jeopardy jwalsh? You already are doing quite a bit of work, along with the other tutors. I say stick with the specs, even though it is a difficult read. Use the Petzold text to help clarify difficult topics/sections maybe. That's my .02! And I am one of the people having major difficulties. Using the specs just seems to me much more beneficial. I am sure I will be in the minority on that though.

Shawn
JWalsh
JWalsh
No, Petzold's book isn't as in-depth as the specification, clearly. But it seems we've got quite a few people losing interest due to the complexity of the specification.

There's about 450 participants, and only about 10 people posting regularly. Plus, views dropped off from 10,000 in Week 1, to about 2,000 in Week 2. This suggests we scared the crap out of people.

As far as materials already made, yes, some of them would become incompatible, but in general, it's just shifting questions around from week to week.

Do people want to just switch texts from this point out, or do people want to switch text and begin back at week 1? It's only 2 weeks lost, but if it means more people will feel comfortable moving forward having ready the new text from the beginning....

What are people's thoughts?
ghostscout
ghostscout
I gotta be honest, the specification is fairly complicated and sometimes I looked at it sideways to see if I could better understand it. After your review and taking a look at the supplementary text I understand it a whole lot better.
popcorn
popcorn
Having downloaded the book and quickly skimmed over the first 4 chapters, I do like the book by Petzold, it is very readable and is easy to follow. I am pretty certain I would get on with it a lot better than with reading the spec.

If there is a switch over I personally would not like to start back at week one, the first 4 chapters of the book by Petzold are very short and can be read very quickly, reading up to chapter 6 would only be 68 pages and would probably be equivelent to the first two weeks of the workshop(Chapters 1 - 6 of the spec which is just over 100 pages). You would lose out on the questions and the exercises but I feel(from just a quick skim) that it would be much easier for the beginner because there looks to be much more hand holding in the book.

Overall I would be in favour of a switchover but would agree with shawnre, its only worth changing over if the transition would be smooth enough for yourself JWalsh and the other tutors. I have done ok with the spec so far even if it is not easy reading for me.
How about them apples?
foolios
foolios
I'd like to see a lot more votes. I started reading the spec. I am gonna hold off now I guess to see what everyone chooses. I hope we can agree on one of them. I don't think there's enough time for everyone to seriously take on two books plus the projects plus the waiting for input.
I guess if we were in a chatroom and always online but it could be a day or two maybe more if you get busy or someone else does to when a response could be obtained.
Maybe consider a chatroom at a specified time each week? I think then there would be more control over the timeframes of things and a better picture of whos wanting to be involved.
It's too bad there wasn't a chatroom app that could break conversations off into subchatrooms until questions were resolved. Or something useful like that.
Of course chatrooms are a lot more demanding of time. Forums are good for responding when there's free time.
Well, I hope we can reach an agreement as to which book to read. Maybe we should have everyone read the first few chapters of each book. Give enough time to do so then have a vote and restart the workshop?

Good Luck!
I rate users. Its just not having much impact as my rating is low...
Telastyn
Telastyn
I vote for giving the beginners their option and continuing along. It's not too difficult to swap between the sources to answer questions (from my perspective). A large drop-off is perhaps expected with all the excitement beforehand.

I think that the traffic will increase a little once we hit the project and people have something (interesting) to do and actual code to discuss.
TKDCobra
TKDCobra
As someone with programming experience already (limited as it is) I have found the specification ok to work with so far, albeit a bit dry. I think the drop off is due to the topics up till now being fairly theory based, with little in the way of substantial exercises, which is natural for the initial part of learning a new language.

I am not particularly fussed with whether we use the spec or the alternative text, however I think that going back to week one could be a bit painful. It may discourage people who have had some programming experience in the past, as they wait for something a bit more meaty to come around in the form of exercises, and projects.

Up till now I have been thoroughly impressed with the workshop and the massive commitment the tutors have been put in. I am one of these serial lurkers who doesn't say a lot but reads every post, but as we get deeper into the language I'm sure i'll have many questions of my own. Keep up the good work everyone!

Only those who have the patience to do simple things perfectly will acquire the skill to do difficult things easily. - Johann von Schiller
Experience is the name everyone gives to their mistakes - Oscar Wilde
zz2
zz2
I started learning C# one year ago. Because learning text was specifications, I thought that this was a nice opportunity to review C#. To be honest I like how in-depth specification is, but I think that beginners are not going to learn much from it. There is too much (meaningless for beginners and sometimes for me too) enumeration in the spec. So I don’t mind if primary text is changed and spec kept as supplemental reading. This way some of us can still read spec while others get to read the new easier text.
TheTroll
TheTroll
I really like the fact that by using the spec we are getting it all. Yes it is harder but we are not going to be missing things. There have been a few things that I have picked up so far already.

I think the spec is the way to go with the other for back up so that people without a lot of experience have something else to read on.

theTroll
ChaosUK
ChaosUK
Another free book available is the one programmers heaven done, might be worth a look to -

http://www.programmersheaven.com/2/CSharpBook

For myself the spec learning approach didnt really work, I prefer to learn one concept at a time and code some exaples to reinforce it, Thus I just bought a C# beginner book, but will keep an eye on what happens here.
CKolding
CKolding
I am very much in doubt about which book would be the better for me. The specification is (maybe too?) thorough and concise, while the .NET Book Zero is a bit more humane. Switching back would definitely be a possibility, but on the other hand, that would mean postponing the project 2 weeks and I already feel my fingers itching, wanting to write some "real code" - so for me, the priority would be to soon get down to the coding.

Albeit I might not yet know everything I need to write the code, I reckon it would be possible to learn that "on the fly", also because I tend to learn things easier and be more interested in learning something if it is something that I am going to use immediately or if it is something that I have to know in order to continue with a project.

I can only speak for myself, but I believe that we should carry on with the workshop and that we students could choose to use whatever reference book we wanted. The questions should be closely related to the specification as they are now, since it is less "contaminated" with the author's personal approach to coding and also because it can be regarded as the official reference. After all, it is about learning in one's own way, and as long as we understand the concepts we are reading about and are able to write some decent code, it shouldn't matter how we learned it. Some people might be more fond of a very technical and precise approach to learning while others might be more fond of a more personal writing-style. I therefore propose that we just keep on like we have done before , but that you keep in mind that some of us might read some of the stuff in another reference?

Anyway, that's my two cents.
Melinye
Melinye
Just wanted to speak out and make my presence known. Either way is fine by me. I
have a couple of books at hand, so if there's something I'm not getting, I cross reference or look elsewhere online. Sorry I'm not posting, I'm a little behind and working hard to catch up.

For what its worth, I think this workshop is terrific. I've tried to learn C# alone in the past, but always ended up giving up. With other people, a schedule, and game-related examples and exercises, I'm determined to go the distance this time. This is far superior to learning the language than the grade-point average and bank account programs found in mosts texts. :)

Thanks!
Mike.Popoloski
Mike.Popoloski
I think this topic alone points out how many people need real world examples to go along with their learning. Most people cannot simply learn from a reference, they need to be able to apply it to something they deem is useful. I suggest providing a mini-project every week so that everyone can give it a try.

For example, at the beginning of every week you could give out some kind of game that everyone could try to make, such as a guessing game or something. In order to complete that game, they would have to look into that week's chapter of the specification, because there would be new concepts that they needed to apply to the project. Then they would see "Oh, this is what that section will mean for me in real life."

Finally, I think it would be helpful if you could post which parts of the chapter are useless for the beginner and can be skipped over. For example, the application execution section, where it details how code flows when using multiple threads. This obviously won't apply to many of the people here for a long time, so why have them waste their time on it?
Mike Popoloski | Journal | SlimDX
choffstein
choffstein
Just because some of us haven't posted, JWalsh, doesn't mean we aren't here reading! Personally, if I had never learned a programming language before, I would never, ever understand the specification. That thing is so goddamn dense. On the other hand, now that I have learned languages and can appreciate knowing the intricacies, for me the specification is great. I think it really depends what level people are currently at.

Keep up the good work!

My only complaint would be ... there isn't really a 'submission' system for exercises. I write the code, but don't really know the protocol for getting it checked.
ExcessNeo
ExcessNeo
Quote:
Original post by JWalsh
What are people's thoughts?


Im no beginner programmer, and even i find the C# specification scary, my mind just blanks out at points because the language used in some of it is mind-boggling. Pages and pages of examples in complex situations, with no solid example of it used in a proper way. Like the scopes, i read through that and it just went in and came straight back out, the knowledge i have on scopes is what i have from learning C++. In fact i found learning what i know of C++ easier than learning C# and all i can really do with C# is print a line out, read a line in, and use condition statements and loops which are same syntax as other languages i've used.

From the little ive read through Petzolds book, i think its much better to continue using this as the primary source, because the specification as written in Charles Petzold's book isnt meant to be a tutorial, its supposed to be a reference for experienced C# programmers.

I intend on reading through the Charles Petzold book tommorow, atleast as far as chapter 7. I'll post my thoughts on the book tommorow. If it stands the brain sleep test i recommend we swap to this as the primary source of information, and use the spec as something for those that want to go into more detail on subjects covered as they appear in the Petzold book.

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.