There are many reasons why SEO’s may wish to learn a programming language. This guide deals with the “how”, rather than the “why”. If you have arrived here wondering if Python ( or programming ) is for you – a great starting point is Britney Muller’s fantastic whiteboard Friday which covers the benefits of learning to program.
So why another guide? There are a great many “learn Python” tutorials out there. However – many are aimed at people wanting to program, rather than get things done. We felt it would be beneficial to the SEO community to take a different approach – introducing enough of the basics to find your way around the language, and then look at some more industry specific use cases.
That’s our philosophy: Just enough theory followed by practical.
Who is this Guide for?
This series is aimed at two groups of people – Technical SEO’s who want to learn Programming and Computer Programmers who want to understand more about SEO.
If you are a Technical SEO – The early parts of this series are aimed at you! You will be introduced to programming from first concepts, using examples we hope are reasonably familiar to you. You may have some programming experience ( perhaps without realising it ? ). Maybe you’ve done some programming in school, or written a few complex excel macros, or business rules in Zendesk. This series aims to build upon this level of knowledge to introduce Python in a practical way that is of benefit to SEO activity.
If you are a Software developer – Welcome! Some of the early material may be familiar to you – but a scan may be beneficial. After our SEO-Savvy audience has been introduced to the technicalities of programming, we hope to produce content you may find interesting. You may find it helpful to begin this course with our Beginners Guide to Search Engine Optimisation
Why two Audiences? We initally aimed this series at the growing number of Technical SEO’s who are becoming interested in Python. However, we’ve also had positive feedback from developers interested in SEO.
While we may feature Majestic Data on occasions ( this is Python for SEO after all ) – don’t worry – there will be lots of benefit that will not require a Majestic subscription to realise.
In the hands of a capable developer, the choice in languages becomes a toolbox – choosing one is a matter of the developer deciding which is most appropriate for a given task.
There are a few reasons why we decided to choose Python for this course:
1) Popularity – Python is not only popular but growing in popularity
2) Ease of use – Python can be easier to get into than some other languages
3) Free – Python has great tooling available at little cost
4) Applicability to data analysis. Python is growing in popularity and tends to be one of the languages of choice for data analysis
5) Material – There is loads of material out there for learning Python and a great support community.
We hope you get a lot from this course, but hope it goes without saying that we cannot consider every eventuality or guarentee suitability – this material is presented on an as-is, and without warentee basis.
This is the introduction to a multipart series “Learn Python For SEO“:
Contents: This page – “Learn Python For SEO” is an overview of the course.
Part 1: “Thinking in Algorithms and Writing Pseudocode“, Introduces the fundamental programming concepts you will need to get the most out of practical exercises later.
Part 2, “Python – A practical introduction” Gives a hands-on guide to Python using an online Python Interpreter – no complex software installation required. You’ll start with “Hello World” and end up extracting content from a web page!
Part 3: “Python – Install Python and Download Your First Website” moves to using a local IDE leveraging Python to download webpages en masse.
This post will be updated as new sections are released.
Your feedback welcome!
Feel free to add a comment to this post if you have any queries with the content of it. We will be more than happy to answer on-topic programming related questions in the comments following each post, but please keep in mind that we cannot offer support for your programs or bespoke software development. Our aim is to help you establish a foundation of programming skill that can help you get more out of SEO by showing how tasks can be automated using short programs.