Jump to content

  • Log In with Google      Sign In   
  • Create Account


New c++11 video tutorials, tell me what you think.


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
11 replies to this topic

#1 EddieV223   Members   -  Reputation: 1406

Posted 08 February 2013 - 12:47 AM

Hi, I have been working on making some c++ video tutorials.  They are on youtube and are free to watch.  They start at absolute beginner to advanced and will cover c++11.  I have the first 13 videos uploaded onto youtube, more are on the way.  I want some feedback, how am I doing?  Let me know what you think.

 

Some example feed back I would like is, am I being clear enough in my explanations and how is my order of topic introduction?

 

I know that in some of the videos the video quality is not great, I tried some different codecs and around video 9 or 10 found a good one.  The early codec was making it a bit fuzzy and made my voice sound more nasally than it is. 

 

http://www.youtube.com/playlist?list=PLXjSIEICHR3OW7Ala0hkwNSrVE0uUpH6c


Edited by EddieV223, 08 February 2013 - 12:50 AM.

If this post or signature was helpful and/or constructive please give rep.

 

// C++ Video tutorials

http://www.youtube.com/watch?v=Wo60USYV9Ik

 

// Easy to learn 2D Game Library c++

SFML2.1 Download http://www.sfml-dev.org/download.php

SFML2.1 Tutorials http://www.sfml-dev.org/tutorials/2.1/

 

// SFML 2 book

http://www.amazon.com/gp/product/1849696845/ref=as_li_ss_tl?ie=UTF8&camp=1789&creative=390957&creativeASIN=1849696845&linkCode=as2&tag=gamer2creator-20

 


Sponsor:

#2 ApEk   Members   -  Reputation: 461

Posted 08 February 2013 - 02:39 PM

I hope you are prepared for some constructive criticism.

 

From what I have seen so far, 8, 10 through 13, I haven't found anything from the new c++11 standard. Don't encourage the use of using namespace directives without explaining what namespaces are, what they do, and how to use them first. Consider condensing some of the material, there are videos less than three minutes and two whole videos just for loops. Note somewhere in the playlist description, in the videos, or in the first video that c++11 won't be "covered" until "lesson 23" or some point in time.



#3 King Mir   Members   -  Reputation: 1967

Posted 08 February 2013 - 03:44 PM

I watched video 3, 5, 7, and 8.

 

Some points.

  • You should not name variables as single characters, particularly in instructional code. Use longer names, so anyone mimicking your code will do it too.
  • You should use a lower monitor resolution or smaller capture window. That way your code will be easier read in video.
  • You mention that < returns a bool. You should point out that this implies that you cannot chain <, such as while( 5 < loopcount <10). You may find yourself needing to explain that bool is automatically convertible to int.
  • I think you should separate C++ from the particulars of the IDE you're using. It's good to teach C++ and the IDE together, but you should point out things that are particular to your IDE.

  • You should probably mention that >, >=, ==, != and <= exists when you mention <.

  • If this is C++11, you need to at least mention the existance of range based for loop.

  • Don't say assign when you mean initialize. You don't need to explain the difference between the two right away, but it would be less confusing if you used the correct terminology, so that beginners won't get confused when it does become relevant.

  • You should mention that using i, j, and k as loop indexes is convention.

  • Do you introduce what endl does when you first use it?
  • People should use while when the number of iterations is not known in advance, such as if it depends on user input. Say that. Maybe provide an example. Maybe provide the example before introducing for loops.
  • You should make sure to underscore the importance of indentation to beginners.


#4 Serapth   Crossbones+   -  Reputation: 5368

Posted 08 February 2013 - 04:01 PM

You should not name variables as single characters, particularly in instructional code. Use longer names, so anyone mimicking your code will do it too.

 

This depends really.  'i' for example is pretty well established as index, and thus j,k, etc... as additional loop indices is pretty well established.  U, V, X, Y and Z all also have established meanings and should be used when appropriate.



#5 King Mir   Members   -  Reputation: 1967

Posted 08 February 2013 - 05:05 PM

You should not name variables as single characters, particularly in instructional code. Use longer names, so anyone mimicking your code will do it too.

 

This depends really.  'i' for example is pretty well established as index, and thus j,k, etc... as additional loop indices is pretty well established.  U, V, X, Y and Z all also have established meanings and should be used when appropriate.

That's true, but in the video he creates a bool and called it "b". That's bad practice. Sure, since it's just an example, the value doesn't have any meaning, but calling it "my_first_bool" would be better in my opinion.



