00:0.04 When you're looking at your code,
00:1.42 one of the really, really powerful things that PyCharm does for you is understand
00:5.74 how the files fit together, how maybe this rps,
00:9.88 rock paper scissors game is using the shared lib 'ui_helper' right there and not just
00:17.15 one or two files, but many,
00:18.99 many files as I've said before,
00:21.54 But if you forget where to go to find out exactly what this is.
00:25.84 Again, this is a pretty simple example,
00:27.62 but think 20, 30 thousand lines of python,
00:30.32 maybe it's a new project you just picked up.
00:32.54 Where is this, where is this coming from?
00:34.72 Is this uh package they've installed?
00:37.23 Is this another file, a module?
00:39.17 Uh sub module in this application,
00:41.33 something like that. So there's a lot of cool things you can do.
00:44.36 One option would be to go over here.
00:45.86 So I want to know where this header is.
00:48.18 I can go to navigate and there's all sorts of cool stuff going on click implementation
00:54.39 or declaration and it's going to take us over here or is this navigate via command+v
01:0.43 So now I don't have to use that awkward.
01:3.38 UI I can just come over here and command B and it'll take me
01:6.64 here like Okay, great. Now I see where this header is coming from,
01:9.25 right. This is a file that I've created and it's this is a little breadcrumb
01:13.0 navigation bit to where the file is and you can actually navigate with these things as
01:17.0 well, like you can go between these these pieces.
01:20.64 So that's really cool. But what I prefer is on Mac to hold down command
01:26.45 and on Windows or Linux hold down control.
01:29.14 And then as you move around,
01:31.09 notice everything becomes a hyperlink. Random is a hyperlink,
01:35.94 notice it knows the file name,
01:37.4 even here's the UI helper, here's the library,
01:41.33 this header. If I click on this,
01:43.14 it takes me over there so cool and down here we have this random choice,
01:48.23 it's going to take us down well inside a Random,
01:50.43 not super helpful, but it does take us there to show its inside the random
01:53.68 package. Get role. Where is that?
01:55.86 I don't know. Oh there it is.
01:57.36 Take this down here, right?
01:58.73 So if we just hold down command or control all of a sudden everything everything here
02:3.44 like even where is this player to find?
02:6.35 Oh it's a parameter as opposed to say a global variable,
02:10.03 which could have also been used in exactly the same way.
02:13.44 So I strongly recommend that you cruise around your code using command. It's really really nice.
