3. • Easy to learn
• Easy to implement
• Immediate results
• Very versatile
The role of JavaScript
4. JavaScript makes the web a
much easier, faster and
prettier place.
The role of JavaScript
5. Ajax is to web pages what
instant messaging is to email.
The role of JavaScript
6. JavaScript can also make the
web a most frustrating and
insecure experience.
The role of JavaScript
7. It is up to us as educators to
teach the sensible use of
JavaScript.
The role of JavaScript
8. Behaviour
JavaScript
Look and Feel
CSS
Structure, Semantics
HTML
Logic, Data, Validation
Backend
The role of JavaScript
9. • Separation of concerns
Keeping these
layers separated
• Parallel development
has lots of
• On-demand changes
benefits:
are easy to achieve
• Support for all
environments and user
agents.
The role of JavaScript
10. JavaScript
CSS
HTML
A traditional web
site would be
something like
this:
Backend
The role of JavaScript
12. • Performance
There are
several good
• Server traffic savings
reasons for this:
• Increased usability
through to more
responsive interfaces
• Reduction of redundant
steps.
The role of JavaScript
13. • There is no security in
There are several
JavaScript
good reasons
• You cannot expect
speaking against
JavaScript to be enabled
this:
• Maintaining JavaScript is
very hard.
The role of JavaScript
14. • JavaScript is the village
Why is
bicycle: everyone can
maintaining
have a ride.
JavaScript hard?
• There is no official
training or
accreditation.
• It is implemented in
browsers and they are
constantly changing
The role of JavaScript
15. • We’re at a stage where
Why is
making things work is
maintaining
more important than
JavaScript hard?
creating quality code.
• Re-use is harder and
more expensive than
starting over.
The role of JavaScript
17. We have to initiate a change in
perception of JavaScript.
The role of JavaScript
18. It is not a toy language but an
integral part of modern web
development.
The role of JavaScript
19. Due to its low level of entry it is
a great language to allow
developers access and use your
systems.
The role of JavaScript
20. For this we need to define some
educational goals:
The role of JavaScript
21. • Building on best
Goals for teaching
practices: progressive
JavaScript:
enhancement,
maintainability,
modularity.
• Removing the random
browser element.
The role of JavaScript
22. • Progressive
Progressive
enhancement means
Enhancement
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
23. • Maintainable code is
Maintainability
very hard to find.
• The reason is that we
hack JavaScript together
rather than following
agreed architectures
and methodologies.
The role of JavaScript
24. • JavaScript solutions tend
Modularity
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
25. This, and the removal of random
browser problems is the job of
JavaScript frameworks.
The role of JavaScript
26. Frameworks are there to make
our lives as developers easier -
not be a replacement for
JavaScript.
The role of JavaScript
27. There is nothing wrong with
using a framework to make our
code work across different
browsers.
The role of JavaScript
28. 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
29. Our goal should be to teach new
developers to develop and
deliver not to fix problems and
write workarounds.
The role of JavaScript
30. There are several challenges to
be overcome until we get there.
The role of JavaScript
31. • Lack of official
Challenges
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
32. 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
33. 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
34. Christian Heilmann
THANKS!
http://wait-till-i.com
http://slideshare.net/cheilmann
http://scriptingenabled.org
chris.heilmann@gmail.com
The role of JavaScript