Knowledge Graphs 101

This is the first in a short series introducing Knowledge Graphs. It covers just the basics, showing how to write, store, query and work with graph data using RDF (short for Resource Description Format). I will keep it free of theory and interesting but unnecessary digressions. Let me know in the comments if you find it useful, and also tell me what other Knowledge Graph topics you would like to know more about.

This post shows some of the basics of RDF and knowledge graphs. It introduces the simple idea of the triple, how you make statements with them, and piece them together into graphs. I show how you can neatly write RDF using the Turtle language as well as how to use the elegant query language SPARQL to explore your knowledge graph.

Continue reading

Lightning + Golem = Pay per lambda?

Imagine a secure way to host Docker containers with functions (like Amazon Lambda) on the Golem compute platform, combined with Lightning Network, a massively scalable payment platform fast enough to support pay per use billing.

That would be a VERY different kind of deployment and orchestration model.  Perhaps you might submit a Kubernetes/Docker Swarm YAML file and a secure data source, and dynamically direct hosting to the lowest bidder.

What would security have to look like for this idea to work?

Golem Network

    Golem Is The New Way The Internet Will Work 

Golem is a global, open sourced, decentralized supercomputer that anyone can access. It’s made up of the combined power of user’s machines, from personal laptops to entire datacenters.

Anyone will be able to use Golem to compute (almost) any program you can think of, from rendering to research to running websites, in a completely decentralized & inexpensive way.

The Golem Network is a decentralized sharing economy of computing power, where anyone can make money ‘renting’ out their computing power or developing & selling software.

Lightning Network

    Transactions for the Future

Instant Payments. Lightning-fast blockchain payments without worrying about block confirmation times. Security is enforced by blockchain smart-contracts without creating a on-blockchain transaction for individual payments. Payment speed measured in milliseconds to seconds.

Scalability. Capable of millions to billions of transactions per second across the network. Capacity blows away legacy payment rails by many orders of magnitude. Attaching payment per action/click is now possible without custodians.

Low Cost. By transacting and settling off-blockchain, the Lightning Network allows for exceptionally low fees, which allows for emerging use cases such as instant micropayments.

Cross Blockchains. Cross-chain atomic swaps can occur off-chain instantly with heterogeneous blockchain consensus rules. So long as the chains can support the same cryptographic hash function, it is possible to make transactions across blockchains without trust in 3rd party custodians.

Telepathy – Fantasy or nearly Reality?

here’s an old post from literally years ago on the topic of human brain interfaces.  I just discovered it languishing in the wordpress drafts section.  Not sure how dated it is now (given 7 years of progress since I wrote this) but it would be good to hear what you think today… Continue reading

Data Centre Strategy

Do the fundamentals matter?

Last week I was at the Cloud and Data Centre Edge Conference. It was a great trip, and I had the chance to chat with various leaders in the Australian data centre and cloud industry. The conversations continued after the conference was over, and one in particular was with a member of our investment analysis team.

Continue reading

Preparing a Project Gutenberg ebook for use on a 6″ ereader

For a while I’ve been trying to find a nice way to convert project Gutenberg books to look pleasant on a BeBook One. I’ve finally hit on the perfect combination of tools, that produces documents ideally suited to 6″ eInk ebook readers like my BeBook. The tool chain involves using GutenMark to convert the file into LaTeX and then TeXworks to modify the geometry and typography of the LaTeX file to suit the dimensions of the document to suit the small screen of the BeBook, then MiKTeX to convert the resultant LaTeX files into PDF (using pdfLaTeX).  Go to GutenMark (plus GUItenMark) for windows, MikTeX which includes the powerful TeX editor TeXworks, install them, and ensure they are on the path.

Here’s an example of the usual LaTeX output gtom GUItenMark. Note that this is configured for double-sided printed output.

\documentclass{book}
\usepackage{newcent}
\usepackage{geometry}
\geometry{verbose,paperwidth=5.5in,paperheight=8.5in, tmargin=0.75in,bmargin=0.75in, lmargin=1in,rmargin=1in}
\begin{document}
\sloppy
\evensidemargin = -0.25in
\oddsidemargin = 0.25in

We don’t need the margins to be so large, and we don’t need a difference in the odd and even side margins, since all pages on an ereader need to look the same. Modify the geometry of the page to the following:

\geometry{verbose,paperwidth=3.5in,paperheight=4.72in, tmargin=0.5in,bmargin=0in, lmargin=0.2in,rmargin=0.2in}

This has the added benefit of slightly increasing the perceived size of the text when displayed on the screen. Comment out the odd and even side margins like so:

%\evensidemargin = -0.25in
%\oddsidemargin = 0.25in

And here is what you get:

The finished product

Since both gutenmark and pdflatex are command line tools, we can script the conversion process. The editing is done with Sed (the stream editor). I get mine from cygwin, though there are plenty of ways to get the Gnu toolset onto a windows machine these days.

#!/bin/sh
/c/Program\ Files/GutenMark/binary/GutenMark.exe --config="C:\Program Files\GutenMark\GutConfigs\GutenMark.cfg" --ron --latex "$1.txt" "$1.tex"

sed 's/paperwidth=5.5in/paperwidth=3.5in/
s/paperheight=8.5in/paperheight=4.72in/
s/bmargin=0.75in/bmargin=0in/
s/tmargin=0.75in/tmargin=0.5in/
s/lmargin=1in/lmargin=0.2in/
s/rmargin=1in/rmargin=0.2in/
s/\\oddsidemargin/%\\oddsidemargin/
s/\\evensidemargin/%\\evensidemargin/' <"$1.tex" >"$1.bebook.tex"

pdflatex  -interaction nonstopmode "$1.bebook.tex"

rm *.aux *.log *.toc *.tex

Now all you need to do is invoke this bash script with the (extensionless) name of the gutenberg text file, and it will give you a PDF file in return. nice.

Some pictures of Carlton Gardens

0019__500_F056_00800_170_DAL55-300_K-x0025_2000_F080_00800_170_DAL55-300_K-x0012__125_F080_00200_050_DAL18-55_K-x0013__100_F071_00200_033_DAL18-55_K-x0014__125_F045_00200_035_DAL18-55_K-x0015_1250_F056_00800_038_DAL18-55_K-x
0016__800_F045_00800_190_DAL55-300_K-x0017__640_F050_00800_055_DAL55-300_K-x0018__640_F050_00800_055_DAL55-300_K-x0020__500_F080_00800_170_DAL55-300_K-x0021__500_F080_00800_170_DAL55-300_K-x0022__500_F080_00800_098_DAL55-300_K-x
0023_1250_F080_00800_055_DAL55-300_K-x0024_2000_F080_00800_170_DAL55-300_K-x0026_1600_F080_00800_300_DAL55-300_K-x0027_1600_F080_00800_170_DAL55-300_K-x0028_1000_F080_00800_150_DAL55-300_K-x0029_1000_F080_00800_055_DAL55-300_K-x
0030_1250_F080_00800_033_DAL18-55_K-x0031_1250_F080_00800_033_DAL18-55_K-x0032__800_F080_00800_031_DAL18-55_K-x0033__800_F080_00800_043_DAL18-55_K-x0034__800_F080_00800_055_DAL18-55_K-x0035__800_F080_00800_055_DAL18-55_K-x

Carlton Gardens, a set on Flickr.

This was my first outing with the Pentax K-x that I got recently. In these pictures, I’m trying to get to grips with the camera, so I didn’t have any particular objective other than to take pictures.

The light was so harsh it was very difficult for me to gauge whether the exposures were working – I couldn’t see the live views or previews at all! All in all I was very surprised that any of them were worth looking at.