|
NetKernel News Volume 6 Issue 3
March 6th 2015
- Repository Updates
- Gradle_Plugin_Update
- NEW:_NetKernel_Docker-ready
- Contextual_Caching:_The_Simpsons_Highlight_Show
Repository Updates
NOTE: As announced previously, Java 6 is now end-of-life and since January 2015 all modules are built and target Java 7. Do not attempt to install updates if you are still running Java 6.
No Apposite updates this week.
Gradle Plugin Update
We fixed a couple of bugs in the Gradle plugin in the last couple of weeks. The appositeUpdateXXXX task is now working properly - thanks to Gary Windham for reporting this.
We also managed to work out a way to prevent the netkernel{} deployment dependencies from getting mixed into the eclipse plugin's project compile and runtime dependencies. A problem that led to eclipse projects created with gradle having unnecessary (and so broken) compile-time linkages.
A long story but ultimately a case of classical software tools having a limited view of build/runtime compared to the modular late deployment offered by ROC. Thanks to Stefan for discovering this.
To use the latest release of the gradle plugin just update your build.gradle scripts to have a minimum dependency on version 1.1.6 like this...
dependencies { classpath group: 'urn.org.netkernel', name: 'gradle.plugin', version: '[1.1.6,)' }
A full guide to using gradle with NetKernel is available here
NEW: NetKernel Docker-ready
We're excited to announce that Randy Kahle has contributed a NetKernel image to the public Docker repository. Details for how to spin up an NK instance on docker are available here...
https://registry.hub.docker.com/u/databliss/netkernel-se/
But how about this for easy...
docker run -d -P databliss/netkernel-se
Randy is all over the state of the art in microcontainer hosting (he's literally written the book on one of the major vendor's platforms).
He's keen to lead a community effort to define and document best practice for NetKernel cloud-based late-bound configuration management and module deployment strategies (eg using the gradle plugin).
If this is an area you'd like to participate then please reach out to us, Randy's docker and twitter id is @databliss.
FYI as an example of the potential of this work, he reports that he can now easily spin up 10 instances of NK in less than 10 seconds.
Great stuff Randy!!
Contextual Caching: The Simpsons Highlight Show
Its a cheap trick I'm borrowing from the Simpsons. You know how in each season they make a show that is just a slightly repackaged set of repeat highlights? Well this a Simpsons article (or in ROC terms its a composite meta-article).
In fact its a bit more than just a few links. Last week Tony and I made some big claims about how the NetKernel cache discovers contextually relevant state, well this week I ended up in a deep discussion about the affect of ROC on the energy efficiency of systems with a hard-core team of engineers.
I promised to send them some detailed reference material to underpin the assertions and demos that I'd shown, so I looked through these newsletter articles to find the most relevant pieces.
I've been writing these things for so long now, that I don't think there's a single part of ROC or the NetKernel embodiment that isn't exhaustively discussed somewhere (I guess that's a sign that I should now sit down and edit this stuff into a proper ROC book).
Anyway, because both Tony and I strongly dislike unqualified statements of hype (such as "the NetKernel caching model is unique"). Here's a set of articles that explain exactly why and how it is unique and how it is able to determine the maximally reusable computational state without incurring exponential space costs...
- This article provides a detailed discussion of how NetKernel's cache works, the significance of the cache heatmap view, etc...
- This article, if you didn't see it last time, is Tony's higher level story about how our approach is genuinely new and different to any other cache out there...
- These articles provide discussion of how we have invented a new approach to Scope in order to ensure systemic referential transparency, which is a necessary requirement for the cache's systemic memoization...
- This article shows how we have eliminated pass-by-value state and have achieved a system where all state is pass-by-reference (in-band), with consistent referential scope...
- This article is a brief discussion of why, when, if you only think of software purely as coding in a language, you are destined to always be trapped on the Turing tape...
While looking for this material, and other topics not related to caching, I ended up reading a whole lot of stuff that I'd forgotten I'd written. But I won't inflict another post-modern Simpson's article on you for a while (at least, what I really mean is, next time I won't be able to point it out to you if I do. If I keep quiet, eventually I'm hopeful I'll be able to get away with meta-meta-articles, meta-meta-meta-articles and meta-meta-meta-meta-articles. Doh!)
Have a great weekend!
Comments
Please feel free to comment on the NetKernel Forum
Follow on Twitter:
@pjr1060 for day-to-day NK/ROC updates
@netkernel for announcements
@tab1060 for the hard-core stuff
To subscribe for news and alerts
Join the NetKernel Portal to get news, announcements and extra features.