Setting Up Your Environment

Installing Python



Installing Mamba

As you work on more complex Python projects, you'll start using something called libraries to add extra features to your programs. Think of libraries as ready-made sets of code created and maintained by other developers. They're like toolkits that solve specific problems or add new features to Python. Instead of reinventing the wheel, it's much smarter to use these libraries when they fit your needs. The range and number of Python libaries is considered to be one of the best selling-points of the language. However, you may find that sometimes you'll have different projects that need different versions of the same library. This is where virtual environments come in handy. They let you set up separate "sandboxed" Python configurations that don't mess with each other.

In this tutorial, we're going to use a piece of software called Mamba to create and manage virutal environments. Mamba is a package manager and environment manager for Python. It is built on the Conda package management system, and its primary goal is to provide quicker and more efficient operations for managing packages and creating isolated environments.



Installing PyCharm

What is an IDE and Why Use One?

A programming Integrated Development Environment (IDE) is a software application that provides a comprehensive set of tools and features to assist you in your programming. It serves as a central platform for programmers to write, edit, test, debug, and manage their code more efficiently and effectively. An IDE typically combines various components, such as a code editor, debugger, compiler, and other development tools, into a single cohesive environment.

Here are some key features and components commonly found in programming IDEs:

  1. Code Editor: The core component of an IDE, the code editor offers features like syntax highlighting, code auto-completion, indentation, and formatting to enhance code readability and writing speed.

  2. Debugger: IDEs often include a debugger that helps programmers identify and rectify errors in their code by allowing step-by-step execution, variable inspection, and setting breakpoints to pause the program's execution for analysis.

  3. Compiler/Interpreter Integration: An IDE can be configured to work with specific compilers or interpreters for various programming languages, enabling code compilation and execution directly from the IDE.

  4. Version Control Integration: You'll soon find that version control software will become an indispensable part of managing your code. Many IDEs integrate with version control systems like Git, making it easier to manage code changes, collaborate with team members, and track project history.

  5. Error Highlighting: Instant feedback on code errors, warnings, and potential issues is a common feature of IDEs. This helps catch mistakes as you write code.

  6. Plug-ins and Extensions: Many IDEs support plug-ins or extensions that allow users to customise the IDE's functionality, adding features and support for additional languages or frameworks.

IDEs play a crucial role in modern software development by providing a cohesive environment that streamlines the coding process, encourages best practices, and enhances productivity.