Showing posts with label computers. Show all posts
Showing posts with label computers. Show all posts

Saturday, April 23, 2011

Free Computer Science courses

There is so much good computer science material out there, it might be good for the students:

Free Computer Science books

One of the best things about the Computer Science field is that many of the authors are big supporters of the idea of Open Education, as a consequence have lots of sites like these that provide free computer books:

Monday, November 10, 2008

The Great Knuth Read



http://thegreatknuthread.blogspot.com/


I've started a companion blog called "The Great Knuth Read". It concerns a multi-part monograph written by Donald Knuth entitled The Art of Computer Programming which describes a range of computer algorithms. It is considered the most important collection of books in the field of computer sceince, and the most comprehensive treatment of algorithms. The blog will document my reading of these mongraphs, and what points I think are most important.

Saturday, November 8, 2008

Bletchley Park saved, whew !



Bletchley Park (aka Station X), which was the single most important code-breaking site during the Second World War, has been saved, thankfully. It was in a state of serious disrepair, and in danger of falling down, but thankfully English Heritage has stepped into the breach and has committed £330,000 to repairing the buildings, and are in talks to donate another £600,000 to get the rest of the repairs done over the next three years.

Bletchley Park is the birthplace of modern computer science, not only is it where Alan Turing developed the Turing-Welchman bombe, and the banburismus and turingismus algorithms in Hut 8, but it is also the home of Colossus - the world's first programmable digital electronic computer, which included the first use of shift registers and systolic arrays.

This intervention may have been partially in response to the fact that in July approximately 100 of the UK's top computer scientists wrote a letter to The Times identifying that Bletchley Park is of extraordinary historical significance and "in a terrible state of disrepair". Just look at the list of names below, these are some of the real giants of Computing.

Sir, The work undertaken at Bletchley Park during the Second World War in breaking German wartime codes played a significant part in winning that war and securing our future. The work included the decryption of messages enciphered on the German Enigma machines and the breaking of the German “Fish” High Command teleprinter ciphers. Bletchley Park also played a significant role 65 years ago in the design and development of Colossus, one of the world’s first programmable electronic computers. It is therefore fitting that the world’s first purpose-built computer centre should be home to the National Museum of Computing.

Over the years, Bletchley Park has survived building redevelopment (1938), an air raid (1940), the destruction of sensitive material and information (post-1945) and more recently (1991), a second attempt at demolition and redevelopment. That Bletchley Park has survived to the present day is due to the foresight of Milton Keynes Borough Council, which declared the park a conservation area in February 1992, and the formation of the Bletchley Park Trust just three days later.

The trust currently runs this gem charitably, receiving no external funding. Although there has recently been some progress in generating income, without fundamental support Bletchley Park is still under threat, this time from the ravages of age and a lack of investment. Many of the huts where the codebreaking occurred are in a terrible state of disrepair.

As a nation, we cannot allow this crucial and unique piece of both British and world heritage to be neglected in this way. The future of the site, buildings, resources and equipment at Bletchley Park must be preserved for future generations by providing secure long-term financial backing. Is it too much to ask that Bletchley Park be provided with the same financial stability as some of our other great museums such as the Imperial War Museum, the Science Museum and the Natural History Museum?

