Wednesday, July 27, 2011

Don't Dun an Doras

Today I got an email from an academic publisher…

They were telling me the good news that I could submit a paper for publication in their journal, and that the cost to DCU (if my paper were accepted) had been reduced to 18 Euro per page. If anyone wanted to read my paper they would have to either subscribe to the journal at the cost of 240 Euro per year (for 4 issues), or pay a hefty price to download the paper from the publishers web site.

I shook my head in amazement. Are there still people out there that do that? In the field of Computing we have long moved over to Open Access publishing. For example all of my academic papers are available for download for free from the Web, and none of them cost me a penny to put them there.

In fact its you, the Irish and European taxpayer, that is paying for most of this research in the first place, so surely its only right that you should have free access to view its outputs.

Here in DCU, and in particular in the School of Computing, we have pushed this ideal to the limit. All of our Ph.D. theses are published on our own open-access repository called DORAS – see http://doras.dcu.ie/. Many of us choose to place all of our published output (conference papers, book chapters, journal publications) there as well.

My colleague Prof. Alan Smeaton informs me that

"DORAS has been in operation for almost 3 years and there are now 578 research publications from the School of Computing available online http://doras.dcu.ie/view/groups/groups2a.html, more than any other School, Faculty or research centre in the University. These have had 34,490 individual downloads of the full PDF of the publications, with the most-downloaded paper being:

Coogan, Thomas and Awad, George M. and Han, Junwei and Sutherland, Alistair (2006) Real time hand gesture recognition including hand segmentation and tracking. In: ISVC 2006 - 2nd International Symposium on Visual Computing, 6-8 November 2006, Lake Tahoe, NV, USA. http://doras.dcu.ie/259/

which has had 1,081 individual downloads."

In a new initiative we have decided to make available presentations by all of our Ph.D. students, where in a recorded video of an academic talk they describe their research and their progress to date. These recordings are normally made after the students have completed about 2 years of their research program, and they then appear on this website in a blog posting. So now as well as browsing the printed word, you can also hear our research being presented directly “from the horses mouth”.

Open Access is the future of the dissemination of academic research.

(Of course there are occasions when we might have to keep quiet for a while about what we have discovered – there may after all be valuable Intellectual Property that we would need to take action to protect first.)

Monday, June 13, 2011

Very Reduced Instruction Set

Just how small can a computer instruction set get? 32 instructions? 16?

Well in fact you can get away with just one instruction, subleq, or Subtract if Less Than or Equal To

subleq a,b,c

where the contents of address a are subtracted from the contents of address b, and if the result is not positive jump to address c.

http://en.wikipedia.org/wiki/One_instruction_set_computer

Interesting but not much use you might think. Well consider a computer doing encryption with a secret key. If each different instruction consumes a slightly different amount of power, then by accurately measuring tiny variations in power consumption you might get an idea of which instructions are being executed, and hence you might be able to determine the key. This is a very real problem and such methods are known as side-channel attacks. But if there only is one instruction such attacks are useless.

http://www.iacr.org/workshops/ches/ches2010/presentations/04-Invited_Talk_1/CHES2010-Naccache.pdf

In this talk by David Naccache (who we had over here in DCU giving a talk a few years ago), as you can read here (page 59) some-one has actually built it, and even produced a C compiler for it!

Wednesday, June 8, 2011

Mathematics? What's that?

We are always getting surveyed about one thing or another, but sometimes you wait in vain for some-one to carry out a particular survey. What I am waiting for is for some-one to ask 1000 Irish people, equipped only with pen, paper, a comfortable table and chair, and 10 minutes of time (no calculator allowed), to divide 1104 by 23 and get the right answer. I bet less than 20% could do it.

