Discover this podcast and so much more

Podcasts are free to enjoy without a subscription. We also offer ebooks, audiobooks, and so much more for just $11.99/month.

Unavailable#103 Getting to 10x (results for developers)
Currently unavailable

#103 Getting to 10x (results for developers)

FromPython Bytes


Currently unavailable

#103 Getting to 10x (results for developers)

FromPython Bytes

ratings:
Length:
27 minutes
Released:
Nov 8, 2018
Format:
Podcast episode

Description

Sponsored by DigitalOcean: pythonbytes.fm/digitalocean

Brian #1: FEniCS


“FEniCS is a popular open-source (LGPLv3) computing platform for solving partial differential equations (PDEs). FEniCS enables users to quickly translate scientific models into efficient finite element code. With the high-level Python and C++ interfaces to FEniCS, it is easy to get started, but FEniCS offers also powerful capabilities for more experienced programmers. FEniCS runs on a multitude of platforms ranging from laptops to high-performance clusters.”
Solves partial differential equations efficiently with a combination of C++ and Python.
Can be run on a desktop/laptop or deployed to a supercomputer with thousands of parallel processes.
is a NumFOCUS fiscally supported project
“makes the implementation of the mathematical formulation of a system of partial differential equations almost seamless.” - Sébastien Brisard
“FEniCS is in fact a C++ project with a full-featured Python interface. The library itself generates C++ code on-the-fly, that can be called (on-the-fly) from python. It's almost magical... Under the hood, it used to use SWIG, and recently moved to pybind11. I guess the architecture that was set up to achieve this level of automation might be useful in other situations.” - Sébastien Brisard


Michael #2: cursive_re


via Christopher Patti, created by Bogdan Popa
Readable regular expressions for Python 3.6 and up.
It’s a tiny Python library made up of combinators that help you write regular expressions you can read and modify six months down the line.
Best understood via an example:


>>> hash = text('#')
>>> hexdigit = any_of(in_range('0', '9') + in_range('a', 'f') + in_range('A', 'F'))
>>> hexcolor = (
... beginning_of_line() + hash +
... group(repeated(hexdigit, exactly=6) | repeated(hexdigit, exactly=3)) +
... end_of_line()
... )
>>> str(hexcolor)
'^\\#([a-f0-9]{6}|[a-f0-9]{3})$'



Has automatic escaping for [ and \ etc: str(any_of(text("[]"))) → '[\\[\\]]'
Easily testable / inspectable. Just call str on any expression.


Brian #3: pyimagesearch


Adrian Rosebrock is focused on teaching OpenCV with Python
Just a really cool resource of integrating computer vision and Python. Both free and paid resources.
He had one of the most successful tech learning kickstarters (ever?) on this topic: https://www.kickstarter.com/projects/adrianrosebrock/deep-learning-for-computer-vision-with-python-eboo


Michael #4: Visualization of Python development up till 2012


via Ophion Group (on twitter)
mercurial (hg) source code repository commit history
August 1990 - June 2012 (cpython 3.3.0 alpha)
Watch the first minute, then click ahead minute at a time and watch for a few seconds to get the full feel
Really interesting to see a visual representation of the growth of an open source ecosystem
Built with Gource: https://gource.io/

Amazing video of the history gource and its visualization of various projects: https://vimeo.com/15943704

Who wants to build this for 2012-present?
Would make an amazing lightning talk!


Brian #5: Getting to 10x (Results): What Any Developer Can Learn from the Best


Forget the “10x” bit if that term is fighting words. - Brian’s advice

How about just “ways to improve your effectiveness as a developer”?

“… there is a clear path to excellence. People aren’t born great developers. They get there through focused, deliberate practice.”
traits of great developers

problem solver
skilled
mentor/teacher
excellent learner
passionate

traits to avoid:

incompetent
arrogant
uncooperative
unmotivated
stubborn

Focus on your strengths more than your weaknesses
Pick 1 thing to improve on this week and focus on it relentlessly


Michael #6: Chaos Toolkit


Chaos Engineering is the discipline of experimenting on a distributed system in order to build confidence in the system's capability to withstand turbulent conditions in production.
Netflix uses the chaos monkey (et. al.) on their systems. Covered on https://talkpython
Released:
Nov 8, 2018
Format:
Podcast episode