Professor Keith van Rijsbergen
Chair, 2008 Research Assessment Exercise, Computer Science & Informatics sub-panel
Professor Bill Roscoe
Director of Oxford University Computing Laboratory
Professor Jean Bacon
University of Cambridge Computer Laboratory
Professor Lawrence Paulson
University of Cambridge Computer Laboratory
Professor Ian Sommerville
Professor of Software Engineering, University of St Andrews
Professor Robert Churchouse
Emeritus Professor, Cardiff University, formerly at GCHQ 1952-1963
Tom Anderson
Richard Anthony
Jim Austin
Liz Bacon
John Barnden
Peter Barnes
David Barron
Sue Black
Cornelia Boldyreff
Richard Bornat
Roger D. Boyle
David Brailsford
Stephen Brewster
Rodney Brunt
Antony Bryant
Alan Bundy
Edmund Burke
David W. Bustard
Muffy Calder
Paul Chung
John A. Clark
Dave Cliff
Bernie Cohen
Tony Cohn
David Corne
Peter Cowling
Stephen Cox
Susan Craw
James Davenport
Alice Diggory
Alan Dix
Martin Escardo
John ffitch
Nick Fiddian
Frederic Fol Leymarie
John Glauert
Christopher Grey
Vic Grout
Martin Henson
Jill Hewitt
Jane Hillston
Patrik O'Brian Holt
Roland Ibbett
Tim Ibell
Mike Jackson
Anne James
Peter Jimack
Richard Jones
Steve King
Ann Latham
Bev Littlewood
Wayne Luk
Rob Macredie
Olenka Marczyk
Chris Mellish
Majdid Merabti
John L. Nealon
Julian Newman
Bashar Nuseibeh
Yakup Paker
Mike Pitteway
Lynette Pye
Awais Rashid
Bernard Richards
Geoffrey Sampson
N. Stan Scott
Alex Shafarenko
John Shawe-Taylor
Jawed Siddiqi
Peer-Olaf Siebers
Derek Sleeman
Alan Slomson
Nigel Smart
Peter Smith
Linda Spencer
Susan Stepney
Andrew Sturdy
Tony Sudbery
Austin Tate
Simon Thompson
John Tucker
John Turner
Tony Valsamidis
Vito Veneziano
Steve Vickers
Tom Vickers
Peter Welch
Geraint A. Wiggins
Philip Willis
Jeremy Wyatt


http://www.timesonline.co.uk/tol/comment/letters/article4385384.ece

Saturday, October 4, 2008

Stephen Fry blogs on Cloud Computing

Stephen Fry, the writer, actor, novelist, filmmaker and successor to Peter Ustinov as the World's Greatest Raconteur, is also a huge fan of technology, and his blog is full of wonderful insights about the marvels of computers. His most recent blog posting explains the ideas of Cloud Computing in a wonderfully clear way;

http://stephenfry.com/blog/?p=57


Thursday, October 2, 2008

Hackers Clone Elvis

OK, not quite, but still, a group of computer security experts, The Hacker's Choice, created a fake RFID-backed passport under the name "Elvis Aaron Presley" with a picture of Elvis, brilliant. They have released a video showing the cloned passport being approved by a security scanner at a Dutch airport.




Of course this is not the first time that RFID passports has been cloned, in 2006 researchers at the Black Hat conference demonstrated RFID chip cloning. Also, incredibly last year it was revealed that RFID chips only have a two year warranty, despite being issued in documents designed to last for ten years !!?!!


http://www.pcpro.co.uk/news/227754/hackers-clone-elvis-passport.html

http://blog.thc.org/index.php?/archives/4-The-Risk-of-ePassports-and-RFID.html
http://freeworld.thc.org/thc-epassport/

Friday, August 22, 2008

Knowledge Visualization of Wikipedia

One is the Master's students is doing some very interesting research into Knowledge Visualisation of Wikipedia articles. His website for this work is;

http://www.comp.dit.ie/dt217/jwang/jw.html

Here are some videos;



Thursday, June 26, 2008

Hackers and Hollywood: Best Presentation Award


As I mentioned in a previous posting, I had a paper at the 3rd International Conference for Internet Technology and Secured Transactions whose title is "Hackers and Hollywood: Considering Filmic Cyberthreats in Security Risk Analysis". It was well received by the international audience of Computer Security researchers, and was presented with the Best Presentation Award at the conference dinner yesterday. This was a totally unexpected surprise for me, I authored the paper to discuss a small issue in the process of undertaking risk analysis in computer security policies, and definitely didn't imagine it was going win an award.

I guess the fact that the paper was about movies helped in its appeal a lot, everyone in the audience had familiarity with some of the movies mentioned and the issues being discussed were relatively straightforward, that said, to have a group of lecturers present you with an award for giving the best lecture of the conference is a real honour and makes me think that I must be doing something right. The presentation (without video clips) is available below;
Hackers and Hollywood

Wednesday, June 18, 2008

