Web development tips and tricks


Published on

  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Web development tips and tricks

  1. 1. Web developmentTips and tricks By Mahmoud AlZarroug
  2. 2. Highlights• Definition• Architecture o Storage Tier o Server Tier o Client Tier• Common tips
  3. 3. A Web application is..• An application that utilizes Web browsers to accomplish one or more tasks over a network• It can be a simple static page or as advanced as a social network• Examples: o Twitter, Google Search, Facebook, GMail, Angry Birds (HTML5 version).. etc
  4. 4. Architecture
  5. 5. Web applications
  6. 6. Client-Servercommunication
  7. 7. Storage Tier
  8. 8. Storage TierWhere information is stored and retrieved.
  9. 9. What to choose?
  10. 10. Relational database • Utilize relationship between tables • Flexible • Easy to update/delete records • Avoids duplicate data
  11. 11. NoSQL database • Schema-less approach • Easy to Scale • Fast !
  12. 12. What database to choose? Depends on your Software requirements
  13. 13. Server Tier
  14. 14. Server side scripting
  15. 15. Key rules• Security• Performance• Scalability
  16. 16. Server Tier: Security• Cross Site Scripting (XSS): o enables attackers to inject client-side script into Web pages viewed by other users• SQL injection: o done by passing SQL statements in an entry field in an attempt to get the website to pass rogue SQL command to the database• denial-of-service attack (DoS attack): o an attempt to make a machine or network resource unavailable to its intended users• Remote code execution: o ability to execute any commands of the attackers choice on a target machine or in a target process
  17. 17. Server Tier: Performance• Minimize response time• Code matters !! o Find the simplest solution to a problem o Avoid too many database calls o Merge loops o Review your algorithms
  18. 18. Server Tier: Performance• Cache pages• Cache database queries• Use “Cache-Control” headers• Cache function returns
  19. 19. Server Tier: Performance• Merge JavaScript in a single file• Merge CSS in a single file• Compress CSS and JS in production
  20. 20. Server Tier: Scalability• The ability of a system to handle a growing amount of work in a capable manner or its ability to be enlarged to accommodate that growth
  21. 21. Scalability methods
  22. 22. Client Tier
  23. 23. Client Tier• Client Side Programming• User Experience• Browsers Compatibility
  24. 24. Client Side Programming Flash
  25. 25. User Experience1. Make pages load faster2. Don’t make the user think Use clear navigation, clear language, clear layout3. First Impressions Matter4. Show Your Credentials Buy a SSL cert if required, write copyrights professionally5. Remove stuff Cluttered content, ads
  26. 26. Browsers CompatibilityYou will definitely hate this guy
  27. 27. How to avoid it?• First step to avoid browsers compatibility issues is to know your users and the most common browsers between them• Minimize using CSS3 and HTML5 if possible or use an alternative depends on the browser• Use JS frameworks/libraries like Jquery or MooTools
  28. 28. Common Web development tips• For rapid development use MVC frameworks: o CodeIgniter, CakePHP, Django, ASP.NET• Use Cloud solutions for server architecture: o Amazon AWS, IBM Cloud, Azure• “Simplicity is the soul of efficiency” o -Austin Freeman• “Make it Work Before You Make it Fast” o -Brian Smits
  29. 29. Questions?Contact me anytime at: mahmoud @ acadox .comOr Twitter: @MaXo