Thursday, June 11, 2009

Exercise 10: Posting shenanigans

I just don't understand blogger sometimes. I had published the blog (Answers 1-6) and the tables were all over the shop. I have just done a cut and paste of the same code, and republished. Amazingly the result looks like it was supposed to. There could be something in that I used Windows live writer in this instance to re-publish, whereas I used blogger to post originally. Unfortunately, if you had been following my blog, then you would have known that i experienced the exact opposite scenario earlier on in the journey. Those blogs (Karen posted comments) may no longer exist, as it was very much a learning curve in the early days, and reorganisation of the material was in order.

Wednesday, June 10, 2009

Exercise 11: Answer


  1. Conduct research on the Internet to find out what tools can be used to parse an XML document and ensure that the document is well formed and valid.

    The W3C website links to the following •parsers (both proprietary and open source)

    This provides links to sites for

    Not all of these tools will actually validate the document. It is a case of choosing the tool that is most relevant to the task you are using it for.

  2. XML schema is a forthcoming development of the technology. Visit the W3C website and search for information on schema. What are the benefits of adopting a schema standardized for a business sector?

    XML Schema is a language for providing and restricting the structure and content of elements contained within XML documents (Wikipedia)
    Adopting a schema standardized for a business sector will reduce the impacts caused by the prevalence of competing standards. Additionally it will reduce the burdens imposed on business by having to cater for multiple standards in their publication and/or consumption of web services.(zur Muehlen et al., 2005, p. 28)
  3. What are DOMs and why were they developed?

    (Wikipedia)DOM (Document Object Model) is an interface-oriented Application Programming Interface that allows for navigation of the entire document as if it were a tree of "Node" objects representing the document's contents. A DOM document can be created by a parser, or can be generated manually by users (with limitations).
    (Wikipedia)The Document Object Model (DOM) is a cross-platform and language-independent convention for representing and interacting with objects in HTML, XHTML and XML documents.
  4. Why are some developers using SAX instead of DOM for document processing?

    (Wikipedia)SAX is a lexical, event-driven interface in which a document is read serially and its contents are reported as "callbacks" to various methods on a handler object of the user's design. SAX is fast and efficient to implement, but difficult to use for extracting information at random from the XML, since it tends to burden the application author with keeping track of what part of the document is being processed. It is better suited to situations in which certain types of information are always handled the same way, no matter where they occur in the document.
    (Wikipedia)DOM is likely to be best suited for applications where the document must be accessed repeatedly or out of sequence order. If the application is strictly sequential and one-pass, the SAX model is likely to be faster and use less memory.
  5. SMIL is an application of XML. What is the purpose of this technology? Where does it apply?

    (W3C)The Synchronized Multimedia Integration Language (SMIL, pronounced "smile") enables simple authoring of interactive audiovisual presentations. SMIL is typically used for "rich media"/multimedia presentations which integrate streaming audio and video with images, text or any other media type.
    (Streaming Media World)SMIL was created specifically to solve the problems of coordinating the display of a variety of media (multimedia) on Web sites. By using a single time line for all of the media on a page their display can be properly time coordinated and synchronized.
  6. The current recommendation of W3C is to use XHTML as an alternative to HTML.

    It would be nice to see the source of this recommendation. I cant say that I disagree with the sentiment.
  7. Do you think adopting XHTML is a wise move?
    The simple answer is YES.
    Since HTML's inception, there has been rapid invention of new elements for use within HTML (as a standard) and for adapting HTML to vertical, highly specialized, markets. This plethora of new elements has led to interoperability problems for documents across different platforms.(W3C)
    XHTML is a family of current and future document types and modules that reproduce, subset, and extend HTML 4.
    The XHTML family is the next step in the evolution of the Internet. By migrating to XHTML today, content developers can enter the XML world with all of its attendant benefits, while still remaining confident in their content's backward and future compatibility.(W3C)

References

