Overview of new features in Visual Studio 2019 for Python Development. Features include:
- new Python project types from Cookiecutter and Iron Python templates
- machine learning and AI templates for Python
- dedicated Python toolbar for access to environments and interactive window
- environment isolation with virtual and Conda environments
- handy package management for update and installation
- environment configuration in requirements.txt(Virtual env) or environment.yml(Conda env)
- Python debugging
- Interactive REPL window for immediate read-eval-print-loop
- profiling Python code performance
2. • Software Architect @
o 17+ years professional experience
• Microsoft MVP (Azure)
• External Expert: Horizon 2020
• External Expert: Eurostars-Eureka
• External Expert: InnoFund Denmark
• Professional Interests
o Web, SOA, Integration
o IoT, Machine Learning
o Performance
• Contact
ivelin.andreev@icb.bg
www.linkedin.com/in/ivelin
www.slideshare.net/ivoandreev
3. “Difference between ML and AI?
- If it is written in Python, probably it is ML.
- If it is written in PowerPoint, probably it is AI.”
* * *
“When you’re fundraising, it’s AI. When you’re hiring, it’s ML.
When you’re implementing, it’s linear regression.“
* * *
“Data science is 80% waiting for your model to train and 20%
swearing because it didn't work”
* * *
“How many data scientists it takes to change a light bulb?
20 seniors and one intern.
Data scientists will argue over a month on the right approach while
the intern will copy the solution from StackOverflow.”
Why Python?
6. • Open VS Installer
C:Program Files (x86)Microsoft Visual StudioInstallervs_installer.exe
• From Workloads
• From Installation Details
Installation Steps
10. What is an environment?
• Context to run Python code
• Python Interpreter
• Standard Python library
• Standard & installed packages
• Automatic detection of Python interpreters
• Manual identification (fallback)
11. VS2019 Environment Types
• Global
• Available to all projects on computer
• Changes are valid for all projects on that environment
• Prone to version conflicts (different package versions from different projects)
• Easily gets cluttered, no application isolation
• Virtual
• Environment subfolder with copy of interpreter
• Any modifications are valid only in environment
• Environment config. in requirements.txt
• Conda (Miniconda or Anaconda)
• Created with Conda package manager
• Require Anaconda/Miniconda
• Environment config. in a environment.yml