Friday, 7 December 2007

Semantic Web

The w3c defines the semantic web as "providing a common framework that allows data to be shared and reused across application, enterprise, and community boundaries. It is a collaborative effort led by W3C with participation from a large number of researchers and industrial partners. It is based on the Resource Description Framework (RDF)"

We are looking at methods for automating the web, enabling applications to use the data existing in websites as well as the data being useful to people. One new thing I learnt was that the Opera web browser has text and voice recognition built in. This means that if you can't be bothered to read a passage of text then it can be read off by Opera and in turn transfered to your mp3 player for later review.



Eliza & Turing

Eliza was designed in 1966 by
Joseph Weizenbaum and was an early stab at artificial intelligence. It worked using a a form of psychology named after Carl Rogers who, in the 1940s and 1950s developed a way of communicating with his patients by developing a relationship with them and trying to empathize with their situations. The graphic on the left is a sample of his work in action. Of course, this is a very rudimentary form of intelligence and is easy to spot when the person at the other end is not a human being. In 1950 Alan Turning produced a paper called "Computing machinery and intelligence," in it he defines the test as "a human judge engages in a natural language conversation with one human and one machine, each of which try to appear human; if the judge cannot reliably tell which is which, then the machine is said to pass the test." As machines get faster and capable of more complicated processing then it is hoped that soon we will get intelligent machines. However, in the 1970s IBM claimed that they would have speech recognition cracked very soon and yet in 2007, when talking to another graduate we spoke about his placement work at Intel that year working on exactly the same thing! It is obviously not that easy.





Tuesday, 4 December 2007

Unkept promises in 1st life

