ICTWEB304 AT1

ICTWEB304 - Build simple web pages.

Q1) Describe the difference between an XML Sitemap and a HTML Sitemap. List the benefits and disadvantages of using each.

A sitemap is a file that lists URLs for a site along with additional information about each URL so that search engines can better crawl the site. XML stands for extensible markup language and it is used for structuring, storing, and transferring information and describes what the data is.

Advantages:
  1. XML is designed for search engine spiders to quickly extract the important information about the site by reading the XML file
  2. Can detect duplicate objects
  3. Connects pages through search forms rather than a logical structure
Disadvantages:
  1. An XML sitemap recommends URLs for the search engine to crawl and index, with no guarantee that it will crawl every page
  2. Clunky to read and only read by web crawlers, XML sitemaps are not visible by visitors.

HTML stands for Hypertext Markup Language and describes a web page’s structure and displays information. HTML sitemaps serve website visitors, that include every page on the website from the main homepage to each individual page and can be compared to a well-organised table of content.

Advantages:
  1. Organise large sites to avoid confusion for visitors about where to go or what there is available.
  2. HTML sitemaps are more accessible to read hence providing better user experience
Disadvantages:
  1. Cannot be updated automatically like XML can and not optimal for sites that continually grow in pages

Q2) Evaluate three IDE’s (Integrated development environments) and provide a brief summary on the positive and negative aspects of each. Also, in your own words include how it would suit an entry level trainee code developer.

Visual studio

Description: Visual Studio (VS) is an IDE produced by Microsoft and contains completion tools, compilers.

Advantages:
  1. Includes options specific to Microsoft ecosystem such as Microsoft Azure developer tools, Sharepoint, Exchange, Office professional plus and Office 365 developer subscription
  2. Multiple language syntax support, and setting the default language for a file
  3. Thousands of extensions, making VS super customisable such as changing the VS workbench user interface, support for a new programming language, and debugging a specific runtime.
  4. Live share to collaborate in teams
Disadvantages:
  1. Limited GitHub related extensions
  2. Can be resource intensive when using less powerful hardware or large projects
  3. Possibly overwhelmig for new users, taking more time to learn how to use all of its features effectively
  4. Requires a license and can be a significant cost for some people

An entry level trainee code developer may find that there is a lot to learn when using Visaul Code IDE as there is a lot of functions and features to this program. If they are quick to learn, they may find that this program is very userful once they are famailar with it. This program also requires a license in which may be costly for the entry level code developer if not provided by the company.

Python IDLE

Description: An IDE for Python, coded in Python

Advantages:
  1. Simplicity, smooth, and caters to all skill levels.
  2. Syntax highlighting
  3. In-built debugger
Disadvantages:
  1. Too simplistic, with a minimalist GUI
  2. Functionalities are basic as it does not have additional plugins
  3. Limited to python language compatibility

An entry level code developer may strive using this program as it has a minimalisitic GUI where they don’t have to focus on learning its features and instead focus on producing code. If they are using their personal device, they will not need a high-end device as Python IDLE is resource efficient.

Xcode

Description: Xcode is Apple’s official IDEA that consists of a suite of tools for developers to build apps for apple platforms such as iOS, tvOS, Apple Watch OS, and MacOS.

Advantages:
  1. Free to download with no enterprise pricing plans
  2. In-built user interface prototyping to simulate apple applications on an iPhone
  3. Formulated to take advantage of the Apple technology
  4. Supports a range of programming languages
Disadvantages:
  1. Available on MacOS only, requires an apple account

For an entry level code developer, Xcode is only available on MacOS and so they will need an apple device. The developer will not have to pay for the program, andif they are learning to develop apple applications then this IDE is suited for their work as it has an in-built simulator or the Xcode app on the iPhone or iPad. There also has a wide range or language compatibility including unlike Python IDLE which is limited to Python.

Q3) Provide a brief history on web browser development and the issues encountered by web developers, specifically, the adherence to web standards.

