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 BitsMongoDB vs Ransomware- The widespread hijacking and deletion of unsecured MongoDB databases continues. As we've covered previously , the shodan.io 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 shodan.io'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 BitsThe 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 atarticles@compose.com. We're happy to hear from you.