This blog is about my PhD research (now finished) at University of the West of England into User Driven Modelling. This is to make it possible for people who are not programmers to create software. I create software that converts visual trees into computer code. My web site is http://www.cems.uwe.ac.uk/~phale/. I'm continuing this research and the blog. My PhD is at http://eprints.uwe.ac.uk/17918/ and a journal paper at http://eprints.uwe.ac.uk/17817/.
Saturday, August 06, 2011
World wide web celebrates 20th birthday - BBC News
World wide web celebrates 20th birthday - BBC News - http://www.bbc.co.uk/news/technology-14430076.
6 August 2011
"Exactly 20-years-ago today a modest British scientist launched his new invention. At the time, almost no-one noticed but it has since revolutionised our lives.
Tim Berners-Lee called his new invention the "world-wide-web".
Richard Westcott has been taking a look back at the technology that went on to change the world."
Monday, September 15, 2008
Berners-Lee not happy with IE
"Internet Explorer is not up to speed with other browsers when it comes to offering support for scalable vector graphics (SVG), according to Tim Berners-Lee.
SVG is often found in online maps as it allows images to be resized or zoomed into without losing resolution.
Mr Berners-Lee, head of W3C, does not like to express preference for browsers and so did not name IE by name, reports the Associated Press.
'If you look around at browsers, you'll find that most of them support scalable vector graphics,' he told the agency.
'I'll let you figure out which one has been slow in supporting SVG.' Firefox, Safari and Google's new browser Chrome all support SVG, while Microsoft prefers a different format called Vector Markup Language - despite W3C giving SVG its support since 2001.
If IE users want to display SVG they need an Adobe plug-in, which is set to have its support ended on January 1st."
Monday, June 11, 2007
Semantic Web Development
Semantic Web Development and dealing with complexity is a tricky issue. Representing information is a problem where complexity can preclude any single approach. In order to find our way around large quantities of information it needs to be structured. But the information already exists and is still being created, so this makes it a moving target. Kurt Cagle refers to this in his article on complexity on his Understanding XML blog at http://www.understandingxml.com/
The structuring of ontologies from the top down can be useful, but can only be achieved where the ontology developers have some control over the information. Much of web development and other creation of information is bottom up, in that there is no controlling authority. This is good for inclusiveness and speed of development, and something that encourages community, and encourages individuals to create their own content, which is a good thing. In his interview with the British Computer Society Tim Berners-Lee http://dig.csail.mit.edu/breadcrumbs/blog/4 answers a question on ontologies. He talks of a top level ontology that can be created to hold certain terms and the need to find out who is using these terms, so that other web pages and databases can be categorised. This would be achieved using URIs (Universal Resource Identifier) and RDF (Resource Description Framework). In answer to what Tim Berners-Lee hopes to achieve, he talks of this bottom up development that is going on, using blogs, and wikis etc and a possible approach of 'web science' - 'the science and engineering of web based things that have a bottom up Web-like structure'.
I think this approach is highly relevant to my PhD research on user-driven programming, with University of the West of England (UWE - Bristol). Not everyone has the time to learn programming especially if their main expertise is elsewhere. They then have to ask others to do the development for them and this leads to delays and mis-understandings. The approach advocated here could enable visual creation of software by members of a community. Members of this community would not need advanced programming skills if other members with more advanced development skills could create a suitable interface for the creation of software. This could be achieved in a similar way to that used in visual web page creation tools, or word processor and spreadsheet software. Also the members who do possess advanced skills could provide ways of sorting, searching and navigating the programs created using the visual development tools. Members could work with either or both groups, according to their skills and interests.
A good first step would be to link communities and sites that have a mix of those with advanced software skills who want to encourage and enable others to learn to program, and of new starters who want to learn. This could involve those who are willing to try out new techniques to make it easier for new starters to train learn and gain experience.
Sir Tim-Berners-Lee's interview - http://www.bcs.org/server.php?show=ConWebDoc.3337.
This talk by Nigel Shadbolt explains research about coping with diverse sources of information - http://www.bcs.org/server.php?show=ConWebDoc.3043.
This article by Bill Thompson for the BBC technology site examines new developments in Web 2.0 technologies - http://news.bbc.co.uk/1/hi/technology/4842498.stm.
I am a Researcher in the final year of my PhD at the University of the West of England, Bristol UK. I specialise in applying Semantic Web techniques. My current research is on a technique of 'User Driven Modelling/Programming'. My intention is to enable non-programmers to create software from a user interface that allows them to model a particular problem or scenario. This involves a user entering information visually in the form of a tree diagram. I am attempting to develop ways of automatically translating this information into program code in a variety of computer languages. This is very important and useful for many employees that have insufficient time to learn programming languages. I am looking to research visualisation, and visualisation techniques to create a human computer interface that allows non experts to create software.
I am a member of the Institute for End User Computing.
My Home Page is http://www.cems.uwe.ac.uk/~phale/
Language and Tool Mapping - http://www.cems.uwe.ac.uk/~phale/#LanguageToolMapping
Semantic Web Page - http://www.cems.uwe.ac.uk/amrc/seeds/PeterHale/RDF/RDF.htm
Semantic Web History - http://www.cems.uwe.ac.uk/amrc/seeds/PeterHale/EndUserHistory/Semanticweb.htm
Semantic Web Modelling Page - http://www.cems.uwe.ac.uk/amrc/seeds/ModellingSemanticWeb.htm
Sunday, May 13, 2007
Programming with Semantic Web Languages
For my PhD thesis in User Driven Programming I've been experimenting with using Semantic Web Languages as programming languages. The two approaches I've used are:-
Option 1 - To put all the data in Semantic Web languages e.g XML, SVG, RDF/XML, OWL, and then display them using a programming language such as Flash, or Java (applets) -http://www.cems.uwe.ac.uk/~phale/Flash/FlashHCI.htm
http://www.cems.uwe.ac.uk/amrc/seeds/PeterHale/JavaTree/AutomaticaOutputSpar/classes/TreeOutput.html.
Option 2 - To use the above languages as meta languages for actual programming -
http://www.cems.uwe.ac.uk/amrc/seeds/PeterHale/SparMenu.xml
http://www.cems.uwe.ac.uk/amrc/seeds/PeterHale/SparMenu.html
Some of these solutions have used aspects of both approaches. These examples use SVG and JavaScript -http://www.cems.uwe.ac.uk/~phale/InteractiveSVGExamples.htm.
It is becoming increasingly practical to program completely in the Semantic Web languages. These languages enable declarative programming where we tell the computer what we want to do, and a translation is performed either using languages such as JavaScript or Java, or into JavaScript or Java.
The advantages of this form of declarative programming are that we can use a language that is at a much higher level of abstraction, closer to the way people think. I have been creating these programs by editing them in Protege (ontology editor) and using a translator to convert them to whatever code is needed. This makes it possible to perform visual programming in a meta language (OWL) Web Ontology Language (option 2), without needing to worry about how it's implemented. The possibilities for this are that it becomes sufficiently intuitive, so that people can eventually create their own software for a wide variety of tasks, in a point and click way and using similar tools to web page editors. This would enable anyone who is computer literate to program the computer themselves to do their tasks, and if this is of interest to others, they can release their solution over the web.
Technologies such as XForms - http://www.cems.uwe.ac.uk/amrc/seeds/Ajax/ajax.htm#XForms, XQuery - http://www.cems.uwe.ac.uk/amrc/seeds/PeterHale/XML/XML.htm#XQuery, and SPARQL - http://www.cems.uwe.ac.uk/amrc/seeds/PeterHale/RDF/RDF.htm#SPARQL
make it possible to provide the sort of collaborative interactivity that Tim Berners-Lee calls 'Intercreativity' in Weaving the Web - http://www.w3.org/People/Berners-Lee/Weaving/. In this book he also discussed the use of Semantic Web Languages as programming languages. He makes the point that it isn't the power of the language that is important in providing this intercreativity. The simplicity of a language such as RDF makes it easier to provide interconnected solutions to complex problems, without becoming bogged down with the complexity of the language itself, and interoperability problems. Tim Berners-Lee sums up the advantage of a Semantic Web program over programs in other languages. He writes "The advantage of putting the rules in RDF is that in doing so, all the reasoning is exposed, whereas a program is a black box: you don't see what happens inside it." If these rules are also visualised, they are exposed to everyone, including non-programmers.
These advances make it practical to develop a high level visual interface that can allow people to develop open source, open standard, interoperable programs and share them. This can allow the development of open source communities similar to those developing software currently, but only requiring the level of skill it takes to get started in visual collaboration tools such as MySpace.
In Weaving the Web Tim Berners-Lee writes "The Semantic Web, like the Web already, will make many things previously imposible just obvious". I think visual Semantic Web programming is one of those obvious things.
Semantic Web Languages could also be a useful programming tool for creation and editing of E-Learning objects (Stutt and Motta, 2004).
References
Bechhofer, S., Carrol, J., 2004. Parsing owl dl: trees or triples?. In: Proceedings of the 13th international conference on World Wide Web, NY, USA, pp 266-275.
Berners-Lee, T., Fischetti, M., 1999. Weaving the Web. Harper San Francisco; Paperback: ISBN:006251587X - http://www.w3.org/People/Berners-Lee/Weaving/.
Stutt, A., Motta, E., 2004. Semantic Learning Webs. Journal of Interactive Media in Education, 2004 (10). Special Issue on the Educational Semantic Web. ISSN:1365-893X - http://www-jime.open.ac.uk/2004/10.
World Wide Web Consortium (W3C), 2007. Extensible Markup Language (XML) http://www.w3.org/XML/.
World Wide Web Consortium (W3C), 2007. Resource Description Framework (RDF) http://www.w3.org/RDF/.
World Wide Web Consortium (W3C), 2007. Scalable Vector Graphics (SVG) XML Graphics for the Web http://www.w3.org/Graphics/SVG/.
World Wide Web Consortium (W3C), 2006. SPARQL Query Language for RDF http://www.w3.org/TR/rdf-sparql-query/.
World Wide Web Consortium (W3C), 2006. XQuery 1.0: An XML Query Language http://www.w3.org/TR/xquery/.