Monday, December 18, 2006

Technical Challenges

As part of your next assignment for this course, you are to prepare another wiki page and a poster on a selected technical topic. After our brainstorming session, we arrived at the following subjects and allocation.

Alex - Accessibility, Mobility and Browser Compatibility
Nigel- Bandwidth, Load Balancing (and performace generally)
Malik - Architecture, Deep Linking, Reuse and APIs
Dariuz - Security, Authentication, Access Control, Secure Payment
Daniel - Data storage
Denis - Web Services

The first session next term 25th January will be devoted to these presentations.

A formal specification for the second coursework will be posted later, but this work will account for 20%.

The Website Manager's Handbook

The course text for the second term of this module is 'The Website Manager's Handbook' by Shane Diffily. In preparation for this, I suggest that you familiarise yourselves with the overall structure of the book and its contents and read two sections in Chapter 3 Website Development - Step 2 Website Content and Step 3 Website Design. These cover material which should be familiar to you from other modules, for example Software Technologies for the Web and the Internet Group Project as well this module.

Over the course of the next term, you will be expected to read the whole book, so any reading you do now will be beneficial.

This is a good place to make use of your blog to record what you have read and your own views on this material. Remember that the evalaution of this blog forms part of your overall assessment.

Friday, December 08, 2006

Site Type reviews

In this session, each student presented their analysis of one type of website and their comparison of two example sites of that type.

The wiki pages for this work are:

* Alex - Video Sites
* Daniel -Government Sites
* Dariuz - Mapping Sites
* Malik - Shopping sites
* Nigel - Social Networks (pending)

Friday, December 01, 2006

Reading for 1 December 2006 - Search Engine Optimization

Reading for the class today on search engine optimization

Captology videos

B J Fogg at Stanford writes:

My Stanford students have created short videos (averaging 2 minutes) that show how Web 2.0 services persuade people and change their behaviors. The videos are interesting -- and sometimes funny. I'm inviting you to help evaluate some of these videos before December 4th. You can rate one video or twenty. The choice is yours. The videos with the highest rating will be featured in the Captology Film Festival on December 7th at Stanford. You're invited to join us at that event. For more info, see http://tinyurl.com/yap7fe .
To watch and rate the videos, go to:
http://captology.tv/reviewvideos

Have a look - they are very interesting

Coursework 1 formal spec

Here is the formal specification for this coursework

Monday, November 27, 2006

CEMS wiki

A page has been created on the CEMS wiki ready for your entries. You must login to create a page.

Friday, November 24, 2006

Shazam

Shazam is one of the few sites which makes my jaw drop. We've got used to instant responses to searches on Google but somehow, the ability to recognise any one of 3.2 million tracks from a noisy 20 second sample seems amazing. This is what Shazam does: when you hear a track you don't recognise, dial 2580 on your mobile; when Shazam answers, direct your phone to the sound source; Shazam hangs up after 20 seconds and about 30 seconds later it will text you back with the name of the Album and track [and take 50p from your account!]

Here are a couple of tracks to play to it if you can't think of your own:
and some links to papers and presentations on the technology behind Shazam:

Friday, November 17, 2006

Coursework 1 - topics

Topics selected by group members

  • Alex - Video sites
  • Daniel - Corporate
  • Dariuz - Mapping sites
  • Dennis - Auction sites
  • Malik - Shopping sites
  • Nigel - Social Networks

Saturday, November 11, 2006

Video on Web 2.0

We did not get time and could not get the audio visual systems to work in class, but this video is short - around ten minutes - and its really interesting. Watch it.

Tuesday, November 07, 2006

Week 7

Please read this paper by Tim O'Reilly on Web 2.0 for Friday when we will discuss it.

I've prepared an agenda for the session.

I've also prepared some slides on digital identifiers.

I'm also going to hand out some more reading for next week.

Coursework 1 - Draft

Coursework 1 - Draft

Due date 7th December 2006
Overall Weighting 25%

Subject
Each student is to select a specific type of web site which is to be agreed with the tutor. For this assignment, the type of a web site is based on the main purpose of the site. For example, here are some typically web site types with some prime examples.
  • Shopping e.g. Amazon
  • Auction : E-Bay
  • Personal Multimedia : Flickr, YouTube
  • Corporate information : BBC
  • Travel Planning : TravelLine
  • Mapping : Google Maps
We will exclude blogging, wikis, social bookmarks, podcasts and RSS readers since these have already been explored in the first presentation. Each student will choose a different web site type and there will be an attempt to get a spread of type of application types.

Research Questions

Students are required to research the site type, using one well know example site and one lesser known example

