NewsBits for the week ending December 9th - An update on RethinkDB's new world, developments in PostgreSQL 10, ElasticSearch jumps to 5.1.1, a reminder as to why you should secure your application and database, the latest in python 3, why TypeScript 2.1 may be for you, a code crackers toolkit for your browser and a slice of history, the 4-bit ALU at the heart of the Z80.
Database BitsRethinkDB update- Since the shuttering of RethinkDB Inc in September, there's been work being done to build a future community around the database. In the latest update from the volunteers handling the transition, we learn that they are working on getting rights to build tools to continue working on the application with an aim to get a new Alpha release out as soon as possible. The team is talking with open source foundations about a new home for RethinkDB and relicensing away from the current AGPL will be influenced by those talks.
PostgreSQL 10 developments- Features are now landing for the next version of PostgreSQL which will be PostgreSQL 10. Among the commits, Table Partitioning promises an easier-to-reason-with alternative to [table inheritance]. There's also enhancements to how connection strings are handled making multiple hosts more effective to work with. There's still a year or so before PostgreSQL 10 arrives and plenty in people's roadmaps to work on. Meanwhile, catch up on the 30 year history of the Postgres code base with this Postgres in Slides presentation.Elastic 5.1.1- Elastic's first post-version-unification release leaps from 5.0 to 5.1.1 after the 5.1 version number was occupied by some unreleased binaries. The new version of Elasticsearch and its ecosystem sees the database getting faster reindexing, a task manager and easy time range queries.
Security reminders- If you want a reminder to make sure you are cleaning your input data to avoid SQL injection vulnerabilities then here's Whitewidow , an open sourced SQL vulnerability scanner which will locate potentially vulnerable sites and even launch Sqlmap to finish the job. If you use a NoSQL database and feel happy you aren't vulnerable to SQL injection, then remember NoSQL Injection is a thing.
Developer BitsPython 3.6- No more arguments as to whether you should use Python 2.7 or Python 3.5. That's just because Python 3.6 has arrived - it started development back in mid-2015. So what's new? Formatted string literals ( PEP 498 ) which lets formatting embed expressions, asynchronous generators and asynchronous comprehensions to go with Python 3.5's async/await features ( PEP 525 / PEP 530 ), a smaller dict implementation and new debugging hooks for memory allocation and Dtrace/Systemtap. There are also many enhancements to the various system libraries and a new secrets module recommended for use, instead of random, for security token generation.
Typescript 2.1- Microsoft's optionally typed version of javascript, TypeScript has reached version 2.1 . TypeScript is popping up more and more inside libraries we see at Compose. This new version is going to make that even more likely as it adds async/await functionality which works with pre-ES5 platforms. There's object rest-and-spread, which is also a proposal for the next ECMAScript/JavaScript (ES2017), that makes it easy to slice, dice and blend objects and a quick way of creating object keys with keyof . Top of the feature list is mapped types which makes creating variants of existing types simple and there is a whole set of new type operators to go with it. If you're interested in JavaScript, look at TypeScript; it could be the future.
CyberChef- Got some hex you need to encode, convert and otherwise mangle? CyberChef from the British version of the NSA, GCHQ, is a rather splendid tool to help out. Think of it as a composable calculator for all those tricky number manipulations you might need to do as a modern developer or admin - encryption, public key parsing, networking, extraction, compression - add the blocks together to make the tool you need then save them for later. And yes, you can download the Apache 2.0 licensed code if need be.
Retro Bits4-bit Z80?- Back when computers worked with 8 bits, even that was a challenge. Take the classic Z80 chip which had a 4-bit arithmetic logic unit to do its 8-bit calculations with. Ken Shirriff's been digging into the silicon of the Z80 and in the article, he takes a look at the silicon behind this fact.
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.