Successfully reported this slideshow.
Your SlideShare is downloading. ×

Debugging SEO - Language & Breaking Down

Debugging SEO - Language & Breaking Down

Download to read offline

There are various soft skills I've learnt over my career. I've gotten better at reporting, at presenting, telling people no... But none end up in demand as much as being able to debug. There are always going to be things you don't know and going back to first principles to pick them apart is incredibly useful skill.

It's not about being able to program, rather how to pick apart the common problems to make you more effective. I want to take people through how to think like this, everything from learning the language and keeping a summary swipe file, to how to breakdown, test and re-create.

There are various soft skills I've learnt over my career. I've gotten better at reporting, at presenting, telling people no... But none end up in demand as much as being able to debug. There are always going to be things you don't know and going back to first principles to pick them apart is incredibly useful skill.

It's not about being able to program, rather how to pick apart the common problems to make you more effective. I want to take people through how to think like this, everything from learning the language and keeping a summary swipe file, to how to breakdown, test and re-create.

More Related Content

Related Books

Free with a 30 day trial from Scribd

See all

Debugging SEO - Language & Breaking Down

  1. 1. Dominic Woodman @dom_woodman Distilled How to debug things http://www.slideshare.net/DominicWoodman
  2. 2. Language
  3. 3. Language Breakdown, Re-create, Test
  4. 4. What is debugging?
  5. 5. I use it to mean a specific kind of problem solving
  6. 6. I have a problem.
  7. 7. I get roughly what I need to do. I have a problem.
  8. 8. Language
  9. 9. I get roughly what I need to do. I have a problem.
  10. 10. I get roughly what I need to do. I know what I’m going to go and do now. I have a problem.
  11. 11. Breakdown, Re- create, Test
  12. 12. Language
  13. 13. “How to post a job in Drupal 7”
  14. 14. “How to use concrete to create the Taj Mahal”
  15. 15. “How to post a job in Drupal 7”
  16. 16. “How to post a job in Drupal 7” “How to create a page in Drupal 7”
  17. 17. “How to post a job in Drupal 7” “How to create a page in Drupal 7” “How to programmatically create a page in Drupal 7”
  18. 18. “How to post a job in Drupal 7” “How to create a page in Drupal 7” “How to programmatically create a page in Drupal 7” “How to programmatically create a node in Drupal 7”
  19. 19. Try to verbalise what we want “How to post a job in Drupal 7”
  20. 20. Look for information on a concept Try to verbalise what we want
  21. 21. Look for information on a concept Try to verbalise what we want Learn language 1
  22. 22. Look for information on a concept Try to verbalise what we want Learn language 2
  23. 23. Look for information on a concept Try to verbalise what we want Learn language 3
  24. 24. Look for information on a concept Try to verbalise what we want Learn language 4
  25. 25. Look for information on a concept Try to verbalise what we want 5 Research topic
  26. 26. The problem isn’t impossible Marketing problems are often hard only because there is so much complex language. #brightonSEO @dom_woodman
  27. 27. Look for information on a concept Try to verbalise what we want 5 Research topic
  28. 28. Look for information on a concept Try to verbalise what we want 5 Research topic
  29. 29. Try to avoid the language cycle Time is better spent to understand the concepts and the practicalities. #brightonSEO @dom_woodman
  30. 30. Other people
  31. 31. Other people Youtube tutorials
  32. 32. Other people Youtube tutorials Written tutorials
  33. 33. Other people Youtube tutorials Written tutorials Documentation
  34. 34. When to ask for help? Not sure when it’s ok to ask for help? If you’re stuck on language always ask for it. #brightonSEO @dom_woodman
  35. 35. Get people to ask about language Create an atmosphere in your team so people feel comfortable asking about language. #brightonSEO @dom_woodman
  36. 36. Look for information on a concept Try to verbalise what we want Learn language 1
  37. 37. Look for information on a concept Try to verbalise what we want 1 Research topic
  38. 38. Piece of cake.
  39. 39. It’s basically done.
  40. 40. I think I’ve got it.
  41. 41. Now I’ve got it.
  42. 42. Hmm hadn’t expected that.
  43. 43. Guys, I’m having a bad day.
  44. 44. You’ve found the answer but it’s intimidating
  45. 45. Stick with it until you comprehend Pull out parts and quickly test
  46. 46. Stick with it until you comprehend
  47. 47. Area Quick debugger JS Developer Tools (Console tab) Python CLI, PythonAnywhere CSS Developer Tools (Elements tab) Regex Regex101 Status codes & Directives Crawlbin Hreflang Hreflang tester, Hreflang Ninja Or find a way to QUICKLY test
  48. 48. Copy paste or actually read Reading without comprehending or trying is the easiest and least helpful. #brightonSEO @dom_woodman
  49. 49. “I have no idea how I installed it, so we just sudo remove all” Dominic Woodman - How to fix Drush
  50. 50. “Be careful with crawl paths.” Dominic Woodman - Notes on Ajax facets
  51. 51. Keep a notes file for definitions Write as if you won’t come back to it for 2 months. Future you will appreciate it. #brightonSEO @dom_woodman
  52. 52. I get roughly what I need to do. I have a problem.
  53. 53. I get roughly what I need to do. I know what I’m going to go and do now. I have a problem.
  54. 54. Re-create Breakdown & Test
  55. 55. Consistently re- create a problem A problem you can’t consistently re-create is a problem you can’t test and solve. #brightonSEO @dom_woodman
  56. 56. 4 1
  57. 57. Imitate location
  58. 58. Imitate user agent
  59. 59. Imitate Google’s IP
  60. 60. And location and user agent.
  61. 61. Imitate Google’s JS Rendering
  62. 62. This really is a pretty great tool.
  63. 63. Imitating Google for a single request The mobile testing tool or URL inspector in GSC will both show you the rendered DOM. #brightonSEO @dom_woodman
  64. 64. 41 41 41 41 41 41 41 41 41
  65. 65. 41 Website 1 41 41 41 Website 2 Website 3 Website 4
  66. 66. Index Crawling Rendering
  67. 67. 41 Your old, slow, website
  68. 68. 41 41 41 41 Your old, slow, website
  69. 69. 41 Your old, slow, website 00:00
  70. 70. 41 CACHE 41 EMPTY CACHE
  71. 71. Server resources Caching Periodic tasks Crawl resource Crawl render delay
  72. 72. Server logs can spot inconsistent problems If you’re seeing in-consistent problems, they’re best spotted in logs. #brightonSEO @dom_woodman
  73. 73. An example
  74. 74. On-page Off-page
  75. 75. You can’t re-create in the Bing validator :(
  76. 76. Exact competitor markup
  77. 77. On-page Off-page
  78. 78. { "@context": "https://schema.org", "@type": "Product", "aggregateRating": { "@type": "AggregateRating", "ratingValue": "3.5", "reviewCount": "11" }, "description": "Customers reviews of microwave.", "name": "Microwave Customer Reviews" }
  79. 79. { "@context": "https://schema.org", "@type": "Product", "aggregateRating": { "@type": "AggregateRating", "ratingValue": "3.5", "reviewCount": "11" }, "description": "Customers reviews of microwave.", "name": "Microwave Customer Reviews", "price": 120.99 } It’s a product without a price
  80. 80. { "@context": "https://schema.org", "@type": "Product", "aggregateRating": { "@type": "AggregateRating", "ratingValue": "3.5", "reviewCount": "11", "bestRating": "5", "worstRating": "1", }, "description": "Customers reviews of microwave.", "name": "Microwave Customer Reviews", } It doesn't have ratings bounds
  81. 81. On-page Off-page Missing fields No price No ratings bounds
  82. 82. { "@context": "https://schema.org", "@type": "Product", } It’s JSON-LD not microdata <div itemscope itemtype="http://schema.org/Product"> ... </div>
  83. 83. On-page Off-page Missing fields Data format No price No ratings bounds JSON-LD not microdata
  84. 84. On-page Off-page Missing fields Data format No price No ratings bounds JSON-LD not microdata
  85. 85. On-page Off-page Missing fields Data format Data values No price No ratings bounds JSON-LD not microdata
  86. 86. { "@context": "https://schema.org", "@type": "Product", "aggregateRating": { "@type": "AggregateRating", "ratingValue": "3.5", "reviewCount": "11" }, "description": "Customers reviews of microwave.", "name": "Microwave Customer Reviews" }
  87. 87. On-page Off-page Missing fields Data format Data values No price No ratings bounds JSON-LD not microdata Schema Protocol
  88. 88. WHY BING WHY
  89. 89. Break your problem into single tests Take your problem and break it into chunks that you can individually test. #brightonSEO @dom_woodman
  90. 90. bit.ly/debugging-checklist
  91. 91. bit.ly/brighton-debugging

Editor's Notes

  • Structure is better
    Found answer but intimidating - both paola and robin tied this to langauge loop
    Sam found intro slightly too long

  • Back in 2012, i had a death wish, I decided I wanted to do this: drive a motorbike down Vietnam. About 2000km. From hanoi to ho chi minh
  • I was expecting these gorgeous open roads that I’d roar down, clothes flapping in the wind.
  • Actually most of it looks like this. Take those open roads add, a couple thousand motorbikes, buses
  • Water barrels and goldfish
  • I drove this very loveable, but objectively crap bike. ( it had no headlights, handlebars that had basically rusted into 2, and a speedometer that never went below 90km even when parked.)
  • And this deathtrap that someone had attached wheels to made it 600 or so kms before failing (the first time) I knew had a issue, i was driving along a lovely mountain road, and the engine would shut off. It slowed i restarted the engine, pulled the throttle it went for a bit before the engine shut off again.
  • We head for the nearest town which is Dong hoi and pull into one of the 100s of mechanics shops that litter vietnam
  • Sat in that miserables mechanics, we debugged that bike. I was crap at debugging that bike for all the same reasons that people are bad at debugging anything
  • We head for the nearest town which is Dong hoi and pull into one of the 100s of mechanics shops that litter vietnam
  • I’d love to say these lads, knew all these things and were the world’s greatest mechanics

    But they werent.

    These lads were better than me but they still weren’t fantastic. They jumped straight to trying breakdown the problem and started randomly switching out pieces of the bike and trying to charge me money for it.
  • I’d love to say these lads, knew all these things and were the world’s greatest mechanics

    But they werent.

    These lads were better than me but they still weren’t fantastic. They jumped straight to trying breakdown the problem and started randomly switching out pieces of the bike and trying to charge me money for it.
  • I’d love to say these lads, knew all these things and were the world’s greatest mechanics

    But they werent.

    These lads were better than me but they still weren’t fantastic. They jumped straight to trying breakdown the problem and started randomly switching out pieces of the bike and trying to charge me money for it.
  • I’d love to say these lads, knew all these things and were the world’s greatest mechanics

    But they werent.

    This whole process is slow agnosing and awful

    These lads were better than me but they still weren’t fantastic. They jumped straight to trying breakdown the problem and started randomly switching out pieces of the bike and trying to charge me money for it.
  • And while they could breakdown the motorbike, we didnt know how to test it because we couldn’t re-create the problem

    We spend 3 days trying to solve this problem,
  • And while they could breakdown the motorbike, we didnt know how to test it because we couldn’t re-create the problem

    We spend 3 days trying to solve this problem,
  • endlessly re-watching National Treasure 2 and almost missed my visa deadline.
  • endlessly re-watching National Treasure 2 and almost missed my visa deadline.
  • endlessly re-watching National Treasure 2 and almost missed my visa deadline.
  • endlessly re-watching National Treasure 2 and almost missed my visa deadline.
  • By day 3 they literally tore out my carbeaurettor and put in a new one.
  • And while they could breakdown the motorbike, we didnt know how to test it because we couldn’t re-create the problem

    We spend 3 days trying to solve this problem,
  • And while they could breakdown the motorbike, we didnt know how to test it because we couldn’t re-create the problem

    We spend 3 days trying to solve this problem,
  • And while they could breakdown the motorbike, we didnt know how to test it because we couldn’t re-create the problem

    We spend 3 days trying to solve this problem,
  • This is when you ask for help. Ask people to teach you the language to solve your problems.
  • The documentation will contain lots of information that will be super useful, WHEN you know the language
  • And while they could breakdown the motorbike, we didnt know how to test it because we couldn’t re-create the problem

    We spend 3 days trying to solve this problem,
  • For problems in search re-creating means re-creating what google is seeing

    In search being able to re-create a problem, usually involves mimicing google
  • Pretty good imitation but not quite the same
  • First point mimic google for a single request
    Be more clear
  • First point mimic google for a single request
    Be more clear
  • Be more specific
  • Be more specific
  • Be more specific
  • Be more specific

×