Here I am again, should have been logging once a week as I solemnly promised but have let another module (Software Technologies for the Web) get the better of me. It is fast approaching the deadline and the merciless tutor just keeps changing the goalposts (well, straightening them!) -
Still it is no excuse this is the final year and the purpose of this blog is to record what is happening around me. One thing that I have really noticed on the final year is that you have to write everything down and get it transcribed and organised immediately if you are to have any chance of making future reference to it. In the two week (I'll be honest 2.5) weeks since my last entry I have skipped class and generally not applied myself to this module as well as a few other (bloody, Internetics!)

Still here's the resume of last Fridays class: It was just Ivan and myself present

Firstly we enjoyed a video from Google telling us about their company policy with regards to 20% time, if you work for google you can spend 20% of the time doing what you want. (Is that how orcut came about?)

Moving swiftly on through the music site shazam (I didn't know the Opera text browser had a built in text to speech converter) then on to data structures for social networks. It seemed amazing that whatever diagrams we did pull up they managed to miss the vital link between two people, the basis for a social network.

If you've got the time and want to blow your mind read this article about google

Finally, for this post I spent an hour with Chris watching him "play" second life. I thought it was a place for, well I don't know what but UWE have got some land there and they want to erect a building with interactive whiteboards and all, what ever next...

Sunday, 18 November 2007

Is there no end to web 2.0 applications?


Tuesdsay

We have been fortunate to get an extra hours teaching from Chris this week the subject of which was the Romanian styled oXygen engine. Our tasks was to use existing XML files and use the software generate html output. Of course we are only scratching the surface but it look like there's a lot out there for XML.


Friday

We listed to Chris talking about a pro gramme called LinkedIn. A business roladex type interface - more professional that FaceBook! It links (in his case) lots of professional contacts. We recognized that 150 is the optimum number of contacts and that split between the following categories:
  • Professionals
  • Friends
  • Hobbies
  • Neighbours
  • Family
  • Hobbies
That would give a distribution of 30 per group and through these contacts there are furthur contacts by association. See the rule of six degrees.


There are so many social networking sites out there. I looked at another called orcut It

is an online community that can help you maintain relationships with pictures and messages, and establish new ones. Orkut helps find people who share hobbies and interests, look for romantic connections or establish new business contacts. You can also create and join a wide variety of online communities to discuss current events, reconnect with old school mates or even exchange your favorite recipes. It also has a feature called scrapping which is a form of offline communication. Anyone can visit anyone else's profile (unlike Facebook)

History of Orkut


Orkut Büyükkökten a Turkish software engineer started the site as a google employee in Jan 2004. in Oct 2006 there were 37 million accounts and in August claimed 67m users


Why use orkut?

Because it is affiliated to google (is that a reason to use it?) - its free. It organises contact into "Social", "Professional" and "Personal" where you can rate these contacts as "Best Friends", "Good Friends", "Friends", "Acquaintances" and "Haven't met"

It is a busy site and has a steady 3 million hits per day as compared with Linkedin which has 400,000. Its target market was US but majority users in Brazil in Nov2007 63% Brazil and 20% India. Statistics can be found on a great site called Alexa


Friday, 9 November 2007

How time flies!

It has been nearly two weeks since I updated my blog and for this I feel ashamed...I have resolved to spend 1 hour minimum per week doing this and preferably as soon after the session as possible.

So, enough of the excuses and on with the task. My last post was 28th, two days after my presentation on social bookmarks. Fortunately my work on these has been progressing and here is the link to the wiki Of course, this is a secure page so you may not be able to reach it.

Last weeks lesson was on location mapping and using XQuery and String Analysis using regular expressions.

Unfortunately I have been interrupted by the facebook fraternity and embarrassed by an old video. Check it out if you want to have a laugh at me as a youth

Back to business then. Our mighty leader, Chris Wallace seems to have a brain the size of the planet and when questioned on how long his involvement with networking has been answers 1970. That's the year before I was born.

It seems pointless my describing in detail the technicalities of the course and much more beneficial to provide a narrative with solid links.

Sunday, 28 October 2007

Social Bookmarking

Delicious enables the user a classic multiple view of different information. What is the underlying data model for the data? Well all my entries are stored under the following path. http://del.icio.us/icutts

Links are stored under this folder according to their tags. For example I am into climbing and the links to the climbing sites I have bookmarked are at http://del.icio.us/icutts/climbing

Friday, 26 October 2007

Pipes!

Well I have constructed them in java but in my wisdom gave them up. Yahoo pipes are an ingenious method for collecting data, organizing and passing it onto other web applications. Chris showed us an amazing demonstration that took an XML file containing some of his favorite tipples and using google maps and yahoo pipes created a map containing their locations that could be embedded into an html page. This is an example of the finished product in pipes looks like this: http://pipes.yahoo.com/pipes/pipe.info?_id=PCOi9y533BGIqqBKn0artA
And the page that could be embedded within html is:
http://www.cems.uwe.ac.uk/~cjwallac/apps/pipes/mappage.html

Saturday, 13 October 2007

Delicious

Delicious is a form of social bookmarking. It allows you to store your bookmarks online and make them available to anyone ( Good thing too 'cause Firefox won't remember mine at Uni) It provides another feature called tagging These tags are one word descriptors that help you remember your bookmarks.

You need to be registered to use the service so why not sign up. Now I'm signed up and the first bookmark I make is the good old facebook. Of course I need to tag uwe and hotmail as well as the bbc, ebay, amazon etc. The power of the Internet is at the tip of my fingers. Why not use it!

Tasks for this week: Move some favourites to delicious and start using the tags. Can you open several favourites in tabbed windows firefox style?

Friday, 12 October 2007

Mashing up the Web

Yahoo pipes is a visual programming environment for web apps. http://pipes.yahoo.com/pipes/
Pipes are a method for remixing the web It is a method for mashing up the web. See Google tech talks on pipes
There are similarities with procedural programming. Pipes are like Data Flow Diagrams (DFDs) In fact they are a direct method of implementing them.
See the Wallace pipe here (update this link,Ian)
A good way to learn about these things is to start using an RSS reader. It is all part of the web2 culture. For example I could keep myself informed on any updates regarding the dissertation subject. (WOW!)
Research topics might be blogs, wikis, RSS, delicious, facebook etc.
Ians job is to give a 5 minute presentation on the delicious site and a written report on it also (why don't you create a blog post?)
what's it used for? what does it look like? how does it work? how would you build one?
Have a quick look at the student wiki at uwe

Tuesday, 9 October 2007

Transcript 5/10/7

Ian Cutts’ transcript from Chris Wallace taught class 5/10/7 started 22:45 finished 11:30

I am afraid that you'll have to have the notes for this to make any sense at all..

Background Questionnaire :

B)

Get familiar with basics of CSS

Use the class tag

This will individualise your own CSS its CSS’s power!

C)

Protocol host path file port (because it has parameters it indicates the presence of a script)

Classic call to web functions or procedure call

Passing some data to that procedure governed by the parameters set in the url line

Simplest way of making one application or browser get something done

The guts of the web is about passing data

Flat files

By using this structure you can make your program available to anyone in the world! The crux of the web

D)

