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.