Actually I take a fairly apocalyptic view of the state of maths in Ireland today. As a nation I reckon there are maybe only a few thousand people left who really understand math. It is gradually being leached out of our national consciousness. Come back in 100 years time, and left to our own devices, knowledge of maths would be entirely gone. Like ancient Harp making, it will disappear, except for a few old text books that no-one will understand. Already we have people teaching maths who don’t understand the subject, to classes who are not surprisingly completely bewildered by it.

In Western countries like America, where the education system is much more variable in quality, but where the average is really rather poor, they are not much better off. But America being America can always suck in know-how from other countries. So America is full of eager and math-literate Indians and Chinese, who will within a generation, (America being America) become as American as Barack Obama. Can we pull off the same trick and simply import math know-how? I don’t think we can, we are not America, and international maths skills will probably not be attracted in sufficient numbers to our shores. So we need to fix our own maths education system, urgently.

However this is a project that will take a generation to complete, and sadly we haven’t even made a serious start on it yet. After a decade of talking about it we are finally getting bonus points for honours maths - starting next year. Glaciers actually move many miles in 10 years so to describe the speed of change here as glacial would be an insult to glaciers.

Then again most other Western countries have the same problem, so if we can get serious about this, and launch a national effort involving all stake-holders, we could still steal a lead over the competition.

Tuesday, May 31, 2011

Googling for Code

You need a piece of code to implement a very standard algorithm. You could write it yourself, but instead you Google for it. No need to re-invent the wheel you say to yourself. Then frustration sets in..
My particular need was for a function in C++ to calculate the determinant of a square NxN integer matrix. Ideally I want something non-recursive and which does not need to allocate any memory.

Doesn’t seem like a lot to ask. However the solutions I find are all recursive, some very poorly written, some hundreds of lines long. Many are specific to the trivial 2x2 or 3x3 case. Most allocate a lot of memory from the heap. Now I hate recursion – does my head in - but I had assumed that a recursive algorithm was optional and that a non-recursive alternative always existed. Some websites held out the promise of a solution, but only if I signed up to join some group or other which would probably expose me to requests for payments, annoying ads and a deluge of emails. No thanks.

Anyway my search resulted in failure, so I resorted to writing my own – something which really should not be happening at this stage in the game. It does use recursion, and it allocates a very small amount of memory, but its less than 20 lines long.

int determinant(int n,int *matrix[])
{
     int i,j,k,sign=1,det=0;
     int **minor;
     if (n==1) return matrix[0][0];
     minor=new int* [n-1];
     for (i=0;i<n;i++)
     {
         for (j=k=0;j<n-1;j++)
         {
             if (j==i) k++; // skip i-th row
             minor[j]=&matrix[k++][1];
         }
         det+=sign*matrix[i][0]*determinant(n-1,minor);
         sign=-sign;
     }
     delete [] minor;
     return det;
}

Monday, May 23, 2011

Securing the Cloud

The potential benefits of cloud computing are amazing. Imagine for example your medical records being in the cloud, accessible immediately from anywhere in an emergency...

But wait a minute. What if the cloud is not secure? Already there have been a couple of instances where a cloud was hacked, or where there was a sustained loss of service. The cloud represents a single point of failure, and thus must not be allowed to fail. And what about privacy - you don't want anyone and everyone poking around in your medical records. The solution here is encryption, but a particularly sophisticated type of encryption. For example you might want your medical records to be completely available to you and your surgeon, and partially available to your GP and nurse, and somewhat available to your medical insurer. What's wanted in fact is known as "Attribute-Based Cryptography", where your access to the data depends on who you are and what attributes you have.

Well cometh the hour cometh the solution. As often happens in research, in a completely seperate development from cloud computing, mathematicians have recently come up with the perfect solution to the problem of attribute-based cryptography, based on the mathematics of "pairing-based cryptography". Previous efforts floundered on the problem of "collusion attacks". Say one needs attribute A and attribute B to access certain data. I have attribute A only, you have attribute B only, each of us individually does not have sufficient attributes to access the data, but if the two of us get together... The new methods prevents this. This is a very hot research area.

