Sponsored by pythonbytes.fm/digitalocean
Brian #1: Frozen-Flask
Michael #2: pipx
- “Frozen-Flask freezes a Flask application into a set of static files. The result can be hosted without any server-side software other than a traditional web server.”
- 2012 tutorial, Dead easy yet powerful static website generator with Flask
- Some of it is out of date, but it does point to the power of Frozen-Flask, as well as highlight a cool plugin, Flask-FlatPages, which allows pages from markdown.
Brian #3: Data science is different now
- by Chad Smith
- Last week we spoke about pythonloc
- Execute binaries from Python packages in isolated environments
- "binary" to describe a CLI application that can be run directly from the command line
- Safely install packages to isolated virtual environments, while globally exposing their CLI applications so you can run them from anywhere
- Easily list, upgrade, and uninstall packages that were installed with pipx
- Run the latest version of a CLI application from a package in a temporary virtual environment, leaving your system untouched after it finishes
- Run binaries from the
__pypackages__ directory per PEP 582 as companion tool to pythonloc
- Runs with regular user permissions, never calling
sudo pip install ... (you aren't doing that, are you? 😄).
- You can globally install a CLI application by running:
pipx install PACKAGE
- "Just the “pipx upgrade-all” command is already a huge win over pipsi"
- Check out How does this compare to pipsi?
Michael #4: RustPython
- Vicki Boykis
- There’s lots of buzz around data science.
- This has resulted in loads of new data scientists looking for junior level positions.
- Coming from boot camps, MOOCs, self taught, remote degrees, and other training.
- “.. now that data science has changed from a buzzword to something even larger companies outside of the Silicon Valley bubble hire for, positions have not only become more codified, but with more rigorous entry requirements that will prefer people with previous data science experience every time.”
- “ … the market can be very hard, and very discouraging for the flood of beginners.”
- Data science is a misleading job req
- “The reality is that “data science” has never been as much about machine learning as it has about cleaning, shaping data, and moving it from place to place.”
- Don’t get into data science (this amuses me).
- “Don’t do what everyone else is doing, because it won’t differentiate you.”
- “It’s much easier to come into a data science and tech career through the “back door”, i.e. starting out as a junior developer, or in DevOps, project management, and, perhaps most relevant, as a data analyst, information manager, or similar, than it is to apply point-blank for the same 5 positions that everyone else is applying to. It will take longer, but at the same time as you’re working towards that data science job, you’re learning critical IT skills that will be important to you your entire career.”
- Learn the skills needed for data science today
- Creating Python packages
- Putting R in production
- Optimizing Spark jobs so they run more efficiently
- Version controlling data
- Making models and data reproducible
- Version controlling SQL
- Building and maintaining clean data in data lakes
- Tooling for time series forecasting at scale
- Scaling sharing of Jupyter notebooks
- Thinking about systems for clean data
- Lots of JSON
- Data science is turning more and more into a mostly engineering field.
- Data scientists need to have “good generalist engineering skills with a data background.”
Brian #5: Jupyter Notebook: An Introduction
Michael #6: Python Developers Survey 2018 Results
- via Fredrik Averpil
- A Python-3 (CPython >= 3.5.0) Interpreter written in Rust.
- Seems pretty active: Latest commit ac95b61 an hour ago…
- Full Python-3 environment entirely in Rust (not CPython bindings)
- A clean implementation without compatibility hacks
- To start contributing, there are a lot of things that need to be done.
- Most tasks are listed in the issue tracker. Check issues labeled with good first issue if you wish to start coding.
- Rust does have direct WebAssembly support…
- Python usage as a main language is up 5 percentage points from 79% in 2017 when Python Software Foundation conducted its previous survey.
- What do you use Python for? (2018/2017)
- 59%/51% Data analysis
- 56%/54% Web dev
- 39%/32% ML
- Web development is the only category with a large gap (56% vs. 36%) separating those using Python as their main language vs. as a supplementary language. For other types of development, the differences are much smaller.
- What do you use Python for the most? (single answer)
- 29%/29% web dev
- 17%/17% data analysis
- 11%/8% ML
- Like last year:
- 27% (Web development) ≈ 28% (Scientific development)
- Science = 17% + 11% for Data analysis + Machine learning
- Python 3 vs Python 2
- 84% Python 3 vs 16% Python 2. The use of Python 3 continues to grow rapidly. According to the latest research in 2017, 75% were using Python 3 compared with 25% for Python 2.
- Top 4 web frameworks (majority to the first two):
- SQLAlchemy and Django ORM tied
Q: If you have some pseudo code (say in sample.txt) how do you most easily convert it to Python?
A: Change the extension to .py
- “Mentored sprints for diverse beginners” at PyCon
- “A newcomer’s introduction to contributing to an open source project”
- Call for applications for projects open Feb 8 to March 14
- Call for contributors, participants in the sprint also open Feb 8 to March 14
- “If you are wondering if this event is for you: it definitely is and we would love to have you taking part in this sprint.”
- “This mentored sprint will take place on Saturday, May 4th, 2019 from 2:35pm to 6:30pm”
Extra Joke: Python Song (with chapters!)