Please stop changing your mind!

With only a few months of OO programming under my belt I’ve accepted I’m going to need to roll with the punches for a good portion of this course, but this lecture broke me enough to post here.

The frantic pace you’re switching between files and trains of thought at as you type, delete, and refactor your code on the fly isn’t helping me to learn and is creating a massive time sink.

I’m second-guessing all the work I’ve done when pausing for the challenges and am amending my code to fall into line with what you’re doing, only to find by the time I’ve caught up you’ve decided it would be better to chop and change your code into something completely different. When I stop and rewind to play catch up, I don’t know if the section I’ve teleported to contains the code that survives to the end of the lecture or not, so I have to sit through the section again to be sure I’ve achieved parity.

Granted, there are usually many ways to achieve something, but please decide on one before recording each video session.


I think you are referring to the section after the challenge, is that right? Rewatching it does seem that I go a bit scatterbrain there. I don’t think I was switching between files though, so maybe you are referring to a different bit.

While it might be a bit hard to follow, the end result of the code is what really matters in the stage of the lecture. The explanation of how I got there is more to give you the flavour and reasoning. Maybe try rewatching it after you have got the code to the final state so you don’t have to worry about keeping up.

If you are struggling to see what the actual changes are, do take a look at the resource link available against every lecture called “This Lecture’s Github Commit”. This will show you a summary of all the code changes.

Thanks Sam, good point about the github commit. I’ll use that in future if I lose track and can’t address compile errors.

Generally enjoying the course. Probably getting frustrated because I’m so eager to get onto the next lesson and I hate getting bogged down.

Glad you’re finding GitHub useful. Sorry that the end of that video was a bit scatty. Looks like I got a little carried away.

Sam, First off i would like to thank you for the work you put into this course its extremely well made, and I’m a very beginner programmer, and I’m kinda just powering my way through and figuring out as much stuff as i can. I’ve actually been able to (as I’ve progressed through this course) start doing and attempting some of the ideas on my own.

But I do have to agree with anoshi in some aspects. You’re obviously quite good at your job, so these things become second nature for you, and I don’t mind you refactoring the code to make it more efficient/ less expensive, but do you think in future courses that when you do this you could go into further detail on why you’re doing it? i think this would really help instill some more knowledge into a new programmer on why they’re important things to do.

Again, fantastic course bro, its been a blast so far.

1 Like

Thanks for the feedback @zammystuff. I’m always trying to improve so I will definitely keep an eye out for these situations in the future. I just need to remember that if I’m going too fast, I need to slow down. Sometimes it can feel even to myself like I’m racing to finish a lecture.

No worries bro, keep up the good work!

Hi Sam,

I am the same in my job also, because keyboard shortcuts etc. come naturally to me, sometimes when i’m showing colleagues things, they are completely lost due to lots of my actions beings done by the flick of a keystroke ^_^.

I also sometimes find it hard to follow along, I know this is more for intermediate learners so perhaps i’m not quite up to scratch yet, I do find myself having to re-watch sections of a lecture sometimes to figure out what else you did which wasn’t clearly communicated.

However with that said, I am thoroughly enjoying your lectures so far and can tell you have a wealth of knowledge so I cannot wait to learn more from you (I have all the RPG courses lined up so i’m very excited to work through them), so minor feedback for your future lectures (as already pointed out by previous posters) would be please slow down a little bit vocalise more of your thoughts / processes (if you’re looking for inspiration, I find Rick has this down to a tee throughout all of his different lectures).

Please don’t be disheartened, you’re doing an amazing job and as already said, I cannot wait to learn more from you!!! <3

same for me, I thought I was the only one.
at the end of this video, I completely broke my game.
Sam asks us to something. than you take your time, do your challenge, you think you got it!

in the last minute of the video he completely change how things worked.
Going to GitHub to copy and paste everything, what’s the point tho?
this was my feedback:

"I’ve completed both 2d and 3d beginner course and I found them very easy to follow.
I’m now into this intermediate course and I don’t find the concepts to be too much complicated or the code to be too difficult
its just… hard to follow, in the way it is presented.
I think you are doing a fantastic job with this kind of product, which is much much better than any course out there! BUT I’m honestly having some trouble to follow Sam step by step: he type some code, then he stops, get back and do things in a different way.
So I pause, get at the same spot, and then again.
So I stop type, but eventually he came up with some challenge which are bad explained, I mean its not clear what the challenge is in a matter of “what is written on the slide”. Like “are we doing this?”, “remember that”. What sort of challenge is that? Im used to rick’s ones where he asks for fixing o adding stuff he have done in previous lectures.

another problem I’m facing is that I don’t “trust” him when he says “we’ll fix this later on”.
in a couple of lectures I got stuck for a bug that he didn’t tell anyone and I spent 30min looking for a solution: “just wait for the next lecture”. The next lecture started but he faced the issue halfway through. So I had to go back to previous videos, fix the stuff, go back to the current one and starting over.
a 6min video took me 25 mins to complete and I don’t think what I’m learning right know is much more complicated than coroutine and stuff that I’ve never seen before.
I was expecting to have some difficult to understand how things works, not to follow the course itself.
last thing: extracting methods. I get it, its for better reading, but he is doing it like sometimes it matters, sometimes who cares? it doesn’t help to focus on the concepts if you are typing along his explanations.

Still pushing hard and hopefully I’m just a ranting noob :smiley:

don’t take it as an offense, Im just asking what’s the best way to follow the course."

Guys you are not alone :slight_smile: there are quite a few like us that are new and find the “conceptual” step up challenging. Which I believe is the main difference between this course series and the complete 2D and 3D courses.

If you see me on discord come say hi, might be good to have a band of noobs helping each other out if we can of course :slight_smile:

1 Like

İ agree with all fellows above what they saying.İf he could just spell and explain it one time without changing it 10 times, it would be more clear and understandable.Normally 10 minutes enough to understand what this lecture does but with his explanation it takes more than 30 minutes.Long story short, if you make plan before you prepare the lectures it can be better to understand.

Second time I’m taking this course and indeed, this section is extremely confusing. I wish I could say it gets better later on, but I’ve had multiple points of frustration with future videos as well.

While I understand that this course “isn’t for beginners”, it should still have some form of a structure on the implemented elements, imo.

When Sam changes code or does things differently to me I ask: “How will it affect me later on?”

For example, I’ve implemented a FOV instead of a 360 range system so I know my code won’t match up perfectly.

Then I decided to reuse code in this section more…directly and added the following to my Update:

                if(InteractWithCombat()) return;

And made this bool method:

    private bool InteractWithCombat()
        if(!canSeePlayer) return false;
        if(!fighter.CanAttack(player)) return false;
        if (canSeePlayer)
            return true;
        return false;

Works perfectly well (though I’m considering changing my if (!) statements to use an OR operator instead) and I now have clear separation for it all. I understand what Sam did and how it’s basically the same as what I did so I don’t feel the need to change my code.

So far I feel that the most effective way for me to complete each lesson was to watch the whole video and try to replicate what Sam did.
If I get stuck, I watch the lesson again and try to finish the challenges and instructions.
But when I need to rush I watch the GitHub changes for hints.

Privacy & Terms