Python: My Anaconda Don't Want None


Some people last week were messaging me about what IDE and setup I was using for programming Python and so I thought I would discuss what I have been doing. 

Python may be really easy to learn but it can be very tricky to configure everything properly. The vanilla installation Python is pretty simple to use. You can simply write a text file and run it from a terminal. Sadly things start to get a little hairy when you are trying to use many different libraries and can't easily get them installed. You can try installing and managing all packages manually but why not let the work be offloaded to a great piece of software. Enter Anaconda.

I discovered Anaconda completely by accident. I was going to manage libraries by myself but after struggling to install all the required software I saw mention of it on a forum. Rarely am I this pleased on an impulse install. Anaconda allowed me to have complete control over my Python and library versions and allowed me to quickly switch back and forth between configurations. On top of all this it installed Jupyter Notebooks, Spyder and some other pieces of software that I haven't had time to fully explore. Anaconda takes Python and makes it as easy as installing Matlab libraries. 

My default Anaconda install on Windows 10 comes with 6 default applications. They are as follows:
- Jupyter Notebook
- Qtconsole
- Spyder
- Glueviz
- Orange3 
- RStudio

As previously said I haven't played with all of the apps yet so I will only talk about Jupyter Notebook and Spyder. 




Anaconda right out of the box looks so clean and inviting. Like any good software developers they clearly adhered to the saying, "if you have to explain your GUI it sucks". First let's take a look at Spyder.

I have seen Spyder almost every single time I browse through the Ubuntu Software Center looking for cool software. Sadly I also passed it up every time. Fortunately it was forced upon my with my installation of Anaconda on my work computer. Spyder is the closest IDE that I have found to be closest to Matlab. It has the workspace (variable viewer), a terminal that you can manually input code into as well as the obvious scripting window. All in all a really fantastic piece of software for number crunching with Python. 

This past week I decided to up my Python game by taking an online course for data science. This is how I was introduced to Jupyter Notebook as well. I originally wondered why I would need those at all but I can really see them being a powerful tool. They are similar to Matlab reports except all the hard formatting work is done for you. It makes your code much more modular and easier to share. The course will share notebooks to you and then walk you through the notebook in an attempt to teach you. This is great for me since how I like to learn coding is from example cases and playing around with the language. I can foresee myself using these in the coming year for data analysis in my university courses. 

I have yet to take any time to look at the other applications but they seem very helpful for data acquisition and processing. I am also impressed that I can install TensorFlow in Anaconda which will allow me to keep learning about neural networks and AI without having a difficult setup. 

What is your favorite Python library? Most commonly used? 


Comments

Popular posts from this blog

Hold My Beer: An Engineering Story

Data Processing: Matlab, Python or Octave?

Zesty Zapus: Tips and Tricks for Ubuntu 17.04