If you want to read more, see

http://eprint.iacr.org/2010/565

and

http://ece.wpi.edu/~mingli/papers/Li_SecureComm10.pdf

But academics having solved a problem do not linger long on it. There are other problems of interest. Unfortunately commercial exploitation of such ideas is often delayed, as knowledge of these new techniques is not widespread.
Here is another problem of particular interest to an Irish audience - Electronic Voting. We in Ireland dabbled with it before but the proposed method then was totally insecure. Ideally we would like to encrypt each vote and yet still be able to count it. However normally you can't do maths (like counting) on encrypted data. The solution is "homomorphic cryptography". Google for it. We don't quite have a perfect solution for it yet, but we are getting there... Another fascinating and hyperactive research area.

Wednesday, May 4, 2011

What do you expect from us?

There was a time when an academic was just expected to be a good researcher and a competent teacher.

Now however an academic is expected to be an active researcher, an excellent teacher, an entrepreneur, an innovator, an accountant, an administrator, an inventor, a fund-raiser, a media performer, a businessperson.... In short there is a lot being expected from the poor overloaded academic. However I don't have an entrepreneurial bone in my body. And I actually don't know of anyone who ticks all of those boxes (although I know of a couple who tick most of them).

In truth many of us became academics precisely so as not to become business people. Growing up in our rather snobby academic household I clearly recall the term "businessman" being used as a form of put-down. Our own self image as academics was (is?) as financially disinterested and personally unambitious, but with a noble curiosity about science, and/or literature and/or the arts.

However the expected attribute that worries me most is that of "innovator". The reason being that nowadays innovation is being entrusted solely to academia, and frankly in the past most innovation has come from outside of the universities. Think of a famous inventor and phrases like "college drop-out" and "no formal education" come rather uncomfortably to mind. The problem is that by implying that innovation is somehow the reserve of the universities, others may feel that their own ideas are not worthy of consideration. That would be a shame.

Monday, April 11, 2011

The Problem with Students is..

Now you won't ever hear a politician criticize the electorate, and neither are you often likely to hear academics criticize students, but..

If I were to list some of the comments of colleagues, some students are
  • Poorly motivated
  • Poorly educated
  • Completely distracted by Facebook/Youtube
  • Often absent from lectures/tutorials
  • generally disengaged
  • limited in attention span
  • Filled with a sense of entitlement
  • too busy doing a part-time job
Now what all this boils down to in my view is that some students are simply not interested in their studies. The reasons I would put down to poor career advice, leaving-cert burn-out, and the madness of the points system, whereby a student goes for the course that suits their points rather than the course which suits them.

Its bad enough with the backdoor re-introduction of fees that many well-motivated students will not be able in future to afford third level education, but its crazy to let the system become clogged with the clearly disinterested. The long term impact on graduate quality is frightening.

It almost makes me blush to say it, but a good teaching-learning outcome requires teachers passionate about their subject and students equally passionately interested in that subject. I was reminded recently of what that feels like when I taught a semester in the University of Mzuzu in Malawi (second poorest country in the world). Students so eager to learn they were almost ripping the knowledge out of my head!

Frankly third level education here often lacks that passion, and the even the most passionate teacher will wilt after years of exposure to clearly disinterested students.

I think in future we should consider making entry to third level dependent on the student demonstrating some considerable interest in their chosen subject.

Of course many of our students already fully fit the bill in this regard, and in our case we are fortunate that so many have a passion for computing as reflected in the energy and creativeness exhibited by the student computer society - see http://www.redbrick.dcu.ie/

While its clearly a noble objective to have 70% plus of second level students move onto third level, noble aspirations have a way of running aground on the rocks of reality. I personally believe in mass participation in third level education, but only when people are ready for it. Many of the students I have met who are most passionate about third level education are those involved in "second chance" education as mature students, when they have finally figure out what they want to do.