XML describing

The difference between a tag like subject and the content like nose

The vocabulary is different (unique) – chris created when producing semantic dictionary

Take medical dictionary what is the nose?

The respritory system is composed of the nose

The elemental relationship between different members

XML is a tree structure

But if you draw it out it is a network

Represent graphs

RDF

There must be a set of rules which you make up otherwise someone else could use it

E)

When you develop systems you use get then you can replace with post

Get is debuggable

Post is not saveable suppose you wanted to do the same computation all the time you can save the url! Or bookmark or send it to someone else – it becomes a reusable resource – it could be a button

Post is bad for development and reuse – you can mix post and get

You can bypass the limitations of the form with GET

Currency codes are standard ISO – don’t use sterling internally

The web works with standard codes – and identifiers

If you tell me the currency is in GBP you have used a good standard identifier

Currency rates change in the backend

Lookups to tables happens in the backend

Inside convert.php rates are all to USD as that is a common so to transfer from one obscure currency to another is done by going via USD which keeps the combinations down

H)

Factorial script

Javascript enables you to read and write the current document displayed

Document.data.value.limit is a long way down the tree

Document.write writes out into the current document

Recursion states the next value as some function of the previous version

Factorial 7 = factorial 6 *7

I)

Tricky SQL statement

Trying to convert from one currency and any other

You don’t want to hold all the different rates for 10currencies and 10 rates

What you might do is to use base currencies

There is no traffic over obscure currencies

There is only one table with two different views (aliases)

We want to view the table for both conversions

Different pointers to the table

One is from and the other is to

They point to the same table

It gives two lookups on the same table – it is like a join.

The crux is that you can use a table twice – tricky SQL

The more SQL you know the better!

The world is full of relational databases


SWT

Using socks and http proxy

Concentrate on keeping it local!

GETURLInfo is different program

HEAD is an HTTP method that gets the header

You want to look ahead rather than getting the document

To get the media type

If it’s a particular type of document you might not want to get

To get out through the proxy there is a setting in the compiler

Socket should enable you to set the proxy

Not done in java but has done in php

Low level socket programming

Socket layer to parse proxy addresses

It’s a frequent task

If your going to do any server programming then you need to bypass the firewall

Not being able to do it outside is useless

Course structure

There are three parts to the course:

1 - Semester 1 requires a presentation and report on a specific technology. Include a wiki http://wiki.org/wiki.cgi?WhatIsWiki (worth 20-25% of total for year)

2 - Student is to go out and interview UWE managers about website technology. How did the site develop? Who made decisions? What is the website management technology in use? How is the website governed? (worth 20-25% of total for year)

3- Student to keep a blog for the year

http://randompony.blogspot.com/

- no need to say more as you are reading it!

Social networking

Social networking is a new buzzword on the Internet and some refer to the new applications as WEB2. Check out some of the following WEB2 apps...