Kurssit

Insoft on palvellut IT-yhteisöä Ciscon virallisella koulutustarjonnalla vuodesta 2010. Tältä sivulta löydät kaikki olennaiset tiedot Ciscon koulutuksesta.

Katso lisää

Cisco Learning Credits

Cisco opintopisteet (CLC) ovat suoraan Ciscon kanssa lunastettuja prepaid-koulutusseteleitä, jotka helpottavat menestyksen suunnittelua ostaessasi Ciscon tuotteita ja palveluita.

Katso lisää

Cisco Continuing Education

Cisco täydennyskoulutusohjelma tarjoaa kaikille aktiivisille sertifioinnin haltijoille joustavia vaihtoehtoja uudelleensertifiointiin suorittamalla erilaisia kelvollisia koulutuskohteita.

Katso lisää

Cisco Digital Learning

Sertifioidut työntekijät ovat ARVOSTETTUJA omaisuuseriä. Tutustu Ciscon valtuutettuun digitaaliseen oppimiskirjastoon ja kouluta itseäsi tallennettujen istuntojen avulla.

Katso lisää

Cisco Business Enablement

Cisco Business Enablement Partner Program keskittyy Cisco Channel Partnersin ja asiakkaiden liiketoimintataitojen terävöittämiseen.

Katso lisää

Kurssit

Insoft Services on auktorisoitu Fortinet-kouluttaja useassa Euroopan maassa.

Katso lisää

ATC Status

Tarkista ATC-tilamme valituissa Euroopan maissa.

Katso lisää

Kurssit

Insoft Services tarjoaa Microsoftille EMEAR-koulutusta. Tarjoamme Microsoftin teknistä koulutusta ja sertifiointikursseja, joita johtavat maailmanluokan ohjaajat.

Katso lisää

Kurssit

Extreme Networks Technical Trainingin kehitys tarjoaa kattavan progressiivisen polun associate-akkreditoinnista ammatilliseen akkreditointiin.

Katso lisää

ATP-akkreditointi

Valtuutettuna koulutuskumppanina (ATP) Insoft Services varmistaa, että saat korkeimman saatavilla olevan koulutuksen.

Katso lisää

 

Maailmassa, jossa teknologiat kehittyvät nopeasti, jokainen yritys - yritys - tarvitsee kumppanin, johon luottaa ja luottaa verkkoinfrastruktuurinsa sujuvaan ja turvalliseen toimintaan.

Katso lisää

 

Missiomme: Tarjota asiantunteva joukko moderneja ja huippuluokan verkkoautomaatiotaitoja markkinoille asiantuntijapalvelujen avulla.

Katso lisää

 

Maailmassa, jossa teknologiat kehittyvät nopeasti, jokainen yritys - yritys - tarvitsee kumppanin, johon luottaa ja luottaa verkkoinfrastruktuurinsa sujuvaan ja turvalliseen toimintaan.

Katso lisää

 

Maailmassa, jossa teknologiat kehittyvät nopeasti, jokainen yritys - yritys - tarvitsee kumppanin, johon luottaa ja luottaa verkkoinfrastruktuurinsa sujuvaan ja turvalliseen toimintaan.

Katso lisää

 

Maailmassa, jossa teknologiat kehittyvät nopeasti, jokainen yritys - yritys - tarvitsee kumppanin, johon luottaa ja luottaa verkkoinfrastruktuurinsa sujuvaan ja turvalliseen toimintaan.

Katso lisää

 

Maailmassa, jossa teknologiat kehittyvät nopeasti, jokainen yritys - yritys - tarvitsee kumppanin, johon luottaa ja luottaa verkkoinfrastruktuurinsa sujuvaan ja turvalliseen toimintaan.

Katso lisää

 

Autamme organisaatioita ottamaan käyttöön Software-Defined Networking (SDN) -ratkaisuja, kuten Cisco DNA:ta.Lisäksi tiimillämme on laaja kokemus Cisco DNA Centerin integroinnista kolmannen osapuolen järjestelmiin.

Katso lisää

 

Maailmassa, jossa teknologiat kehittyvät nopeasti, jokainen yritys - yritys - tarvitsee kumppanin, johon luottaa ja luottaa verkkoinfrastruktuurinsa sujuvaan ja turvalliseen toimintaan.

Katso lisää

Tiimimme

