QnA

AT1 Questions and Answers


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

The differences between an XML Sitemap and an HTML Sitemap are:

HTML Sitemap —

An HTML Sitemap is a webpage that shows a list of all the links on the page, which helps users navigate the website. It’s similar to a table of contents, allowing site visitors to find and get around the website. It’s designed for humans. The benefits and disadvantages of using this sitemap:

Benefits:

  • Improves site navigation for users to easily find links
  • Improves the user experience by making it easy to find links
  • Accessible and works for all devices and browsers
  • Supports SEO (Search Engine Optimisation) indirectly

Disadvantages:

  • Requires manual updating of new links/content
  • Time-consuming to set up for large websites with a lot of links
  • Can become cluttered on large sites as too many links can overwhelm users/visitors if not structured/organised correctly.
  • SEO (Search Engine Optimisation) Limitations as it doesn’t support directly.

XML Sitemap —

An XML Sitemap is a file that is stored on your site containing your site's content, allowing search engines to crawl and index links, posts, and even media, categories and tags. The search engines like google will only crawl and index links/content that you want it to find on your site, and will display any relevant data after having processed the query of the user. It’s created for robots, rather than humans.

Benefits:

  • Helps search engines find/discover important/new pages
  • Tells users when pages were last updated and their importance
  • Extremely useful for large websites with deep content structure.
  • Gives more informatino about your pages

Disadvantages:

  • Not user friendly as it’s not intended to be viewed by visitors
  • Time consuming to set up and maintain
  • Needs regular updates
  • Can cause problems if content is not managed properly, revealing pages that weren’t intended to be searched by the public.
Q2 Evaluate three IDEs (Integrated Development Environments) and provide a brief summary of the positive and negative aspects of each. Also, in your own words include how it would suit an entry‑level trainee code developer.

Three IDEs regarding their positive and negative aspects along with how they would suit an entry-level trainee code developer:

1. Visual Studio Code

Overview:

Visual Studio Code is an IDE developed by Microsoft that supports programming languages such as JavaScript, Python, C++, HTML, and CSS, with many more being available via extensions. Some positive and negative aspects to consider for entry-level developers:

Positives:

  • Easy and simple to download through their vsc website
  • Wide range of functionality via extensions
  • Supports nearly every major programming language with more via extensions
  • Supports Windows/Mac/Linux
  • User interface is friendly, all while maintaining a layout that maximises space.
  • User interface is highly customizable to fit personal taste.

Negatives:

  • Can become slow when dealing or working with larger files, especially when using different extensions.
  • It can consume significant memory when using multiple extensions or working on large projects.
  • Some of the basic functionality, like syntax highlighting, requires installing extensions, which can become time-consuming.

Suitability:

Visual Studio Code is a great starting place for entry-level developers due to its user-friendly interface, easy-to-set up extensions, wide range of functionality, and capability to code in multiple programming languages. Of course, because of its wide range of functions and extensions, some guidance may be required to find and set up these environments.

2. PyCharm

Overview:

PyCharm was developed by JetBrains and primarily supports Python language, but it does support some other languages such as JavaScript, HTML, etc. Some positive and negative aspects to consider for entry-level developers:

Positives:

  • Best IDE for the Python language as the IDE was designed specifically for the programming language.
  • Provides features like code completion, error detections, code suggestions, and debugging tools etc.
  • User-friendly interface allowing even beginners to navigate the IDE with ease.
  • Offers wide range of plugins that can extend the IDE’s functionality.
  • Offers AI Features.

Negatives:

  • There’s a higher learning curve when getting into the IDE’s extensive features and options, potentially overwhelming a beginner.
  • Potentially resource intensive, especially when working on large files/projects, causing performance issues or the IDE to run slower. This is especially seen in older computers/systems.
  • The interface may be confusing to beginners who have no experience with IDEs in general.
  • While PyCharm Community is free to use, it has limited features. The PyCharm Professional Edition, on the other hand, costs more and offers extensive features, such as the ability to code in other front-end framework languages, such as TypeScript, React, Angular, etc.

Suitability:

PyCharm is a great starting place for entry-level developers who are mainly focused on coding in Python and don’t want to pay for anything. The IDE is incredibly easy to install and set up. As one of the leading IDE’s for Python, there’s plenty of tutorials online to provide additional assistance. Additionally, PyCharm provides great coding practices that will help beginners develop good coding habits for future programming.

3. Eclipse

Overview:

