In my last post, I said that I have moved to
Zola from Wordpress. In this post, I thought I would share a few
reflections about how that went.
I had decided up front that I was going to move to a static site
generator, because of the flexibility that this gives me in terms of
the site hosting. I quite wanted something fast because, well, fast is
better than slow. I looked a Hugo which is a main contender in this
market. It looks nice, but I found the documentation unclear. In the
end, I went for Zola because the
documentation was pretty clean. I also liked it because it is
implemented in Rust and I know how to code that and this is often
useful with any tool that you are using. My main worry was that Zola
has an "all in one binary" ethos; I can see why this is important, but
it a…
Well, this is my first post after quite a few years. Well, there has
been a pandemic in between and like most of us it has had a significant
impact. There has not been much time for anything other than
day-to-day activity.
However, I have had a desire to get back to posting for quite a
while. In the past I have found the blog useful when writing papers,
because I have an historical record of the work that I have; that's
perhaps more important these days as the gaps between my research can
be quite variable. I also fancied revisting my earlier tendency to
write some crazy
ideas up.
One of the main blockers has been technological. The very first
version of this blog used an Emacs mode, muse, to generate static
files. After that, I moved over to Wordpress and even added to it
extensively, so …
I've been thinking of writing a post about my experiences with Rust for
a while, but haven't found the time. The call for Rust#2019 posts seems
like an good opportune moment to contribute.
My rust experience is extremely limited. I've written a single library
in Rust, called Horned-OWL, [@url:github.com/phillord/horned-owl] for
manipulating OWL [@url:www.w3.org/TR/owl2-manchester-syntax/] I started
it in August 2017 and it took over a year to full implement the spec
complete with parser and renderer; a length of time that is more
reflective of the sporadic availability of time that I have to work on
these things rather than anything else.
And the experience has been positive. There is already a good and
complete library for manipulating OWL called the OWL API
[@url:github.com/owlcs/owlapi]…
Another day, another Ubuntu upgrade, another broken Marble Mouse. Have I
written this before? Well, yes,
several
times before.
With the release of 17.10, everything broke because Wayland was bought
into replace X. With 18.04, wayland is out again --- something which I
am pretty glad about, because in my experience it was pretty unstable,
with the desktop crashing out to login fairly often.
The 17.10 solution appears to have been:
gsettings set org.gnome.desktop.peripherals.trackball scroll-wheel-emulation-button 8
This fails again on 18.04. Fortunately, the solution is quite simple
which is to just return to the libinput configuration that we had
before.
xinput --set-prop "Logitech USB Trackball" "libinput Scroll Method Enabled" 0 0 1
xinput --set-prop "Logitech U…
Oh dear, if it seems that we have been here before, it's because we
have. Another Ubuntu upgrade,
another broken Marble Mouse.
Took my a while to work out this one, but the answer is hidden in a bug
report for RedHat.
Actually, if I had read my last blog post I might have worked it out
also.
What happens is Wayland, the new, er well what ever it is, for 17.10
looks at the marble mouse, says "it has no scroll wheel", so disabled
the input method. Which is unfortunate because then the emulation
doesn't work.
The solution is to turn it on again:
xinput --set-prop "Logitech USB Trackball" "libinput Scroll Method Enabled" 0 0 1
xinput --set-prop "Logitech USB Trackball" "libinput Button Scrolling Button" 8
Dearie me.
Update
Worked. Was happy. N…
Abstract
[kblog-inc server="arxiv"]1709.08982[/kblog-inc]
Plain English Summary
Ontologies are a mechanism for organising data, so that it can be
generated, searched and retrieved accurately. They do this by building a
computational model of an area of knowledge or domain.
But, building ontologies is a challenge for a number of reasons. One of
the main problems is that building an ontology requires two skills sets:
the use and manipulation of a complex formalism, which tends to be the
job of an ontologist; and, the deep understanding of the area that it
being modelled, which is the job of a domain specialist. It is fairly
rare to find a person who understands both areas; so people have to
collaborate.
In this paper, we describe new mechanism to enable this collaboration;
rather t…
A chicken is an eggs way of making another egg
One of the joys of Ontology building is that you can end up in some
fairly obscure arguments; the one I got in today is whether a sperm is a
human being. Of course, this is silly, but mostly because of the
limitation of our language. I would like to describe here why a sperm is
a human individual and why it is important.
One of the long running discussions in the ontology community is how we
define function. With respect to biological organisms and biological
function this is particularly challenging; in fact, biology continually
raises questions and exceptions which is part of the fun.
I added my contribution to definitions of function several years ago
[@arxiv:1309.5984] built largely around evolution and, more importantly,
homology.
One o…
Abstract
[kblog-inc server="arxiv"]1705.08730[/kblog-inc]
Plain English Summary
Bioinformaticians store large amounts of data about proteins in their
databases which we call annotation. This annotation is often repetitive;
this happens a database might store information about proteins from
different organisms and these organisms have very similar proteins.
Additionally, there are many databases which store different but related
information and these often have repetitive information.
We have previously look at this repetitiveness within one database, and
shown that it can lead to problems where one copy will be updated but
another will not. We can detect this by looking for certain patterns of
reuse.
In this paper, we explictly study the repetition between databases; in
some case…
Years ago, after problems with my wrist, I moved to using a trackball
when ever I can. Good move it was too, but I am left with one pain. I
use a Logitech Marble Mouse and it has no scroll wheel; this is sad
because I have loved scroll wheels since they came out. So, instead, I
use scroll wheel emulation --- you hold down a button and trackball
moves are interpreted as scroll events.
Now, this leaves me with one remaining pain. For no readily apparent
reason, the method for configuring it has moved from one place to
another, normally every couple of releases. At one point, it was in
xorg.con, then in HAL, for a joyful period with the gpointer-settings
GUI which then broke and disappeared, and I ended up with xinput run
from a shell script.
Having just upgrading to Ubuntu 17.04 guess what? …
I've been listening to Roy's music for years: originally, I read an
article in a guitar magazine, and then heard down the grapevine about
his live peformance, and I thought it sounded fun. This all happened
when I was about to go to university. It was this collection of
circumstances that has meant that Roy had a formative place in my
musical upbringing. I bought a copy of his album Once, and shortly after
saw him play live. Before this, my life music had been limited to blues
in the local pubs; Roy was the first "real" gig that I saw live.
After this, Roy along with John Martyn [@url:www.russet.org.uk/blog/667]
(who was responsible for the second real gig I went to), became a
regular. I would see him play every year or two, I bought a lot of his
back catalogue and listened to it…