Google Analytics

Thursday 26 February 2009

Development of the Web: Video Links

Links only I'm afraid...

Tim Berners Lee and others at the Web's 10 Year Anniversary conference:

World Wide Web: Ten Year Anniversary, 2004. Available at: http://forum.wgbh.org/node/1714 [Accessed February 25, 2009].

Tim Berners Lee Lecture at Southampton University:

The World Wide Web: Looking Back, looking forward, Available at: http://www.ecs.soton.ac.uk/podcasts/video.php?id=75 [Accessed February 26, 2009].

Wednesday 25 February 2009

Hypertext, Hypermedia and the Semantic Web: Hypertext to Hypermedia and Beyond...

It is frequently questioned how hypermedia relates to hypertext.

Nelson defined hypertext in his 1965 paper ‘Complex information processing: a file structure for the complex, the changing and the indeterminate’. In that paper Nelson states that the prefix ‘hyper’ is an ‘extension and generality’ used to signify non-linear media. There is no pre-determined path through non-linear media, unlike traditional linear media (e.g. a book). He also defines ‘hyperfilm’. ‘“Hyperfilm” and “hypertext” are characterised as “new media”... the larger category in which at least the hyperfilm is included is “hypermedia”’, (Wardrip-Fruin 2004).

Wardrip-Fruin points out that Nelson concluded in 1970’s “No More Teachers’ Dirty Looks”, (Reprinted in ‘The New Media Reader’), that ‘hypertext began as a term for forms of hypermedia (human-authored media that “branch or perform on request”) that operate textually’, (Wardrip-Fruin 2004).

In 1992, Nelson wrote in ‘Literary Machines’:
‘By now the word “hypertext” has become generally accepted for branching and responding text, but the corresponding word “hypermedia”, meaning complexes of branching and responding graphics, movies and sound –as well as text – is much less used. Instead they use the strange term “interactive multimedia” – four syllables longer, and not expressing the idea that it extends hypertext’, (Nelson 1992).
We can therefore conclude, without doubt, that ‘hypertext’ is a sub-set of the larger category ‘hypermedia’.

Lowe et al, (1998) define a hypermedia application as:
‘An application which uses associative relationships among information contained within multiple media data for the purpose of facilitating access to, and manipulation of, the information encapsulated by the data’.
Lowe et al describe websites as hypermedia applications and the World Wide Web as a hypermedia system.

Hypertext and hypermedia systems would have struggled without the innovations of Douglas Engelbart.

Doug Engelbart had been working on office automation at the Stanford Research Instituted since the late 1950s. In 1962 he wrote a paper entitled ‘Augmenting Human Intellect: A Conceptual Framework’, (Englebart 1962). This led to the formation of the Augmentation Research Centre (ARC). The ARC primarily worked on the development of the NLS, (‘oN-Line System’), which was the first system to use hyperlinks. The NLS was finished and demoed in 1968, in what has been termed ‘The Mother of All Demos’, (Levy 2000). Engelbart also invented the mouse, which was patented in 1970, (Wikipedia 2009).

In 1967 Andries Van Dam and Ted Nelson began working on the Hypertext Editing System at Brown University, (Dam 1988). It enabled the use of Instances:
‘Instances are references, so that if you changed, for example, a piece of legal boilerplate that was referenced in multiple places, the change would show up in all the places that referenced it’, (Dam 1988).
In 1968 they created FRESS (File Retrieval and Editing System):
‘The most popular feature... FRESS was the first system to have an undo. We saved every edit in a shadow version of the data structure, and that allowed us to do both an autosave and an undo. I think the most important feature in an system built today has to be an indefinite undo and redo’, (Dam 1988).
This is still something we should strive for today.

After NLS and HES came Xerox PARC’s Notecards and Carnegie Mellon’s ZOG, (that used a ‘card’ model to display data).

The first hypermedia system (media, not just text) was the Aspen Movie Map, created in 1977.

In the early 1980s, Shneiderman’s TIES and Brown University’s Intermedia were popular.