Web 2.0: Tag Clouds

Just looking at tag clouds (or weighted lists) to see if they could be useful as a teaching tool. A tag cloud is set of related tags with the size of each tag corresponding to its frequency. Typical tag clouds have between 50-100 tags. Also, sometimes tag clouds can be interactive, the tags can be hyperlinks allowing the user to drill down on the data.

I am working on creating tag clouds from my lecture notes to see what the most commonly used words in my lectures are, and compare them to my idea of what I think I am emphasising in my lectures, to see if there is any kind of conceptual drift.

Some interesting examples of tag clouds include;

http://www.makecloud.com/
http://www.tagcloud-generator.com/
http://services.alphaworks.ibm.com/manyeyes/page/Tag_Cloud.html
http://tagcloud.oclc.org/tagcloud/TagCloudDemo
http://www.artviper.net/texttagcloud/
http://wordle.net/

Friday, May 23, 2008

Oideachas 2.0

I attended EdTech 2008 which was on yesterday and today in Dundalk Institute of Technology. A former Masters student of mine, Ronan Carty, presented a paper based on his dissertation entitled "Oideachas 2.0" concerning the use of Web 2.0 by Irish computer science lecturers, and future directions of Web 2.0. Ronan researched a range of learning and teaching theories, and surveyed over 100 lecturers on their views and usage of Web 2.0. Following this he developed a prototype learning environment that incorporates Web 2.0 Tools.

Ronan's presentation was really splendid, he took the audience through his research, discussing in detail some of the responses that the lecturers had given, he did this with great insight, critial thinking, and humour. After that he showed them his prototype learning environment which clearly wowed them. His system is built in AJAX and allows both teachers and students to configure their learning environment dynamically, excellent stuff! His disseration can be found here;
http://www.comp.dit.ie/dgordon/Research/research8.html

There were other excellent papers presented at EdTech 2008, including; Crystal Fulton's paper on blogging as a facilitator in the learning process, Namgyal Damdul's paper on developing an eXtreme Programming (XP) game, and Seamus Fox's paper on the measurement of the quality and efficiency of online teaching.

Conferences are also an opportunity to catch up with old friends, it was my great pleasure to meet up with Tim Savage who is in the Department of Computer Science in Trinity. I knew Tim as a lecturer on Trinity's Masters in IT in Education which I also taught on for a while, plus we both worked on a report commissioned by the Information Society Commission entitled "Innovation in Learning in the Information Society: A Comparative International Study". Tim is doing some really interesting research into Blended learning, and his work on Immersive Virtual Worlds looks very great.

Friday, May 2, 2008

Hackers and Hollywood

I submitted a paper to the 3rd International Conference for Internet Technology and Secured Transactions and I'm pleased to say I just got word back that the paper has been excepted. The paper, whose title is "Hackers and Hollywood: Considering Filmic Cyberthreats in Security Risk Analysis", looks at the way computer hackers (really "crackers") are portrayed in movies to determine if that influnces the security policies of organisations.

Defining what exactly constitutes a hacker movie was the first step. To do this a large number of potential candidates movies were reviewed to determine whether or not they were truly hacker movies, and using Grounded Theory a series of guidelines were developed to explain why some movies were added and others rejected.

  • GUIDELINE 1: A hacker movie must feature a hacker in it, it is insufficient to have an act of hacking in the movie, the hacker must appear in the movie as being either the main protagonist or antagonist, or at least be a well-developed character with their hacking being integral to the plot.
  • GUIDELINE 2: Not all cyberpunk movies can automatically be considered as hacker movies.
  • GUIDELINE 3: Only Science Fiction movies that feature recognisable hacker scenarios should be included.
  • GUIDELINE 4: No animated movies will be considered.
  • GUIDELINE 5: No movies will be considered whose sole focus is cryptography.
  • GUIDELINE 6: No hacker documentaries will be considered, only movies.
Following this a list of 50 movies featuring a total of 60 hackers were compiled from the 1960s to the 2000s. And from here a general list of characteristics that hackers are most commonly portrayed with in movies was complied which was then compared with the reailty of hacking.