Prior to the web standards, many web page developer used incorrect HTML syntax hence creating a “tag soup”. These pages were often difficult to read and especially inaccessible to people with disabilities and would also displaying incorrectly in older browsers.

Before standards, developers had spotty and uneven browser support and so the Browser Wars was the competition to usage share in web browsers. If a current day website meets the web standards, it means that the site had valid HTML, CSS and JavaScript as well as meeting accessibility and semantic guidelines.

The first ever website info.cern.ch was made in 1993 by CERN. The first web browser was called WorldWideWeb when it was written in 1990, but now called Nexus. The competing browsers feature: Netscape, a web browser that was the earliest widely used browser that set an industry standard. The other browser is Internet Explorer, from Microsoft.

Q4) What are website testing methodologies? Your answer MUST cover browser compatibility, and website functionality.

  1. Cross browser compatibility: There are lots more browsers these days however the most common two browsers, MS Edge and Chrome, must be considered when website testing. To ensure that the website is compatible with the browser, developers must build responsive websites by using scripting languages such as HTML5, CSS3, and Javascript.
  2. Website performance: This test will demonstrate how a web application can perform under stress conditions and heavy workload. Factors such as different internet speed, networks, and browsers can be tested to determine efficient performance.
  3. Website functionality: This step ensure that the functionalities of the website are properly functioning. Some methods to test the functionality is done by determining the data input and entry, test case executive, and other ways. Testing of functionality can also be conducted by testing all of the links on the page, testing the forms on the page, cookie testing, validating HTML syntax errors, site crawlability, and database integrity especially if executive of database queries, data retrieval and data updates are done correctly.
  4. Interface testing: The main interactions between interfaces to test are the web server and application server interface, and the application server and database server interface. Ensure that all interactions and handled errors and done properly, and the application server should catch and display the error messages to the users. Another method to test the interface is to check what happens if the interaction is disrupted, or the webserver is reset in between the interactions.
  5. Security testing: Security testing a website is crucial to identify potential vulnerabilities and subseqently repair them to ensure safety of the users and developers. Network scanning, password cracking, log review, and virus detection are some general procedures to testing security of a website. Testing websites can be also done multiple ways such as:
  • Ensuring that internal pages have a credential login before access can be provided
  • Web dictionaries and files should not be accessible unless there is a download option for the user
  • Setting up CAPTCHA to replicate script logins
  • Testing SSL for security measures, and a proper message displayed when users switch from non-secure pages to secure pages (HTTP:// to HTTPS://)
  • All transactions, error messages, and security breaches are logged into log files somewhere on the webserver

Q5) What are the endorsed requirements of accessibility for all NT Government webpages?

There are many principles and standards of NT Government (NTG) webpages however the requirements of accessibility are summarised below:

  • The language is written in plain English
  • Web content is readable by standard and the most common web browsers
  • Web content is 5 pages or less in HTML format
  • Accessible – digital services are accessible bby all people regardless of ability, and environment, including access via mobile
https://digitalterritory.nt.gov.au/digital-government/strategies-and-guidance/policies-standards-and-guidance/website-standards

Q6) How do you think it’s best to organise all the assets used for a specific webpage? Think locally on your computer AND within the root folder of the website.

There are many ways to organise assets for websites. I think it is best to organise them by the following practices:

  • Global vs local assets: Creating a folder structure that allows for assets to be sorted if they are used on multiple pages (global) or if only used on a single page (local)
  • Naming convention: The names of the files must clearly describe the content, and the subfolder names with increasing levels of detail
  • Usage: Prioritising the most useful assets and dividing the content logically by their usage
  • File grouping: Group assets in folders can follow principles or a combination such as:
  • Page tree structure (based on the top level pages)
  • Usage (the intended purpose e.g. campaigns, buttons, banners, icons)
  • Brand or product area (e.g. clothing, shoes)