In 1980 Tim Berners-Lee begun work on ENQUIRE, which would eventually develop into the Web itself. Other hypermedia systems that were popular up until the advent of the web included Guide and Hypercard.
  • Dam, A.V., 1988. Hypertext '87: keynote address. Commun. ACM, 31(7), 887-895. Available from: http://doi.acm.org/10.1145/48511.48519 [Accessed 25 February 2009].
  • Engelbart, D. C., 1962. Augmenting Human Intellect: A Conceptual Framework. Available from: http://www.dougengelbart.org/pubs/augment-3906.html [Accessed 25 February 2009].
  • Levy, S., 2000. Insanely Great: The Life and Times of Macintosh, the Computer That Changed Everything Reissue., Penguin Books.
  • Lowe, D. & Hall, W., 1998. Hypermedia and the Web: An Engineering Approach, John Wiley & Sons.
  • Nelson, T. H., 1965. Complex information processing: a file structure for the complex, the changing and the indeterminate. In: Proceedings of the 1965 20th national conference, August 24-26, 1965, Cleveland, Ohio, United States. New York, NY, USA: Association for Computing Machinery, 84-100. Available from: http://doi.acm.org/10.1145/800197.806036 [Accessed 08 January 2009].
  • Nelson, T. H., 1992. Literary Machines. CA, USA: Mindful Press.
  • Wardrip-Fruin, N., 2004. What Hypertext Is. In: Proceedings of the fifteenth ACM conference on Hypertext and hypermedia, August 09 - 13, 2004, Santa Cruz, CA, USA. New York, NY, USA: Association for Computing Machinery, 126-127. Available from: http://doi.acm.org/10.1145/1012807.1012844 [Accessed 09 February 2009].
  • Wikipedia, 2009. Douglas Engelbart. Wikipedia. Available at: http://en.wikipedia.org/wiki/Engelbart [Accessed February 25, 2009].
  • Wikipedia, 2009. Hypertext. Wikipedia. Available from: http://en.wikipedia.org/wiki/Hypertext [Accessed 09 February 2009].
  • Wikipedia, 2009. NLS (computer system). Wikipedia. Available from: http://en.wikipedia.org/wiki/NLS_(computer_system) [Accessed 25 February 2009].

Thursday 19 February 2009

History of the Internet and a Communications Primer

The following videos are of interest in relation to the history and development of the Internet and communications...

History of the Internet:



YouTube - History of the Internet. Available at: http://www.youtube.com/watch?v=9hIQjrMHTv4 [Accessed February 19, 2009].

A Communications Primer:

Eames, C. & Eames, R., 1953. Internet Archive: Details: Communications Primer, A. Available at: http://www.archive.org/details/communications_primer [Accessed February 19, 2009].

Saturday 7 February 2009

Hypertext, Hypermedia and the Semantic Web: Nelson’s ELF and the definition of Hypertext

20 Years after Vannevar Bush described his Memex, Ted Nelson presented a conference paper entitled ‘A File Structure for the Complex, the Changing and the Indeterminate’ at the ACM’s 20th National Conference. A paper he had been working on since 1960.

Nelson’s paper tried to envisage ‘a computer system for personal information retrieval and documentation’. Nelson knew about and had referenced Bush’s Memex, but understood that, although the required hardware was becoming available, the software required was not being developed.

Nelson wanted to design his system around the system used by a writer:

‘The task of writing is one of rearrangement and reprocessing, and the real outline develops slowly. The original crude or fragmentary texts created at the outset generally undergo many revision processes before they are finished. Intellectually they are pondered, copied, overwritten with revision markings, rearranged and copied again. This cycle may be repeated many times. The whole grows by trial and error in the processes of arrangement, comparison and retrenchment. By examining and mentally noting many different versions, some whole but most fragmentary, the intertwining and organizing of the final written work gradually takes place’, (Nelson 1965).
The preliminary specifications of the system were as follows:
  • ‘It would provide an up-to-date index of its own contents (supplanting the “code book” suggested by Bush)’, (Nelson 1965).

    I think Nelson misunderstands Bush here. I read the Memex’s ‘code book’ or ‘code space’ to be equivalent to the HTML behind a web page. A space that is programmable by the site designer, but otherwise not seen by the user, who, as Bush described, only has to activate the link to bring up the linked item. Here Nelson tries to describe a traditional style index that updates itself.

  • ‘It would accept large and growing bodies of text and commentary, listed in such complex forms as the user might stipulate’, (Nelson 1965).

  • ‘It would file under an unlimited number of categories’, (Nelson 1965).

    This requirement seems to be satisfied by modern day meta tags.

  • ‘Besides the file entries themselves, it would hold commentaries and explanations connected with them’, (Nelson 1965).

    This is a requirement that Tim Berners Lee wanted to try to establish with the World Wide Web and the idea behind the W3C’s Amaya project. Although in the Web 2.0 world we seem to be accomplishing this through commenting boxes on the same web page as the item in question.
