Arduino’s Zero Hero, Postgresql’s beta and fun small projects

ArduinoZeroArduino Zero: It’s looking like the next Arduino will be the focussed refresh we’ve been waiting for. Makezine has all the details on the Arduino Zero, announced at Makercon. It’s a 48Mhz ARM cored Atmel chip with 256KB flash memory, 32K SRAM and no EEPROM. There’s 12-bit ADCs, PWM on all digital pins, support for an embedded debugger, a second USB port (who knows!) and it’s all 3.3V. Looks super interesting, but the real questions will come when we find out how pricing works out and how hard it’ll be to use recreate the Zero from raw components. See also Arduino’s official announcement.

Postgresql’s new beta: There’s a Postgresql 9.4 beta out there now which doesn’t block when refreshing its neat materialised views, lets background workers be dynaminally registered, started and stopped and more. There’s also more structured support for JSON storage, a logical decoding system for streaming changes out to other systems and an ALTER SYSTEM command which lets you edit postgresql.conf from the SQL command line. One to keep an eye on.

Small projects: First up, a fun little project with a Raspberry Pi, Paho MQTT, Mosquitto, Python and Node-RED is also an excellent example of how easy it is to wire things up with MQTT. Second up, do you want to create a realistic landscape in JavaScript? You could try looking at this landscape generator which makes lovely ground shapes, The article even wraps up with some challenges for coders.

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.

Sharper Dart, Righter JavaScript and MQTT reviewed – Snippets

Snippets

  • Sharper Dart: Dart 1.1 has been released and sees Google’s JavaScript alternative running faster when compiled to JavaScript. Dart can be run as JavaScript or natively on its own VM, and while the VM has performed well, the Dart/JavaScript version lagged behind. Now, with 1.1, it’s closer to native JavaScript but still slightly behind it.

  • Righter JavaScript: Worth looking at, but watch out for the colour scheme, is JavaScript the Right Way. It’s a site thats pulling together JavaScript best practices and resources. It covers tools, frameworks, patterns, code style and further reading.

  • MQTT 3.1.1 in review: The OASIS technical committee looking after MQTT have put MQTT 3.1.1 up for review. MQTT, which doesn’t stand for Message Queuing Telemetry Transport any more, is a lightweight pub/sub protocol that runs over TCP/IP designed for the Internet of Things. I’ve written about it in Practical MQTT with Paho on InfoQ and Talking Small at Eclipse.org.

Mosquitto’s home, Firefox memory, OpenOffice updates – Snippets

Snippets

  • Eclipse erects Mosquitto net: The MQTT broker Mosquitto is being proposed as a new open source project at Eclipse. It not only implements the TCP based MQTT but has support for MQTT-SN, a connectionless version for UDP and other networks. The plan is to merge Mosquitto and RSMB, a previously closed source MQTT broker implementation, at Eclipse. If, or more when, this proposal is accepted, it will mean that the Eclipse M2M initiative will have a full MQTT cross platform stack under their wing. If you want a low-nonsense, low-overhead publish and subscribe messaging system, you will want to look at MQTT.
  • Firefox memory saves: Sometimes memory saving is marginal. Other times, like this it can be huge. A combination of two fixes applied to the Firefox code base have take peak memory use on image heavy pages down from, in an example, 3GB in Firefox 23 to “a couple of hundred megabytes” in Firefox 26 (Aurora). Excellent work from the Firefox Memshrink team; this wasn’t just a matter of closing leaks but working out what was and wasn’t onscreen and what could have been likely to be on screen.
  • Apache OpenOffice updates: Apache OpenOffice 4.0 has just had its first update in the shape of version 4.0.1. Along with bug fixes, there’s 9 new translations (Basque, Khmer, Lithuanian, Polish, Serbian Cyrillic, Swedish, Traditional Chinese, Turkish and Vietnamese) getting OpenOffice up to 32 languages supported, and a number of performance improvements including speeding up Excel spreadsheet saving by 230% in “one common scenario”. Release notes also show updated translations and updated English (US and proper), Gaelic, French, Italian and Spanish dictionaries. And if you are wondering what this has to do with code; remember you can use OpenOffice headless as a document processing service (start it with the -headless parameter).