The following questions are indicative of the areas of interest but not exhaustive:
  • How did this type of site start? What was the first? What is the most successful now? How has this type of site evolved? What are the typical funding models?
  • Who are the customers? Are there common stylistic features in the user interface? What additional facilities do sites of this type typically support?
  • What technology is used to support this kind of site? What is the architecture? What are the specific challenges of this type of site and how are they handled?
Deliverables
  1. A wikipedia-style wiki entry of around 2000 words, with diagrams and links as appropriate. The aim of the entry is to provide an in-depth study of the site type, its use, development and construction. The entry is aimed at an audience of second year students with a general understanding of basic web architecture. Links should be provided to resources, such as Wikipedia, whose quality the student has assessed where additional supporting material is required. The entry is to be provided in both paper and as an entry in the CEMS wikipedia. This wiki will be used as a resource for other students.(80 %)
  2. A 10 minute presentation and discussion to the group on the key issues faced by the developers of this site. (20%)

Friday, November 03, 2006

Web tools

In the tutorial, various tools for checking and evaluating web applications were mentioned. Here are some relevant resources:

Hosts and IP addresses
Site and Page data

Validators and checkers
Test Suites

Understanding the Browser

The Browser is a core component in a web application. Every web application for users has this component, but its uniquely not under the control of the web developer. Understanding the capabilities of the different Browsers and how to configure them is a core skill.

We will explore the browser territory by looking at 3 widely available browsers IE6, Firefox and Opera.

Exercise
In pairs, select a pair of browsers. Work together through the complete set of browser controls, identifying similarities and differences. Then look at a set of web pages and note any differences in the way each browser handles the page. Report back on your findings.

Resources

Firefox
IE6
IE7 (not available in CEMS)

Opera

Thursday, November 02, 2006

ITMB lecture Nov 7th 16.45 - 18.00 in 1N5

The third lecture in this sequence is to be given by Amanda Chessell of IBM. Mandy is the joint holder of some 15 patents and active in the professional community.

"Mandy Chessell, FREng CEng FBCS has worked for IBM since 1987. She is a Senior Technical Staff Member (STSM), Master Inventor and member of the IBM Academy of Technology. Currently, she is the chief architect for IBM's Enterprise Master Data Solutions."

IBM's position on patents is an interesting topic. According to their web site, IBM for the 13th consecutive year have been awarded more patents than any other company (2,974 in 2005). It has a portfolio of some 23,000 patents from which it earnt some $1 billion from licenses on these patents - but spent $7 billion on reseach (and an estimated $10,000 onlegal fees per patent) . Some are released for general use since IBM recogises the need for open systems. However it also owns some extemely broad patents and is currently agressively pursuing Amazon Some see this as Amazon's come-upance since Amazon itself has very agressive over its one-click patent. Others see this as the exposure of the problem of software patenting generally. Taken at face value, it would appear that IBM patents apply to every E-Commerce site in the world - for example - US 7,072,849 - Presenting Advertising in an Interactive Service.

Week 6

We had two more presentations this week.

  • Dariuz on RSS
  • Denis on Folksonomy


This will be followed by a group discussion on the coursework and agreement on some core questions to be addressed in the wiki entry.

Finally a workshop on Browser capabilities.

Week 5 - Presentations

This week the sessions were led by students:

  • Daniel on Podcasts
  • Alex on Wikis
  • Malik on IRC and IM
  • Nigel on Social Bookmarks
All presentations were entertaining and were followed by lively discussion.

Saturday, October 21, 2006

Character Pronunciation

Pronunciation Guide

One of the pronunciations for . (PERIOD or dot) is 'put' from Victor Borge's Phonetic Pronunciation. Now we have to pronounce all these odd characters whenever we explain what to type to help someone on the phone or when we read out some code in a lecture or tutorial. Finding this guide reminded me that different people pronounce these characters differently - I love all the different names for # especially pig-pen!


Friday, October 20, 2006

Week 4

I presented a lecture showing the development of a simple calculator using PHP for server programming. slides. Several versions of the application are developed with increasing complexity, finishing with a version that can be invoked by an SMS message.

An index page for the calculator. I will add links to the code itself.


This application raises the question of where the calculation should be performed - on the server or on the client. Add your views on this issue as comments please.

I also handed a further lecture on web application architecture( slides )
which you should read through please.




ITMB Lecture 24th October 1N5 16.45 - 18.00

"10 easy steps to turn a good idea into a global technology business"

A lecture by Paul Callaghan who founded www.leighton.com

Student-led Seminar

Student-led Seminars will take place next week (27th October) from 3.00 to 5.00 . Deliverables will be:
  • Entries in you blog
  • A short handout on tehe subject (perhaps selected blog entries)
  • A 10 minute presentation followed by questions form staff and students
The data projector and podium computer are available for use.

Thursday, October 19, 2006

"The Website Manager's Handbook"

