Name
FED Technologies Overview

Code
3810

Duration
4 Hours

Description
This short seminar overviews today current technologies in front end development and includes a comparison between the alternatives. This seminar assists software development managers with selecting the right technologies for the specific projects they work on.

Population
Software developers and software development managers

Objectives
Become familiar with the various available technologies in order to pick the most suitable ones.

Prerequisites
Basic knowledge in JavaScript,CSS and HTML

Topics
Introduction to FED
Short overview for putting everyone on the same page when it comes to understanding the basics.
CSS and its Alternatives
Short overview for the CSS alternatives including LESS and SASS. Overviewing the benefits and the drawbacks.
CSS Frameworks
The Bootstrap frameworks as well as its many alternatives (some are very tiny and even simpler for use) can assist us with developing a responssive user interfacethat will fits both the desktop and the touch screen mobile devices. Overviewing the benefits and the drawback of using these very popular frameworks and especially of Bootstrap.
Fundamental JavaScript Libraries
jQuery as well as its alternatives as Mootools and Dojo provide us with an additional layer for using the DOM and the web browser various capabilities as a simple wrapper for ajax. Overviewing the benefits and the drawbacks when using a library as jQuery especially in the light of MV* frameworks as Angular React Backbones and others.
Desktop UI JavaScript Libraries
jQuery UI is the most popular one. However it isn't the only one. Alternatives include ExtJS KendoUI and few others. Using Bootstrap or using one of the available MV* framework is also an alternative. Overviewing the possibilities the benefits and the drawbacks.
Touchscreen Devices UI JavaScript Libraries
Using jQueryMobile seems to be the most popular option. Alternatives include KendoUI SenchaTouch and few others. Using Bootstrap is also an option. Overviewing the possibilities the benefits and the drawbacks.
HTML5 Capabilities
The HTML5 specification is mainly about the JavaScript APIs we can expect the web browser to support. The unofficial definition is the entire range of capabilities including those the HTML5 specification doesn't mention. We will go over some of the more interesting capabilities (without getting into writing the code itself) including those the HTML5 specification still doesn't include.
ECMAScript 2015 Specification (ES6)
The recently released spec provides us with many new capabilities. Apart of the capabilities to define classes there are few others that improve the JavaScript programming language and take it to the next level. Overviewing some of these improvements.
JavaScript Alternatives
There is a huge range of programming languages we can transpile their code into JavaScript. TypeScript seems to be the most popular one. Dart CoffeeScript Scala.js are three other alternatives worth mentioning. Comparing the possible programming languages with each other especially in the light of ECMAScript 2015.
Ajax and its Alternatives
Ajax is one way for communicating between the client and the server. Other possibilities are WebSocket and WebRTC. Overviewing the three options and comparing them with each other.
The npm Registry
Overviewing the npm JavaScript libraries registry demonstrating how to use it and overviewing the benefits and the drawbacks.
Building Tools
The development process of JavaScript applications has become more and more complicated. The need for a building tool has emerged. Overview some of today tools including Grunt and Gulp.
MV* Frameworks
Whether using React or Angular... or one of the other libraries that provide us with a similar solution (e.g. Aurelia) we get a more organized code. Less spagetty. Overviewing the benefits and the drawbacks of using such framework.
JavaScript Charts Libraries
Overviewing various JavaScript libraries for creating charts in the web pages we develop.