Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Kentico Connection Brno 2015 - Delivering Kenti...

Avatar for Ilesh Ilesh
December 02, 2015

Kentico Connection Brno 2015 - Delivering Kentico client sites successfully

Avatar for Ilesh

Ilesh

December 02, 2015

Other Decks in Technology

Transcript

  1. Agenda  MMT Digital  Ilesh Mistry  Common mistakes

    in site delivery  Delivering client sites  Questions @ileshmistry | #KenticoConnection
  2. Elevator pitch – We architect, design and build bespoke websites

    and applications that deliver outstanding user experiences. “ ”
  3. v

  4. Ilesh Mistry Mini Mistrys… - Short videos on various Kentico

    topics - How to guides - Smart Search is the beginning… - Any suggestions let me know @ileshmistry | #KenticoConnection
  5. Common mistakes in site delivery  Search doesn’t work 

    Analytics not working  Dropped in SEO ranking  Can’t access Online Marketing  Page is running slow  Can’t access admin area  Seeing error pages  Etc… Make sure you site is ready ready and not just finished @ileshmistry | #KenticoConnection
  6. Delivering client sites - Agenda  Kentico Connection Site Delivery

    Checklist (#KenticoConnectionSDC)  UI Admin  EMS configuration  Front End Optimisation Techniques  URLs & SEO  Performance  Caching  Testing during site development  Security  Staying alive  Any other things? @ileshmistry | #KenticoConnection
  7. UI Admin  Customise dashboard and applications list  Roles

    and permissions  Page Types child items  Workflow  Resize image on upload  Build all Smart Search indexes that are needed across site?  Cleaned up the content tree and removed any unwanted items?  Page type icons  Forms & Form Layouts  Switched on various settings  Clean up templates and widgets they can select  Kentico Editor output styling e.g. Bullet point list  Use the new Version 9 Web Parts and Widget Usages to locate @ileshmistry | #KenticoConnection New in Version 9
  8. EMS configuration  Set-up Widgets where you can?  Turned

    on/enabled Online Marketing options?  Enabled A/B Testing and MVT option  Enabled Content Personalization option  Thought about tracking conversions, if so use the conversion form control field  Mapped Form fields to allow for contacts within Kentico @ileshmistry | #KenticoConnection
  9. Front End Optimisation Techniques  Image optimisation  Store in

    Filesystem  Upload size  Store files elsewhere  Images  Videos  GZIP / output compression @ileshmistry | #KenticoConnection
  10. Front End Optimisation Techniques  Minification  (JS, CSS, Images

    etc…)  Task runner e.g. Grunt @ileshmistry | #KenticoConnection
  11. URLs and SEO  URL Redirects  Same URLs 

    Allowed extensions  Canonical Links  Page Not Found  Robots, Google Sitemap and Google Analytics  Thinking about multiple cultures would help with this  HTML structures and syntax  Structured data e.g. Schema.org (https://developers.google.com/structured- data/testing-tool/) @ileshmistry | #KenticoConnection
  12. Performance  Kentico documentation for speeding up the website 

    Web part performance best practice  Only render what is required for that section not unrequired items (e.g. non mandatory fields markup showing up)  Bad backend coding @ileshmistry | #KenticoConnection
  13. Performance  SQL Debugger  Real time SQL debugging 

    Looking at columns you need to use and not all  Different places to view it  Performance benefit  You know what to do when you have finished with it! @ileshmistry | #KenticoConnection
  14. Performance  SQL Debugger  Under Debug  SQL Queries

     Example of a Hierarchical Viewer with multiple Page Types @ileshmistry | #KenticoConnection
  15. Performance - Recommendations  I would recommend to always check

    the SQL Debugger / Kinspector  Then if things look bad, use the web part with SQL Query in them so you define what the query / data source is and it is not something you just let Kentico handle  There are always and will be different scenarios to use some options over others, it all depends per project @ileshmistry | #KenticoConnection
  16. Caching  What are you going to cache?  Main

    types  Output caching  Partial Caching  CacheHelper.Cache  Debugging cache  Output cache substitutions  To cache or not to cache that is the question @ileshmistry | #KenticoConnection private void BindGridCachedSection() { DataSet ds = null; using (CachedSection<DataSet> cs = new CachedSection<DataSet>(ref ds, new CacheSettings(60, "UsersDataset"))) { if (cs.LoadData) { ds = LoadUsersFromDB("UserEnabled=1"); } } grid.DataSource = ds; grid.DataBind(); } private void BindGridTheBest() { grid.DataSource = CacheHelper.Cache(() => LoadUsersFromDB("UserEnabled=1"), new CacheSettings(60, "UsersDataset")); grid.DataBind(); } Server/content cache Code from Petr Svihlik slides Kentico Developer Roadshow - London
  17. Testing during site development  Kentico validation  HTML 

    CSS  Link checker  Accessibility  Online validation @ileshmistry | #KenticoConnection
  18. Testing during site development  JS Unit Testing  Jasmine

    & Karma @ileshmistry | #KenticoConnection
  19. Testing during site development  JS Unit Testing  Jasmine

    & Karma @ileshmistry | #KenticoConnection
  20. Testing during site development  .Net Unit Testing  NUnit

     Mocking with MOQ outside Kentico  Custom Services @ileshmistry | #KenticoConnection
  21. Testing during site development  .Net Unit Testing  NUnit

     Mocking with MOQ outside Kentico  Custom Services @ileshmistry | #KenticoConnection
  22. Testing during site development  Cross browser and device testing

     Selenium automated testing @ileshmistry | #KenticoConnection
  23. Security  Run site through HTTPS  Stress Testing /

    Concurrent Testing e.g. Seige  Penetration Testing  Open Web Application Security Project (OWASP) Top 10 Security Vulnerabilities  Injection  Cross Site Scripting  Anti CSRF (Cross-Site Request Forgery)  Etc…  Now improved in version 9 protection against CSRF by employing anti-CSRF tokens  Great article by Juraj Komlosi on this @ileshmistry | #KenticoConnection
  24. Staying alive  There are tools out there that check

    sites  UpTrends  Uptime Robot  StatusCake  Pingdom  Get alerts before the client does so you can resolve them quickly @ileshmistry | #KenticoConnection
  25. Any other things?  Kentico Setup Installer  Follow my

    blog post on setting up a base site template @ileshmistry | #KenticoConnection