Virtual Environment for Python

Learning, Python, Virtual Environment

In the coming weeks, I will be working on my capstone project for Ada Developers Academy.  I have decided to make a Python application using Django.  Python is a relatively new language to me, so I have spent my break doing a little research.  I know that the standard practice in creating a new project is setting up a virtual environment, but what is a virtual environment and why do I need to use it?

As I understand it, creating a virtual environment for Python will allow you to isolate packages and dependencies for that specific project.  If you have an updated version of Python on your system, it will not interfere with your work when you return to it because you will be using your virtual environment.  While working on my capstone, this will come in handy because I am working in a group.  We can decide which versions we want to use for Python and we will be able to independently work on the same project without fear of breaking it due to an unintentional upgrade.

Now for the difficult task, I have to figure out which way to set up my virtual environment.  For Python 3, I have been counseled that virtual environment wrapper is the tool for the job.  I’ve also seen that anaconda for Python comes with a way to set up virtual environments.  Also, Python 3 comes with pyvenv.  I have successfully created environments with Anaconda and virtual environment wrapper, but pyvenv is giving me some difficulties at the moment.

As with anything in the software engineering world, there are numerous ways to solve problems.  This is an opportunity to learn  how to research the correct tool for the task, which tools I enjoy working with, and which ones I will change next time.  I anticipate that this project will be full of challenges, but I know that I am ready to meet them and learn from the mistakes.

Learning Frameworks


The past couple of weeks have been staggeringly busy for me.  I’ve been working on my group project (which is a store selling imaginary magical items.) . It was just in time for halloween.  Spooky.  I’ve gained a Python mentor, become closer with my Ada mentor, and been attending various meetups.  I find that the Puget Sound Python group is extremely fun and often have meetings near where I live.

In school, we’ve been continuing Rails and implementing OAuth.  This week was spent studying APIs and next week we will build one.

Today, I am at the Code Fellows working on my first Python framework, Django.  I’ve been playing with the idea of doing my capstone project in Flask.  The similarities between Rails and Django are astounding.  I appreciate my coursework and how the MVC was explained.  It has definitely helped to understand Django.  I finished my project about fifteen minutes ago.  She’s Coding set up this event and it is accessible to everyone.  The person sitting next to me has no coding experience and several other people are transitioning into different coding languages.  This event is for everyone mostly because of the plethora of helpful staff in every corner of the room.  I appreciate them answering questions and solving problems (even if it’s only that I forgot to save the document in my editor.) We deployed our blogs on Python Anywhere.

On another note, interviews are coming.  I’ve been trying to whiteboard like a mad person.  I have to thank my friend Sarah for inviting me to whiteboard with her.  It helped a lot.  I’m definitely a bit nervous about that.