Showing posts from 2018

Solid: the new Web

Personal empowerment through data That’s the principle that drives Sir Tim Berners-Lee new Web initiative, Solid, and the company, inrupt[1] that he has formed to implement it. Sir Tim believes that his invention has created a better and more connected world but at a price. In a blog post[2] he says:
"But for all the good we’ve achieved, the web has evolved into an engine of inequity and division; swayed by powerful forces who use it for their own agendas." Why? Because the Web has become dominated by a few big players who are using our data and our attention to make huge profits. But we have little control over that data and how it is used. Berners-Lee is going to change all that.
Solid is a way of ensuring that individuals retain control over their data — what is there and who can access it. The POD At the heart of Solid is the personal online data store (POD). A POD contains all of your data, is under your control BUT maybe shared with applications that you choose.

Roll your own interactive Python tutorial

Would you like to be able to write professional looking interactive Python tutorials that let you write and run programs in the browser?

Well, you can.

This post will show you how and I'll even provide a template that you can download for free.

Here's an example page. Play around with it - type new code into the editor and run it. Then carry on reading.

We will use a Python interpreter called, Skulp, that is written in Javascript. We don't need to download anything. All of the libraries that we will use are available on CDNs, so we just need to include the appropriate script and link tags.

If you go to the Skulpt web site you will see some examples of how to use it and very useful they are, too. however, I wanted to build something a little more professional-looking. So I constructed a web page that you can modify to produce an interactive tutorial like the one that, hopefully, you've just been looking at.

To build this, I use the Skulpt Python interpreter, the embedda…

Google AI designs new AIs

Think your safe in your job if you are an AI researcher?
Think again. Not even AI scientists are safe from the relentless takeover of jobs currently done by real people.

A team at Google has trained an AI to design other "child" AIs that perform as well, if not better than, those designed by humans.

It is called AutoML - where ML means machine learning - and it has been used to create a neural network for image recognition that outperforms existing human designed networks.
Artificial neural networks have to be trained and this involves vast amounts of data. In the case of an image recogniser, this is a large set of images that has already been categorised and labelled as 'cat', 'dog', 'elephant', and so on. As the number of images increases the more complex the network needs to be to recognise them and the longer the training will take.
AI researchers compile these large data sets to use as benchmarks for new systems and they vary from tens of thou…

The Top 4 Ways to Install Python

Ranging from the 'ridiculously easy' to the 'not at all difficult but long and tedious', you can install Python in a few ways. Python is definitely THE language to learn at the moment particularly if you want to get into Data Science or AI. Many of the leading AI frameworks use Python, e.g. Tensorflow from Google and Apache's MX Net.

There are two versions of Python, Python2 and Python3. Python3 is obviously the latest one but is not completely compatible with the old version, so while version 2 is still available, 3 is the one that is being developed.

As well as Python, itself, you will likely need an editor and a package manager. The 'standard' editor that tends to come with Python is Idle, which is fine for beginners (but there are better choices IMHO) and the 'standard' package manager is pip - this allows you to easily download and install Python packages.

1. The 'do nothing' way to install PythonThe easiest way to get Python is to, firs…

Introduction to Python programming by Andrew Ng

A free ebook or a very reasonably priced paperback that provides a very broad coverage of the Python language.

Andrew Ng is a well known figure in the world of AI, and since Python is a major language in that world, you'd imagine that Ng is quite an authority on Python.

This books demonstrates that this is, indeed, the case.

It is an very comprehensive book covering just about every aspect of Python that you might want to know about. It's also a conventional book that starts with how to install the software and then moves on to the language itself. It covers data and variables, moves through operators, control statements, libraries, functions, OOP, and databases, giving a detailed coverage of each topic.You'd be hard-pressed to find anything missing.

While it is well explained, the examples are fairly trivial which, in a book of less than 300 pages, is not really very surprising, particularly given the amount of ground the author covers.
Ng is clearly an expert in the lang…

The C Programming Language by Kernighan and Ritchie

Recently, I needed to write a brief tutorial on the C language and, because I haven't used the language for a little while, I though I'd better brush up my skills.

Where better to start than "The C Programming Language" by Brian W. Kernighan and Dennis Ritchie.

I first bought this book soon after it came out in 1988 and, if like me, you are put off by 500 page volumes that promise to teach you a programming language in 24 hours, or a month, or whatever... you might like it.

Kernighan and Ritchie not only wrote the book, but Ritchie wrote the language, too. So it is nothing if not authoritative. They then went on to revise the language and produce a new edition of the book. So if your grandfather, or aging uncle, offers to lend you a copy of K&R's first edition, just politely accept and then put it on the shelf for posterity. It’s the second edition, the ANSI version, that you need.

The K&R book is quite short - less than 300 pages - and in two main parts, t…