Streaming Media World. SMIL. Retrieved 10 June 2009, from http://smw.internet.com/smil/smilhome.html
W3C. XHTML™ 1.0 The Extensible HyperText Markup Language (Second Edition). Retrieved 10 June 2009, from http://www.w3.org/TR/xhtml1/
W3C. Synchronized Multimedia. Retrieved 10 June 2009, from http://www.w3.org/AudioVideo/
Wikipedia. Document Object Model. Retrieved 10 June 2009, from http://en.wikipedia.org/wiki/Document_Object_Model
Wikipedia. Semantic Web. Retrieved 10 June 2009, from http://en.wikipedia.org/wiki/Semantic_Web
Wikipedia. XML. Retrieved 10 June 2009, from http://en.wikipedia.org/wiki/XML_parser
zur Muehlen, M., Nickerson, J. V., & Swenson, K. D. (2005). Developing web services choreography standards—the case of REST vs. SOAP. Decision Support Systems, 40(1), 9-29.

Sunday, June 7, 2009

Exercise 10:Answers 7-12

  1. What are the differences between HTML and DHTML?

    DHTML: Dynamic HTML. An extension of HTML that enables, among other things, the inclusion of small animations and dynamic menus in Web pages. DHTML code makes use of style sheets and JavaScript.

    DHTML sites are dynamic in nature. DHTML uses client side scripting to change variables in the presentation which affects the look and function of an otherwise static page. DHTML characteristics are the functions while a page is viewed, rather than generating a unique page with each page load (a dynamic website).

    On the other hand, HTML is static. HTML sites relies solely upon client-side technologies. This means the pages of the site do not require any special processing from the server side before they go to the browser. In other words, the pages are always the same for all visitors - static. HTML pages have no dynamic content, as in the examples above

  2. Why was XHTML developed? Do you think this addresses most of the HTML weaknesses?
    According to (W3C)The Most Important Differences:
    • XHTML elements must be properly nested
    • XHTML elements must always be closed
    • XHTML elements must be in lowercase
    • XHTML documents must have one root element
  3. What are the similarities between JavaScript, VBScript and ZOPE’s DTML?
    DTML is a server side scripting language, like SSI, PHP, ASP, and JSP. This means that DTML commands are executed by Zope at the server, and the result of that execution is sent to your web browser. By contrast, client-side scripting languages like Javascript are not processed by the server, but are rather sent to and executed by your web browser. (Zope)
  4. What are the similarities and differences between ASP, JSP and PHP? (WebHostingLogic)
    • PHP (Hypertext Preprocessor)an open source, server-side, HTML embedded scripting language used to create dynamic Web pages.
    • ASP (Active Server Pages) is a Microsoft promoted technology to enable HTML pages to be dynamic and interactive by embedding scripts, either VB Script or Jscript
    • JSP (Java Server Pages) are web-pages that include scripts that can modify a page before sending it to the user. Similar to ASP pages, but produced by Sun Microsystems

    (BlogPost)
  5. What are the differences between the various approaches to scripting?

    There are two ways of scripting viz. one on the client side and the other on the server side. PHP and ASP code are server side scripting technologies. While JSP supports client side scripting.

    On Server side scripting, when a user in a website request for any services, the request goes to the server of the website and the appropriate output is displayed after the request is processed from the remote server.

    In case of client side scripting, the request is executed on the client side and the appropriate result is show with the help of script. VBScript is used for this purpose.

    (BlogPost)
  6. List some of the shareware or freely available tools for web design. In addition to a good HTML editor, what utilities could be very handy to the developer?
  7. A search on google for "free web design tools" returned 8030 results. Top of the list is www.webweaver.nu. This provides links to clipart and graphics, online tools, web design resources and tips and tricks.

    There are lots of other tools available, and it would once again come down to getting the right tool for the users requirements.

    What the users requirements are for developing a web site will determine what tools they need. Some basic questions to answer would be:

    • Is the site going to be dynamic or static?
    • Will a database be required?
    • Who are the intended audience?
    • How will the site be hosted?

    Utilities useful to a developer include css editor, icon and graphical design tools, and web page template designers. Notepad is always handy.