More detail here;
http://thetech.pbwiki.com/HackersandHollywood

Monday, March 3, 2008

IBTS and the Missing Laptop - Part III

I e-mailed the IBTS regarding this decrypt-recrypt thing, here's what I got;


from "Corrigan, Arthur"
to Damian Gordon
cc "Bowler, Patrick"
date 3 Mar 2008 08:20
subject Missing laptop
mailed-by ibts.ie

Dear Damian

Thank you for your recent email in relation to the stolen laptop in New York. The reason the information on the laptop was re-encrypted because the IBTS had provided the New York Blood Centre the data on an 256 bit encrypted CD and in order to load this information on to laptop they had to decrypt it and then re-encrypt it again as it was being loaded on to the laptop.
I hope this answers your query.

Regards,

Arthur Corrigan


IT Manager
Irish Blood Transfusion Service


This really didn't make a lot of sense to me, so I sent this;


from Damian Gordon
to "Corrigan, Arthur"
date 3 Mar 2008 16:18
subject Re: Missing laptop
mailed-by gmail.com

Hi,

I'm not trying to be difficult about this but I really don't understand what you mean, in your original email you said "The reason the information on the laptop was re-encrypted because the IBTS had provided the New York Blood Centre the data on an 256 bit encrypted CD and in order to load this information on to laptop they had to decrypt it and then re-encrypt it again as it was being loaded on to the laptop."

I don't get this, why couldn't they upload encrypted data onto the laptop from the CD, that shouldn't be an issue. You can copy encrypted data from a CD to a laptop without having to do this.

My main problem is this, if the CD was decrypted and re-encrypted "on the fly" or whatever, the reality is that as it was being decryped the results of that information had to be stored somewhere, to allow that data to be again re-encrypted, and chances are that it was on the virtual memory of the laptop. So even if there was never a file created on the laptop with the decrypted data, the decryption process had to happen somewhere, and if it was on the virtual memory of the laptop, then it could be possible to restore that data.

I would be very grateful if you could check for me exactly why the data had to be de-crypted and re-encrypted, and is it possible that it occured in the virtual memory of the laptop,

many thanks,

Damian


Looking forward to their response.

Friday, February 29, 2008

IBTS and the Missing Laptop - Part II

Just got a call from the IBTS to clarify the situation for me, here are the highlights;

1. Yes, the IBTS knew that employees of the NYBC would be transporting confidential data around on their laptops and bringing it home because they would have to be working late hours on this project, so the IBTS gave them permission to do this.

2. Regarding the statement in the letter that the data was "encrypted with a 256-bit encryption. Those records were transferred to a laptop and re-encrypted with a 256-bit encryption", the person I spoke to said that he didn't really know what that actually meant, maybe the data was unencrypted at some stage and maybe it wasn't, but was happy to confirm that, yes, the laptop mentioned here was the laptop that was stolen.

3. I queried the statement "To our knowledge there has never been a report of a successful attack against a 256-bit encryption key.", he said that this was what he had been told by the NYBC and they took care of all of the encryption stuff.

IBTS and the Missing Laptop - Part I

Yipee, it's like winning the lottery, I just got a letter today from the Irish Blood Transfusion Service (IBTS) telling me some great news, my donor records were one of the 171,324 records that were on a laptop that was stolen in New York on 7th February.

I have been dreading this since the news broke on the Irish news over a week ago. In summary, the IBTS 'loaned' this data to the New York Blood Centre (NYBC) because they need a new data extraction tool that it seems no one in Ireland is capable of developing. An employee of the NYBC had a copy of the data on his laptop and lost the laptop when he was mugged outside of his home. I find it very disturbing that anyone was allowed to bring this type of data outside of a secure centre.

According to the letter I recieved the data was "encrypted with a 256-bit encryption. Those records were transfered to a laptop and re-encrypted with a 256-bit encryption", what does this mean? Why did it have to be re-encrypted, does this mean at some point the data was unencrypted? If it was, and this is the same laptop that was stolen, that is bad news.