Further to these primary points, Nelson specified that it should be possible to preserve a draft of work while its successor was created. ‘Consequently the system must be able to hold different versions of the same sets of materials’, (Nelson 1965).

Nelson revisits the same point later in his paper, explaining that:

‘The user must be permitted, given a list of what he has done recently, to undo it. It follows that “destroy” instructions must fail safe; if given accidentally, they are to be recoverable. For safety’s sake, it should take several steps to throw a thing away completely. An important option would permit the user to retrace chronologically everything he does on the system’, (Nelson 1965).
If we consider that the item in question is a web page, then perhaps we could have a meta-tag in the mark-up that identifies different web pages that are associated with it, e.g. different versions of the same page. There is no limit to the amount of meta-tags we can place in a page, or what they contain, so we could also use these tags to identify pages in entirely different locations that relate to the same set.

Another possibility is that the top level file is actually a package. Within this package are contained different versions of the web page. This would allow us to roll-back and forth through changes as required. This option would require web browsers to be adapted in order to extract the relevant page from the package before viewing.


Storage of multiple versions of a document allows us another development, mooted by Nelson:

‘Systems of paper have grave limitations for either organizing or presenting ideas. A book is never perfectly suited to the reader...
However... a new, readable medium... will let the reader find his level, suit his taste and find the parts that take on special meaning for him, as instruction or entertainment’, (Nelson 1965).
This specification resulted in what Nelson called an ‘evolutionary file structure: a file structure that can be shaped into various forms, changed from one arrangement to another in accordance with the user’s changing need’, (Nelson 1965). Nelson proposed the ‘Evolutionary List File, or ELF’ as a system used to implement an evolutionary file structure.
‘The ELF has three elements: entries, lists and links...
  • An entry is a discrete unit of information designated by the user...
  • A list is an ordered set of entries...
  • A link is a connector, designated by the user, between two particular entries which are in different lists’, (Nelson 1965).
We can consider that the ELF equates to the World Wide Web, an entry to a Web Page, a list to a Website and, of course, a link is a link.

Nelson theorised features of entries, lists and links:


Entries (or modern day web page):
‘An entry in one list may be linked to only one entry in another list’...
‘Entries may be combined or divided... Entries may be put in any list, and the same entry may be put in different lists. The user may direct that entries of one list be automatically copied onto another list, without affecting the original list’...
‘It would be possible to allow sub-entries and super-entries to behave and link up like normal entries, even though they contained or were contained in other entries’, (Nelson 1965).
Lists (or modern day website):
‘A change in the sequence of either list, or additions to either list, will not change the links that stand between them’...
‘[The user] may at will make new copies of lists. [The user] may rearrange the sequence of a list, or copy the list and change the sequence of that copy. Lists may be combined; lists may be cut into sublists’ , (Nelson 1965).
Links:
‘Changes in the link structure will occur only if the user specifically changes the links, or if he destroys entries which are linked to others’...
‘Any number of legal links may be created, although the upper limit of links between any two lists is determined by the 1-for-1 rule. When an entry or a list is copied into a list, links will remain between parent and daughter entries. Moreover, after a list-copying operation, the daughter list will have the same links to all other lists as does the parent list’, (Nelson 1965).
Nelson highlighted that there is a problem when an entry is disposed of ‘what other lists is an entry on?’ Programmed bots now roam the web carrying out simple tasks. Surely a bot could be made to constantly check the links within one website in order to check that they are not ‘dead links’ and if they are to remove the underlying link and highlight the issue to the administrator.