References
BlogPost. Retrieved 15 June 2009, From http://www.blogger.com/feeds/4951080038221931058/posts/default
WebHostingLogic, Inc. COMPARISON OF PHP, JSP AND ASP. Retrieved 15 June 2009, from https://www.webhostinglogic.com/support/support-topics/php-jsp-asp.html
WikiAnswers.com. What is the difference between HTML and DHTML?. Retrieved 7 June 2009, from http://wiki.answers.com/Q/What_is_the_difference_between_HTML_and_DHTML
W3C. Differnces Between XHTML and HTML. Retrieved 7 June 2009, from http://www.w3schools.com/XHTML/xhtml_html.asp
Zope. Chapter 4: Dynamic Content with DTML. Retrieved 15 June 2009, from http://www.zope.org/Documentation/Books/ZopeBook/2_5_edition/DTML.stx

Exercise 10: Answers 1-6

  1. List some application servers in competition with ZOPE. Access the web and find the latest version of the application servers mentioned in the text. When were they released? Can you make any conclusion about the release cycle of Internet software in comparison to other business software (e.g. spreadsheet, word processor, accounting packages)?

    If by "in competition" Ken means Open source applications then competing applications server platforms would include (Wikipedia): Appaserver, Base4, and Spring Framework.

    If however Ken is referring to Application servers in general then the list is substantially longer and can be defined by type:
    TypeName
    Java Application ServersJ2EE
    -WebSphere Application Server
    - WebLogic Server (Oracle)
    - JBoss (Red Hat)
    - JRun (Adobe Systems)
    - Apache Geronimo (Apache Software Foundation)
    - Sun Java System Application Server
    - SAP Netweaver AS (ABAP/Java) (SAP)
    - Glassfish Application Server.
    Microsoft Platform.NET Framework
    Zend platformZend Server
    Other platformsAppaserver
    - Base4
    - Zope
    - Spring Framework

    In the text (I am going to presume we are talking about the study guide) Ken mentions the following:

    Application ServerLatest VersionRelease Date
    ZOPE 22.11.32 May 2009
    ZOPE 33.4.029 Jan 2009
    JBoss5.1.0.GA23 May 2009
    Enhydra7.4-111 Dec 2008
    IBMs Websphere6.0.2.355 June 2009

    The release dates for web software is very recent. Almost all have a release date within the last 4-5 weeks, with frequent updates being released. Enhydra seems to be out of date. This is often the case with web products. Other applications and business software that is installed typically has a much longer release cycle.

  2. List the main Web servers. What types of companies are offering the leading servers? Distinguish between open source and proprietary products. Who is providing support for the products? How much do they cost? Do you think the Web server purchase price is a significant factor in budget considerations for a large e-commerce initiative?
    (WikiPedia)
    VendorProductWeb Sites HostedPercentOpen Source
    ApacheApache HTTP Server96,531,03352.05%Yes
    MicrosoftInternet Information Services61,023,47432.90%No
    GoogleGoogle Web Server9,864,3035.32%Yes
    NginxNginx3,462,5511.87%Yes
    LighttpdLighttpd2,989,4161.61%Yes
    OverseeOversee1,847,0391.00%Yes
    Others-9,756,6505.26%?
    Total-185,474,466100.00%-
    (Wikipedia) Essentially all web servers are provided free. Consequently web server purchase price (in terms of software) is a negligable concern. Ongoing support and maintenance costs are where proprietary businesses such as Microsoft make there money. Microsoft provides a paid support avenue. Community forums provide a support mechanism for the open source solutions. Additionally companies have set themselves up to provide paid support for open source systems.
  3. Go to the website of IBM, Oracle, Microsoft and Sybase. Is there any mention of e-commerce associated with their database products? What suite or partnership do they list with related e-commerce offerings? How do they compare with open source products like MySQL?
    These were not easy to obtain at first. So I just went to the websites of each of the 4 companies and used 2 search terms 'e-commerce' and 'e-commerce Databases' to return the following results table:
    CompanyWebsiteSearchTerm:e-commerceSearchTerm:e-commerce databases
    IBMwww.ibm.com19,39611,842
    Microsoftwww.microsoft.com169,0006,650
    Oraclewww.oracle.com2,436529
    Sybasewww.sybase.com10956
  4. Access the web and find the current rate for website hosting. What are the criteria used by the ISP for pricing? There are a large number of companies providing website hosting services for various dollar amounts. Generally they all seem to have a monthly charge. This is based upon the amount of storage required and the expected bandwidth that will be used. Some services charge per MB for excess usage. An example plan is from Westnethosting
  5. Why is the perception getting stronger that integration will become a critical factor in coming days? What is the role of ERP within the enterprise software architecture?

    (techFAQ)ERP stands for Enterprise Resource Planning. ERP is a way to integrate the data and processes of an organization into one single system. Usually ERP systems will have many components including hardware and software, in order to achieve integration, most ERP systems use a unified database to store data for various functions found throughout the organization.

    Integration is an extremely important part to ERP's. ERP's main goal is to integrate data and processes from all areas of an organization and unify it for easy access and work flow. ERP's usually accomplish integration by creating one single database that employs multiple software modules providing different areas of an organization with various business functions

  6. What is Customer Resource Management and why is it important to e-commerce?

    (techFAQ)Customer Resource Management(CRM) is a strategy for doing business.

    CRM methodologies are focused on building individual customer relationships for the purpose of creating and maintain a loyal customer base.

    Internet users are very fickle beings. If a user has a bad experience at a site they are not likely to return. So CRM is about getting and manageing return business.