Koulutusvalikoimaamme kuuluu laaja valikoima IT-koulutusta IP-palveluntarjoajilta, mukaan lukien Cisco, Extreme Networks, Fortinet, Microsoft, muutamia mainitakseni, EMEA-alueella.

Katso lisää

Linux Professional Institute (LPI) Web Development Essentials

Ota yhteyttä

Voit olla meihin yhteydessä ja tiedustella koulutuksistamme täydentämällä yhteystietosi ja koulutuksen nimen oheen.

Tietosuojalauseke ja yksityisyys

Suostun vastaanottamaan sähköpostiviestejä ja/tai puheluita Insoft Services Oy: n tuotteista ja palveluista.
Hyväksyn, että tietojani kerätään ja käsitellään Insoft Servicesin tietosuojakäytännössä kuvatulla tavalla.

Close

Linux Professional Institute (LPI) Web Development Essentials

VARAA NYT
Kesto
5 päivää
Toimitus
(Online ja paikan päällä)
Hinta
Hinta pyydettäessä

In this Linux Professional Institute (LPI) Web Development Essentials training you will acquire comprehensive knowledge and skills in the basics of web development. The course covers essential aspects such as HTML, CSS, JavaScript and server-side programming and aims to provide a solid foundation for creating and managing dynamic and responsive websites. You will learn how to use modern web technologies to develop user-friendly and visually appealing web applications. Practical exercises and projects will reinforce the concepts you have learned and prepare you to effectively master the challenges in the world of web development.

  • Prerequisites: There are no prerequisites for this certification.
  • Requirements: Passing the Web Development Essentials 030 exam. The Web Development Essentials exam contains 40 questions and must be completed within 60-minutes.
  • Languages: English, Japanese
  • Validity period: Lifetime

031 Software Development and Web Technologies

031.1 Software Development Basics

Description: The candidate should be familiar with the most essential concepts of software development and be aware of important programming languages.

