Category: Editors

Lean Code and the Intel Distribution for Python Performance

Python is one of my favourite languages for prototyping and developing applications.  Unfortunately, as an interpreted language, Python’s performance is of great concern when running an application at scale in a production environment.  Developers will typically resort to using languages like C or C++ that can be compiled into a high performance application for this very reason.

Fortunately, as I’ve stated many times before, “There’s always a better way and more than one solution!”  Although you can download the latest version of Python directly from the Python.org website, other distributions are available.  I use the Anaconda Python distribution as it is both comprehensive and easy to manage using Conda or Anaconda Navigator.

To overcome some of Python’s performance shortfalls you can “Supercharge applications and speed up core computational packages” with the INTEL Distribution for Python, powered by Anaconda.  The Intel Distribution for Python is intended to address performance constraints that would otherwise inhibit you from using your application in a production environment at scale.

This Anaconda & Intel Python Distribution FAQ presents the differences and performance gains.  Note that both distributions are available for Windows, MacOS, and Linux.

Install Anaconda3

Anaconda3 5.2.0 (64-bit) SetupDownload and install the latest version of the Anaconda Python Distribution (5.2.0 as of this writing).  The installation wizard will guide you through the installation process, allowing you to install for “Just Me” or “All Users” and will prompt you choose an install location.  In most cases, the default settings will suffice.

Anaconda3 5.2.0 (64-bit) Choose Install LocationWhen the installation is complete, you will be presented with an option to download Visual Studio Code.  Although I’m using PyCharm by JetBrains, Visual Studio Code is an excellent editor that I find myself using from time to time.  Anaconda’s Spyder is also an excellent IDE and is part of the Anaconda installation.

Note:  You will be asked to sign up for an Anaconda Cloud account.  This will enable you to manage and distribute your packages and upload and download your environments, notebooks, and projects Anaconda Cloud.

Install the Intel Distribution for Python

After you have successfully installed Anaconda on your machine, follow these step by step  instructions to take advantage of the Intel Distribution for Python in your production environment.  I highly recommend reading the instructions BEFORE proceeding with the step by step instructions provided as several installation options are presented and may vary depending on your operating system.  Note that you may elect to install either the core or full Intel Distribution for Python depending on your requirements and versions are available for both Python 2 and Python 3.

Anaconda Prompt From Windows Start MenuOn Windows 10, go to the start menu and scroll down to find the “Anaconda3” application.  From the drop down, click the “Anaconda Prompt”.  This will open a terminal window from which you can enter the applicable “conda” commands referenced in the “Intel Distribution for Python” installation instructions.

We opted to install the full Intel Distribution for Python, although the core Intel Distribution for Python may serve your immediate needs.  Since the Intel Distribution for Python is powered by Anaconda, you can easily manage your Python packages and environments accordingly.

Note that the Full Intel Distribution for Python is quite large and will take some time to download depending on the speed of your internet connection.

Having the ability to significantly increase the performance of your application by using Intel’s Distribution for Python is definitely far more productive, effective, and efficient than having to rewrite your application in another language for the sake of performance alone.

Until Next Time – STAY lean!
Versalytics

Related Articles and Resources

 

 

 

Advertisements

Brackets Update

Brackets-Corner-ScreenShotVersion 1.12 of Brackets was released on January 29, 2018 and is now available for download.  This release introduces some exciting new features including JavaScript Refactoring, intelligent rename in file/scope feature, try catch block wrapping, one click conversion of anonymous expression / function block to arrow expression, and getter/setter creation.  More information can also be found in the release notes.

As a lightweight editor, Brackets serves as the “Goldilocks” solution for my smaller JavaScript and web page development projects.  Web page development is greatly enhanced with the live preview feature.

Although JetBrains Web Storm is my IDE of choice for larger applications, Brackets is an ideal editor for those looking to start off with something simple and easy to use.  Numerous extensions are readily available, easy to install, and will greatly enhance your experience while using Brackets.

To take advantage of the latest and greatest features, it’s important to keep your applications up to date.  These updates may fix bugs that you’ve discovered (or have yet to discover) and may also introduce some features that can save you a lot of time and effort in your development process.

Until Next time – STAY lean!

Versalytics

 

 

 

 

Lean Code and JavaScript IDE

BracketsJavascript is one of the more popular programming languages in use today and its use and capabilities are further enhanced by a variety of available frameworks, such as Node.js and AngularJS, and other libraries.

Although you can use almost any text editor to write Javascript, a language based Interactive Development Environment (IDE) or Code Editor can greatly improve your ability to write code more efficiently and effectively.  This is especially true where syntax and case sensitive languages – like Javascript – are concerned.

I use WebStorm by JetBrains for the majority of my web-based applications, however, a number of less capable cross-platform IDE’s and editors are also available for writing JavaScript, HTML, and CSS.  One such editor is Brackets created by Adobe Systems.

Review:  The 10 best JavaScript editors” by Martin Heller, Contributing Editor, InfoWorld (May 17, 2017) presents a number of JavaScript editors for consideration of which Brackets is among them.  I prefer to use cross-platform tools wherever possible and I use a variety of IDE’s and editors that are best suited for the project at hand.

Brackets is a light-weight open-source cross-platform editor equipped with sufficient functionality to efficiently write HTML, CSS, and JavaScript code.  A number of extensions are also available to further enhance your experience using Brackets.

Extensions are often written by third-party programmers or developers and should be installed with caution.  I highly recommend researching and reading reviews by others to ensure they are worthwhile and trustworthy.

If you are just learning JavaScript or writing a quick a script, consider the simplicity of using an editor like Brackets where you can focus on writing your code rather than get bogged down with learning all the details and nuances of a full-featured IDE.

If you’re wondering what kind of programs can be written using JavaScript, HTML, and CSS, you’ll have Brackets to serve as your source of inspiration as one of the many possibilities.  For more information, visit the Brackets web page.  As of this writing, Brackets 1.11 is available for download.

The excitement of learning a new language is often met with varying degrees of chaos and confusion when selecting the right tools to get started.  I recommend starting with something simple and less distracting that will allow you to focus on the task at hand.  Brackets is one such editor.

In time, you will learn which tools will best serve your needs and you can adjust your working and coding environment accordingly.  Feature filled IDE’s and Editors will do little to serve your needs if you have yet to learn or don’t know how to program.

Until Next Time – STAY lean!

Versalytics

Related Articles, Resources, and References