Eclipse is a free open source IDE that is primarily used for Java development, but does support other programming languages thorugh third party plugins. Some positive and negative aspects to consider for entry-level developers:

Positives:

  • Completely free of cost and easy to download.
  • Supports a wide variety of programming langauges through the use of third party plugins.
  • Has in-build development tools allowing for syntax highlighting, auto-suggestions, compiler and debugger.
  • Manages large projects and multiple files considerably well.
  • Supports Windows, Mac, and Linux.

Negatives:

  • User interface is considered somewhat cluttered and messy, requiring some experience with IDE's.
  • Setting up the plugins and the IDE can be tedious and challenging without previous experience.
  • The IDE isn't well suited for all programming languages compared to their more specialised IDE’s.
  • Has a higher learning curve.

Suitability:

Eclipse is a great IDE for entry level developers who don’t want to pay any additional cost. Additionally, the IDE is widely used, especially for Java language. Furthermore, provides other powerful features in the form of development tools like code suggestions, debugging, syntax highlighting, and file management. Moreover, it supports many languages through the usage of third party plugins. While there’s a high learning curve to navigate the IDE, it’s a good place to learn professional development practices.

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

History

The World Wide Web, the first ever web browser, was created in 1990 by Tim Berners Lee. The primary goal in the development of the web browser was to automate information sharing with the focus being towards academic institutions. And soon after, in 1993, Mosaic, became the first widely used graphical web browser, where users could interact with a graphical interface, making it easier for them to navigate the web.

This also led to the rise of the Netscape Navigator.

Browser Wars

In response, when Microsoft entered the browser market with their Internet Explorer in 1995, it sparked the Browser Wars between them and Netscape Navigator. During this time, these browsers introduced their own proprietary features without following any kind rules or standard, and as such, this caused major compatibility issues for developers and users when interacting with websites in different browsers.

Some issues developers encountered at the time:

  • Inconsistent rendering across browsers with CCS styles.
  • Inconsistent functionality across browsers with JavaScript.
  • An increase in time spent testing and debugging problems.
  • More development time required for cross-browser compatibility and functionality.
  • Browser specific code and prefixes.

Standards and Modern Browsers

In response to this lack of standardization in the industry, the World Wide Web Consortium (W3C) along with the Web Standard Project and various other industry officials, began pushing for web developers to adhere to a common and universal web standard, establishing rules and protocols to stay W3C compliant. With these standards in place, already established developers began redesigning, with new web browsers appearing in the coming years, such as Firefox and Google Chrome. The important for compatibility across multiple platforms and browsers became imperative for user experience and interactivity.

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

Overview

Website testing methodologies are methods and techniques that ensure your website functions correctly and as intended across various platforms and environment, covering functionality such as the sites user-friendliness, it’s usability and performance, along with other security measures.

When it comes to testing website methodologies, there are two key areas that are tested. They are:

Browser Compatibility Testing:

This method involves testing if your website displays and behaves as intended across different devices such as, desktop, tablet, or mobile, and web-browsers such as Chrome, Edge, Firefox etc… This is because these browsers interpret HTML, CSS, and JavaScript differently and behave uniquely to them.

It tests and makes sure your websites layout, fonts, images, and any interactive features are consistent and uniform for all users across different browsers.

Functionality Testing:

This method involves testing the core functionality of your website, ensuring whether everything is working as expected it.

It tests and makes sure your websites navigation links, buttons, menus etc, forms and submissions, search functions, database handling/interactions, and the error handling, works and functions correctly.

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

The NT Government has endorsed the World Wide Web Consortium (WCAG 2.0) and are working towards making sure all websites and web content meet the WCAG 2.0 Level AA compliance. http://www.w3.org/TR/WCAG

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.

Recommended Folder Structure

The best way to organise all the assets used for a specific webpage on your local computer is using the following method. Similarly, this methodology should be used for any root folders. Additionally, the names of all files and folders should be:

  • [(Main root project / folder)]:

    All .html files (e.g., index.html, about.html).

  • —css/ (Stylesheet folder):

    All stylesheet.css files

  • —js/ (JavaScript folder):

    All JavaScript files (e.g., script.js).

  • —images/ (Images folder):

    All image assets (e.g., logo.png, banner.jpg).

  • —fonts/ (Fonts folder):

    All custom font files.

  • —media/ (Media folder):

    All video or audio files (e.g., file.mp4, file.mp3).

Naming Conventions

  • Use lowercase letters
  • Avoid spaces and special characters
  • Start names with a letter or number