Elsewhere: NewsBits – Redis 5 RC 5

I’ve been doing my usual Friday news gathering for the day job and that means here is todays NewsBits…. Here’s what’s in it:

  • Redis 5.0 gets a new release candidate and controversy.
  • Updates for older MongoDB versions.
  • A guide to analyzing slow MongoDB queries.
  • Making MySQL‘s shell shine.
  • Google open up Dataset Search.
  • Firefox 62 lands, as does the new ESR release.
  • HTTP2 support no longer experimental in Node 10.10.
  • VS Code gets a new Settings UI.
  • Checkout pull requests with the latest Atom.
  • Where to get Java support in the future?
  • And whats it like migrating to Java 11?
  • And finally an SQL puzzler…

Click here to read Compose’s NewsBits (be meeeee!) for this week

Java 8, Firefox 28 and wibbly wobbly timey wimey – Snippets

Javalogo

Java 8 lands: So, after what feels like an age and after its been through the thresher of reality, Java 8 has officially arrived. What’s changed? Lambda expressions, functional interfaces, default methods for interfaces, streams, a new Date API, repeatable annotations, the Nashorn JavaScript engine… there’s a good quick intro to some the language features but theres going to be plenty of settling in to do. For all the docs go to the release notes, downloads can be found on the Java SE downloads page. There’s also a NetBeans 8.0 release to go with the Java 8 release which includes JDK 8 support, including features like Lambdas and Streams, among many other enhancements.

Firefox 28 slips out: Quieter than ever, Mozilla’s Firefox 28 release has some interesting tweaks; VP9, the H.265 competitor, gets video decoding implemented; Mac OS X’s notification center becomes the destination for web notifications; WebM now gets Opus audio support; SPDY/2 is obsoleted by SPDY/3… oh and there’s 5 critical security fixes, three high, seven moderate and three low. If you’re running Firefox, you’ve probably updated already, if not you can download it for your system and language.

Wibbly wobbly timey wimey: An intruiging StackOverflow question asked why the difference between two times one second apart was over five minutes. The times were in 1927 and this was happening in a Shanghai locale – who knew there was an adjustment of 5 minutes 52 seconds to the clock there in that year? Well, one commenter did and it sheds light on how hard time can be to work with and how much information is wrapped up in those timezone files.

Node-RED updated, Hadoop 2.3.0 out, NetBeans 8.0 RCs and Skrollr scrolls – Snippets

snippets03
Node-RED updated: The most excellent graphical UI for connecting the Internet of Things (or just things in general), Node-RED has been updated to version 0.6. The announcement notes the process of separating the admin and server authentication to make deployment more robust has begun. Node-RED has nodes that accept HTTP connections and has a HTTP admin front end and previously these were all under one HTTP authentication mechanism – now the UI and nodes are more separate with the option to set a user/password for each. There’s some UI changes like a search filter for the palette of available nodes and easier flow importing by just dragging and dropping JSON onto the UI. In the node-red-nodes library, they’ve added Postgres, Amazon DynamoDB and Emoncms for more connections. There’s also fixes for the MQTT keepalive handing, an added socket timeout settings for TCP sockets and support for all 17 pins of WiringPi. More generally, there’s a range generating node now and the inject node can send empty payloads if needed. Finally, the MongoDB node now can send a user name and password – something I found I needed when writing this for MongoHQ.

Hadoop 2.3.0 released: In case you missed it, version 2.3.0 of the Apache Hadoop project got a release. The release notes list all the details. The short version is this is mostly about HDFS, the distributed file system and the changes include the ability to class the storage under HDFS so you can make tradeoffs between say spinning media, SSDs and memory, an ability to explicitly cache files or directories under HDFS (and local zero-copy reading from the cache) and the use of HDFS and YARN to simplify deploying MapReduce code. Hortonworks has a good writeup which also looks forward to Hadoop 2.4.0 with HDFS ACLs and rolling upgrades.

NetBeans 8 gets an RC: The NetBeans IDE has hit release candidate for 8.0. This is the version that will include JDK 8 support in the editor, Java SE Embedded and Java ME Embedded support, PrimeFaces code generators, AngularJS navigation and code completion, PHP 5.5 support and much more. There’s a summary in the announcement, a lot more detail in the New and Noteworthy wiki page and a pencilled in release date of mid-April.

Skrollr scrolls in: Recently spotted – Skrollr, a compact parallax scrolling and scrolling animation library for all your Webtml5.0 styled sites including the ability to “scale, skew and rotate the sh** out of any element”.

LXC’s 1.0, Thrift opened again, WhatsApp serving and more – Snippets

Snippets.png

LXC goes 1.0: Linux Containers, LXC, is now at version 1.0, a major milestone which also brings together and completes a lot of things that have been working their way through the Linux kernel, like support for unprivileged containers, long term stuff like a stable API – this’ll be supported for five years, bindings for Lua and Python3 (and Go and Ruby out-of-tree support), backing storage support for directories, btrfs, zfs and more, cloning, snapshotting… and you may wonder “Hey, doesn’t Docker do many of these things” and yes it does, so it’ll be interesting to watch how things all work out. More details at the news post and check out Stephane Graber’s 10 part blog series on LXC 1.0 which is packed full of useful stuff.

