Photos taken during a nice stroll along the Basingstoke canal near West Byfleet. I took these photos using my mobile phone on a nice sunny day in December 2020. Given how pretty the place is, I am sure there are more photos to come.

Read more

A few weeks ago I introduced my students to the notion of dictionaries in python. The obvious way of teaching them, especially in the context of my module, is to use dictionaries to create word frequency lists. In order to make the students understand better why dictionaries are useful, we discussed other ways to produce frequency lists which use only lists. This prompted me to try to think as many ways as possible to produce frequency lists. I also wanted to see how feasible is to use these methods.

Read more

This is a very much delayed series of posts related the yearly module I give on Python programming for Natural Language Processing. The purpose of this module is to teach students how to use Python for processing corpora and for other Natural Language Processing (NLP) related tasks. The background of students is different from year to year, but in general students come with non-computer science related backgrounds. This makes the module a bit challenging because in about 12 weeks, I need to bring these students from zero to an intermediate level.

Read more

When my university decided to discontinue the support for personal webpages (i.e. literally pull the plug from the server hosting them), I was left with a dilemma. I had a pretty static HTML page that was hosted there and a rather standard (and largely abandoned) WordPress installation. Because I liked the structure of my HTML page, I decided to create a theme based on it and restart using my WordPress blog. What you read now, is the result of this conversion. Depending on when you read this post, there may still be some rough patches. In this post, I will show how you can develop a theme for WordPress using Varying Vagrant Vagrants and synchornise it using Dropbox.

Read more

I am Professor of Language and Translation Technologies at the Centre of Translation Studies, University of Surrey. Before starting this role, I was Reader in Computational Linguistics at the University of Wolverhampton, UK, and the deputy head of the Research Group in Computational Linguistics at the same university. I have received my BSc in computer science at Babeș-Bolyai University, Cluj-Napoca, Romania in 1998 and was awarded my PhD from the University of Wolverhampton in 2006.

I have over 20 years experience of working in the fields of (applied) Natural Language Processing (NLP), Artificial Intelligence and Machine Learning for language processing. My research interests are largely focused on facilitating information access and include translation technology, sentiment analysis, question answering, text summarisation, anaphora and coreference resolution, building, annotation and exploitation of corpora.

I recently coordinated the EXPERT project, an extremely successful Initial Training Network (ITN) funded under the People Programme of the Seventh Framework Programme (FP7) of the European Community which trained the next generation of world-class researchers in the field of data-driven translation technology. In addition to coordinating this project between nine partners across both academia and industry, I was actively involved in the training of the Early Stage Researchers (ESRs) appointed in the project and, in collaboration with these ESRs, I carried out research on translation memories and quality estimation for machine translation. I continue researching these topics.

I was also the deputy coordinator of the FIRST project, a project which developed language technologies for making texts more accessible to people with autism. In addition to managing a consortium of nine partners from academia, industry and heath care organisations, I also carried out research on text simplification and contributed to the development of a powerful editor which can be used by carers of people with autism to make texts more accessible for these people.

In the past In the past, I was the Local Course Coordinator of the Erasmus Mundus programme on Technology for Translation and Interpretation and the Erasmus Mundus International Masters in Natural Language Processing and Human Language Technology, and the scientist in charge for the University of Wolverhampton in two European projects QALL-ME and MESSAGE. I also worked as a research fellow on the CAST project

I love programming and in my spare time I contribute to some open source projects and have my own GitHub repository

The First Shared task on Aggression Identification was organised in conjunction with the First Workshop on Trolling, Aggression and Cyberbullying. The idea of the shared task was fairly simple. Classify a text in one of the following three categories: Overtly Aggressive (OAG), Covertly Aggressive (CAG) and Non-aggressive (NAG). This means that the task is essentially a standard text categorisation task and an approach based on bag-of-words is a good baseline to start with (neither me, nor the task organisers provided a baseline based on bag-of-words, so I don’t know what is the accuracy of the method).

Read more

The other day I wanted to format the text in a post using a definition list-like structure. Basically I wanted something like this:

May 2018Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. 

June 2018Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Read more

The other day I wanted to allow users of the metadiscourse annotator to quickly locate in text the marker they tag. This is particularly important if the text contains many markers. When the user presses a button I wanted the following effect:

Read more

Update: One day after I wrote this post, version 2.8.36 was released to fix this problem. It seem that other versions of Symfony were also affected. If you are interested in this problem, read on. If you are affected by it, you should upgrade, not use the fix from here.

Last night I implemented a few improvements in the Metadiscourse annotator which I am developing in my spare time. (I rewrote several functions that cut the running time of two actions from minutes to seconds … but that’s for a different post, maybe …). I tested the new code on my development computer and everything seemed perfect, so I deployed the new version. Just before sending an email to the people who use this program, I noticed that a particular functionality that relied on AJAX requests no longer worked. This was completely unrelated to the changes I made. Initially, I thought it is because I restricted the HTTP method to GET, whilst the request was done using POST. I fixed that, but it was still not working. After spending a bit of time, I realised that none of the AJAX requests worked anymore. This was at 1am, how else 🙂

Read more