But it's OK because according to the CEO of the IBTS Andrew Kelly the chances of decrypting this information is "extremely remote", and, "To our knowledge there has never been a report of a successful attack against a 256-bit encryption key." He should read the 2005 paper "Cache Attacks and Countermeasures: the Case of AES" by Dag Arne Osvik, Adi Shamir and Eran Tromer who in one attack managed to obtain an entire 256-bit AES key after 65 milliseconds.

The Data Protection Commissioner undertook an investigation of the entire event and according to their conclusions the IBTS seems to have done everything correctly, well that's alright so.

Sunday, January 20, 2008

“Really Achieving Your Childhood Dreams” by Dr. Randy Pausch

Dr. Randy Pausch is a highly respected and honored professor of Computer Science and co-founder of the Entertainment Technology Center at Carnegie Mellon University in Pittsburgh, PA. In September Dr. Pausch gave a lecture titled “Really Achieving Your Childhood Dreams,” which was part of what is called “The Last Lecture” series. The series is designed for top lecturers around the country to impart what they feel are their most important life lessons, as if it were their last. What made Dr. Paush’s lecture special was that it really was his last. A year before his lecture Dr. Paush was diagnosed with terminal pancreatic cancer. But to see Professor Pausch’s humor-filled talk one would never know that he has been told that he only has months to live. The inspirational lecture was given to just 400 students, but it quickly went ‘viral’ on the Internet.

Monday, November 12, 2007

The Computer Scientist's Library

Computer scientists are strange group of people, the job has all the drawbacks of a scientific job combined with all the drawbacks of an artistic job, in particular I am thinking of those of us who have to program for a living, writing computer programs is a complex business, it requires a mathematical precision and remarkable creativity. So it's like your job is being asked to create a masterwork painting every day, they have to be very artist and yet require an exact structure and form as well. And if you make an error it might be months later when it is discovered, just before the CDs are being pressed. It is a very dificult profession to sustain over a long period of time.

So what are the things that that make computer scientists a group? Shared views, shared interests, shared vocabulary and shared knowledge. One of the ways this happens is in the books that we read, so I've been trying to put together a short list of books that I think every computer scientist should read. After many starts and stops, this is my list of the top ten books in no particular order;

The Art of Computer Programming by Donald Knuth
O.K. I know I said that the list is in no particular order, but the Knuth books MUST be the top of any computer scientist's reading list. Knuth is a brilliant writer, exciting, a master of his subject, he puts the science into computer science.

The Cuckoo's Egg: Tracking a Spy Through the Maze of Computer Espionage by Clifford Stoll
Clifford Stoll's true life story of tracing a cracker who was using his computer as a bridge to access top secret information is definitely one of the most incredible computer books, inspiring and very well-written, and you learn a lot about Unix.

Hackers: Heroes of the Computer Revolution by Steven Levy
The definitive story of the Hacker movement; Greenblatt, Gosper, Stallman, names that are legendary in programming mythos, their early adventures in the MIT AI lab are documented here, and the beginings of the Open Source movement can be traced from here.

The Hacker Crackdown: Law and Disorder on the Electronic Frontier by Bruce Sterling
This brilliant book outlines the key events in the evolution of hackers (really "crackers"). The exciting events that shaped the face of Hackerdom like Operation Sundevil and the trial of "Knight Lightning"

The Tao of Programming by Geoffrey James
This is a book that spoofs the Tao Te Ching and consists of several chapters with interesting software development anecdotes, entitled - The Silent Void, The Ancient Masters, Design, Coding, Maintenance, Management, Corporate Wisdom, Hardware and Software, and the Epilogue.

The Elements of Programming Style by Brian Kernighan and P. J. Plauger
The title of this book pays homage to The Elements of Style by Strunk & White, an excellent book in the study of programming style, advocating the approach that computer programs should be written not only to satisfy the compiler, but also with human readers in mind.

The Pragmatic Programmer: From Journeyman to Master by Andrew Hunt and David Thomas
This excellent book looks at the main elements of programming in the modren IT industry. It covers topics ranging from personal responsibility and career development to architectural techniques for keeping your code flexible, easy to adapt, and reuse.