Thrift double opened: Facebook brought Thrift(PDF) to the world in 2007 via Apache Thrift and many people found the network/data serialisation framework well handy. Thing is though that Facebook went and forked their own internal version of Thrift as they filled out the features and ramped up performance, something that took major rengineering over time. Now the company has announced fbthrift, available on Facebook’s Github repo, now open sourced under the same Apache 2.0 licence Apache Thrift is under.

Worth reading: WhatsApp’s Serving : From 2012, here’s a presentation on how WhatsApp does scale(PDF) with a combination of FreeBSD and Erlang – A New York Times profile of security reporter Brian Krebs who’s more like an entire security intel op in one person – Enjoy Stephen Colebourne on video presenting the Java 8’s Date and Time API at JAX 2013.

Notified by mqttwarn, better Docker images, emulating a ship computer and more – Snippets

snippets03

mqttwarn: Don’t want to run Node-RED but do want to route MQTT messages around? Jan-Piet Mens may have the application for you in the Python based mqttwarn, a pluggable framework which can subscribe to many MQTT topics and send them on to files, other MQTT systems, Twitter, SMTP, Redis, SQLite and Mac OS X notifications. He explains that the instigator for this was being introduced to Pushover, an iOS and Android notification app… which is now also supported by mqttwarn.

Docker image: The Phusion developers have launched baseimage-docker, a modified Ubunutu 12.04 LTS image which addresses problems they see when using Docker as more of a container for long running processes and systems – the correctness of that position is up for debate though. The mods include a corrected init, fixed apt issues, and running syslog-ng, cron and an ssh server and also includes “runit” to replace Upstart and a “setuser” command all in a 6MB of memory footprint.

SPARC in QEMU in Ship: Old, but gold, a short article on how a group of engineers replaced an old SPARCstation-5-like VME form factor system with a QEMU emulation of the hardware to keep a 3000 ton ship navigating.

Worth a read: Java 8 SE’s Date and Time quickly explained, one Java coder’s rationale and practices when using Java, Crunching NBA data with Postgresql and aggregates.

Enlightenment 0.18 lit, FreeNAS 9.2 released and Java 8 brews – Snippets

Snippets

  • Enlightenment Updated: The Enlightenment/EFL window manager/libraries/desktop has been updated to version 0.18.0, just a year after the long silence that led up to the release of Englightenment 0.17.0. A full list of bug fixes and improvements is in the NEWS file for the release – compositing has been merged into the core, ten crashing bugs have been fixed and modules for music control, bluetooth, DBus application menus and compositing control have been added. Downloads are available from the project’s site.

  • FreeNAS 9.2 goes final: The network storage platform FreeNAS has been updated too with over 260 fixes and a rebasing on FreeBSD 9.2. The developers say it should sport improved performance, especially with encryption if appropriate hardware is available, and be more able to cope with higher loads. The release notes offer further details – Items I like on the list are full registration of all services through multicast DNS using Avahi, which should make a server much easier to just drop into a network, and the addition of a REST API for FreeNAS for remote control.

  • Java 8’s final draft: The final draft for the Java 8 specification is now available and this is going to be the reference document to the changes being made in Java 8, due in March 2014. Lambda expressions, new date and time APIs and type annotations are referenced with pointers out to the various JSRs to where Java will be next year.

IDEA 13, Java crypto, FreeBSD 10 beta 4, Rails update, Go 1.2 – Snippets

snippets03

  • IntelliJ IDEA 13: Jetbrains has rolled out the latest version of its IntelliJ IDEA Java IDE. Version 13 gets a big refresh on the user interface with new light look and feel on Windows and Linux and toolbars hidden by default, better visualisation of errors and warnings with “lens mode”, comment/string only searching, built in SSH terminal, Java 8 support and a presentation mode for talking about coding. All those features, along with enhancements to Android, Gradle, Groovy, Scala and version control support are in the community version. The commercial Ultimate edition includes JSF 2.2 support, batch job code assistance, JAX-RS 2.0 annotation handling, more app server support, Spring context configuration and MVC view, improved JavaScript debugger, CSS extract refactorings, DART support and many enhancements to the database viewing and support. Full details are in the What’s New page for the new release. The open source Community version and a 30 day trial of the commercial version are both available to download.

  • Bouncy Castle Crypto update: Adding support for client side TLS 1.2 and DTLS 1.2, along with ECDH and ECDSA for the OpenPGP library and many other cryptography options, the splendidly named Legion of the Bouncy Castle have updated their Java Crypto libraries to version 1.5.0 – further details in the release notes.

  • FreeBSD 10 beta 4: The announcement of FreeBSD 10 Beta 4 has also seen the gentle push of the scheduled release date to 2 January 2014 with a December full of release candidates. The in-development release notes give an idea of what to expect as will this article from September.

  • Rails updates for security: There’s updated Rails with the release of 3.2.16 and 4.0.2 which address four or five CVE-numbered vulnerabilities. The problems fixed include various XSS vulnerabilities, a denial of service hole and fixes for a previous incomplete security fix.

  • Go 1.2 is go: Go 1.2 is now official with the announcement that, after 7 months, the latest modifications to the language, library and toolchain are now available. Full details in the release notes. Updates are expected to come on something closer to the 7 month cycle in future.