Assingment 1 Assingment 2 Assingment 3 Assingment 4 Assingment 5 Assingment 6 Assingment 7

CIS 4930: Internet Computing

Vance Boudreau

Assignment 1

This assignment aims to equip students with essential web development skills by creating static web pages from scratch without the assistance of authoring tools. It emphasizes understanding HTML tags, page structure, and the interplay between HTML and CSS for design consistency. The objective is to lay a strong foundation in web development while fostering creativity and proficiency in design and layout. Personally I struggled with using Divs as a main form of formatting as well as interlacing more complex CSS. I found the assignment to be an excellent way to learn the basics of the most basic elements of web development.

  • Basic Linux commands
  • Basic html
  • Basic CSS
  • Setting up file directories for html/css

Assignment 2

The goal of this assignment is to develop a web page that collects user input through various form elements, processes that input to make decisions, and provides customized feedback to the user based on their input. The learning objectives include mastering the basics of decision control structures and web form elements, gaining a working understanding of the Document Object Model (DOM), and developing skills in structured programming and planning. As far as control logic goes I spent most of my time editing the range slider restrictions and getting the input to have proper validation and restrictions. However, I really spent most of my time on the CSS and data collect needed to create the page.

  • Master the basics of decision control structures and web form elements.
  • Gain a working understanding of the Document Object Model (DOM).
  • Develop skills in structured programming and planning, including writing concise decision-logic solutions.
  • Apply CSS enhancements for web forms and effectively present results to users on the page.

Assignment 3

The assignment focuses on implementing a program that computes various descriptive statistics based on user-provided numeric data. In Part 1, you're tasked with creating an HTML form to collect a list of numbers, parsing this input into an array, and presenting it. Part 2 involves developing a JavaScript file named "statistics.js" containing functions for statistical procedures like finding N, summation, mean, median, mode, maximum, minimum, range, variance, and standard deviation. These functions should utilize patterns and call each other for intermediate processing, promoting modularity and reusability. Part 3 requires conducting unit testing for each function with three sets of data and comparing the program's output with hand calculations or spreadsheet results, then presenting the test results in an HTML table. Overall, the assignment aims to reinforce understanding of repetition control structures, arrays as data structures, modularity, and reusability in software development.

  • Control Structures & Arrays: Understand how to use repetition control structures and arrays effectively for data manipulation.
  • Modular Code Design: Develop skills in creating reusable functions for modular code development.
  • Statistical Computations in JavaScript: Implement statistical calculations like mean, median, mode, variance, and standard deviation using JavaScript.
  • Unit Testing & Validation: Practice unit testing to verify function accuracy and ensure reliable results compared to manual calculations or known data.

Assignment 4

In this assignment, students were tasked with integrating both Bootstrap and jQuery libraries into their existing web project from Assignment 2, focusing on decisions control structures in JavaScript and flowcharts. The primary objective was to leverage Bootstrap for creating a responsive webpage, ensuring compatibility across various devices and browsers by redesigning the form elements using Bootstrap's framework. Additionally, jQuery was employed to add dynamic functionality to the webpage, with an emphasis on utilizing its advanced features to enhance user experience. This included handling form validation and creating a more interactive interface using jQuery's capabilities. Through this assignment, students gained practical experience in responsive web design principles, Bootstrap integration, and leveraging jQuery for dynamic web development, ultimately enhancing their skills in creating user-friendly and adaptable web interfaces.

  • Understand the principles of responsive web design and its significance in modern web development.
  • Develop proficiency in integrating Bootstrap framework for creating responsive layouts and ensuring cross-device compatibility.
  • Master the utilization of jQuery library to add dynamic functionality and interactivity to web pages, with a focus on advanced features.
  • Enhance skills in creating user-friendly and adaptable web interfaces through effective use of Bootstrap and jQuery.

Assignment 5

In this assignment, you'll build a PHP-based quiz system. First, create a user-friendly quiz interface (index.php) using HTML forms. Then, process user responses with a PHP script (process.php), providing personalized feedback and securely storing data in a CSV file. Finally, design an admin page (admin.php) to summarize user data, including performance metrics. Through this project, you'll learn PHP server-side programming, form handling, data storage, and summary presentation skills.

  • Learn to implement server-side programming using PHP.
  • Gain proficiency in handling form submissions and processing user input.
  • Acquire skills in providing personalized feedback based on user responses.
  • Understand how to securely store and manage data in CSV files on the server.

Assignment 6

In completing this assignment, I learned the fundamentals of database technology and server-side technology commonly used on the Web. Through four parts, I gained practical experience with MySQL and PHP. Firstly, I created a table in MySQL, designed an entity-relationship diagram, and developed a web application to display records using SQL Select. Secondly, I implemented a form for users to input records into the table, incorporating various input types like text boxes and drop-downs. Thirdly, I created functionality for users to remove records from the table easily. Finally, I enabled users to update records within the table, ensuring smooth navigation and selection of records. Additionally, I expanded my understanding of SQL injection and implemented measures to prevent potential damage to the database structure by users, ensuring the security of the web application.

  • Gain proficiency in MySQL database management, including table creation, data pre-population, and understanding of entity-relationship diagrams (ERDs).
  • Develop practical skills in server-side scripting using PHP to create interactive web applications for data input, utilizing various input types such as text boxes, radio buttons, drop-downs, and checkboxes.
  • Learn effective techniques for implementing record deletion functionality in web applications using PHP and SQL Delete, ensuring a seamless user experience.
  • Enhance understanding of security best practices in web development, specifically addressing SQL injection vulnerabilities, and implement measures to safeguard database integrity and prevent potential damage.

Assignment 7

Through completing the assignment on creating a filtering system using PHP and AJAX, I gained a solid understanding of Asynchronous JavaScript and XML (AJAX) concepts. This project involved manipulating data on the client side without needing to refresh the entire webpage, thus enhancing user experience. I learned to integrate JavaScript and PHP effectively to create dynamic filtering mechanisms such as dropdown menus or text boxes that filter data based on user input. Furthermore, I became proficient in utilizing XML or JSON for efficient data transfer between the server and the client. The learning objectives achieved through this assignment include mastering AJAX techniques, implementing dynamic filtering functionalities using JavaScript and PHP, understanding the importance of asynchronous data retrieval for web applications, and effectively using XML or JSON for data exchange in web development projects.

  • Achieving proficiency in Asynchronous JavaScript and XML (AJAX) techniques for dynamic web functionality.
  • Implementing interactive filtering systems using JavaScript and PHP to enhance user experience.
  • Understanding the importance of asynchronous communication for responsive web applications.
  • Effectively using XML or JSON for seamless data transfer between server and client components.