References
Enhydra. Enhydra Server. Retrieved 7 June 2009, from http://forge.ow2.org/project/showfiles.php?group_id=21
IBM. Support & downloads. Retrieved 7 June 2009, from http://www.IBM.com
JBoss. JBoss Application Server Downloads. Retrieved 7 June 2009, from http://www.jboss.org/jbossas/downloads/
techFAQ. What is CRM software? Retrieved 15 June 2009, from http://www.tech-faq.com/crm-software.shtml
techFAQ. What is ERP? Retrieved 15 June 2009, from http://www.tech-faq.com/erp.shtml
Wikipedia. Application server. Retrieved 7 June 2009, from http://en.wikipedia.org/wiki/Application_Server
Wikipedia. Comparison of web server software. Retrieved 7 June 2009, from http://en.wikipedia.org/wiki/Comparison_of_web_servers
Wikipedia. Web server. Retrieved 7 June 2009, from http://en.wikipedia.org/wiki/Web_server
Zope. Current Zope Releases. Retrieved 7 June 2009, from http://www.zope.org/Products/

Moving my Internet Gateway

Up until yesterday I had been using wireless connections throughout the house. I have a Bigpond account with a wireless modem that was sitting in our bedroom. I wanted to move the modem into the computer room so that I could have a wired network. This would allow me to connect a NAS device to the network and have some semblance of decent speed within the network. Having a few unused telephone connections within the various rooms it was a simple matter of moving one of these. Well that should have been the case. I took the line that was in what used to be the study (previous owners) and moved it into the computer room. This was the obvious choice as the line only had to be moved about 2 metres (horizontally) to the opposite side of the wall. The new and old computer rooms are adjoining. After taking the tiles off the roof, disconnecting the plates, moving the wire, reconnecting the plates, and getting a dial tone it was time to try out the connection. Unfortunately the telstra message "the line you are using is not connected" was played when I dialed a number. OK so that line was no good. So I had to undo the line that was in my sons bedroom (checked that this line actually worked first), got into the ceiling, traipsed the line across multiple rooms and put it down the wall. Back inside connected it all up, and the line works. So I now have the modem/router all within connection distance of the computers and just need some LAN cable to connect it all together. A great way to spend the day. And I don't have the loss of signal from my modem that I sometimes experienced.