This a book recently written by Shane Diffily from Dublin. It covers a lot of the syllabus for this module, especially that concerned with the setup, maintenance and management of a website.

This book is self-published and printed on-demand by Lulu (www.lulu.com) in Spain for European orders. [an interesting web application in itself.] I would like to propose adopting this book as a module text. I plan to order and pay for a class set to reduced the postage cost. I need your agreement to purchase a copy. The price will be about £16. Print quality is not brillant but for a 400 page book covering a large part of this module's syllabus, I think its good value.

Saturday, October 14, 2006

Errors in binary classification

"There are two ways to be fooled. One is to believe what isn’t true; the other is to refuse to believe what is true." - Søren Kierkegaard (1813-55)

Any classification procedure may make mistakes. In a binary classification, two kinds of errors may be distinguished. These have different terms in different disciplines but the underlyig concept is the same;
In all cases the problem is to develop a test, procedure or search which will distinguish between cases where a proposition or hypothesis is true or false:






TrueFalse
PositiveTrue Positive (TP)
False Positive -Type 1 Error (FP)
NegativeFalse Negative : Type 2 error (FN)
True Negative (TN)


Examples of such propositions might be:
  • The person has malaria
  • The email is spam
  • The word is spelt correctly
  • The article is relevant
  • The accused is guilty
  • The traveller is a terrorist - FIA watchlist
  • The student is of honours quality
Various measures are used to define the quality of the procedure:

  • Efficiency = (FP + FN) / (TP + FP + TN + FN) = FP + FN/ All
  • Precision = TP/ (TP + FP) = TP / Positives
  • Recall = TP / (TP + FN) = TP / True
These two errors are usually in conflict - we can improve the procedure to decease the risk of False Negatives but that will probably increase the number of False Positives. For example, in screening procedures for terrorists, the aim would be to reduce the number of false negative - (terrorists getting in) but that will create many false positives (innocent travellers picked out as terrorists).

The costs of these two types of errors will be seen differently by different stakeholders in a system, leading to inherent conflict in systems design.

Friday, October 13, 2006

Week 3

Monday, October 09, 2006

Guru Lecture on Information Architecture

On Tuesday 10th Oct from 16:45 to 18:00 in 1N5 there will be a special lecture from an IBM Information Architect. This lecture will of particular relevance to you so please make every effort to attend.

http://www.cems.uwe.ac.uk/exist/event.xql?parent=ITMB%20GURU%20Lecture&id=1

Later:

In fact Toby was an IT Architect - a systems engineer of old - I'll post links to the slides on FOLD

Sunday, October 08, 2006

Mapping the Web Application territory

We discussed a few possible dimensions to use in researching the territory of web applications.

  • by application function - the main function of the site e.g. blog, wiki, news aggregator, auction, search engine, sales ...
  • by application architecture - the way the work of the application is divided between client and server - desktop (like GoogleEarth), local server based , hosted application (user-data hosted on central server), RIA (browser providing desktop-like behaviour), ....
  • by implementation tools used - for scripting -Javascript, PHP, Ruby, J2EE ... - for persistance - RDBMS, flat files, XML
  • by the recurrent problems which most applications must solve - reusing the best solutions - e.g. authentication, access control, data transformation, security, navigability, findability, scaleability ....

Skills in using a search engine

Developing search skills - skill in formulating an efficient query - one which makes fewer false positives (retrieving irrelevant links) and fewer false negatives (missing relevant links)

see Errors in Discrimination

  • use the boolean operators - and or - ( for not)
  • use ~ for synonyms
  • use quote to search for a whole phrase
  • use all your languages (if only!)
  • dont forget about cached pages when pages not found
  • advanced search - e.g for file types
  • define: to search for term definitions


Resources

Research tools

We discussed a few of the research tools which would be useful for your individual research topic - some are obvious, a few less so:
  • Encyclopedia
    • wikipedia - nearly always a useful starting point
    • Howstuffworks - often good explanations of technology, spoilt by advertising
  • Search engine
    • google - you may have other prefered search engines but this is still the best for me
  • Search peer-reviewed papers on the web
  • Online academic journals are searchable and available via the library - see in particular:
    • the ACM Digital Library
    • IEEE Xplore
    • Springer Link
  • Online industry journals
  • Usage statistics from alaxa - alaxaradar is a useful mashup of alexa data showing trends
  • podcasts and vod casts
  • comparison sites - there is often a site which gathers technical data on the available software of a given kind - e.g. wikimatrix for wikis
  • developer sites
  • Conferences - commercial - XTech, ...
  • your own personal experience of use
  • site discussion boards and blogs
  • standards documents

Thursday, October 05, 2006

Web Applications

This week I would like to explore the issue of the different kinds of internet applications. Some key terms are

These describe the architecture of the application which is independant of the application function (to provide a wiki, a blog, an e-commerce site...)