Uses of the ELF? Even though we now know what the Web can be used for, the following section makes interesting reading:
‘the ELF may be used as a glorified card file.. . [This permits] assignment of one entry to different lists. It permits sub-sets and sub-sequences for any use to be held apart and examined without disturbing the lists from which they have been drawn, by copying them onto other, new lists. The ELF permits the filing of historical trails or associative (Bush) trails... and the mixture of trail with categorical filing’, (Nelson 1965).
There is a hint of a, so-far unexplored, feature in the above paragraph. He later expands:
‘the ELF is capable of storing many texts in parallel, if they are equivalent or linked in some way. For example, instruction manuals for different models of the same machine may be kept in the file as linked lists and referred to when machines are to be compared, used or fixed. This is of special use to repairmen, project managers and technical writers’, (Nelson 1965).
The point I am picking up on, is the ability to compare data. Is it not possible for us to develop applications that take two different pages, even their code, and compare them so we can see where the differences are? This could be a particularly useful feature if they are versions of the same page. Or perhaps if they followed a standard layout used in a specific industry. From comparing layouts we could even suggest sections that have been missed or otherwise aid the author.

With this specification, Nelson had to create a new definition:
‘Let me introduce the word “hypertext” to mean a body of written or pictorial material interconnected in such a complex way that it could not conveniently be presented or represented on paper’...
‘The sense of “hyper-“ used here connotes extension and generality; cf. “hyperspace.” The criterion for this prefix is the inability of these objects to be comprised sensibly into linear media, like the text string, or even media of somewhat higher complexity”, (Nelson 1965).
Lastly, Nelson provides a warning to future computer scientists:
‘Last week’s categories, perhaps last night’s field, may be gone today...
Categories are chimerical (or temporal) and our categorisation systems must evolve as they do. Information systems must have built-in the capacity to accept the new categorisation systems as they evolve from, or outside, the framework of the old. Not just the new material, but the capacity for new arrangements and indefinite re-arrangements of the old, must be possible’, (Nelson 1965).
  1. Nelson, T. H., 1965. Complex information processing: a file structure for the complex, the changing and the indeterminate. In: Proceedings of the 1965 20th national conference, August 24-26, 1965, Cleveland, Ohio, United States. New York, NY, USA: Association for Computing Machinery, 84-100. Available from: http://doi.acm.org/10.1145/800197.806036 [Accessed 08 January 2008].

Thursday 5 February 2009

Hypertext, Hypermedia and the Semantic Web: Bush and his Memex

According to ‘The Good Study Guide’, (Northedge 2007), ‘learning through study doesn’t create a detailed replica of knowledge in your head; rather, it develops the way you think’. He points out that learning can be evidenced by a student’s ability to summarise a subject in their own words.

The book also talks of the academic disciplines of scholarship and debate. Scholarship is the academic requirement to read all that has gone before and debate is the ability to understand and analyse both sides of an argument before reaching a conclusion.

In this blog I will be discussing the Semantic Web, so it makes sense to have early postings that explain what it is all about. I should also be able to use my musings as part of my IT research and project report, so it is not wasted time.

The idea of a Semantic system is as old as the earliest computers.

It all starts with a man called Vannevar Bush. He received a doctorate in engineering from MIT and Harvard (jointly) in 1917. During World War I he worked on developing improved techniques for detecting. He rejoined MIT after the war in 1919. In 1922 he founded a company with a colleague to market a device called the ‘S-tube’, which was used to improve the efficiency of radios. This company later became Raytheon, a defence contractor. No doubt the S-tube was a result of his research undertaken during World War I.

In 1927 he started to construct a ‘Differential Analyser’. A Differential Analyser is an early type of computer. Mechanical and analogue, they used wheel-and-disc mechanisms to solve differential equations. They were later rendered obsolete by binary programmable (Zuse’s Z3) and electronic (Flower’s Colossus) computers.

‘During World War I, Bush had seen the lack of co-operation between civilian scientists and the military and in 1939 proposed a general directive agency.’ Bush presented a paper describing the proposed National Defence Research Committee (NDRC) to President Roosevelt on the 12th June 1940, which Roosevelt duly approved. Bush was chairman of the committee and continued to be involved with it throughout World War II, later becoming Director of the Office of Scientific Research and Development, (Wikipedia, 2009).

In July 1945 the Atlantic Monthly published Bush’s article entitled ‘As We May Think’, (it is described as having been written in 1936 but set aside when war loomed – Wikipedia, 2009). The article was to act as ‘an incentive for scientists when the fighting has ceased’ and was based on the premise that ‘knowledge evolves and endures throughout the life of a race rather than that of an individual’, (Bush, 1945).

