Name:Claire O'Rourke
Student Number: 10955742
Date: April 13, 2010
Macro Analysis
XHTML, a client-side technology, is directly translated to mean “Extensible Hypertext Markup Language”. XHTML is an open language, that is, anyone can use it to code web documents. XHTML is compatible with HTML 4.01 and became a World Wide Web Consortium recommendation in 2000 (w3schools, 2010). The World Wide Web is commonly understood to be a “system of interlinked hypertext documents contained on the Internet” and pages written in HTML can be parsed (analysed) by a software application known as a web browser (Wikipedia, 2010).
XML describes data, while HTML displays data, so the combination of HTML with stricter XML syntax results in “well-formed documents”, which means they can be recognised and supported by most browsers (w3schools, 2010).
The common understanding is that there has been conflict between those promoting HTML and XHTML, with detractors of HTML citing problems such as the lack of support for XHTML in Internet Explorer (Wikipedia, 2010) – a problem as 34.9 per cent of web users use IE as of March 2010 (w3schools, 2010). However, the soon to be released Internet Explorer 9 has added support for XHTML (Hachamovitch, Dean, 2010), which should rectify this criticism. XHTML and HTML 5 are in development with the aim to incrementally introduce the new languages in order for more comfortable adoption (Berners-Lee, 2006).
Micro Analysis
XHTML will determine the overall structure of my site, it will be the foundation of each web page I design. It is suitable for this task as it is recognised by most browsers (w3schools, 2010) including those on mobile devices – an important consideration for my project as my client wants the site to be accessible on the widest possible range of devices. I will need to test my site in Internet Explorer to check it is rendering according to my design.
XHTML It is a good match for my skills and needs as I already have a working knowledge of HTML, but my knowledge is elementary and previous pages were achieved by creating a number of “hacks”, which are not ideal as using non-standard (or “valid”) code risks browsers not being able to recognise it.
My skills will be extended because structuring a document in a way that it can be recognised and navigated through if style sheets are not recognised by older versions and/or rarer browsers – this will be a particular challenge for me and will fulfil my learning needs. I need to know the rules before I can “innovate and break them, or follow them to find out how adherence can strengthen [my] work” (Holzschlag, p20, 2002).
Macro Analysis
CSS stands for Cascading Style Sheets, a “standardised syntax” that gives developers control of the look of web pages (Schmitt, preface, 2009). This client-side technology was created by the W3 Consortium to solve the problem of developers needing to define the style of every page within each page, which was problematic and time consuming for developers, particularly on larger websites (w3schools, 2010). CSS styles are often stored in separate files to the HTML document so changes to style of a site can be made in one file (w3schools, 2010).
CSS1 was published as a W3C recommendation in 1996 (w3.org, 1996) and CSS2 became a recommendation two years later and the latest revision to remove errors was in 2009 (w3.org, 2009). However, it was only with the rise of use of Internet Explorer 8 was a driver to the widespread use of CSS2, and most newer browsers support the latest versions as they are updated (Schmitt, preface, 2009). CSS3 is currently under development (w3.org, 2010).
Browser style specified by the user overrides CSS, so it is important that the HTML elements in a web page are constructed logically so the page can be understood. This is also important when considering accessibility – web pages should be able to be read by a screen reader in a fashion that ensures the document is logical and not loaded up with repetitive, non-essential content at the top of the page.
The common view is that CSS is a better system for styling elements rather than layout, which means some browsers will render CSS in different ways (Wikipedia, 2010) and this needs to be taken into account by developers.
Micro Analysis
The ability to change styles will be useful for my project for a number of reasons. First, my client is not yet set on colours and styles for the site, so it will be much easier to change the overall theme of the site from one file.
Also as there are a number of documents on the site that visitors may want to print, I intend to develop a second style sheet to allow for a print-friendly version of pages, one that takes out a lot of the colour and decorative elements, but retains key design elements (such as the logo and header font) and emphasises my client’s contact details.
Macro Analysis
JavaScript is an open source programming language that works as a scripting language in a “host” environment (unlike the host, JavaScript does not communicate with the outside world) (Willison, 2010). The “host” is most commonly a web browser but can also be found elsewhere including Adobe Acrobat, Photoshop (Willison, 2010).
The client-side version of JavaScript allows a web page to include executable content, that is, programs that “interact with the user, control the browser, and dynamically create HTML content” (Flanagan, p1, 2006).
JavaScript was invented by Netscape developer Brendan Eich and was first adopted in the browser Netscape Navigator 2.0, and in Internet Explorer 3.0 and in all subsequent versions of both popular browsers (Emca, 2009, vii). The language is governed by the European Computer Manufacturer’s Association Standard, first recognised by the International Standards Organisation in 1998. The official name of the open-source language is EMCAScript, and should not be confused with Java, a high-level programming language developed by Sun Microsystems (Flanagan, p2, 2006).
The third edition of the Ecma standard, adopted in 1999 and published by the ISO 2002 has seen the language common among all web browsers and the fifth edition of the language adopted in 2009 recognises new interpretations of the language by browsers and includes features such as “a strict mode that provides enhanced error checking and program security” (Emca, 2009, vii).
Micro Analysis
I intend to add dynamic features to my site with JavaScript, such as menu items where I want to change the content of the item on mouse rollover. This is a common task that can be achieved through use of the language as it can replace HTML content as a reaction to an activity conducted by the user (w3schools, 2010)
I also wish to use JavaScript for a form and to validate email addresses that are entered into the form by the user, to prevent spam email landing in my client’s inbox. JavaScript is the most appropriate technology for this task as it will perform the task without any server use, saving processing requirements (w3schools, 2010).
The common view is that JavaScript is a technology that can achieve the above functions in a straightforward manner and as it satisfies my desire to learn basic functions of this technology I will use it for the above features of my project site.
I will also use JavaScript to embed a Google map in my site, using the Google Maps Application Programming Interface (or API) (Google Code, 2010). Google Maps is free for non-commercial use, so I will further investigate whether my client’s small business can use Google Maps for the site.
Macro Analysis
PHP stands for PHP: Hypertext Preprocessor and is an open-source server-side scripting language created by Rasmus Lerdorf in 1995 (Wikipedia, 2010). PHP supports a large number of databases including MySQL, Informix, Oracle, Sybase, Solid, PostgreSQL, Generic ODBC (w3schools, 2010). The PHP Group operates as the informal standardard for PHP as there is no formal standard as yet (Wikipedia, 2010).
PHP can be used for server-side scripting, that is, "anything any other CGI program can do, such as collect form data, generate dynamic page content, or send and receive cookies", but can also be used for command-line scripting and writing desktop applications (PHP, 2010). PHP is commonly understood to be the most popular Apache HTTP server module (Wikipedia, 2010) and more than "20 million Internet domains had web services hosted on servers with PHP installed" (Wikipedia, 2010, PHP, 2007)
Micro Analysis
I will use PHP to create a date-stamp function for my site that will update every time a page in the site is refreshed, and will ensure my web server has PHP and MySQL installed so that I am able to acheive this. PHP will be a minor feature of my site.
Macro/Micro Analysis
Longtail JW Player for Flash is an open-source, client side technology that supports playback of any media content supported by Adobe Flash players (Longtail Video, 2010). The media files are uploaded to the server then the player code is embedded into the HTML document. Clear information and reviews of the player and others such as Flowplayer and Wimpy require further investigation. I intend to use the player to embed video into the main page of the website, and will experiment with variables on the player skins to allow the look of the player to fit the overall design of the site.
Macro/Micro Analysis
Issuu, a client-side technology allows for a visually-appealing way to view PDF files from a website. The developer uploads the document(s) to the Issuu website, then embeds either a link or a widget on the web page. When the user clicks on the link for a PDF it is viewed on a dedicated webpage or in the originating site if using the widget. (Schonfeld, 2008) The technology has received favourable reviews compared to other PDF viewers such as Scribd and DocStoc. I am attracted to using Issuu as it appears to present documents in a more professional manner, which is important for the website I am developing - users need to leave the site with an impression that my client is a skilled professional and the site will assist with that if incorporating features such as Issuu.
Macro/Micro Analysis
I will be brief on this subject, as I will only insert a calendar if there is time in the scope of my project’s execution. Google calendar can be inserted after my client creates an account and determines whether she wants event updates included in the site, which will in turn determine the precise technology I employ (Google Code, 2010).
Macro/Micro Analysis
I will be brief on this subject, however I note I intend to use JPEG format for compressing photographic images for inclusion on the site. JPEG reduces file size of images by removing detail that your eyes would be unlikely to notice (some colour and some fine detail) (www.jpeg.org, 2010) so that images on your web pages will be retrieved quickly and with less processing strain on the server.
However I intend to use TIFF format for the site logo, which is a line drawing. The reason for this is that JPEG compression is generally understood to be less suitable for line drawings or other graphics that require high contrast (Wikipedia, 2010).
Berners-Lee, T. 2006 Reinventing HTML, viewed 8 April 2010, http://dig.csail.mit.edu/breadcrumbs/node/166
Boss, B. 2010, Cascading Style Sheets, Current Work, W3 Consortium, viewed 8 April 2010, http://www.w3.org/Style/CSS/current-work#table
Flanagan, D. 2006, JavaScript: The Definitive Guide, 5th Edition, O'Reilly, Sebastopol, CA
Google Code, 2010, Google Maps API, viewed 8 April 2010, http://code.google.com/apis/maps/
Google Code, 2010, Google Calendar APIs and Tools, viewed 8 April 2010, http://code.google.com/apis/calendar/
Hachamovitch, D. 2010 HTML5, Hardware Accelerated: First IE9 Platform Preview Available for Developers, viewed 8 April 2010, http://blogs.msdn.com/ie/archive/2010/03/16/html5-hardware-accelerated-first-ie9-platform-preview-available-for-developers.aspx
Holzschlag, Molly E. 2002, "Raise your standards: Knowing the rules gives you freedom to break them and the skills to make your content more powerful (Design Integrated Design)", in Web techniques, vol 7, no. 2.
Issuu, 2010 Issuu, viewed 11 April 2010, http://issuu.com/
Joint Photographic Experts Group, 2010, FAQ: What is JPEG 2000?, viewed 8 April 2010, http://www.jpeg.org/faq.phtml?action=show_answer&question_id=q3d5bc0701c9b6
Joint Photographic Experts Group, 2010, FAQ: What is JPEG encoding?, viewed 8 April 2010, http://www.jpeg.org/faq.phtml?action=show_answer&question_id=q402c46de47d16
Longtail Video, 2010, FAQ: JW Players, viewed 8 April 2010, http://www.longtailvideo.com/support/faq
PHP, 2010, What can PHP do?, viewed 11 April 2010, http://au.php.net/manual/en/intro-whatcando.php
PHP, 2010, Usage Stats for April 2007, viewed 11 April 2010, http://www.php.net/usage.php
Schmitt, C. 2009, CSS Cookbook, 3rd Edition, O'Reilly, viewed 8 April 2010, http://my.safaribooksonline.com/9781449377250
Schonfeld, E. 2008, "Finally, a Web-based PDF Viewer That Does Not Suck (Issuu)", in Techcrunch, viewed 11 April 2010, http://techcrunch.com/2008/02/06/finally-a-web-based-pdf-viewer-that-does-not-suck-issuu/
W3 Consortium, 2008, Cascading Style Sheets, level 1 W3C Recommendation 17 Dec 1996, revised 11 Apr 2008, W3 Consortium, viewed 8 April 2010, http://www.w3.org/TR/CSS1/
W3 Consortium, 2009, Cascading Style Sheets Level 2 Revision 1 (CSS 2.1) Specification W3C Candidate Recommendation 08 September 2009, W3 Consortium, viewed 8 April 2010, http://www.w3.org/TR/CSS21/
W3 Schools, 2010, Browser Statistics, W3 Schools, viewed 11 April 2010, http://www.w3schools.com/browsers/browsers_stats.asp
W3 Schools, 2010, XHTML Introduction, W3 Schools, viewed 8 April 2010, http://www.w3schools.com/xhtml/xhtml_intro.asp
W3 Schools, 2010, W3C XHTML Activities, W3 Schools, viewed 8 April 2010, http://www.w3schools.com/w3c/w3c_xhtml.asp
W3 Schools, 2010, XHTML - Why?, W3 Schools, viewed 8 April 2010, http://www.w3schools.com/xhtml/xhtml_why.asp
W3 Schools, 2010, JavaScript Introduction, W3 Schools, viewed 8 April 2010, http://www.w3schools.com/js/js_intro.asp
W3 Schools, 2010, CSS Introduction, W3 Schools, viewed 8 April 2010, http://www.w3schools.com/css/css_intro.asp
W3 Schools, 2010, CSS Introduction, W3 Schools, viewed 8 April 2010, http://www.w3schools.com/css/css_intro.asp
W3 Schools, 2010, PHP Introduction, W3 Schools, viewed 11 April 2010, http://www.w3schools.com/php/php_intro.asp
Wikipedia, 2010, Cascading Style Sheets, viewed 8 April 2010, http://en.wikipedia.org/wiki/Cascading_Style_Sheets
Wikipedia, 2010, JPEG, viewed 8 April 2010, http://en.wikipedia.org/wiki/JPEG
Wikipedia, 2010, PHP, viewed 11 April 2010, http://en.wikipedia.org/wiki/PHP
Wikipedia, 2010, World Wide Web, viewed 8 April 2010, http://en.wikipedia.org/wiki/World_Wide_Web
Willison, S. 2006, "A re-introduction to JavaScript, Mozilla Developer Center, viewed 8 April 2010, https://developer.mozilla.org/en/A_re-introduction_to_JavaScript