Here is one best-of listing from 2005.

Just to start you thinking, here is a Flickr-GoogleEarth mashup which I built using XQuery. This not the best platform to choose but its fast to develop and good for prototyping at least. Try my Flickr account: 57414735@N00 . There are many ways this mashup could be improved.

Resource links

From time to time both Mark and I discover web resources which we think will be useful. Rather than editing a blog entry each time, we will use the social bookmarking site del.icio.us.

Mark's link is http://del.icio.us/curlygreen/UFIEP6-20-3

Mine is http://del.icio.us/perdika/iad

Tuesday, October 03, 2006

Quiz answers

I've annotated the quiz we looked at on Friday with some answers and pointers. Please read through this - I spotted a couple of mistakes when I went through it. In some cases the code is has been turned into working examples.

Quiz answers.

Individual Reading Review Blogs

Monday, October 02, 2006

Terms used in the class on Friday 30th September 2006

Here are some of the terms we discussed in the class on Friday - follow the links to Wikipedia to learn more. Some basic terms - everyone needs to know these:

Then here are some more advanced terms for people who already know the easy ones above:

There are entries for a lot of these terms in French as well.



Mark.

Learning Java - free resources on the web

Here are some good resources to start to learn Java:

Mark.

Thursday, September 28, 2006

Mini-research topic

The essence of many web applications is to enable communication between users. An number of different approaches have been developed and continue to be developed, each with their own styles of communication. Part of the first assignment will require you to write an individual report on one of the ways in which the web supports communication.

Each student will be allocated a different topic which they will research and then lead a short discussion on that topic.

The topics I have in mind include

- Blogs
- Wikis - Alex
- RSS feeds - Darius
- Podcasts - Daniel
- Chatroom (IRC and IM) - Malik
- Social bookmarks - Nigel
- Folksonomies - Denis



First we need to work out as a group what we would want to know about each of these technologies so that we are all working to the same agenda. we will do this in class and post the results here. We will also share ideas about how to research these topics.

Creating a Blog

Your first task is to create a blog to record your reading review. This may be a public blog, or you may choose to restrict read access to just the students and tutors on this module.

Choosing a blog host or software and investigating the way blogs are used may be a mini-research topic for one of the students. However, I suggest you simply use Google's Blogger as the host for your blog, register an account and set up the blog. This first session will provide an opportunity to do this.

1. Create an account on http://www.blogger.com

2. Create a blog - you can have several blogs on the same account

3. Choose an appropriate template

4. Set the permissions you require

5. Enter some basic identification for the profile

6. Create your first entry.

Later you may want to
change the template
edit the template - you have to do this to change the menu on the side of the page

When you have created the blog, email me with the link to the blog.

Reading Review

UIFEP6-20-3: Internet Application Development.
Coursework 3 - Individual Reading Review
Due date: 19th April 2007 -- DRAFT specification
Rationale
The ability to study a topic of your own choice, guided by tutors is necessary training for your career in Information Technology. This study will involve reading of various material throughout the module. Some of this will naturally be web-based material, others will be readings form text books and journals. Keeping a diary of the readings you have made, your summary of the main points of the reading and your views on them is a good and useful practice.

On this Internet Application Development module, an obvious means of keeping this diary is to use a blog. This has the added advantage of being a public area so that other students and tutors can see your work and comment on it - constructively.

Although this part of the coursework only amounts to 10% of the coursework mark (5% overall) and is not due until after Easter, you are required to work on this review throughout the year.
Specification
You are to keep an online diary of your reading and discussion about those readings in a public place such as a blog. This blog will be read during the year by your tutor to provide feedback on the range of subjects covered and the quality of your discussion of those subjects. You are also encouraged to comment on the work of your fellow students in a constructive manner.

You may use any software for this purpose. The blog will be established at the beginning of the year and a link to it made available to the students and tutors on the module. You may choose to restrict access to this group or allow public access.

The language of the blog is English. For students whose first language is not English, part of the feedback which the tutors will provide during the year will be on grammar and writing style.

Assessment
The reading review will be assessed on the range of readings discussed, the time span they cover and the quality of the discussion. However the main point of this part of the coursework is to develop a disciplined approach to reading and study. Tutors and other students will provide feedback on your writing as part of their and your learning process.

Web 2.0 Wiki

This wiki has been created as a resource centre for this module.

http://cems.stikipad.com/web2

Wednesday, September 27, 2006

The Programme Blog

The blog for the Internet Application programme is here.

Monday, September 18, 2006

Welcome

This is the blog to keep students on the Internet Applications Development Module in CEMS updated with news about the module. Myself, Mark Butler and Dan Dixon are the main authors but all students registered on the module will also be authors and commenters.

You are advised to add the RSS feed to this module to your RSS aggregator.