#6 Trienco   Crossbones+   -  Reputation: 2137

Posted 08 February 2013 - 11:56 PM

After having seen stuff like "MyClass" and "myInt" in actual production code (map<...> theMap), I don't think it matters what he uses. If the variable has absolutely no meaning besides being there to demonstrate its existence, the name will ultimately be pointless and people will copy that, no matter what. At least one person would probably even copy it if it was named purelyForDemonstrationAndForGodsSakeDontNameYourVariablesLikeThis.


f@dzhttp://festini.device-zero.de

#7 Serapth   Crossbones+   -  Reputation: 5368

Posted 09 February 2013 - 06:55 PM

 

You should not name variables as single characters, particularly in instructional code. Use longer names, so anyone mimicking your code will do it too.

 

This depends really.  'i' for example is pretty well established as index, and thus j,k, etc... as additional loop indices is pretty well established.  U, V, X, Y and Z all also have established meanings and should be used when appropriate.

That's true, but in the video he creates a bool and called it "b". That's bad practice. Sure, since it's just an example, the value doesn't have any meaning, but calling it "my_first_bool" would be better in my opinion.

 

Yeah, thats bad.



#8 Serapth   Crossbones+   -  Reputation: 5368

Posted 09 February 2013 - 06:57 PM

After having seen stuff like "MyClass" and "myInt" in actual production code (map<...> theMap), I don't think it matters what he uses. If the variable has absolutely no meaning besides being there to demonstrate its existence, the name will ultimately be pointless and people will copy that, no matter what. At least one person would probably even copy it if it was named purelyForDemonstrationAndForGodsSakeDontNameYourVariablesLikeThis.

 

I missed the days of Hungarian madness... I swear to god I've seen bBool and pszString hundreds of times in production code.  Even saw people use Hungarian notation on indexes, resulting in my all time favorite variable, iI.

 

 

Actually my second favourite variable, my favorite variable of all time was:

 

DoNotRenameOrRemoveThisVariableOrElse

 

And you couldn't... if you touched it, the code blew up, and I never had the time to root out why, so like all the other programmers that inherited the code before me, I left the damned magic variable alone!



#9 EddieV223   Members   -  Reputation: 1406

Posted 11 February 2013 - 01:34 AM

Thanks for the feedback the more I can get the better the videos become and everyone wins.

 

I have uploaded several more videos in the series with a better resolution and settings.

 

I am planning on rerecording some the early videos in the new resolution and settings as well as make some changes to the content that you guys have suggested, to improve them.


Edited by EddieV223, 11 February 2013 - 01:36 AM.

If this post or signature was helpful and/or constructive please give rep.

 

// C++ Video tutorials

http://www.youtube.com/watch?v=Wo60USYV9Ik

 

// Easy to learn 2D Game Library c++

SFML2.1 Download http://www.sfml-dev.org/download.php

SFML2.1 Tutorials http://www.sfml-dev.org/tutorials/2.1/

 

// SFML 2 book

http://www.amazon.com/gp/product/1849696845/ref=as_li_ss_tl?ie=UTF8&camp=1789&creative=390957&creativeASIN=1849696845&linkCode=as2&tag=gamer2creator-20

 


#10 King Mir   Members   -  Reputation: 1967

Posted 11 February 2013 - 10:31 AM

Watched #14. Only problem here is that you don't explain srand() I don't know if you use it in earlier videos though, and explain it then.

 

Watched #18. Looks good. No new issues.



#11 Josh Petrie   Moderators   -  Reputation: 3113

Posted 13 February 2013 - 11:16 AM

Moving to YA.


Josh Petrie | Core Tools Engineer, 343i | Microsoft C++ MVP


#12 EddieV223   Members   -  Reputation: 1406

Posted 13 February 2013 - 03:02 PM

More videos added and I added the topics to the video names.

 

The entire series is just under 6.5 hours total and growing.


Edited by EddieV223, 13 February 2013 - 03:03 PM.

If this post or signature was helpful and/or constructive please give rep.

 

// C++ Video tutorials

http://www.youtube.com/watch?v=Wo60USYV9Ik

 

// Easy to learn 2D Game Library c++

SFML2.1 Download http://www.sfml-dev.org/download.php

SFML2.1 Tutorials http://www.sfml-dev.org/tutorials/2.1/

 

// SFML 2 book

http://www.amazon.com/gp/product/1849696845/ref=as_li_ss_tl?ie=UTF8&camp=1789&creative=390957&creativeASIN=1849696845&linkCode=as2&tag=gamer2creator-20

 





Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS