Front End Development
This course focuses on the relevant classic web technologies for developing the client side of web applications and hybrid ones. Whether your target is developing a cross platform hybrid mobile application, a single page web application or a classic simple one this course is for you. This course focuses on the use of JavaScript, the jQuery library, the bootstrap framework and on HTML5. The course includes 90 academic hours organized in 5 parts, that take place in class, and 360 academic hours (and beyond) that take place at home. The training material (slides, video clips, assignments, solutions and code samples) for the entire course is organized in small online courses on the e-learning platform we use during the course. The entire course is captured on video in order to allow the participants to go over the material (effectively) in between the meetings. In addition, in order to assist those who cannot attend (as a result of military reserve or travelling abroad) the course is delivered online (sharing trainer computer using the gotomeeting platform). This way, the students can attend remotely.
Introductory Topics (1th Part)
This part covers the very basic topics in software development which are necessary in order to learn all other topics the course includes. This part focuses on the very basic topics in procedural programming, the basics of HTML, the basics of CSS and the basics of JavaScript. (10 academic hours)
Software Development in JavaScript (2nd Part)
This is the main part of the course. It covers the JavaScript programming language and is essential for the rest of the course. You cannot learn HTML5 nor any of the other topics this course includes without knowing JavaScript. (60 academic hours)
The Bootstrap Framework (3rd Part)
This part focuses on developing responsive web pages using the bootstrap framework. (5 academic hours)
The HTML5 Ecosystem (4th Part)
The HTML5 ecosystem is everything the HTML5 specification covers and beyond. We will start with covering the official parts of HTML5 and continue with some of the more interesting HTML5 capabilities that still weren’t added to the specification. (15 academic hours).
Meeting | Topic | Online Course |
1 | Fundamental Topics | Introduction to The Internet
HTML Fundamentals |
2 | Fundamental Topics | Introduction to Procedural Programming HTML Fundamentals HTML Style Guide |
3 | JavaScript | JavaScript Programming |
4 | JavaScript | JavaScript Programming Array Date |
5 | JavaScript | Object Oriented Programming Number String Math Window Location Navigator Screen History |
6 | JavaScript | JavaScript Programming |
7 | JavaScript | JavaScript Programming Lambda Expressions |
8 | JavaScript | Ajax Fundamentals |
9 | JavaScript | Object Oriented Programming |
10 | CSS & JavaScript Libraries | Twitter Bootstrap |
11 | HTML5 | Introduction to HTML5 Introduction Video Capturing |
12 | HTML5 | Introduction to HTML5 |
13 | HTML5 | Introduction to HTML5 |
14 | JavaScript | Style Guide
|
15 | JavaScript | Asynchronous Functions
|
16 | JavaScript | T.B.A. |
17 | JavaScript | T.B.A. |
18 | JavaScript | T.B.A. |
Changes Logs:
August 15th, 2013:
The topic ‘MV* Design Patterns’ was added to the JavaScript topic in meeting 11.
September 1th, 2013:
The following JavaScript libraries were added to the ‘Client Side JavaScript Libraries’ topic in meeting 18:
Microtext.js
UAParser.js
Paper.js
Math.js
String.js
OpenLayers.js
LESS.js
Google Charts
Google FontLoader
Turn.js
September 16th, 2013:
Video Capturing was added to the HTML5 topic.
Lambda Expressions was added to the JavaScript Programming topic.
October 16th, 2013:
Code Linting and Iterators were added to the JavaScript Programming topic.
Grunt Basics was added to the the Server Side in JavaScript topic.
MySQL and Basics were added to the node.js sub-topic in Server Side in JavaScript topic.
December 17th, 2013:
The topics covered in AngularJS were changed. More topics were added. The animation topic was removed (it isn’t why we want to use angularjs).
January 2th 2014:
The topics List.js, Pixastic.js and Numeral.js were added.
June 12th 2014:
The HTML5 File API topic was added.
June 14th 2014:
The IndexedDB topic was added.
July 22th 2014:
The JSON, JSONP, Cross Domain Requests and Mashups sub topics were added to the Ajax Fundamentals topic.
July 26th 2014:
The HTML Style Guide and the CSS Style Guide topics were added.
August 27th 2014:
The Ajax, Modules, Directives and Modules topics were added to the AngularJS topic.
October 10th 2014:
The following topics were taken away and they are now covered in the Software Engineering in JavaScript course. You can find the detailed plan of this course at http://tinyurl.com/lifemichaeljs:
Node.js
Grunt
QUnit Testing Framework
The new available hours (10 in total) are added to covering the AngularJS framework.
October 12th 2014:
The Design Patterns in JavaScript topic is taken away. The available hours (10 in total) are added to covering the jQuery framework.
May 10th 2014:
The jQuery topic was splitted into two separated topics. jQuery and jQuery UI. Both topics received new subtopics.
October 25th 2015:
More topics were added to HTML5. More hours were added to AngularJS. TypeScript new part was added (10 hours). JavaScript was updated with ECMAScript 2015 topics (some topics that already exist were updated and new topics, such as Data Structures, Reflection etc. were added). More hours were added to Bootstrap. Many topics in JavaScript Libraries big topic will be self studied in order to allow us having 25 hours dedicated to AngularJS 2.X and 20 hours dedicated to jQuery, jQueryMobile and jQuery UI. The Development Tools new part was added (2 horus). Few more topics were added to the list of self studied topics.
December 29th 2015:
AngularJS 2.x gets 5 more academic hours (30 academic hours in total) in the expense of jQuery that will be covered in 20 academic hours (instead of 25).
December 30th, 2015:
The ‘Cross-site HTTP requests’ and the ‘FormData Object’ sub topics were added to the Ajax Fundamentals topic.
October 9th, 2017:
The cover for many small topics was shrinked in favor of a better coverage for Angular 4. You now get 10 academic hours for TypeScript and 40 academic hours for Angular 4.
October 10th, 2017:
The introduction hours were shortened to 8 (instead of 10), and the CSS hours were shortened to 2 (instead of 10). 10 more academic hours were added to Angular!
April 7th, 2018:
The course was split into two courses. Angular Fundamentals and Front End Development.
July 4th, 2018:
The ‘Flexbox Basics’, ‘Fetch API Basics’, ‘Responsive Web Pages’ and ‘Web Accessibility’ topics were added. The ‘Promises’ and the ‘Service Worker’ sub topics in JavaScript was added.
October 14th, 2018:
Taking out the jQuery UI topic (old and irrelevant). The ‘Fundamental Topics’ (html, flowing charts and first steps with JS) part gets 2 more academic hours. The ‘User Interface Design’ part gets 3 more academic hours, and the new section ‘User Interface Design’ is created. The ‘Twitter Bootstrap’ topic now gets 5 academic hours (instead of 10).
October 15th, 2018:
The topics Proxies, Promises and Service Workers were taken away from this course. They will be delivered in our coming new Extreme JS seminar.
August 29th, 2021:
The hours’ allocation for jQuery, and jQuery Mobile was minimized to 1 meeting only (instead of 3). The jQuery, and jQuery Mobile are still very popular (jQuery is still the most popular JavaScript library), however, the direction is clear. Its market share is decreased and in the long run, it would be less popular (significantly). The Promises, and Async/Await topics were added.
September 29th, 2021:
1. The two meetings that focus on CSS are taken away. The rationale: CSS has become a huge topic. It is usually a topic that people learn on their own. You can also check out the course at https://css.course.lifemichael.com.
2. The meeting that focuses on Accessibility is taken away. The rationale: This meeting deals with topics you can easily learn by yourself.
3. The meeting that focuses on jQuery, jQuery Mobile and jQuery UI is taken away. The rational: Till recently the jQuery, jQueryMobile and jQuery UI topics were covered in two meetings. The jQuery library is still very popular... however, the direction is clear. Now that Bootstrap newest version stopped using jQuery, and most new websites are developed using React/Angular/Vue.js.. I believe it would be a good idea to take that topic away.
4. Small introduction to CSS is added to the 2nd meeting (as a result of change #1).
5. 4 meetings are now added to cover advanced topics in JavaScript.
6. The separation of all sub topics into 6 topics is cancelled. The sub topics are now organized into 4 topics only: Introductory (2 meetings), Bootstrap (1 meeting), and JavaScript (12 meetings), and HTML5 (3 meetings). Most of the HTML5 topics (more than 90%) are APIs in JavaScript we can use in the web browser (some of them are relevant for the server side as well).
7. Adding advanced topics in JavaScript (T.B.A.).