The Mythical Man-Month: Essays on Software Engineering by Fred Brooks
One of the best books ever written about the complexities of software development, the biggest lesson of this book is that the rules of common sense definitely do not apply when working on large software projects with teams of people.

The Secret Guide to Computers by Russ Walter
This book is considered a real cult book because of the author's distinctive, hilarious writing and the author's extreme devotion to his readers. The Guide covers everything relating to computers, from their hardware to their software to their history.

The C Programming Language by Brian Kernighan and Dennis Ritchie
More commonly called "Kernighan and Ritchie" this book is without a doubt one every programmer should read, written in a style that could almost be considered new wave, you have to be sitting at a computer with a C compiler to really enjoy this book.

------------------------------------------------------------

O.K., that's good and well, but what about some books that are not computer science books, but computer scientists should read, here are five;

Discrete Mathematics: An Introduction for Software Engineers by Mike Piff
A really well-written book on discrete mathematics, topics covered include mathematical logic, set theory, finite and infinite relations and mapping, graphs, graphical algorithms and axiom systems, all good stuff for every computer scientist. Best of all it includes implementations of many of the algorithms in Modula-2.

Gödel, Escher, Bach: An Eternal Golden Braid by Douglas Hofstadter
One is the most interesting books ever written, described by the author as "a metaphorical fugue on minds and machines in the spirit of Lewis Carroll". The book examines the lives of logician Kurt Gödel, artist M. C. Escher and composer Johann Sebastian Bach, discussing common themes in their work and lives. At a deeper level, the book is a detailed and subtle exposition of concepts fundamental to mathematics, symmetry, and intelligence.

How to Solve It by George Pólya
Pólya's book is a really excellent guide to problem-solving. Unlike other books of this type, Pólya does not recommend any specific set of techniques by rather a more general heuristic approach to solving problems.

Numerical Recipes by William Press, Saul Teukolsky, William Vetterling and Brian Flannery
These are a collection of books by the above authors that contain an enormous amount of material on computational methods, the scope is supposed to be "everything up to, but not including, partial differential equations", although the second edition does include a chapter on PDEs that discusses the important concepts in the field and cites the most important papers.

The Emperor's New Mind by Roger Penrose
Roger Penrose's book is a remarkable exploration of the nature of human consciousness, his view is that consciousness is non-algorithmic, and thus cannot be modeled by a conventional Turing machine. He suggests that quantum mechanics plays an essential role in human consciousness. The collapse of the quantum wavefunction is seen as relating to the brain function.

------------------------------------------------------------

And just for fun here are five fiction books that mention programming or are about computers in small or large ways. I always dip into one of these if I need a bit of inspiration.

Tron by Brian Daley
Based on the movie of the same name "Tron" the novel is really excellent, it adds a lot of characterisation and depth that was lacking in the movie, it also includes a lot of fun computer in-jokes that a programmer will enjoy. But most importantly the underlying philosophy of Tron is something that I very much believe in, that EVERY computer program you write contains a little bit of your spirit in it (no other programmer would write a program exactly the same way that you do, so each of your programs are unique to you).

Spock's World by Diane Duane
Not really about computer programming, but there is just one paragraph that makes this a magical book for programmers, near the end of the book Spock's father, Sarek who is a programmer on the planet Vulcan comes to Earth to work with human programmers, and in one paragraph Sarek reflects on the nature of human computer programmers, it's excellent.

The Prisoner's Dilemma by Jonathan Blum and Rupert Booth
Based on the TV show "The Prisoner" and using the game theory problem of the prisoner's dilemma as its central premise, this is a really fascinating book, and features a computer expert codenamed "Number 101" who seems very much like Alan Turing to me.

The Discworld Novels by Terry Pratchett
In particular the character of Ponder Stibbons embodies a lot of what a really good computer programmer should be like, plus "Anthill Inside", brilliant.

The Passing of the Techno-Mages: Books 1-3 by Jeanne Cavelos
These books are set in the future and tell the story of a group who use very advanced technology to simulate the effects of magic. The novels centre around the mystery of where this technology came from in the first place and how the lead character Galen treats this technology like a computer programmer.