NewsBits - MongoDB ransoms, Python and PostgreSQL, Eagles and Beams and more


NewsBits for the week ending January 13th: MongoDB ransoms continue, picking the right PostgreSQL/Python driver, Apache Eagle and Beam are now full Apache projects, the best of The Morning Paper, Go 1.8 RC1 is here, automatically making your JavaScript more modern and the latest IO in Rust.

Database Bits

MongoDB vs Ransomware - The widespread hijacking and deletion of unsecured MongoDB databases continues. As we've covered previously, the tool is now detecting tens of thousands of sites that have been overwritten with demands for bitcoin. If you are wondering how a tool knows that, it's simple, the sites have no access credentials so's scanners find the site, log in and look at the collections in the database searching for the various ransom notes. Correctly configured MongoDB databases, like the ones Compose deploys, are not at risk.

Python and PostgreSQL - Picking a Python/PostgreSQL driver can be tricky. This guide is useful as it covers the two well known Python/PostgreSQL drivers (psycopg2 and pg8000) and the new entrant - asyncpg. Half the question is "Python 2.7 or 3.x?", the other half is "Pure Python or C extensions?".

Apache Eagle and Beam - Apache Eagle is the latest top level project at the foundation. It's a analytics engine for analyzing security and performance issues on Hadoop and Spark and other applications. It uses Kafka and Storm to do that analysis so that's big data tools being used to analyze the performance of other big data tools. Eagle came out of Ebay development work. The other new top-level project this week is Apache Beam which is attempting to unify the programming models across execution engines like Apex, Fink, Spark and Google's Dataflow by creating data processing pipelines. That project has its roots, in part, with Google.

Developer Bits

The Morning Paper - The Morning Paper is an excellent daily read, summarizing a paper a day. If you're new to it, try dipping into this best of the Morning Paper which picks out the highlights.

Go 1.8 RC1 - The next Go release is nearly here with the release of 1.8 RC1. An apparently new trick for trying out the release candidate is the ability to install it from your current Go environment and just switch from using go to go18rc1 as a command. You can get ready for the changes coming with the pre-release notes. The compiler is faster at compiling while making better code, building on the enhanced code generation from Go 1.7. Expect 1.8 released in February.

Modernizing JavaScript - Many JavaScript tools are about translating the latest version of JavaScript code, ES6/ES7, into earlier versions so it can run on older browsers. Now, here's lebab which does the opposite, turning ES5 code into ES6/ES7 code. There's a live demo of it so you can see how, say string concatenation turns into string templates and property definitions turn into classes with properties.

Rust in Tokio - Tokio is a new Rust platform for writing fast networking code. It uses Rust's concurrency model to help automatically handle backpressure. With Rust gaining in mind share, this type of foundational library is going to be important - it certainly kicked off quite the discussion on HackerNews though a good chunk of that was about the naming.

If you have bits you think should be in NewsBits, or any feedback about any Compose articles, drop the Compose Articles team a line at We're happy to hear from you.

Image by Ilya Pavlov
Dj Walker-Morgan
Dj Walker-Morgan is Compose's resident Content Curator, and has been both a developer and writer since Apples came in II flavors and Commodores had Pets. Love this article? Head over to Dj Walker-Morgan’s author page to keep reading.

Conquer the Data Layer

Spend your time developing apps, not managing databases.