Web Application Bootcamp

Request more details:

submit request
Description:
You are a software engineer and have been working on varied projects for most of your career, mostly client-server. Recently you have been asked more and more frequently to deliver stuff for the web. You have figured out some dynamic web application techniques using jsp or php but your results don’t really seem to cut it. This course is designed to take experienced programmers and turn them into web application developers. It will give participants the tools, skills, mindset and confidence to produce cutting edge web applications.
Prerequisites:
Experience of software development – any language will do. This course is designed for people who are experienced in software development who now need to deliver cutting edge web applications.

It assumes no knowledge of programming for the web but any experience will be beneficial. The 'Getting Started' module will be tailored to suit the participants' prior knowledge.
Module 1 – Getting Started:
Tools
• The right editor (syntax highlighting, intellisense, code completion)
• The right environment
• The right debugger
Programming for the Web
• So what is a web application?
• What does a webserver actually do?
• What happens when a http request is made?
• What does a webbrowser actually do?
Static Content – HTML/XHTML/CSS
• Enough HTML to get started
• CSS Basics
• Creating a fluid 3 column layout
Dynamic Content with your choice of server side language (php, jsp, other)
• Dynamic web content basics
HTML Forms
• HTML forms – the backbone of traditional web applications.
• The difference between GET and POST requests.
• Maintaining state in a stateless protocol
• Form variables / hidden variables
• Session variables
• Cookies
• Processing a form submission
Module 2 – Getting Productive:
Javascript
• Understanding client-side programming
• Introduction to javascript syntax
• Javascript examples
Form Validation
• Server side form validation
• Client side form validation
• Why use one or the other or both?
Databases
• Connecting to your choice of database
• Viewing records
• Add, Edit, Delete using forms
Ajax
• Eliminating page refreshes
• XMLHTTPRequest
• Callback functions
• GetElementById
• Processing XML
• Processing JSON
Module 3 – Getting Good:
Web Services
• What is a web service?
• Creating a restful web service
• Making calls to the web service
• Processing the response
Advanced CSS
• Layouts
• Menus
• Rounded corners
• Browser inconsistencies
AJAX Patterns
• Visual effects and animations
• Progress indicators
• Dynamically loaded popup divs
• Edit in place
• Suggestion dropdowns for text edit boxes
• Datagrids
Javascript Frameworks
• Why use a javascript framework?
• What frameworks are available?
• Introduction to jQuery (or other framework if preferred)
Web Application Security
• Resource enumeration
• Parameter manipulation
• Cross-site scripting
• Denial of service
• Form inputs
• Ajax specific concerns
Introduction to other concerns
• Usability
• Accessibility
• Internationalisation
• Search Engine Optimisation