Python Weekly (Issue 419 October 17 2019)

Python Weekly - Issue 419

Python Weekly

Welcome to issue 419 of Python Weekly. Let's get straight to the links this week.

From Our Sponsor 

Monitor your Python metrics, logs, and distributed request traces with Datadog. Use Datadog's App Analytics to dive deep into any dimension and find the traces you need for on-the-fly diagnosis and rapid troubleshooting.

Articles, Tutorials and Talks

Traditionally, the most common method of building threat detection and response tools is to de-couple the automation and investigation pieces. In our experience, this leads to a massive amount of thrash. At Dropbox, we have invested in a common underlying abstraction for our logs which is available during various stages of the Incident Response cycle via Alertbox, Covenant, and Forerunner. Integrating and leveraging powerful open source tools has enabled us to quickly explore our data and automate alerts away so we can focus on more sophisticated threats.

This article explains the new features in Python 3.8, compared to 3.7.

How to plan your code so imports are clear and clean.

This post describes how Haptik took up the challenge of Python 2 code to Python 3 migration with Zero Downtime

An easy to understand introduction to divide and conquer algorithms.

In this tutorial, we are covering how you can make a bot to automate soundcloud promotion using python. This is a really interesting tool, because there are so many bots on soundcloud today that it might be interesting for you to find out and discover how those work and how to make your own soundcloud bot using python.

The Y combinator is a central concept in lambda calculus, which is the formal foundation of functional languages. Y allows one to define recursive functions without using self-referential definitions. Most articles I’ve seen dedicated to explaining the Y combinator start by showing you the Y combinator, which in itself is fairly inscrutable, and then trying to explain why it works. I think this is backwards. In this article, we’ll go the other way around: I’ll start by describing, in simple terms, the essence of the Y combinator — or how to make recursion work without recursive definitions, and from there I will derive the usual Y combinator.

In this article, I will guide you through places where complexity lives and how to fight it there. Then we will discuss how well written simple code and automation enable an opportunity of “Continous Refactoring” and “Architecture on Demand” development styles.

In this post, we will explore how Django handles file uploading and how we can tap into and extend this functionality with cloud storage to suit our needs.

Pandas qcut and cut are both used to bin continuous values into discrete buckets or bins. This article explains the differences between the two commands and how to use each.

In this tutorial we'll walk through the first steps of creating a plot widget with PyQtGraph and then demonstrate plot customization using line colours, line type, axis labels, background colour and plotting multiple lines.

In this tutorial you will build, package, and run your to-do web application with Flask, Nginx, and MongoDB inside of Docker containers. You will define the entire stack configuration in a docker-compose.yml file, along with configuration files for Python, MongoDB, and Nginx. Flask requires a web server to serve HTTP requests, so you will also use Gunicorn, which is a Python WSGI HTTP Server, to serve the application. Nginx acts as a reverse proxy server that forwards requests to Gunicorn for processing.

In this tutorial, you will learn the three primary reasons your validation loss may be lower than your training loss when training your own custom deep neural networks.

Interesting Projects, Tools and Libraries

Detectron2 is Facebook AI Research's next generation software system that implements state-of-the-art object detection algorithms. It is a ground-up rewrite of the previous version, Detectron, and it originates from maskrcnn-benchmark.

End-to-end workflow from Python to deployment on iOS and Android.

Objective Chart.js implementation for Python and Django.

A small library that aims to make functional programming with static type checking feasible in Python using the typing module.

An instance of your terminal in your browser.

A framework for Privacy Preserving Machine Learning.

Easily evaluate machine learning models on public benchmarks.

Captum is a model interpretability and understanding library for PyTorch. Captum means comprehension in latin and contains general purpose implementations of integrated gradients, saliency maps, smoothgrad, vargrad and others for PyTorch models.

A PyTorch Platform for Distributed RL.

Load an image file into a numpy array with Exif orientation support. Prevents upside-down and sideways images!

A Python command-line shell.

New Releases

Python 3.8.0 is the newest major release of the Python programming language, and it contains many new features and optimizations.

Django 3.0 beta 1 is now available. It represents the second stage in the 3.0 release cycle and is an opportunity for you to try out the changes coming in Django 3.0.

Upcoming Events and Webinars

There will be following talks

  • Fanatic’s journey to microservices: a tale about our distributed data pipelines

  • Feature flags at Carta: how we made deploys less scary

There will be following talks

  • How long will it take? (Progress Bars)

  • Face Detection using Open CV

  • Self-Study Python Classes for Archivists

  • Using FitBit Data to Track Health

  • Writing a Git Hook in Python

  • When is Lunar New Year?

The Advanced Message Queuing Protocol is an Open Source standard for asynchronous messaging over the wire, providing RPC and Pub/Sub patterns over a Message Broker between clients. In this talk, I’ll give you an introduction to AMQP, look at some Python client implementations of it and finish by waving a Python microservices framework under your noses that provides the most elegant abstraction of AMQP I have ever seen.

Data Science helps make sense of data using artificial intelligence, mathematical hacks, and statistics. But as more and newer IoT devices become available, the traditional techniques don't scale nearly as well as they need to, prompting a mathematical pivot. This talk will detail approaches in data science to analyze at scale, with helpful technology and concepts that will be necessary as IoT grows as a sector.

There will be following talks

  • Programming Job Hunting Tips

  • Take over the world with Python

There will be a talk, Understanding date and time in Python to model time series data.

Here we will go over how to apply GPT-2, a generative deep learning model to generate text that mimics an input of a person’s tweets. We will focus on preparing your input text so that it can be understood by the model and also how to make sure you aren’t overfitting. Then we will look at using GPT-2 on Google Colab with GPT2-simple, which is an easy way to use the library that allows you to train, run your model and manage refined models of GPT-2.

Our Other Newsletters

 - A free weekly newsletter featuring the best hand curated news, articles, tools and libraries, new releases, jobs etc related to NoSQL.

- A free weekly newsletter for entrepreneurs featuring best curated content, must read articles, how to guides, tips and tricks, resources, events and more.