Bush realised that science depends on an ever increasing body of research and ideas. Scientists had to collaborate and devise new methods during the war ‘in the demand of a common cause’. Of course this meant a surge in the body of research available and Bush believed ‘there is increased evidence that we are being bogged down today as specialisation extends’.

We, as computer scientists, tend to think that this is a modern problem that goes with the advent of the web and social networking. But here is Bush saying this back in 1945 – he would definitely fit in today.

At that time, the dawn of computing, their methods for transmitting and reviewing research were inadequate and Bush realised this. Bush used the following example to illustrate the point:

‘Mendel’s concept of the laws of genetics was lost to the world for a generation because his publication did not reach the few who were capable of grasping and extending it; and this sort of catastrophe is undoubtedly being repeated all about us’, (Bush, 1945).
Bush discusses how the new technologies of Television and Microfilm could be used in the future. He then goes on to describe what we know today as Voice Dictation Software! His discussion of ‘machines for repetitive thought’ in the next part is crucial.

Punched card and Keyboard machines capable of arithmetic already existed:
‘Keyboard machines for accounting and the like, manually controlled for the insertion of data, and usually automatically controlled as far as the sequence of operations is concerned;
and Punched-Card machines in which separate operations are usually delegated to a series of machines, and the cards then transferred bodily from one to another.
Both forms are very useful; but as far as complex computations are concerned, both are still in embryo’, (Bush, 1945).
He talked about the need to develop machines capable of using established logic processes and understood:
‘The selection of the data and the process to be employed and the manipulation thereafter is repetitive in nature and hence a fit matter to be relegated to the machine’, (Bush, 1945).
The standard programming constructs of sequence, selection and repetition are central to computers today. So we can ultimately say that in 1945 Bush could envisage computers as we know them today.

He understood that the solution to the problem goes ‘deeper than a lag in the adoption of mechanisms’ and that the ‘ineptitude in getting at the record is largely caused by the artificiality of systems of indexing’.

Bush also realised that the human mind operates by association, a very important point that we still strive to satisfy today. He noticed that this meant that selection of records must therefore be by association, rather than indexing.
‘Consider a future device for individual use, which is a sort of mechanized private file and library. It needs a name, and, to coin one at random, “memex” will do. A memex is a device in which an individual stores all his books, records, and communications, and which is mechanized so that it may be consulted with exceeding speed and flexibility. It is an enlarged intimate supplement to his memory’, (Bush, 1945).
He details a desk style machine, with screen, keyboard, levers and buttons. Microfilm is projected onto the screen. The machine can photograph books placed on a platter into the next available slot on the microfilm. Books can be accessed by a traditional index and both books and index can be rapidly searched in the same way that microfilm is searched today. The user is also able to add marginal notes and comments to what he is reading.
‘All this is conventional... It affords an immediate step, however, to associative indexing, the basic idea of which is a provision whereby any item may be caused at will to select immediately and automatically another. This is the essential feature of the memex. The process of tying two items together is the important thing’, (Bush, 1945).
‘When the user is building a trail, he names it, inserts the name in his code book, and taps it out on his keyboard. Before him are the two items to be joined, projected onto adjacent viewing positions. At the bottom of each there are a number of blank code spaces and a pointer is set to indicate one of these on each item. The user taps a single key, and the items are permanently joined. In each code space appears the code word. Out of view, but also in the code space, is inserted a set of dots for photocell viewing; and on each item these dots by their positions designate the index number of the other item’ , (Bush, 1945).
‘Thereafter, at any time, when one of these items is in view, the other can be instantly recalled merely by taping a button below the corresponding code space’ , (Bush, 1945).
Of course Bush in effect here is describing a modern day web page hyperlink.

  1. Bush, V., 1945. As We May Think. US: The Atlantic Monthly Group. Available from: http://www.theatlantic.com/doc/194507/bush [Accessed 10 January 2009].
  2. Northedge, A., 2007. The Good Study Guide. 2nd ed. Milton Keynes: The Open University.
  3. Wikipedia, 2009. Vannevar Bush. Wikipedia. Available from: http://en.wikipedia.org/wiki/Vannevar_Bush [Accessed 05 February 2009].

Wednesday 4 February 2009

Who needs to actually know SQL?

