When comparing Visual Studio with the Python Tools extension vs Spacemacs with Python layer, the Slant community recommends Spacemacs with Python layer for most people. In the question“What are the best Python IDEs or editors?” Spacemacs with Python layer is ranked 6th while Visual Studio with the Python Tools extension is ranked 38th. The most important reason people chose Spacemacs with Python layer is:
At the heart of Spacemacs, the configuration layers group packages configuration into semantic units that can be toggled on and off. The architecture is simple but powerful allowing to easily manage configuration dependencies between hundreds of packages. Layers for other languages can be found [here](https://github.com/syl20bnr/spacemacs/tree/master/layers/+lang).
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Autocompletion based on variable types
Has smart autocompletion based on variable types
Pro Cloud storage through VS Online
Your Visual Studio Online account gives you a place to store your code, backlog, and other project data with no servers to deploy, configure, or manage.
Pro Web based interface to track project progress
In agile development teams one really needs features such as product backlogs where you can assign features to team mates and track their progress on them. VS provides a web based interface for you to track your team's complete progress on the project.
Pro Support for different languages with layers
At the heart of Spacemacs, the configuration layers group packages configuration into semantic units that can be toggled on and off. The architecture is simple but powerful allowing to easily manage configuration dependencies between hundreds of packages.
Layers for other languages can be found here.
Pro Easy to remember keybindings
Key bindings are organized in mnemonic namespaces. For instance buffer actions are under b
, file actions under f
, project actions under p
, search actions under s
etc...
Key bindings are consistent across the whole distribution thanks to a set of conventions.
Pro Great support from the community
The community is very active and there is a welcoming gitter chat to ask for questions.
Pro Free/Libre/Open
Pro It includes org-mode
Pro Easy to manage configuration dependencies
At the heart of Spacemacs, the configuration layers group packages configuration into semantic units that can be toggled on and off. The architecture is simple but powerful allowing to easily manage configuration dependencies between hundreds of packages.
Pro Gradual learning curve
Evil package is a first class citizen, Spacemacs embraces it from day one. Evil package allows Vim users to be productive very quickly while still allowing regular Emacs users to use Spacemacs.
Pro Above average documentation quality
Documentation is mandatory for each new configuration layer and can be accessed directly within the editor in Org format.
Cons
Con Windows only
Visual Studio is only available on Windows, though there is now a cross-platform derivation of Visual Studio named Visual Studio Code. It is has less features and is more of a code editor than an IDE.
Con Proprietary
Visual Studio is a proprietary software.
Con Configured in Emacs Lisp
Most developers don't know Lisp all that well, and of those, the subset that knows elisp is even smaller. Thankfully, it's not that difficult to get a basic Spacemacs configuration together without knowing elisp (thanks to Spacemacs's spectacular documentation), but if you need to alter, fix, or customize a plugin/layer in non-trivial ways, this can become a major hindrance.
Con Not an IDE
For users that aren't familiar with Vim or Emacs, Spacemacs will have a steep learning curve since everything is based on keyboard shortcuts and IDE-based users (or even users coming from editors like SublimeText or Atom) may have trouble finding things and adjusting to a new editing style.
Con Slow startup time
Although configuration is heavily lazy loaded, the starting time of Spacemacs is usually between two and five seconds. Emacs can be run as a daemon though which reduces the clients startup time to a few milliseconds.