Sunday, August 20, 2017

Difference between Eclipse: "Help->Marketplace" and "Help->Install new software

The Marketplace Wizard is a interface for several websites that provide different plugins. These websites are maintained in general by the provider of this site.

The "install new software" Wizard points to several URLs which provide p2 repositories to install any software you like.

Main difference
Marketplace: You can install the bundles (and only the bundles) hosted by the selected marketplace
Install new software: Add a URL and you can install all bundles the URLs repository provides.

Thursday, August 3, 2017

10 Best Python IDEs

Python is a very popular programming language. It's open source and used today as scripting language, web development,  mobile and desktop in many areas thanks to the endless modules options it has.
While writing python code, integrating modules and libraries to build large systems, text editor is not enough, we need a good integrated development environment for that.
We did a survey with our visitors in DiscoverSDK - what is the best Python IDEs, and here are the results: (Best first)

      pycharm IDE
  1. PyCharm:
  • Created by JetBrains
  • Closed Source 
  • Windows, MacOS and Linux support
  • Designed for Python, Javascript, Coffeescript, Typescript, HTML/CSS, AngularJS, Node.js and more.
  • Features integrated unit testing, code inspection, integrated version control, code refactoring tools, a variety of tools for project navigation, highlighting and automated completion.
  • Supports multiple third party web development frameworks like Django, Pyramid, web2py, google app engine and Flask which makes it a complete Rapid application development IDE.

    pydev ide
  1. PyDev:
  • Python plugin for Eclipse.
  • Supported by all known Operating systems
  • Open-Sourced and available under Eclipse’s public license.
  • Handles code completion, integrates Python debugging, adds a token browser, refactoring tools, and much more.
  • Allows creating new Django projects, executing Django actions via hotkeys, and using a separate run configuration just for Django.


     WingWare
  1. Wing IDE:
  • A solid IDE created by Wingware.
  • Windows, Linux and MacOS support
  • It is Close-Sourced.
  • has a powerful debugger that allows setting breakpoints, stepping through code, inspecting data, debugging remotely, and debugging Django templates.
  • It has support for matplotlib where the plots are updated automatically.
  • Also offers code completion, syntax highlighting, source browser, graphical debugger and support for version control systems.


     komodo ide
  1. Komodo IDE:
  • An IDE for dynamic languages such as Python, PHP and Ruby.
  • Windows, MacOS and Linux support
  • Closed-Sourced with Proprietary license.
  • Has some support for Django, such as syntax highlighting and code completion for templates. (Although I couldn’t get it to work properly.
  • Includes basic features like code refactoring, auto complete, calltips, brackets matching, code browser, go to definition, graphical debugging, multi process debugging, multithreaded debugging, breakpoint configuration, code profiling, integrated unit testing and integration with third party libraries like pyWin32.
  • Also offers features like package manager integration, track changes, markdown viewer, shell scope, quick bookmarks, go to anything (Commando) and many more.


    eric ide
  1. Eric:
  • Python editor and IDE by Detlev Offenbach.
  • Open-Sourced.
  • Windows support
  • Has features such as Python and Ruby debugger, code coverage, automatic code checking, Python and Ruby shell, class browser, and others. And it has features for collaborative editing.
  • Also offers integrated task management, integrated unit test support , rope refactoring, core Plugins for Regex and Qt dialogs, option to launch third party apps from within the editor, application diagrams, project management capabilities, interactive python shell, multi lingual user interface that includes English, German, Russian, French, Czech, Spanish, Italian, Turkish and Chinese languages, version control for Subversion, Mercurial and Git using ad on plugins, and many more.

     eclipse
  1. Eclipse:
  • General purpose platform
  • Supported by all OSs 
  • Open-source IDEs and supports a whole ecosystem of languages.
  • Tons of plugins  


    spyder ide
  1. Spyder:
  • Open-Source IDE for Python.
  • Available as free to use under MIT license.
  • Some of the basic features of Spyder python are multi language editor, interactive console, documentation viewer, variable explorer, Find in files, files explorer etc.
  • Though Spyder is a standalone IDE that is supported on multiple platforms including windows, Linux, MacOS, MacOS X but it can be also utilized as a PyQt extension library and can be embedded in PyQt applications.


    pyscripter
  1. PyScripter:
  • A free and open-source Python IDE developed by Kiriakos Vlahos.
  • Windows support
  • Supports projects, editing files and debugging.
  • Code completion and other editing features
  • Python source code utilities

    idle
  1. Python-IDLE:
  • An IDE that is part of Python standard library.
  • It is quite helpful to try out small Python snippets and experiment with different features in Python.

    geany
  1. Geany:
  • Available under GPL license.
  • Cross-Platform (Linux, Windows and OSX), and offers bracket matching, integrated debugger, auto complete and multi language support.
  • Small and fast
  • Supporting plugin


So what is the best IDE - it depends who you are asking but the "Wisdom of the crowd" has spoken

Sublime Text 3 : Linux Package Manager Repositories

Sublime Text 3 includes an auto-upgrade mechanism on Windows and OS X to make upgrades a snap. Instead of going against the grain of the Linux ecosystem, packages and package repositories are provided for most of the major distributions.

apt

Install the GPG key:
wget -qO - https://download.sublimetext.com/sublimehq-pub.gpg | sudo apt-key add -
Select the channel to use:
Stable
echo "deb https://download.sublimetext.com/ apt/stable/" | sudo tee /etc/apt/sources.list.d/sublime-text.list
Dev
echo "deb https://download.sublimetext.com/ apt/dev/" | sudo tee /etc/apt/sources.list.d/sublime-text.list
Update apt sources and install Sublime Text
sudo apt-get update
sudo apt-get install sublime-text

pacman

Install the GPG key:
curl -O https://download.sublimetext.com/sublimehq-pub.gpg && sudo pacman-key --add sublimehq-pub.gpg && sudo pacman-key --lsign-key 8A8F901A && rm sublimehq-pub.gpg
Select the channel to use:
Stable
echo -e "\n[sublime-text]\nServer = https://download.sublimetext.com/arch/stable/x86_64" | sudo tee -a /etc/pacman.conf
Dev
echo -e "\n[sublime-text]\nServer = https://download.sublimetext.com/arch/dev/x86_64" | sudo tee -a /etc/pacman.conf
Update pacman and install Sublime Text
sudo pacman -Syu sublime-text

yum

Install the GPG key:
sudo rpm -v --import https://download.sublimetext.com/sublimehq-rpm-pub.gpg
Select the channel to use:
Stable
sudo yum-config-manager --add-repo https://download.sublimetext.com/rpm/stable/x86_64/sublime-text.repo
Dev
sudo yum-config-manager --add-repo https://download.sublimetext.com/rpm/dev/x86_64/sublime-text.repo
Update yum and install Sublime Text
sudo yum install sublime-text

dnf

Install the GPG key:
sudo rpm -v --import https://download.sublimetext.com/sublimehq-rpm-pub.gpg
Select the channel to use:
Stable
sudo dnf config-manager --add-repo https://download.sublimetext.com/rpm/stable/x86_64/sublime-text.repo
Dev
sudo dnf config-manager --add-repo https://download.sublimetext.com/rpm/dev/x86_64/sublime-text.repo
Update dnf and install Sublime Text
sudo dnf install sublime-text

zypper

Install the GPG key:
sudo rpm -v --import https://download.sublimetext.com/sublimehq-rpm-pub.gpg
Select the channel to use:
Stable
sudo zypper addrepo -g -f https://download.sublimetext.com/rpm/stable/x86_64/sublime-text.repo
Dev
sudo zypper addrepo -g -f https://download.sublimetext.com/rpm/dev/x86_64/sublime-text.repo
Update zypper and install Sublime Text
sudo zypper install sublime-text