Codescaling catchup: Android L, MapReduce, Paho, Eclipse IDE, Bootstrap, MacDown, Moment.js, Runtime.js, Dart, Security Notes

CodescalingCatchupAnd catching up with the week just past at Codescaling….

Android L, MapReduce

Google I/O brought us a beta version of Android Studio and a developer preview of Android L with images for emulators and the Nexus 5 and Nexus 7 (Wifi only). A new look and feel, lots more APIs and a general feeling that Google’s pulling their various efforts back into one cohesive while (for good or bad and for who is another discussion). At the other end of the scale though, a more interesting, if obvious, reveal was Urs Hölze, SVP at Google who during the Google I/O keynote pointed out the company has stopped using Map-Reduce based systems for analytics – “It’s great for simple jobs but it gets too cumbersome”. This of course was on the back of announcing Cloud Dataflow, a new pipelined analytics service, but It seems Google are drawing a line where Map-Reduce ends and a self-scheduling and organising analytics system is the future. We shall see if that line holds… Hadoop isn’t endangered despite what some may say mainly because its grown into its own ecosystem and platform for more than Map Reduce work… but the entire analytics world is ripe for disruption, especially on its hardest problem – analysis discovery.

Paho 1.0 for MQTT

Over at Eclipse there’s been a few announcements, like the Paho MQTT project reaching version 1.0. That includes implementations for a C, Python, JavaScript (in the browser) and Java MQTT client. MQTT is one of the protocols in the running to fill the numerous niches in the internet of things and Paho is Eclipse’s umbrella project to make sure it has an open source implementation for all.

Moonrise for Eclipse Luna

The Eclipse release train also turned up for the synonymous IDE with the release of Eclipse Luna – Paho was on the release train along – which also brought us full Eclipse support for Java 8, a workspace with dark themes, split editors and default line numbering (to keep up with the hip editors), updated Equinox, a Java 8 capable memory analyser and a standalone C/C++ debugger. If you like Eclipse, you’ll love the improvements. A couple of bits have been dropped (Agent Modelling, EclipseLink persistence and SCA Tools) but lots more has been added including XWT (a declarative UI project) , Eclipse Sirius for modelling, Business Process Model and Notation (BPMN2) modelling and EMF clients and repositories for modelling.

Bootstrap restrapped

Bootstrap keeps evolving – The latest version of the HTML/CSS framework, Bootstrap 3.2.- has scaling embeds, responsive utility classes, more tools and more bots. You can download it or pull it with npm. It does make for a quick way to get a clean modern looking site or app together.

Markdown on Mac

Love Markdown? You might well have liked Mou, a markdown editor on the Mac. But development on that has stalled. Now in its place comes the open source MacDown which is already in heavy development and already looking quite feature rich. So, check it out. Of course, everyone does Markdown these days; I’m using various editors including WriteDown (very simple with a nice preview toggle) and Atom (good MarkDown preview plugin).

Time for a Moment.js

Moment.js was recently updated to version 2.7.0. The very useful date and time manipulation library for JavaScript has got itself four new languages, configurable relative times and various bug fixes both in general and for specific languages.

Time for a Run…time.js

Maybe you will run it on Runtime.js an OS kernel thats being built in JavaScript only running on a V8 engine. A curious little bit of research – everything runs in ring 0 and relies on software for isolation, has sandboxed and limited resources for apps and V8 to build trusted native code – it also runs one V8 instance per core. You won’t be running it tomorrow, but it does feel like its an idea worth pursuing.

Darting to Mobile

You’re probably more likely to be running Google’s JavaScript alternative Dart. That got an update too with Dart 1.5 which is focussed on mobile devices, bringing better debugging, and an update to the Polymer web components package. Full details in the release notes.

Security Notes

Of course the broken world of security rolls on. An IBM team found a stack buffer overflow in Android’s KeyStore. Thats probably the worst place to find a hole – a bit like finding the clasp on your keyring is faulty. A more controversial bug is the LZO/LZ4 hole. It’s an integer overflow in compression code and yes it could lead to code execution… if you are on a 32-bit system… and you are processing 16MB or greater blocks… and you’ve crafted the exploit to the particular implementation of LZO/LZ4 on the system. It’s a high barrier to jump but there’ll still be plenty of updates to numerous packages to close the door before there’s an exploit crafted to jump the high bar.

And thats it for this week…. thats quite a bit. Do let us know how you are finding the catchups in the comments.

Python 3.4 lands, Bootstrap flattened, USB2go-on-a-phone and Doge2048 – Snippets

snippets07
Python 3.4 is here: After many months of development, no changes to the language but lots of enhancements in the CPython implentation and standard library improvements, Python 3.4 has arrived. Before you dash off to the Python 3.4 download page, reflect for a moment that now Python now has pip as its bundled installer and should always be available or that there’s an OO API to filesystems (pathlib), a new async I/O API, support for enumeration types, fresh pickle and more and then go to the What’s new in Python 3.4 page to deeply meditate on all these and all the other changes. So far, it looks like a good solid update.

Bootflat: Like Bootstrap but wish the UI was flatter? Check out Bootflat and its flat UI reworking of Bootstrap 3.1. It’s on my list for making the UI stand out (or not, what with it being flat…)

USB2Go: Want to make Arduino-like gadgets that plug into your Android phone directly? USB2Go’s Kickkstarter may be of interest. A tiny Cortex-M3 ARM based board is at the heart of this project which hopes to deliver both the boards, Arduino shield adapters and more in October.

Doge vs 2048: Number matching games that slide are in since the appearance of Threes, then Fives, then came 2048 or let an AI play 2048 for you and finally… as memes do, it collides with another meme and we get Doge2048.

Scientific Linux, Bootstrap and all your base methods belong to Base – Snippets

linuxsnippets150

Scientific Linux 6.5: Scientific Linux has announced an update to version 6.5. SL, as it is also known, is a Linux distro based on the sources distributed by Red Hat for their Red Hat Enterprise Linux produced at Fermilab and CERN. With CentOS being brought closer into Red Hat’s ecosystem, SL may be the new barometer for the health of the Red Hat code outside the company. Anyway, the release notes mostly point you to a copy of the “Upstream Vendors” version 6.5 notes, though they aren’t on the SL servers yet. (The original notes are here).

Bootstrap 3.1: Bootstrap, the responsive mobile-first framework which also makes it easier to get a site or web application up and running, has celebrated the release of version 3.1. It comes with new documentation, an official SASS port (in a separate package), new examples and everything now under an MIT licence.

All your base methods belong to Base: It’s a sick and twisted world out there and Base is my kind of sick and twisted: there’s lots of great Ruby base classes so Base.rb includes all their methods. The best part is the license – “Distributed under the union of the terms specified by all current OSI-approved licenses. In the event of a conflict, a die is to be rolled.”