Wow! Forget learning SQL!
I've found using a 'Dataset' automates the whole process of creating methods to manipulate a database, and provides a nice Data Access Layer which is abstracted from the Presentation Layer.

This should simplify the development of my 4 table Doctors Appointment System (for Web Development module) and take days off my 88 table project.

Tutorial available from:
http://www.asp.net/learn/data-access/tutorial-01-cs.aspx - C#
http://www.asp.net/learn/data-access/tutorial-01-vb.aspx - vb

OK Computer and the Trousers of Time

I am currently studying a 1 year top-up degree at Bournemouth University, entitled BSc(Hons) Computing and Internet Technology. A question I sometimes find asking myself is 'how did I end up here?'

This probably all started with my first computer bought back in 1991 - the Amiga 500. What a fine machine it was! It had a very good games collection, (Lucasarts adventures have always been my favourite) and there were many magazines for the format at the time which I enjoyed reading. I also had my first go at programming about 1993 using AMOS, (a Basic derivative). The Amiga continued to be used up to 1998, as I can remember using the 'Deluxe Music Construction Set' for my Music GCSE.

We joined the PC bandwagon in 1994 with a Compaq Presario CDS 520, although I still remember my Dad brining home an Amstrad PC in 1993 destined for his work. Still the Presario brought with it some exciting developments, noteably the PC CDROM format. The Encarta encylopedia provided hours of browsing and I also had some good games too, (I rember having to go and get a big box full of them!). The PC also brought with it Windows 3.1, although Compaq provided their own interface called Tabworks which was slightly better. Windows was never as good as the Amiga OS, infact Microsoft have only arguably just caught up with Windows 7.

Very quickly there was a need to upgrade the RAM on the Presario. So my Dad bought an extra 4MB at around £100 or so. I later upgraded to Windows 98. Although eventually it was unable to play any games, even when upgraded with a P133MHz Overdrive Processor.

Anyway. The Trousers of Time.. Up until 1998 I had wanted to do Marine Engineering or Naval Architecture, even though never very good at art. Fate dictated that there would be no Engineering GNVQ that year at the college, as only 4 others wanted to do it and probably some of us failed the aptitude test. So I ended up doing an IT GNVQ.

In the GNVQ ('98-'00) we learnt Pascal and later Java. At this time I also taught myself HTML and Dynamic HTML using Javascript.

At the beginning of 2001 I started a career with the States of Guernsey. Very enthusiastic at this stage. My first project was to code an events diary website using ASP 3.0 (JScript). This was eventually completed in 2002, but never used. (Unfortunately I have now lost all the events diary source code after a catastrophic disc failure last year). I began reading the Inquirer and then the Register, and still do so regularly today.

My placement finished in 2003 and I was relocated, becoming more involved in Project Management. My interest and enthusiasm for computing waned at this point.

Meanwhile, I have always been interested in my family history. My Maternal side has been researched back to the 10th Century by my Uncle, (although the notes need tidying up). I started to research my Paternal side in 2007, getting back as far as the mid 18th century.

Since 2004 I had been studying for the BCS Professional Examinations and achieved my Diploma in 2007, enabling me to join my course last year.

I am now working on my project codenamed, as it were, 'GenPACK'. This can be found at Sourceforge here. I am writing a research paper about my project in relation to the GEDCOM format that is available here.

The enthusiasm for computing seems to have returned with the advent of the Web 2.0 revolution. I have thus recently decided to create this blog, partly because there does not seem to be room for all these thoughts in my head!

Tuesday 3 February 2009

Transformer Helicopters

The Register recently reported in their article 'DARPA seeks Transformer helicopters' that the US Defense Advanced Research Projects Agency (DARPA) has launched a project to research and presumably develop a rotor that is reconfigurable in flight, in order to achieve performance and efficiency benefits. This programme has been designated the Mission Adaptive Rotor (MAR) project.
Perhaps the most obvious way of achieving this could be that the rotor is extended outwards in a way similar to a telescope, with an outer rotor containing an inner rotor. This could presumably be controlled by pneumatic pressure.

I also considered that perhaps they could research the use of a Wingtip device at the end of ther rotor. The A380 makes use of wingtip devices to enables it to have shorter wings, (in order that it can manouvre in airports), that have the same characteristics as a longer wing. Without the long wing characteristics it would not be able to fly.