The Role Of Java Script

Post on 28-Jan-2015

111 views 2 download

Tags:

description

An introduction to JavaScript for educators at Ed Directions, a workshop at Web Directions North.

Transcript of The Role Of Java Script

The role of JavaScript

The role of JavaScript

The fabled animal called JavaScript

The role of JavaScript

• Easy to learn

• Easy to implement

• Immediate results

• Very versatile

The role of JavaScript

JavaScript makes the web a much easier, faster and

prettier place.

The role of JavaScript

Ajax is to web pages what instant messaging is to email.

The role of JavaScript

JavaScript can also make the web a most frustrating and

insecure experience.

The role of JavaScript

It is up to us as educators to teach the sensible use of

JavaScript.

The role of JavaScript

Backend

HTML

CSS

JavaScript

Logic, Data, Validation

Structure, Semantics

Look and Feel

Behaviour

The role of JavaScript

Keeping these layers separated has lots of benefits:

• Separation of concerns

• Parallel development

• On-demand changes are easy to achieve

• Support for all environments and user agents.

The role of JavaScript

Backend

HTML

CSS

JavaScript

A traditional web site would be something like this:

The role of JavaScript

A common web application right now is more like this:

Backend

HTML

CSS

JavaScript

The role of JavaScript

There are several good reasons for this:

• Performance

• Server traffic savings

• Increased usability through to more responsive interfaces

• Reduction of redundant steps.

The role of JavaScript

There are several good reasons speaking against this:

• There is no security in JavaScript

• You cannot expect JavaScript to be enabled

• Maintaining JavaScript is very hard.

The role of JavaScript

Why is maintaining JavaScript hard?

• JavaScript is the village bicycle: everyone can have a ride.

• There is no official training or accreditation.

• It is implemented in browsers and they are constantly changing

The role of JavaScript

Why is maintaining JavaScript hard?

• We’re at a stage where making things work is more important than creating quality code.

• Re-use is harder and more expensive than starting over.

The role of JavaScript

So what can be done?

The role of JavaScript

We have to initiate a change in perception of JavaScript.

The role of JavaScript

It is not a toy language but an integral part of modern web

development.

The role of JavaScript

Due to its low level of entry it is a great language to allow

developers access and use your systems.

The role of JavaScript

For this we need to define some educational goals:

The role of JavaScript

Goals for teaching JavaScript:

• Building on best practices: progressive enhancement, maintainability, modularity.

• Removing the random browser element.

The role of JavaScript

Progressive Enhancement

• Progressive enhancement means that we add JavaScript as an interactive layer onto a working solution.

• Every step on the way we test for support before applying functionality.

The role of JavaScript

Maintainability • Maintainable code is very hard to find.

• The reason is that we hack JavaScript together rather than following agreed architectures and methodologies.

The role of JavaScript

Modularity • JavaScript solutions tend to be one-offs without an easy way to extend or change to different needs.

• This stops re-use and per-case extension.

The role of JavaScript

This, and the removal of random browser problems is the job of

JavaScript frameworks.

The role of JavaScript

Frameworks are there to make our lives as developers easier -

not be a replacement for JavaScript.

The role of JavaScript

There is nothing wrong with using a framework to make our

code work across different browsers.

The role of JavaScript

It is a better way of developing than following the w3c or ECMA recommendations to the T and

failing to deliver working code.

The role of JavaScript

Our goal should be to teach new developers to develop and

deliver not to fix problems and write workarounds.

The role of JavaScript

There are several challenges to be overcome until we get there.

The role of JavaScript

Challenges • Lack of official JavaScript courses

• Lack of promotion of code that builds interfaces - Web Development is HCI and CS.

• JavaScript is a Jack of all trades.

The role of JavaScript

The market needs good JavaScript developers, the

support and implementation of this versatile and easy language

is going nowhere but up.

The role of JavaScript

It is up for us educators to help the market hire pragmatic and quality-oriented developers

directly from school and university without the need for

internal re-education.

The role of JavaScript

THANKS! Christian Heilmann

http://wait-till-i.com

http://slideshare.net/cheilmann

http://scriptingenabled.org

chris.heilmann@gmail.com