https://www.google.co.uk/amp/nsomar.com/java-elixir/amp/
Category: Uncategorized
Minimal Release Notes from git
git log cd15930.. –oneline
The first is the github hash of the previously deployed build.
This allows a quick summary of what has changed.
Look at this if you are serious about Erlang/Elixir/OTP
Here are the samples from the excellent book:
Keeping Java jdk working on windows
Windows development in java can be painful. This is mostly due to any new java upgrade breaking the java home setup.
To fix this I started to look for an ansible script to redeploy the jdk. However the script had a dependency on powershell. Once you are using powershell you may as well use chocolatey. There are now sone simple commands to keep java working:
Choco install jdk8
This must be run as administrator and will require a single confirmation.
However now I have the means to keep neo4j and gradle happy after a java upgrade.
Fitbit Charge HR With Exclamation Mark
This means that the fitbit has got into a confused state.
It needs to be rebooted as follows:
http://help.fitbit.com/articles/en_US/Help_article/1186
Plug into the charging cable with a power source (PC or mains).
Hold down the button for about 20s
It should then restart. This should not clear the data on the device.
However it may not have counted steps during the crash.
Software Minitures
The Software Miniture is a concept that I came up with when experimenting with code generation. Its a cut down version of a larger application with a minimal implementation of the concepts of a larger application. The idea was to perform experiments on the miniture that would be much faster than on the full application.
This idea also seems to be useful when chosing a replacement CI server.
What happened to the Cloud CI Providers?
2017 comes with the decommissioning of two cloud ci providers.
Snap-CI and Bamboo-CI are both shutting down.
Snap-ci provided a build pipeline (triggered by a github webhook) with log and artefact viewing. This was all configured using a clean UI which allowed environment variables to be stored as either plaintext or securely.
Finding a replacement is not simple. The options seem to include options without a ui to specify the pipelines or are much more expensive.
The roll your own optiona are complex possibly including docker hosted travis.
Lotus Improv equivalent in a Browser
This open source pivot table (http://nicolas.kruchten.com/pivottable/examples/local.html) brings the power of Lotus Improv to the web.
Lotus Improv was a groundbreaking spreadsheet that was based upon pivot tables rather than a simple grid. Lotus killed it as it was cannibalising it’s own Lotus 1-2-3 sales.
The pivot table above allows you to load a csv file (say the output of a Bigquery query) and then perform ad-hoc pivot analysis on it. By dragging the column headings around you get to see your data summarised in your browser. The sample could easily be extended to run a report from say a S3 bucket. This means that we could email links to pivot tables around…
Cloud Providers in the UK
After my last post I have found that Amazon (AWS), Microsoft (Azure) and Google (Google Cloud) are all in the process of constructing UK based regions. However they don’t seem to have gone for the Northern Powerhouse option…
How to use Neo4j in the cloud
Neo4j is an amazingly powerful database. For the right use case it is incredibly fast.
This is how to get up and running:
Sign up to heroku, create an empty project and provision a graphedb database. For small enough databases this is free.
Look in the configuration tab for the connection string url. Keep this secret as it contains the username and password for write access to the graphdb. You can paste this into a browser to give access to the neo4j console.
Now you will want to put some data in. The fastest way is to import from a csv file.
Here is a sample upload script (currently untested):
WITH PERODIC COMMIT 1000 IMPORT CSV FROM http://somewebsite/data.csv AS data MERGE (Test {id: data [0]})
The data must be on a publicly accessible website. I would recommend using an amazon s3 bucket (or a dropbox folder) but use a uuid for the folder name. It only needs to be available for the duration of the import and given that s3 hosted websites don’t expose the directory list function it will be almost impossible to guess.