Key Knowledge Areas:

  • Understand what source code is
  • Understand the principles of compilers and interpreters
  • Understand the concept of libraries
  • Understand the concepts of functional, procedural and object-oriented programming
  • Awareness of common features of source code editors and integrated development environments (IDE)
  • Awareness of version control systems
  • Awareness of software testing
  • Awareness of important programming languages (C, C++, C#, Java, JavaScript, Python, PHP)

031.2 Web Application Architecture

Description: The candidate should understand common standards in web development technology and architecture.

Key Knowledge Areas:

  • Understand the principle of client and server computing
  • Understand the role of web browsers and be aware of commonly used web browsers
  • Understand the role of web servers and application servers
  • Understand common web development technologies and standards
  • Understand the principles of APIs
  • Understand the principle of relational and non-relational (NoSQL) databases
  • Awareness of commonly used open source database management systems
  • Awareness of REST and GraphQL
  • Awareness of single-page applications
  • Awareness of web application packaging
  • Awareness of WebAssembly
  • Awareness of content management systems

Files, terms, and utilities:

  • Chrome, Edge, Firefox, Safari, Internet Explorer
  • HTML, CSS, JavaScript
  • SQLite, MySQL, MariaDB, PostgreSQL
  • MongoDB, CouchDB, Redis

031.3 HTTP Basics

Description: The candidate should be familiar with the basics of HTTP. This includes understanding HTTP headers, content types, caching, and status codes. Furthermore, the candidate should understand the principles of cookies and their role for session handling and be aware of advanced HTTP features.

Key Knowledge Areas:

  • Understand HTTP GET and POST methods, status codes, headers and content types
  • Understand the difference between static and dynamic content
  • Understand HTTP URLs
  • Understand how HTTP URLs are mapped to file system paths
  • Upload files to a web server’s document root
  • Understand caching
  • Understand cookies
  • Awareness of sessions and session hijacking
  • Awareness of commonly used HTTP servers
  • Awareness of HTTPS and TLS
  • Awareness of web sockets
  • Awareness of virtual hosts
  • Awareness of common HTTP servers
  • Awareness of network bandwidth and latency requirements and limitations

Files, terms, and utilities:

  • GET, POST
  • 200, 301, 302, 401, 403, 404, 500
  • Apache HTTP Server (“httpd”), NGINX

032 HTML Document Markup

032.1 HTML Document Anatomy

Description: The candidate should understand the anatomy and syntax of an HTML document. This includes creating basic HTML documents.

Key Knowledge Areas:

  • Create a simple HTML document
  • Understand the role of HTML
  • Understand the HTML skeleton
  • Understand the HTML syntax (tags, attributes, comments)
  • Understand the HTML head
  • Understand meta tags
  • Understand character encoding

Files, terms, and utilities:

  • <!DOCTYPE html>
  • <html>
  • <head>
  • <body>
  • <meta>, including the charset (UTF-8), name and content attributes

032.2 HTML Semantics and Document Hierarchy

Description: The candidate should be able to create HTML documents with a semantic structure.

Key Knowledge Areas:

  • Create markup for contents in an HTML document
  • Understand the hierarchical HTML text structure
  • Differentiate between block and inline HTML elements
  • Understand important semantic structural HTML elements

Files, terms, and utilities:

  • <h1>, <h2>, <h3>, <h4>, <h5>, <h6>
  • <p>
  • <ul>, <ol>, <li>
  • <dl>, <dt>, <dd>
  • <pre>
  • <blockquote>
  • <strong>, <em>, <code>
  • <b>, <i>, <u>
  • <span>
  • <div>
  • <main>, <header>, <nav>, <section>, <footer>

032.3 HTML References and Embedded Resources (weight: 2)

Description: The candidate should be able to link an HTML document with other documents and embed external content, such as images, videos and audio in an HTML document.

Key Knowledge Areas:

  • Create links to external resources and page anchors
  • Add images to HTML documents
  • Understand key properties of common media file formats, inlcuding PNG, JPG and SVG
  • Awareness of iframes

Files, terms, and utilities:

  • id attribute
  • <a>, including the href and target (_blank, _self, _parent, _top) attributes
  • <img>, including the src and alt attributes

032.4 HTML Forms

Description: The candidate should be able to create simple HTML forms containing input elements of various types.

Key Knowledge Areas:

  • Create simple HTML forms
  • Understand HTML form methods
  • Understand HTML input elements and types

Files, terms, and utilities:

  • <form>, including the method (get, post), action, and enctype attributes
  • <input>, including the type (text, email, password, number, date, file, range, radio, checkbox, hidden) attribute
  • <button>, including the type (submit, reset, hidden, button) attribute
  • <textarea>
  • common form element attributes (name, value, id)
  • <label>, including the for attribute

033 CSS Content Styling

033.1 CSS Basics

Description: The candidate should understand the various ways to style an HTML document using CSS. This includes the structure and syntax of CSS rules.

Key Knowledge Areas:

  • Embedding CSS within an HTML document
  • Understand the CSS syntax
  • Add comments to CSS
  • Awareness of accessibility features and requirements

Files, terms, and utilities:

  • HTML style and type (text/css) attributes
  • <style>
  • <link>, including the rel (stylesheet), type (text/css) and src attributes
  •  ;
  • /*,*/

033.2 CSS Selectors and Style Application

Description: The candidate should be able to use selectors in CSS and understand how CSS rules are applied to elements within an HTML document.

Key Knowledge Areas:

  • Use selectors to apply CSS rules to elements
  • Understand CSS pseudo-classes
  • Understand rule order and precedence in CSS
  • Understand inheritance in CSS

Files, terms, and utilities:

  • element; .class; #id
  • a, b; a.class; a b;
  •  :hover, :focus
  • !important

033.3 CSS Styling

Description: The candidate should use CSS to add simple styles to the elements of an HTML document.>

Key Knowledge Areas:

  • Understand fundamental CSS properties
  • Understand units commonly used in CSS

Files, terms, and utilities:

  • px, %, em, rem, vw, vh
  • color, background, background-*, font, font-*, text-*, list-style, line-height

033.4 CSS Box Model and Layout

Description: The candidate should understand the CSS box model. This includes defining the position of elements on a website. Additionally, the candidate should understand the document flow.

Key Knowledge Areas:

  • Define the dimension, position and alignment of elements in a CSS layout
  • Specify how text flows around other elements
  • Understand the document flow
  • Awareness of the CSS grid
  • Awareness of responsive web design
  • Awareness of CSS media queries

Files, terms, and utilities:

  • width, height, padding, padding-*, margin, margin-*, border, border-*
  • top, left, right, bottom
  • display: block | inline | flex | inline-flex | none
  • position: static | relative | absolute | fixed | sticky
  • float: left | right | none
  • clear: left | right | both | none

034 JavaScript Programming

034.1 JavaScript Execution and Syntax

Description: The candidate should be able to execute JavaScript files and inline code from an HTML document and understand basic JavaScript syntax.

Key Knowledge Areas:

  • Run JavaScript within an HTML document
  • Understand the JavaScript syntax
  • Add comments to JavaScript code
  • Access the JavaScript console
  • Write to the JavaScript console

Files, terms, and utilities:

  • <script>, including the type (text/javascript) and src attributes
  •  ;
  • //, /* */
  • console.log

034.2 JavaScript Data Structures

Description: The candidate should be able to use variables in JavaScript code. This includes understanding values and data types. Furthermore, the candidate should understand assignment operators and type conversion and be aware of variable scope.

Key Knowledge Areas:

  • Define and use variables and constants
  • Understand data types
  • Understand type conversion/coercion
  • Understand arrays and objects
  • Awareness of the variable scope

Files, terms, and utilities:

  • =, +, -, *, /, %, –, ++, +=, -=, *=, /=
  • var, let, const
  • boolean, number, string, symbol
  • array, object
  • undefined, null, NaN

034.3 JavaScript Control Structures and Functions

Description: The candidate should be able to use control structures in JavaScript code. This includes using comparison operators. Furthermore, the candidate should be able to write simple functions and understand function parameters and return values.

Key Knowledge Areas:

  • Understand truthy and falsy values
  • Understand comparison operators
  • Understand the difference between loose and strict comparison
  • Use conditionals
  • Use loops
  • Define custom functions

Files, terms, and utilities:

  • if, else if, else
  • switch, case, break
  • for, while, break, continue
  • function, return
  • ==, !=, <, <=, >, >=
  • ===, !==

034.4 JavaScript Manipulation of Website Content and Styling

Description: The candidate should understand the HTML DOM. This includes manipulating HTML elements and CSS properties through the DOM using JavaScript as well as using DOM events in simple scenarios.

Key Knowledge Areas:

  • Understand the concept and structure of the DOM
  • Change the contents and properties of HTML elements through the DOM
  • Change the CSS styling of HTML elements through the DOM
  • Trigger JavaScript functions from HTML elements

Files, terms, and utilities:

  • document.getElementById(), document.getElementsByClassName(), document.getElementsByTagName(),document.querySelector(), document.querySelectorAll()
  • innerHTML, setAttribute(), removeAttribute() properties and methods of DOM elements
  • classList, classList.add(), classList.remove(), classList.toggle() properties and methods of DOM elements
  • onClick, onMouseOver, onMouseOut attributes of HTML elements

035 NodeJS Server Programming

035.1 NodeJS Basics

Description: The candidate should understand the basics of NodeJS. This includes running a local development server as well as understanding the concept of NPM modules.

Key Knowledge Areas:

  • Understand the concepts of Node.js
  • Run a NodeJS application
  • Install NPM packages

Files, terms, and utilities:

  • node [file.js]
  • npm init
  • npm install [module_name]
  • package.json
  • node_modules

035.2 NodeJS Express Basics

Description: The candidate should be able to create a simple dynamic website with the Express web framework. This includes defining simple Express routes as well as serving dynamic files through the template engine EJS.

Key Knowledge Areas:

  • Define routes to static files and EJS templates
  • Serve static files through Express
  • Serve EJS templates through Express
  • Create simple, non-nested EJS templates
  • Use the request object to access HTTP GET and POST parameters and process data submitted through HTML forms
  • Awareness of user input validation
  • Awareness of cross-site Scripting (XSS)
  • Awareness of cross-site request forgery (CSRF)

Files, terms, and utilities:

  • express and body-parser node module
  • Express app object
  • app.get(), app.post()
  • res.query, res.body
  • ejs node module
  • res.render()
  • <% … %>, <%= … %>, <%# … %>, <%- … %>
  • views/

035.3 SQL Basics

Description:The candidate should be able to create individual tables in an SQLite database and add, modify and delete data using SQL. Furthermore, the candidate should be able to retrieve data from individual tables and execute SQL queries from NodeJS. This does not include referencing or combining data between multiple tables.

Key Knowledge Areas:

  • Establish a database connection from NodeJS
  • Retrieve data from the database in NodeJS
  • Execute SQL queries from NodeJS
  • Create simple SQL queries excluding joins
  • Understand primary keys
  • Escape variables used in SQL queries
  • Awareness of SQL injections

Files, terms, and utilities:

  • sqlite3 NPM module
  • Database.run(), Database.close(), Database.all(), Database.get(), Database.each()
  • CREATE TABLE
  • INSERT, SELECT, DELETE, UPDATE

Web developer

Understanding of the principles of software development, HTML, CSS, JavaScript, Node.js and SQL

In this Linux Professional Institute (LPI) Web Development Essentials training you will acquire comprehensive knowledge and skills in the basics of web development. The course covers essential aspects such as HTML, CSS, JavaScript and server-side programming and aims to provide a solid foundation for creating and managing dynamic and responsive websites. You will learn how to use modern web technologies to develop user-friendly and visually appealing web applications. Practical exercises and projects will reinforce the concepts you have learned and prepare you to effectively master the challenges in the world of web development.

  • Prerequisites: There are no prerequisites for this certification.
  • Requirements: Passing the Web Development Essentials 030 exam. The Web Development Essentials exam contains 40 questions and must be completed within 60-minutes.
  • Languages: English, Japanese
  • Validity period: Lifetime

031 Software Development and Web Technologies

031.1 Software Development Basics

Description: The candidate should be familiar with the most essential concepts of software development and be aware of important programming languages.

Key Knowledge Areas:

  • Understand what source code is
  • Understand the principles of compilers and interpreters
  • Understand the concept of libraries
  • Understand the concepts of functional, procedural and object-oriented programming
  • Awareness of common features of source code editors and integrated development environments (IDE)
  • Awareness of version control systems
  • Awareness of software testing
  • Awareness of important programming languages (C, C++, C#, Java, JavaScript, Python, PHP)

031.2 Web Application Architecture

Description: The candidate should understand common standards in web development technology and architecture.

Key Knowledge Areas:

  • Understand the principle of client and server computing
  • Understand the role of web browsers and be aware of commonly used web browsers
  • Understand the role of web servers and application servers
  • Understand common web development technologies and standards
  • Understand the principles of APIs
  • Understand the principle of relational and non-relational (NoSQL) databases
  • Awareness of commonly used open source database management systems
  • Awareness of REST and GraphQL
  • Awareness of single-page applications
  • Awareness of web application packaging
  • Awareness of WebAssembly
  • Awareness of content management systems

Files, terms, and utilities:

  • Chrome, Edge, Firefox, Safari, Internet Explorer
  • HTML, CSS, JavaScript
  • SQLite, MySQL, MariaDB, PostgreSQL
  • MongoDB, CouchDB, Redis

031.3 HTTP Basics

Description: The candidate should be familiar with the basics of HTTP. This includes understanding HTTP headers, content types, caching, and status codes. Furthermore, the candidate should understand the principles of cookies and their role for session handling and be aware of advanced HTTP features.

Key Knowledge Areas:

  • Understand HTTP GET and POST methods, status codes, headers and content types
  • Understand the difference between static and dynamic content
  • Understand HTTP URLs
  • Understand how HTTP URLs are mapped to file system paths
  • Upload files to a web server’s document root
  • Understand caching
  • Understand cookies
  • Awareness of sessions and session hijacking
  • Awareness of commonly used HTTP servers
  • Awareness of HTTPS and TLS
  • Awareness of web sockets
  • Awareness of virtual hosts
  • Awareness of common HTTP servers
  • Awareness of network bandwidth and latency requirements and limitations

Files, terms, and utilities:

  • GET, POST
  • 200, 301, 302, 401, 403, 404, 500
  • Apache HTTP Server (“httpd”), NGINX

032 HTML Document Markup

032.1 HTML Document Anatomy

Description: The candidate should understand the anatomy and syntax of an HTML document. This includes creating basic HTML documents.

Key Knowledge Areas:

  • Create a simple HTML document
  • Understand the role of HTML
  • Understand the HTML skeleton
  • Understand the HTML syntax (tags, attributes, comments)
  • Understand the HTML head
  • Understand meta tags
  • Understand character encoding

Files, terms, and utilities:

  • <!DOCTYPE html>
  • <html>
  • <head>
  • <body>
  • <meta>, including the charset (UTF-8), name and content attributes

032.2 HTML Semantics and Document Hierarchy

Description: The candidate should be able to create HTML documents with a semantic structure.

Key Knowledge Areas:

  • Create markup for contents in an HTML document
  • Understand the hierarchical HTML text structure
  • Differentiate between block and inline HTML elements
  • Understand important semantic structural HTML elements

Files, terms, and utilities:

  • <h1>, <h2>, <h3>, <h4>, <h5>, <h6>
  • <p>
  • <ul>, <ol>, <li>
  • <dl>, <dt>, <dd>
  • <pre>
  • <blockquote>
  • <strong>, <em>, <code>
  • <b>, <i>, <u>
  • <span>
  • <div>
  • <main>, <header>, <nav>, <section>, <footer>

032.3 HTML References and Embedded Resources (weight: 2)

Description: The candidate should be able to link an HTML document with other documents and embed external content, such as images, videos and audio in an HTML document.

Key Knowledge Areas:

  • Create links to external resources and page anchors
  • Add images to HTML documents
  • Understand key properties of common media file formats, inlcuding PNG, JPG and SVG
  • Awareness of iframes

Files, terms, and utilities:

  • id attribute
  • <a>, including the href and target (_blank, _self, _parent, _top) attributes
  • <img>, including the src and alt attributes

032.4 HTML Forms

Description: The candidate should be able to create simple HTML forms containing input elements of various types.

Key Knowledge Areas:

  • Create simple HTML forms
  • Understand HTML form methods
  • Understand HTML input elements and types

Files, terms, and utilities:

  • <form>, including the method (get, post), action, and enctype attributes
  • <input>, including the type (text, email, password, number, date, file, range, radio, checkbox, hidden) attribute
  • <button>, including the type (submit, reset, hidden, button) attribute
  • <textarea>
  • common form element attributes (name, value, id)
  • <label>, including the for attribute

033 CSS Content Styling

033.1 CSS Basics

Description: The candidate should understand the various ways to style an HTML document using CSS. This includes the structure and syntax of CSS rules.

Key Knowledge Areas:

  • Embedding CSS within an HTML document
  • Understand the CSS syntax
  • Add comments to CSS
  • Awareness of accessibility features and requirements

Files, terms, and utilities:

  • HTML style and type (text/css) attributes
  • <style>
  • <link>, including the rel (stylesheet), type (text/css) and src attributes
  •  ;
  • /*,*/

033.2 CSS Selectors and Style Application

Description: The candidate should be able to use selectors in CSS and understand how CSS rules are applied to elements within an HTML document.

Key Knowledge Areas:

  • Use selectors to apply CSS rules to elements
  • Understand CSS pseudo-classes
  • Understand rule order and precedence in CSS
  • Understand inheritance in CSS

Files, terms, and utilities:

  • element; .class; #id
  • a, b; a.class; a b;
  •  :hover, :focus
  • !important

033.3 CSS Styling

Description: The candidate should use CSS to add simple styles to the elements of an HTML document.>

Key Knowledge Areas:

  • Understand fundamental CSS properties
  • Understand units commonly used in CSS

Files, terms, and utilities:

  • px, %, em, rem, vw, vh
  • color, background, background-*, font, font-*, text-*, list-style, line-height

033.4 CSS Box Model and Layout

Description: The candidate should understand the CSS box model. This includes defining the position of elements on a website. Additionally, the candidate should understand the document flow.

Key Knowledge Areas:

  • Define the dimension, position and alignment of elements in a CSS layout
  • Specify how text flows around other elements
  • Understand the document flow
  • Awareness of the CSS grid
  • Awareness of responsive web design
  • Awareness of CSS media queries

Files, terms, and utilities:

  • width, height, padding, padding-*, margin, margin-*, border, border-*
  • top, left, right, bottom
  • display: block | inline | flex | inline-flex | none
  • position: static | relative | absolute | fixed | sticky
  • float: left | right | none
  • clear: left | right | both | none

034 JavaScript Programming

034.1 JavaScript Execution and Syntax

Description: The candidate should be able to execute JavaScript files and inline code from an HTML document and understand basic JavaScript syntax.

Key Knowledge Areas:

  • Run JavaScript within an HTML document
  • Understand the JavaScript syntax
  • Add comments to JavaScript code
  • Access the JavaScript console
  • Write to the JavaScript console

Files, terms, and utilities:

  • <script>, including the type (text/javascript) and src attributes
  •  ;
  • //, /* */
  • console.log

034.2 JavaScript Data Structures

Description: The candidate should be able to use variables in JavaScript code. This includes understanding values and data types. Furthermore, the candidate should understand assignment operators and type conversion and be aware of variable scope.

Key Knowledge Areas:

  • Define and use variables and constants
  • Understand data types
  • Understand type conversion/coercion
  • Understand arrays and objects
  • Awareness of the variable scope

Files, terms, and utilities:

  • =, +, -, *, /, %, –, ++, +=, -=, *=, /=
  • var, let, const
  • boolean, number, string, symbol
  • array, object
  • undefined, null, NaN

034.3 JavaScript Control Structures and Functions

Description: The candidate should be able to use control structures in JavaScript code. This includes using comparison operators. Furthermore, the candidate should be able to write simple functions and understand function parameters and return values.

Key Knowledge Areas:

  • Understand truthy and falsy values
  • Understand comparison operators
  • Understand the difference between loose and strict comparison
  • Use conditionals
  • Use loops
  • Define custom functions

Files, terms, and utilities:

  • if, else if, else
  • switch, case, break
  • for, while, break, continue
  • function, return
  • ==, !=, <, <=, >, >=
  • ===, !==

034.4 JavaScript Manipulation of Website Content and Styling

Description: The candidate should understand the HTML DOM. This includes manipulating HTML elements and CSS properties through the DOM using JavaScript as well as using DOM events in simple scenarios.

Key Knowledge Areas:

  • Understand the concept and structure of the DOM
  • Change the contents and properties of HTML elements through the DOM
  • Change the CSS styling of HTML elements through the DOM
  • Trigger JavaScript functions from HTML elements

Files, terms, and utilities:

  • document.getElementById(), document.getElementsByClassName(), document.getElementsByTagName(),document.querySelector(), document.querySelectorAll()
  • innerHTML, setAttribute(), removeAttribute() properties and methods of DOM elements
  • classList, classList.add(), classList.remove(), classList.toggle() properties and methods of DOM elements
  • onClick, onMouseOver, onMouseOut attributes of HTML elements

035 NodeJS Server Programming

035.1 NodeJS Basics

Description: The candidate should understand the basics of NodeJS. This includes running a local development server as well as understanding the concept of NPM modules.

Key Knowledge Areas:

  • Understand the concepts of Node.js
  • Run a NodeJS application
  • Install NPM packages

Files, terms, and utilities:

  • node [file.js]
  • npm init
  • npm install [module_name]
  • package.json
  • node_modules

035.2 NodeJS Express Basics

Description: The candidate should be able to create a simple dynamic website with the Express web framework. This includes defining simple Express routes as well as serving dynamic files through the template engine EJS.

Key Knowledge Areas:

  • Define routes to static files and EJS templates
  • Serve static files through Express
  • Serve EJS templates through Express
  • Create simple, non-nested EJS templates
  • Use the request object to access HTTP GET and POST parameters and process data submitted through HTML forms
  • Awareness of user input validation
  • Awareness of cross-site Scripting (XSS)
  • Awareness of cross-site request forgery (CSRF)

Files, terms, and utilities:

  • express and body-parser node module
  • Express app object
  • app.get(), app.post()
  • res.query, res.body
  • ejs node module
  • res.render()
  • <% … %>, <%= … %>, <%# … %>, <%- … %>
  • views/

035.3 SQL Basics

Description:The candidate should be able to create individual tables in an SQLite database and add, modify and delete data using SQL. Furthermore, the candidate should be able to retrieve data from individual tables and execute SQL queries from NodeJS. This does not include referencing or combining data between multiple tables.

Key Knowledge Areas:

  • Establish a database connection from NodeJS
  • Retrieve data from the database in NodeJS
  • Execute SQL queries from NodeJS
  • Create simple SQL queries excluding joins
  • Understand primary keys
  • Escape variables used in SQL queries
  • Awareness of SQL injections

Files, terms, and utilities:

  • sqlite3 NPM module
  • Database.run(), Database.close(), Database.all(), Database.get(), Database.each()
  • CREATE TABLE
  • INSERT, SELECT, DELETE, UPDATE

Web developer

Understanding of the principles of software development, HTML, CSS, JavaScript, Node.js and SQL