Effective PyCharm Transcripts
Chapter: Why PyCharm and IDEs?
Lecture: The spectrum of editors
0:00 When you think about the type of application you're going to use the right code,
0:04 You gotta understand there's an entire spectrum of choices out there. On the simplistic, quick, simple side. There's things like Emacs and Vim,
0:14 Here's Emacs running over in the terminal in my Mac, I could be SSH into a server and just editing code right there by the way, don't do that.
0:23 Use source control, use continuous deployment. But I could I could, I'm not a big fan of working with Emacs or Vim or those types of applications.
0:32 Let me tell you why. First, they don't really focus on projects or applications that are consisting of many,
0:39 many files. They're focused on working on one file. Here, We're focused on working on this program '.py' file and we're gonna go do stuff
0:46 with that. Often in real professional applications, we have many files that link together and if it's a web app,
0:57 HTML templates and the views and the data access layers and so on What I find
1:02 them. People work in these tools there very often build applications that are maybe one
1:07 particular file just like one huge 3000 line Python file because it's easy to navigate within files, but it's painful to navigate across files.
1:16 So things like Refactoring across the entire application, they don't work really well and auto complete for things that are not contained within that
1:23 file don't work that well and so on. I see this as let's run the lowest common denominator thing that I can run everywhere and if I might have to run,
1:32 say ssh into a server, I'd still like to build. It is the same tool. Well, that's great. It's cool that you use the same tool,
1:39 but the drawback is you're choosing the least set of functionality, the lowest common denominator for your day to day work,
1:47 just so that you have this opportunity to maybe edit over eternal, which I think is not the right way to do it. So I'm not a big fan of doing this.
1:53 I think it leads to patterns of really large single file apps and it doesn't give you all the functionality that is honestly out there in other apps.
2:02 Another option in the spectrum, somewhere in the middle is V.S code V.S code is very popular with Python developers these days
2:07 no doubt. And it is a good application. I use V.S code myself. When I'm working on simple little projects,
2:13 Just want to open this file or maybe change a few things here and there really quick. But to me,
2:18 even though V.S code has a ton of features and it adds a lot of things, it just doesn't quite do it as seamlessly imperfectly as PyCharm.
2:26 For example, it has auto complete for certain things, my experiences when I use it,
2:31 it just not quite as complete and it's not always understanding how things are going. So it's a good thing to use V.S code
2:36 But I find it's not quite as polished for working on Python apps as PyCharm. Speaking of PyCharm there it is,
2:43 You can see we've got our project there on the left, there's all sorts of files. There's actually a sub folder under that wizard '07_wizard_battle'
2:50 called final. And those two things are being treated as a single application. All sorts of cool stuff. You can do the organize your code in the bottom
2:59 or running the code. This little wizard game that we built on the right, you can see there's a database in a scientific view.
3:05 If this app use the database we could go look at the database diagrams and we'd
3:08 actually get auto complete inside of our code that understands that database,
3:13 all sorts of cool stuff that you can do in there and that's what we're going to dive into. But the thing I want you really take away is specially
3:20 PyCharm but V. S. Code to some degree as well allows you to work with sets of files as an application which is a really important aspect.
3:28 And you'll see that the tools that PyCharm uses. It brings them back in the PyCharm better than any other apps.