Development

Testing checklist

  • Functional Testing
    • Test all pages for errors
    • Test all forms
      • Check the results
      • Check that validation is working correctly
  • Usability Testing
    • Is navigation easy
    • Is the content correct
    • Links to help docs
  • Compatibility Testing
    • Across browsers
      • Chrome
      • Firefox
      • Safari
    • Mobile Devices
    • What happens on unsupported browsers?
  • Performance Testing
    • How fast is the application?
    • Can the site be optimized?
      • Caching data/ assets
      • More Efficient queries
  • Security Testing
    • SQL , XSS injection attacks
    • Update policy
    • Software stack, correct settings, updated software etc…

Test Driven Development

Writing code to satisfy tests

Should know what your code need to do before it is written

Write the test before writing the code

  • Red
    • Write a failing test, should stat what needs to happen
  • Green
    • Code Meeds the test
  • Refactor
    • Make the code safe, secure and beautiful

Run Test frequently

Tests can be run automatically on submission to the central repository

Modern Web

Not always written in PHP

Facebook use a PHP -> C++ compiler for performance reasons

PHP Frameworks can do the heavy lifting

Other language

  • Ruby on rails
  • Scala
  • Play Framework

Many Technologies are combined to build a web application

Ruby

  • General purpose
  • OOP and functional styles are supported
  • Large software library

    Rails

    Collection of libraries that work together

  • Active Record - Object relational mapping for database entities
  • ActiveResource - For web services
  • ActionMailer - Manages Email Functionality
  • ActionPack - Manages mapping URLs to correct applications

Front end

some tips

  • Learn photoshop for simple mockups
  • Learn ins/outs of Javascript
  • Find out about browser inconsistencies

Frameworks

  • Javascript
    • Angular.js
    • React.js
    • Vue.js
  • Other
    • Django (Python)
    • Flask (Python)

CSS

Css can be difficult

Sass extends css syntax to offer nested rules, named variables , mixins

This then compiles down to css

Back End

tips

  • Looks at you language / framework handles background jobs
  • Look at cloud based storage
  • Ensure you can use web services
  • Work out how to do proper performance testing
  • Learn about the software stack