Profanity is a console-based take on XMPP messaging, bridging the gap between IRC and desktop clients. Check it out if you live in terminal windows.
Oh-my-git implements one feature of Oh-my-zsh which people really like without needing to switch to Oh-my-zsh or even zsh. It’s a prompt engine which makes your zsh or bash prompt you with details of your current directory in terms of its git status. If it isn’t a git directory, it gives you a normal prompt. Nice work.
Embedded code run in documentation? Sounds like nothing could go wrong with that… much… well a lot. Well, this is awkward…
First time using Go? Fogleman knocks it out of the park with his pt project, a path tracer in Go which comes complete with examples. He’s got lots of plans for it too so if rendering 3D things is your thing, you may want to check it out.
The new Raspberry Pi B+ is official. No change at the core, it’s the same 700mhz Broadcom chip with 512MB RAM, but it’s all changes outside. There’s a new USB/Ethernet chip, 4 USB ports, composite video pushed into the 4pin audio connector, reworked power handling and a 40 pin GPIO port. The latter is most likely to generate physical incompatibility though the layout changes mean no current cases will work. There’s more information over at Adafruit’s B+ page.
My theory? This is step one in rationalising the board for the future and that when a new more powerful Pi appears, it’ll appear in this form with an ecosystem prepared by the B+ release.
Docker 0.9 unloads: Docker bumps its version number to Docker 0.9 and as it approaches version 1.0 makes a big change. Docker’s been pretty tightly tied to Linux Containers (LXC) technology to run applications packaged with it but in 0.9 there’s now execution drivers so the option to plug in any one of a range of isolation systems is now available. “OpenVZ, systemd-nspawn, libvirt-lxc, libvirt-sandbox, qemu/kvm, BSD Jails, Solaris Zones, and even good old chroot” are on Docker’s planned list with more to come from various projects. There’s also a new libcontainer which lets Docker plug straight into the Linux kernel to control things – this Go library is likely to see a lot of use outside of Docker too as it wraps up container configuration into a neat JSON specified bundle. Next stop for Docker is a production quality 0.10 which will serve as a release candidate for 1.0. Its lively down at the docks.
Vagrant 1.5 roams out: The developer environment manager Vagrant has been updated too. The new Vagrant 1.5 has added a sharing system to make collaboration easier, versioning for boxes, rsync and smb sync’d folders and Hyper-V support. Simpler SSH authentircation setup, a reworked plugin manager and support for Funtoo, NetBSD and TinyCore Linux as guests wrap out the wedge of features in this release. Alongside the release is the announcement of Vagrant Cloud, a hosted box sharing service built to use Vagrant 1.5’s sharing functions.
Xen 4.4 meditates: Meanwhile, the other Linux virtualisation platform, Xen, has made the first release on its aspirational six month cycle (taking 8 months in this case). The announcement for Xen 4.4 highlights an improved libvirt/libxl interface for better integration with VM managers or cloud platforms, a more flexible event channel interface allowing for over tens of thousands of guests and a rapidly maturing ARM port now with a stable ABI going forwards. There’s also a ‘tech preview’ of nested virtualisation on Intel.
Facebook Rocks: Another database open sourced by Facebook? Yup, and demonstrating that the term “database” covers a lot of ground, Facebook’s latest is RocksDB, an embedded key-value store for those userfacing situations where you need a lot of woosh, little latency. Lead developer, Dhurba Borthakur, explains in a blog posting that RocksDB is based on Google’s LevelDB and is tuned to run on many-core servers which making efficient use of storage to cut down on write wear. It’s implemented as a C++ library with arbitrary byte streams for keys and values and all the major components are pluggable and replaceable. It’s published under a BSD licence and comes with an additional patent licence.
OSI gets a GM: The Open Source Initiative has long been a purely volunteer organisation and that has limited what it has been able to do. But that’s changing with the appointment of the first employee, Patrick Masson, who’s taken on the post of General Manager at the OSI. Masson has introduced himself to the membership and is setting out on his tasks of running working groups, expanding membership and updating the OSI’s communications. It’ll be interesting to see what a difference it makes.
Cosmic Sans Neue: Who doesn’t like programmer fonts with their mono-spaced elegance? But maybe you want something a tiny bit quirkier. Check out Cosmic Sans Neue Mono, which has a tiny bit of quirkyness, not only in it’s name but in some of the character shapes. You can also find it on GitHub and it’s available under the SIL Open Font Licence
Slackware updated: The venerable Slackware Linux has had its annual update for 2013 announced by Patrick Volkerding and a fine update it appears to be. A 3.10.17 Linux kernel, X11R7.7 X Windows, 64-bit UEFI installation support and updates across the board for dev tools, applications, desktops (Xfce 4.10.1 and KDE 4.10.5) and more. And Slackware ARM 14.1 is also available.
MariaDB 10.0 goes Beta: As MariaDB, the community-supported and developed MySQL fork, branches away from MySQL with version 10.0, the first 10.0 Beta has been released with enhanced replication, more storage engines supported, engine independent query statistics, regexps with PCRE, admin improvements with roles and more. Google sponsored one enhancement (parallel replication) and blogged about the release noting it is already deploying 10.0 into non-production MySQL instances to aid the MariaDB debugging and development process. In beta, the focus should be on stabilising the 10.x feature set, so if you are considering MariaDB 10.x for future use, now is a good time to check it out.
Glassfish goes open only: Oracle have pulled commercial support from the Glassfish server for future releases and are pointing users over at their commercial WebLogic Server. They are carrying on development of the server as the reference implementation of future Java EE platforms, but the fear is the quality of the RI will suffer with no commercial imperative to keep quality and performance high. Oracle may well have backed the wrong Java EE web server from a community point of view – I know no one who goes “Hey, lets do that on Weblogic” – but now the competitive field is wide open. The X-EE Factor auditions for series… One other takeaway comes from Tomitribe – Open source isn’t free and if we want it to be industrially healthy, then the industry needs to make sure some money ends up in the open source communities.
Android Crypto Misuse: Develop for Android (or Java in general)? Write code that uses cryptography? Then read this paper – An Empirical Study of Cryptographic Misuse in Android Applications(pdf). From the abstract, “We develop program analysis techniques to automatically check programs on the Google Play marketplace, and find that 10,327 out of 11,748 applications that use cryptographic APIs – 88% overall – make at least one mistake”. Scary eh. Very worth a read though.
JavaFX on Android and iOS: One of Oracle’s ongoing projects is getting JavaFX onto the two big smartphone platforms. An update from Richard Bair (Chief Architect Client Java at Oracle) says the work is now at “a good prototype stage”. There’s “funky” code swapping JavaFX text fields for native components and the plan is to build a more layered system for better native look and feel without Swing style theming. But Bair also notes that currently its all hands on deck for Java 8. If you are wondering about whether there’s a JVM on iOS, things point towards the open source RoboVM which compiles Java bytecode the ARM or x86.
Firefox’s Java Blackout: And if you are having trouble (or your users are) with Java applications that work with Firefox, then the short story is that Mozilla have marked the Java plugin as unsafe by default. You’ll find the bug and angry comments in the Mozilla Bugzilla and you’ll want to refer to “How to enable Java if it’s been blocked“. Unfortunately, Mozilla’s security UI design is “special” and so you’ll need to look at the red “lego brick” icon in the address bar to allow Java to run. And remember to UPDATE YOUR JAVA now – Latest versions is Java 7 update 45. And if you don’t use applets or Web Start, leave it disabled. Mozilla’s policy good, fire^h^h^h^h Mozilla’s communication skills bad.
Amazon Audio Transcode: Amazon’s Elastic Transcoder now does audio as well as video. Save content up on S3, select presets, let rip and let the results land back on the S3 storage service. The free AWS tier gives you the ability to transcode 20 minutes a month for free, though this does appear to be a little mean – for video you get 20 minutes of SD content a month which, paid for in the EU data centre, costs $0.017 per minute, while audio costs $0.00522 per minute. Still, equine dental hygiene inspection is unbecoming and they do support transcoding audio to AAC, MP3 and Vorbis.
The text-search library Lucene and Solr, the search platform built on top of it, have both been updated to version 4.5. Version 4.4 came out in July so what’s changed in this version bump?
Well, first of all, for Lucene, the DocValues mechanism which allows typed storage to be associated with documents has been updated to allow for missing values and there’s now an in-memory supporting DocIDSet which is more efficient for carrying around smaller lists of documents. Other changes can be found in the Lucene 4.5 release notes.
Solr 4.5, as usual, benefits and supports these changes as it is built on Lucene, but the search platform has also had its own set of improvements. For example, when running a sharded cluster, its possible to now set up custom routing to the various shards, including routing based on field values. Faceted searches are now multi-threaded, the solr.xml configuration file is now storable in ZooKeeper and the CloudSolrServer has the ability to send updates directly to shard leaders. Again, more details are available in the Solr 4.5 release notes and the PDF of the updated Solr reference guide is available through the Apache mirrors. Both Lucene and Solr also have various bugfixes and performance improvements.
Arduino has been working with both Intel and TI to create two new boards, both of which are quite interesting departures from their previous designs. Both run Linux, in different ways but while one tries to replace the AVR microcontroller of the classic Arduino, the other hugs the classic Arduino deep into its design.
The first board announced was the Arduino Galileo which is powered by Intel’s Quark SoC X1000 running at 400Mhz and in due to be available in November and, according to some reports, will be “less than $80”. The processor is a 32-bit “Pentium-class” chip and the datasheet(pdf) details how the board has a set of 3.3V (or jumper settable 5V) connectors which are Arduino Uno R3 pin compatible. There’s also 10/100 Ethernet, a PCI Express mini card slot, micro-SD slot and USB client and USB host connectors on the board. This is very much an Intel rendering of what an Arduino would be with Intel’s Quark at its core; note, for example, that for a board of its spec, there’s no video out of any form, despite being closer to the Raspberry Pi and BeagleBone Black in pricing and that from the higher side. It’s an interesting iteration which gets Intel into the emerging market of small embeddable devices, but will it play with the makers – it doesn’t look easy to go from a Galileo to a production device.
The other board may be more exciting for makers, even if it is not available till next Spring and being shown now only as a sneak peek. Designed as part of a collaboration between Arduino and the BeagleBoard.org foundation, the Arduino Tre is a double processor sandwich with a 1GHz TI Sitara AM335x processor running Linux wrapped around a Atmega32u4 based Arduino – yes, the BeagleBone Black and Arduino have had a love-child and the Tre is the result; an ARM based Linux running processor to do the heavy compute lifting and networking and a classic Arduino to do the interfacing. The Tre is covered in connectors to wire up to, with the Arduino shield pins in the centre and the BeagleBone style cape connectors still on the board but separated by a whole Arduino now.
How this’ll work in practice, who knows, but it opens up a range of opportunities, especially as the Tre, unlike the Galileo, has HDMI video out too. Again no official pricing and this is down for a Spring landing so a bit of a wait. Till then, if you haven’t got one, get yourself a BeagleBone Black and interface it to your Arduino to simulate at least some of the experience.
Which reminds me… (he said getting his BeagleBone Black out)…
LMCTFY contains itself: A Google project, LMCTFY (Let Me Contain That For You) has emerged in the companies GitHub repository. It’s an open source version of Google’s container stack for Linux though it’s more application isolation and lacks Docker’s filesystem isolation. It’s apparently early days for the Apache licensed software but it will be one to keep an eye on as it could well turn into the basis for a Docker competitor.
Freeseer 3.0: The Freeseer project is an interesting platform for capturing in multiple video streams and presentations and managing them. Freeseer 3.0 came out about a month ago and has a completely rewritten backend, plugin system for GStreamer I/O and Mixing, RTMP streaming support and more. Built in Python and using GStreamer at its core, the software is GPLv3 licensed with source code on GitHub and it has been used to record many open source conferences. Find out more about the project in its documentation along with various guides.
The other other open source IaaS Cloud, CloudStack, has had an update with the release of CloudStack 4.2. What’s new? reveals a lot of work which the announcement summarises as 57 new features and 29 improved features such as the ability to plug in external or internal S3-compatible storage services and support for Cisco’s UCS compute chassis and SolidFire storage arrays.
A trawl through the release notes shows that there is far more than the headline items though. There’s a whole set of features to help support for regions, zone wide primary storage and a plug-in framework for writing UI extensions.
Networking has had a lot of work done to it too with initial support for IPv6 (as a technical preview), portable elastic IPs which can be transferred between zones, the ability to assign a VLAN to an isolated networks and persistent networks which can exist without VMs assigned to it. There’s also Cisco VNMC and VMware VDS support, enhanced support for Juniper gear and global server load balancing with health checks for load balanced instances.
Host support has not been left out. Windows 8 and Windows Server 2012 can now be VM Guest OS’s, ownership of VMs can now be changed by an administrator, resizable data disk volumes, storage migration (for XenServer and VMware), the ability to scale CPU and memory on running VMs (VMware and XenServer again), over-provisioning of memory and cpu (VMware, XenServer and KVM), bare-metal provisioning kickstarter, VM resetting on reboot and VMware VM snapshots.
Finally, there’s a who set of enhancements to the monitoring, maintenance and operations end of CloudStack, with support for auto purging alerts, API request throttling, forwarding of alerts to external SNMP and Syslog systems, a log collection tool, ability to change default password encryption and new VM snapshot and backup capabilities.