Search Engine Basics – Climb to the top of Google

The high demand for search continues to rise because people can obtain information much quicker as opposed to the past where they had to make a trip to the closest library to learn. We live in a digital era nowadays where most shopping, banking, and other transactions are conducted online. For the website to exist nowadays, it needs to be visible on the internet.

What is organic SEO and why is it a challenge for marketers?

Organic (natural) SEO refers to appearing in the top position of Google in unpaid, algorithm-driven results. A good SEO plan involves getting to know the audience behind a particular brand, their interests and needs. What keywords (shorter or longer search phrases) are they likely to type? What is their intent? We differentiate between navigational, informational, and transactional queries.

Navigational queries: Here users have a particular website in mind and if you are not that website, they will omit you. In this example, the branded searches tend to drive most high traffic value that is likely to convert.

Informational queries: They are the hardest to target because the scope is usually broad. Informational queries can lead to conversion but do not have to. These are all the questions that users type with an intent to get as much information as they can on something that intrigues them. It is where search engines usually display blogs, how-to videos, and other guides in search results.

Transactional queries: Those queries do not necessarily involve an immediate transaction but they may lead to it. Some examples of transactional queries can be signing up for a free trial account, searching for specific products to buy or looking for restaurants, hotels, flights and similar.

Summarising, the biggest challenge for marketers is to make sure that the content on a website is optimised to match the exact needs of the specific target audience for that website.

What is SERPs? (Search Engine Results Pages)

Search engine result pages are the pages that search engines return to fulfill a query. Google, Yahoo, and Bing have one specific goal in mind and it is to deliver the most accurate results to their users. The layout of those search engines slightly differ but they all include the following sections:

Vertical navigation – it is somewhat a navigation menu where users can choose how they want to view the search results (images, news, videos, or maps).

Search query box – this is where users type their queries.

Result information – this is metadata (short introduction text underneath URL).

PPC advertising – Google AdWords or Bing adverts.

Natural/organic/algorithmic results – these are the search results pulled from the search engines based on their complex algorithms.

Apart from the above ‘standard’ results search engines also show vertical results or instant answers. I have already written a blog post that talks more about structured data and featured snippets. Getting placed in the vertical result can be a significant win for an SEO practitioner.

Google’s Knowledge Graph & Google Knowledge Graph Card/Panel – what’s the difference?

Google’s Knowledge Graph is a system that has been launched by Google in 2012 to expand the horizons of the search results. This new technology can discover the connections between different people, places, and things and display the results in entities alongside Google’s traditional search results. Google’s Knowledge Graph card or panel is an information box placed on the right-hand side after googling a specific search term. Google can understand, for example, that Marie Sklodowska-Curie (people) was a physicist born in Warsaw (places) that was married to Pierre Curie (relations) and gained her fame by discovering radium and polonium (things). In the section ‘People also search for’, Google will put people who are the relatives of Marie Sklodowska-Curie such as her husband or children or other physicists. This proves that Google can understand the further connections between people as well as things. It can see those connections thanks to its factual database which includes information about and relationships between millions of entities (entities are people, places, and things). Type ‘Marie Sklodowska-Curie in Google and check it yourself.

Crawling, Indexing and Ranking

Search engines have one crucial job. It is to provide the best and most accurate results to their users. Two factors play a significant role in determining whether a website will show up in SERPs. These are the relevance and importance. Relevance is a measure of how the content matches the intent of a user whereas the importance refers more to an authority that the website has earned online. If both are high, the chances of ranking increase significantly.

How do search engines find new websites? – Crawling

Search engines (Google, Yahoo, Bing, etc.) have automated software programs that are called crawlers or spiders that scan through trillions of documents (pages and files) on the web to search for the most relevant content to specific queries.

Please note that other countries use different search engines. The way Google or Bing operate does not necessarily apply to them. Some examples of popular search engines used in other countries are Yandex (Russia), Baidu (China), Seznam (Czech Republic), or Naver (North Korea).

Going back to the primary question. The automated program (bot) starts with crawling the already high-quality seed websites that it stores in an index (search engine’s database). It visits the links on each page of those websites to look for new web pages. What does it mean? It is simple – your website can be found through links from other sites on the internet pointing to it. Do you want to speed up the discovery process? If you want Google to find your website faster, you may want to add it to Google Search Console. This approach will help you to queue your website for the next crawl.

There are some limitations to what search engines can see on the website. They may have difficulties with reading images, videos, some JavaScript codes, or iFrames. This, however, does not mean that they will continue to have those problems in the future as there are updates taking place regularly.

A few words on robots.txt file and sitemaps

What is robots.txt file and why is it important for SEO? Here’s an answer. Before crawling any website, the automated program will look for instructions. Those instructions are in robots.txt file. Thanks that the bot knows what pages it can crawl and what pages it has no access to. I highly recommend checking Neil Patel’s blog post that tells more about how to best leverage the robots.txt file for SEO.

What is sitemap?

Sitemap in very short is a hierarchical collection of all the pages on a website. It is very useful for an automated bot because it helps it to discover all those pages faster. The sitemap should include only the important pages on the website to avoid wasting the crawl budget. Check out Backlinko’s blog post if you want to learn more about the crawl budget.

Does crawling guarantee indexing?

It’s one-third of the success knowing that a website has been crawled. I strongly believe that this is where the technical SEO plays a crucial role. Technical SEO is like the foundation that serves for all the further work such as content creation, promotion, and link building. An automated program after visiting the website will check for all sorts of things. Some of them are the content of each page, navigation links, the value of the content, the length of the content, videos, images, and more. Although limited in its ability, it will try to identify if the particular website is a good match for the given query.

Below are some questions that you can run through to see if an automated bot is likely to consider your website as a valuable source of information:

Is my website architecture clear?
Are the URLs on my website readable?
Are my images optimised? Do they have an alt tag?
Is my code clean and readable to search engines? 
What is my website about? Do I write blogs that are relevant to my business? Are they helpful to users? 
Is my content high quality? Do I have decent grammar?
Do I have internal links on the website for better navigation and user experience?
Is my content unique?
Do I use headings and subheadings to provide better structure to my blogs?

Ranking – the final part

Many ranking factors dictate whether a website will appear in search results. Mobile-friendliness, loading speed, domain age, technical SEO, links, and optimised content are the most important indicators of success. There are plenty of online resources that can help you to start off with SEO. It does not necessarily mean that you need to have all those things right to appear in SERPs. Sometimes a few changes such as implementing structured data, writing about a unique but highly demanded subject, or simply improving overall user experience can bring unexpectedly positive results.


We live in a digital era where access to knowledge and information is easier and faster than in the past. Entrepreneurs need to exist online if they want to be noticed by their customers nowadays. This means they require a website that is well-built and optimised for SEO. Putting a website live is not enough. SEO is the key component of the long term success and it is not a one time project or a job. It is a continuous effort that requires knowledge, practice, and monitoring. This blog post was inspired by the ‘Search Engine Basics’ chapter in ‘The Art of SEO Mastering Search Engine Optimization’ book by Eric Enge, Stephan Spencer, and Jessie C. Stricchiola (3rd edition).

Basic Guide to Structured Data for SEO

This article is a simple introductory guide to structured data. It will help you understand what structured data is and when you can implement it to your website.

There are a lot of data on the Internet. They are presented in various formats. Your website can have pages that display text along with pictures, excel tables, videos, and more. Your pages are likely to link either internally to another page on your website or externally to another source on the Internet. This is easy to follow for humans but can be a struggle for an automated Google bot that does not fully understand what the picture displays, what these links are and where they are pointing. That is why developers came up with an idea of structured data. They packaged up elements of the page so that Google bot can understand the meaning of that page as a human does.

Types of structured data

The above describes what structured data is and why you should implement it to some pages on your website. It does not say what is the best way to express this information to Google bots, though. The most common ways of presenting data to Google bots is through three popular formats. These are:


JSON-LD is the newest and most recommended by Google format of structured data. The abbreviation stands for JavaScript Object Notation for Linked Data. It is relatively easy to implement because it does not need to wrap certain elements on the website. (like Microdata or RDFa do) JSON-LD is a script that gets implemented into the <head> (preferable) or <body> section of your HTML document. It always starts with the following script tag <script type=”application/ld+json”> . The script informs the browser that the JavaScript code containing JSON-LD will be loaded. Next, a very important element is “@context:”” that informs Google what vocabulary JSON-LD uses and shows it where the guide for that vocabulary can be found. While writing your JSON-LD script, do not forget about commas and brackets as their role is very important! Commas inform the browser that there is more to analyse and the curly braces enable parsing. (parsing is an act of reading/processing HTML document)


It is an inline markup syntax that uses HTML to specify certain elements of the page. In simple words, Microdata uses property-value relation to describe content in HTML document. See the below example:

<!DOCTYPE html>
<p> My name is <span itemprop=”name”> John </span> </p>

Thanks to the above data markup (see in bold), Google bot will understand that “John” is in fact a name.


RDFa and Microdata use a similar syntax. However, RDFa is more complex and harder to implement. You can read more about the main differences between RDFa and Microdata here.

A full list of data that you can mark up with schema can be found on the website.

Clear structure vs structured data

There has been a debate on whether structured data can increase the chances of appearing in Google’s featured snippets. Featured snippets are Google’s way to provide quick answers to their users right at the top of Google’s first page without any need of clicking through or searching further to find specific results.

Types of featured snippets

Text snippet (short text box providing a quick answer to your query)

Video snippet (videos pulled from YouTube)

Numbered/bullet list snippet (tables presenting information such as data, numbers or prices and similar)

To avoid any confusion, I have also decided to list some of the search results that are not featured snippets. Unfortunately, some may mistakenly consider them as such.

These are:

Rich answer (short factual answers)

Knowledge graph (info box next to the search results)

Rich snippet (rating stars, pricing information, photos, reviews etc.)

There is no ultimate answer to whether structured data makes it easier to show up in Google’s featured snippets but, as John Mueller said, the clear structure helps a lot. The clear structure is when the main theme of your website is understandable, the navigation is easy and straightforward, there are no orphaned pages, and both internal links and heading tags are implemented correctly.

How to use structured data?

The topic of structured data can feel a bit overwhelming at first, but it is not that hard to understand and implement once you become more familiar with it. I will now show you an example of how you can create structured data for your website in an easy and quick way. I highly recommend going to Steal Our JSON-LD website where you can find some of the most popular examples of structured data. It is a legitimate source that many webmasters and SEO’s use. Once you are on the website, pick the type of structured data you are the most interested in. (on the left-hand side) Next, tweak the information in the script so that it matches the content on your page. You can then test your script using the Structured Data Testing Tool. If there are no errors, you are ready to add the script to your website.

How to add structured data to your website?

Depending on what type of CMS you use, you can either do it manually or with a plugin. For WordPress websites, I would recommend implementing the script manually. Go to your WordPress dashboard and navigate towards the menu bar on the left-hand side. Click “Appearance” and next “Theme Editor”. (see the below picture)

Now, you need to locate your “header.php” file and place the script just right before the closing </head> tag. You may alternatively go to the “footer.php” file and place the script before the closing </body> tag.
If you do not feel comfortable with the above solution, I recommend installing the “Insert Headers and Footers” plugin. The plugin makes it easy to insert header and footer scripts without the need of modifying your theme files! (see the below picture)

If you are still not sure or not fully comfortable with any of the above solutions, you can try out some of the plugins that are available for schema structured data implementation. They will automatically do all the job for you. One very good example of such a plugin is WP SEO Structured Data Schema.

For CMS systems other than WordPress the implementation can be very different. It can be worth checking out some guides or speaking directly to web developers who may be able to offer more help. A very good reference point for any technical-related issues or queries is Stack Overflow.


Structured data enables Google bots to understand the content of your pages better. Although there is no clear answer to whether structured data is a determining ranking factor, it can potentially contribute to increasing your visibility in SERP. It is simple. Google serves its users by giving the most accurate answer to a query. The better it understands your website or a page the higher your chances of showing up for that query grow. Remember to make sure that any schema structured data implementation that you make to your website must be accurate to what content your website displays. More information on quality guidelines can be found here.

What Is SEO Siloing And Why Is It Important?

SEO siloing is organising your website’s content into categories and subcategories. It is not only better for users but also for search crawlers. They discover connections between related pages and therefore better understand how your content is grouped and what it is all about. Search engine’s job is to determine your website’s main topics and see whether they can serve as a credible and exhaustive source of information for different users around the world. We differentiate between physical siloing and virtual siloing. Here’s what it is in more detail.

Physical Siloing vs Virtual Siloing

Physical siloing is when you are organising themes on your website into folders and subfolders. Think of it like when you have a file that holds a bunch of documents that are related together. Let’s say you have a website on beauty products. Your main themes can be hair products, makeup, and skin treatment. Hair products can be a very broad term. Let’s assume that your business offers styling and hair care products. If you wanted to create a silo structure for that particular theme, it would look somewhat like this:

Hair Products Page

Hair Styling Page

The above is the example of well-organised content that is clear to both visitors and search crawlers. This strategy needs to be applied to all themes on your website. What is virtual siloing then and how it differs from physical siloing? Virtual siloing is based on an internal linking strategy. You include internal links to other pages within the same theme so that Google knows they are related. It is highly advisable to combine physical siloing with virtual siloing for even better SEO results.

The importance of keywords

Keyword research is an essential part of your website siloing. And, here’s why. When people want to find specific information on any topic of their interest, they go to Google. They type in a search query, and when they hit enter, they are presented with a few paid links at the top of the first page of Google and a few other organic results. These URLs are the best ranking pages for that particular query they typed in. This is why it is so important to look for the search terms that bring people to your site. You also may want to determine what is currently ranking well for your site and whether it is relevant to what your business offers. And, if it is a keyword that is relevant to your business, strengthen it by building silos. In other words, group or link other pages with a related content to that particular service page that already ranks high.

URLs, files, directories and sitemaps

When designing URLs, it is good to remember about a few things. URLs should not be too long because they can be flagged by robots as spammy. They should have a clear structure and be relatively short. Also, individual pages should be placed in a subfolder rather than in the root directory (website siloing). As stated above, it will help humans and robots to understand better the whole site structure. Finally, a sitemap is an organised list of all or the most important pages that are on your website. There are two types of sitemaps: HTML and XML. HTML sitemap is coded using HTML and it lists all the pages of a smaller website and the high-level pages or categories of a larger website. The XML sitemap is useful only to robots that crawl your website. All URLs listed in an XML sitemap should be valid pages that contain high-quality and original content.


SEO siloing is grouping relevant pages together structurally and through internal linking. It is to establish the website’s main themes and make it clear to both visitors and search engines. Ideally, you should plan your website’s architecture before designing your website but that is not always the case. You can still improve your ranking by siloing your website’s content. Start from the keyword research. Search your competitors and find the most common search queries for your type of business. Next, try to group the content of your website into themes. Design the link structure based on the keyword research for your website’s content. The best practice is also going for keywords you have a realistic chance of ranking for. And, finally, implement the silo. In WordPress, it is usually done by setting up parent and child pages and creating relevant categories and subcategories that help to group relevant pages together. All in all, clean and hierarchical structure of your website along with other SEO strategies can significantly boost your rankings in search engines.

Basic Guide To Search Engine Optimization

Search Engine Optimisation (SEO) is about all the steps that you take on and off your website to gain more exposure in search engine results. It is a long-term process that if done well brings long-term value. Your chances of sale increase when more people visit your site for the right reasons. Search engines’ job is to deliver quick and accurate results to their users. Gaining search engines’ credibility is not an easy or a quick job. It takes time and involves analysis, keyword research, content creation, link building, and resolving technical issues.

Keywords research

Before you optimise a website, you should specify what your keywords are. Keywords are terms that people type into search engines. Let’s say you have a business that sells handmade cards. What should be your keyword then? The keyword “handmade cards” is highly competitive for a company that is just starting out to promote itself. What about “buy personalised yellow handmade cards.” It may be less popular but is relevant to your business and can be beneficial for you at the start. If you want to find out what keywords would be best for your business, you need to do the research. Start by listing all services you offer. You may want to come up with a long-tail keyword such as “buy personalised holiday homemade cards.” The thing is that you may find many long-tail keywords that can bring you a way better results than the keyword “homemade cards” would bring from the start. Some tools can help you to do the keyword research. These are Google AdWords Keyword Planner (free tool) and Google Trends. Before you choose to use any of the keywords you have found, you should consider three things. These are relevance, competition and search volume.

Web pages – search engines versus people

How search engines and people view web pages? Search engines crawl the entire website to find out what is in there and how it is organised. Make sure that your website structure is clear and user-friendly to both people and crawlers. You ideally should make a list of keywords for every page on your website. Next, you write content and include these keywords in the text for that particular page. Your keywords should also be put in the URL, meta title, meta description and subheadings of your content. One of the recommended tools for thorough SEO analysis is Moz SEO toolset. It is a paid tool, but there is a thirty days trial option available for you to get familiar with it and see whether it suits your needs. It is worth mentioning that user-generated content brings many benefits to your website. These are comments, guest blog posts, votes, infographics, product reviews and more.

Technical SEO

One of the crucial things when it comes to technical SEO is to make sure that your code is clean, meaning that it does not contain any coding errors. How do search engines discover the new content on your website? They go through links. You can create an XML sitemap to make it easier for them. What if there are any specific pages on your site that you do not want Google crawlers to see? There is a file called robots.txt that instructs web robots how to crawl and index a website. You can exclude certain pages from crawling and indexing if you want to. Here I can recommend two resources where you can find credible information on sitemaps and robotos.txt file:

What is more, if you move your content from one page to another, you should implement 301 redirect. It is a permanent redirect that tells search engines that the content is no longer available under the old URL. Finally, I would like to add that loading time of your website matters as well. It is one of the most important factors when it comes to SEO. How can you speed the loading time of your site? You can consider using CND (Content Delivery Network) or leverage browser caching. Google expressed the preference for secure sites. You may want to buy SSL certificate for your website.

Link building strategies

Backlinks are still one of the most important SEO factors. What matters to Google is the number of links that are pointing to your website and the quality of these links. The quality of your links is assessed by their relevance to your page content. Additionally, anchor text should ideally contain a phrase or a keyword. It tells Google crawlers what they can expect to see when they click that link. Anchor texts such as “Click here” or “Link” do not contain much value. Search engines are also expecting consistency. If you received a considerate number of links in the past few years but are not gaining any links now, it can be an indication to search engines that you hired someone to get these links. In consequence, your site will not be very credible and authoritative in the eyes of Google or any other search engine.


Start with keyword research for your website. Write down all the services you offer and try to create an excel spreadsheet where you include all your website’s pages and keywords you try to rank for per each of these pages. Next, you evaluate the relevance of the keywords you want to use and their popularity. Write SEO friendly content and do your on-site SEO. Once you have all that in place, promote your website through external advertising, social media and link building. Find your link building opportunities by analysing your competitors. Consider guest blogging and adding review section to your website where customers can leave their feedback on the products or services they received from you.

How To Create SEO Friendly Content?

Creating SEO friendly content can be challenging. Content creation is the part of search engine optimisation. Firstly, you need to have a quality piece of content. Next, you can optimise it for SEO. If your content is uninteresting, grammatically incorrect or duplicate, no SEO strategy will help you to get it rank high in search engines. Good SEO takes time, and many things contribute to whether your website appears on the first pages of Google or not.

Answer questions

Create content that answers people’s questions. Do not write for the sake of writing only. You probably have heard about forums such as Quora or Reddit. See what people are struggling with there. Write your blog post in a way that brings a solution to an existing problem. Content marketing is varied. It does not only apply to writing blog posts. People like to consume content in a variety of forms nowadays. These can be infographics, interactive videos, ebooks, and podcasts. See what works best for you and your audience and deliver it consistently and up to the best possible standard.

Keyword research

Let’s assume that you run a blog on your website, and your business focus is on healthy products for hair. First of all, consistency is the key. If you create two blog posts per week, stick to that. Think of keywords before you start writing your next blog. What is now very popular in hair care industry? What people search for the most? It can be two words or a phrase such as organic products or healthy hair products. Type in similar words/phrases in Google search bar and see how many impressions they get. It will give you the idea what words are the most commonly used by people who search online. Once you have your keywords in place, start thinking about your content.

On-site SEO

When you write your blog post, make sure you use h1 and h2 tags and that you put your keywords inside them. The same applies to your main content. However, do not practise keyword stuffing. It is no longer accepted and is seen by Google as spam. Make sure your content is long enough. It should have more than three hundred words and ideally somewhere between seven hundred and one thousand. Some claim that even more than one thousand words is what works best. Why are longer posts considered better? It is not easy to write a blog post that contains around two thousand words. It requires time and research. Therefore, it should be of good quality. Google wants to create the best possible experience for its users so that it will rank higher the content that provides the best information on a given subject.

Off-site SEO

At this stage, your content should be ready to publish. Off-site SEO refers to your actions taken outside of your website. It is all about promoting the content on the Internet. And, there are a couple of ways how you can do that. As per off-site SEO, backlinks are the most important. There are three types of backlinks: natural, manually built and self-created. Natural links occur when a blogger or other website owner links to your blog without any request. The second type of links refers to situations when you directly ask your customers or influencers to share your blog post on their social channels. Self-created links are when you submit your website to business directories online. The last type is very often associated with black-hat SEO techniques. Placing a new site on a few directories can be beneficial, but mass submission can hurt your rankings.


Creating SEO friendly content takes time. You need to come up with the right strategy first. Start by doing keyword research. Next, collect as much information as possible on your chosen topic. Remember to check more than a few sources and compare results. Once you have that done, write your content and structure it well. Put your keywords in h1 and h2 tags as well as in the text itself. Do not overdo it. Keyword stuffing is a bad practice and is perceived as spam by Google. Proofread your content and when you are ready, publish it. Finally, use social channels and other advertising tools to promote your content via the web.

What is Bootstrap & How To Use It?

Bootstrap is a front-end development framework that speeds up the website development process. It was created in 2011 by Mark Otto and Jacob Thornton. Bootstrap is useful for non-expert front-end developers who want to design a modern website including all the attractive features. By these, I mean navigation, image sliders, beautiful typography and more. Bootstrap has all of the above already coded for you. The framework supports responsive design meaning that you can create a website that will show up well on all sorts of other devices such as tablets, phones, smart TVs, and more.

What is Bootstrap grid system?

Grid system is a structure that allows you to house the content of your website well. It is a system of columns and rows. It divides the screen into up to 12 columns in each row. Their width depends on the width of the device that displays the website. The number of rows that you can create is countless. It depends on your vision (the design project you have in mind). One of the Bootstrap recommendations is that you should put all the rows and columns in the container. There are two major container types. These are a fixed-width container and full-width fluid container. The first one has a fixed width as its name suggests and the second one takes up the whole screen space. You can design a beautiful and responsive website that will work well on any device with Bootstrap grid system.

What are Bootstrap components?

Website components are headers, nested comments sections, navigation menus, buttons and more. Thanks to Bootstrap built-in features you can style your website to make it look modern and functional. It may be hard to remember all types of classes in the beginning. Once you become proficient, you will be able to build even more advanced navigation bars, forms and other fancy website elements. There is an option to install JavaScript plugins to Bootstrap, and it opens you door to even more creativity and gives the possibility to create advanced website features (drop-down menus, dismissable alert boxes, tooltip, popovers etc.)

What are the advantages of using Bootstrap?

Bootstrap is very easy to learn front-end development framework. Once you understand how it works, you can build modern-looking and responsive websites for your clients. You can also customise it with Less and Sass. Another clear advantage is the development speed (thanks to the pre-built code). What is more, a considerable Bootstrap community gives you access to support whenever required. Pre-styled components, grid system, and simple integration help you to create modern websites that are up to date with the latest web development standards.


Bootstrap is one of the most popular front-end development frameworks. It is easy to install, and it speeds the development process. You do not need to build pages from scratch thanks to the built-in blocks of code. You create websites that offer cross-browser-compatibility, are mobile friendly and responsive. There are quite a few advantages of using Bootstrap and a big support community if you happen to get stuck on the project.

How Does The Internet Work? – Book Review

It’s a review of “Introduction to Networking” by Charles Severance.

This book is a valuable source of information for all those who want to understand how the Internet works. The Internet is a global network of computers. It is beneficial to know the basics, especially in today’s world where everything is wirelessly connected.

How do computers communicate?

Every computer connected to the Internet has an IP address. If the connection comes from LAN (Local area network – multiple computers connected at one location), the IP is permanent. If you connect through Internet Service Provider, you get a temporary IP address. How do computers communicate? If someone wants to send you a long message, it is divided into packets (chunks of data) before it arrives at the destination. These packets go down through seven layers respectively: application, presentation, session, transport, network, data link and physical layer. Next, when the packets reach the destination computer, they work their way upwards the seven layers mentioned earlier.

Physical Layer ensures that the initial connection has been established. Multiple computers connected to a networking device on the LAN can easily communicate with each other. The message you are sending to someone is divided into packets and these ‘chunks of data’ travel (they move through routers) independently and sometimes out of order. They know where to go because before they left the ‘sending’ computer, they were added a prefix that included MAC address (Media Access Control) alongside other data. MAC is a unique identifier (a number) that is assigned in hardware to NIC (Network Interface Controller). Every computer has MAC address.

Web browsers and websites

If the communication is to be useful, a computer needs to follow a set of rules. It is where protocols come into play. HTTP (Hypertext Transfer Protocol) and IP (Internet Protocol) are examples of the networking protocols that enable you to view a particular website. How does it work? If you want to browse a page, you type its address in a browser address bar. The browser that you are using (Internet Explorer, Mozilla Firefox, Google Chrome etc.) sends a request to a server where the website’s data are stored. The server sends the requested data to the browser and the latter displays them for you to see.

A transport layer is a group of protocols that provide services to the application layer protocols. Lower layers always provide services to the layers above them. For example, when your web browser requests data from the server, it needs to deliver them to you. What if some get lost along the way? The transport layer’s TCP (transmission control protocol) monitors the transmission and checks whether data successfully arrived at their destination.

URL structure

URL (Universal Resource Locator) has a structure. For example, the commonly called web address contains four major parts (scheme, host, path, query string). The first one indicates the protocol (HTTP). And, the second one includes the hostname of the web server. Your computer requests IP address from DNS (Domain name server). Next, your web browser makes a request to the web server, and if all goes well it receives the files. Then, the browser displays them to you.


All in all, the book describes well how computers communicate over the Internet. It is a basic introduction for anyone who wants to understand the concept of networking. I highly recommend that you check this book. Also, if you think I omitted something in my post that would be worth mentioning, let me know in the comments below! I am open to any corrections or suggestions. Thank you for reading!

Google Speed Insights – Get it right!

Google Speed Insights is one of the most famous tools out there to measure your website’s performance. It checks what experience your site delivers to both mobile and desktop users. There are three marks that you can get – green, yellow and red. Green colour means that your website is friendly to its users. Yellow colour indicates you need to do some work to improve your site’s performance and the red one informs you that your website needs optimization.

Google Speed Insights for SEO – does it matter?

I have come across many articles saying that Google Speed Insights results do not matter that much and that we should not be worried about them. It is true to some extent. Did you know that Google Speed Insights does not measure your website’s loading speed? It checks the overall performance of the site and gives you some good suggestions on what can be improved. What matters the most for Google is not the grade that you get from Google Speed Insights but how fast your site loads. You can measure this on GTmetrix or Pingdom.

What are Google Speed Insights recommendations?

One of the most crucial ones is to optimize images. If images are too big, they take longer to load. It affects your website’s loading speed and respectively user’s experience. Ideally, your images should be resized as much as possible without compromising too much on the image quality. For this, you can use TinyPNG or CompressJPG. Also, remember to use file name related to your entire blog post (it makes it easier for search engines to find your picture) and implement alt tags. After you optimize all your images (the ones embedded in the content, your logo, footer and header icons and other), you should notice a significant improvement in Google Speed Insights score.

Another popular recommendation is to minify CSS and JavaScript files. What does that mean? It is simply removing unnecessary spaces from your JavaScript and CSS files. You can do it manually (not recommended), use third-party websites or implement a plugin if you are WordPress user. You can use JSCompress for JavaScript and CSS Minifier for CSS. I recommend WP Fastest Cache Plugin for WordPress users. Again, after you cleaned the files up, you should see an increase in your performance score.

Last but not least is to remove render-blocking JavaScript and CSS. It means that some JavaScript and CSS files block your page from rendering before they are fully loaded. There are two solutions to this – the good one and the bad one. The bad one is to put CSS and JavaScript at the bottom of your HTML. What it does, it allows a browser to load HTML first (unstyled HTML) and then it loads other resources (CSS styles plus JavaScript). It creates bad user experience because a user can see the flash of unstyled content. Here is a great guide on how to eliminate render blocking CSS.

What is CDN and how does it affect speed?

Finally, CDN is an abbreviation for Content Delivery Network. If your business is operating on a global scale, you may consider using CDN. It will improve your website’s performance and speed for your customers located overseas. How does it work? CDN stores cached version of your website’s content in multiple locations allowing users of particular region access your resources faster.

Google Speed Insights & Leverage Browser Caching

Personally, I am not a fan of implementing plugins to make things work. They are great, but if there is another available solution – I will go for it. Leveraging browser caching is necessary as it makes your website load faster for repeat visitors. Simply, some CSS and JavaScript files are stored in a customer’s browser once they ended up on your page. It improves loading speed because when they visit your page, again and again, the resources are being loaded directly from the browser, not the server.


All in all, Google Speed Insights is a great tool from Google that shows you where your website lacks when it comes to performance. It can be used as a recommendation to improve some significant aspects of your site such as image optimization. Remember to back up files before you manually make any changes. It allows you to restore them anytime something goes wrong. Let me know what other tools you use to check or improve your website’s loading speed? And, is Google Speed Insights useful to you at all? I am happy to hear your thoughts!

What is Screaming Frog SEO Spider?

Screaming Frog SEO Spider is a tool that you can use for improving your on-site SEO. It is a software that analyses all links on your website and shows you where you have errors. It applies to meta descriptions, h1 and h2 tags, images, page titles, broken links and more. There is 500 crawl URL limit, so if your website is larger than that, then you may want to upgrade to a paid version. Let’s say you have a site that contains ten subpages. Screaming Frog SEO Spider crawls your images, external and internal links, canonicals, CSS, JavaScript and other which will result in more than ten URLs.

On-Site SEO

Let’s start with on-site SEO. Screaming Frog SEO Spider allows you to check if your page titles (it is a title tag that appears in the top of a browser window) are over 65 characters long, whether you have duplicates, and if you have multiple page titles. Next, it shows you how many duplicate meta descriptions you have and how long they are so that you can make changes if required. It will also check the same features for your h1 and h2 tags. The great thing about the tool is that it helps you to generate an XML sitemap for your website. The XML sitemap is a document that enables Google crawlers to understand how many links are there on your site. For WordPress blogs, you can also create XML sitemap by using Yoast SEO Plugin.


If your images are too big, they may slow down the loading time of your website. Slow sites do not rank high in Google. Screaming Frog shows you which images need to be resized. Resizing images in the dashboard to desired dimensions will not help at all. Their actual size is still big. They will be loaded with their exact size first and then will get scaled by the browser to dimensions you set in the dashboard (if you are using WordPress or other CMS system). All images should also have an alt tag. The alt tag is important for search engines because it helps them to understand what an image displays.

Broken links and Canonicals

A broken link is when a link on a web page does not work. It may be due to incorrect URL or because the destination page does no longer exist. Screaming Frog SEO Spider allows you to check for broken links on your website. You can also generate reports in CSV file format so that you can work in Excel if it is better for you. Canonical URL tells search engines that particular URL is the original one. It is very helpful when you have several pages with the same content (good for e-commerce websites with multiple pages displaying certain product category in different colors, for example). You set canonical URL for the subpage of your choice, and you point other subpages (with the same content) to that one. It allows avoiding the duplicate content issue. Screaming Frog SEO Spider checks your website for any errors regarding your canonical links.

Response Codes

Whenever you type your website address and press enter, your browser makes a request to a server. The server is another machine (just like your computer) that is connected to the Internet. When you make a request, you get a response from a server. It can be anything from an image, CSS file, JavaScript etc.) The browser knows what the server gives by the content type (for example, HTML document) There are a couple of status codes that you can get when you receive a response from a server. Anything between 200 means that everything is okay and 300 and above relates to redirects. Anything starting at 400 indicates an error. And, finally, 500 status codes refer to server errors. Screaming Frog SEO Spider shows you if there are redirects or client-side errors on your website.


Screaming Frog SEO Spider is a great tool for on-site SEO. It will crawl your website and will show you where you can introduce changes. You can filter data by categories such as duplicates, character limit, missing descriptions and more. The tool will check your meta descriptions, h1 and h2 tags, meta keywords, page titles, internal and external links and more. You have an option to open listed links in a browser as well as export reports on individual data (canonicals, error codes, images missing alt tags, internal and external links and other). You can use the tool to create an XML sitemap. It will help search engines understand better how your site works. You then need to upload your sitemap to Google Search Console. There is also an option to integrate Screaming Frog SEO Spider with your Google Analytics Account. All in all, it is a perfect tool for either competitor analysis, your website improvement or both.

WordPress Child Theme – How Does It Work?

Here’s the short potential scenario of why you might consider using WordPress child theme. Let’s say that you chose a WordPress theme that you like, and you installed it successfully. Next, you decided to introduce some changes. You customised its design slightly, so it better suits your preferences. After some time, you logged in to your WordPress dashboard and noticed that there is an update available for your theme. Upgrades are essential because they make your website secure. You clicked on the update button and then opened your site in the web browser to find out that all changes to its design are gone. It is because you introduced them to the original theme. Consequently, after the update, all CSS styles that you have added will be lost. So, is there a way to customize a chosen theme without compromising on upgrades? Yes, and the solution is the child theme. Resigning from updates is never good. It can lead to breaking your site and it will leave it available to hackers. Developers make updates to themes to make sure that they comply with the latest WordPress standards.

What is WordPress child theme?

First of all, I would like to explain the difference between WordPress theme customizer and customizing a theme by introducing changes into code. Any changes that you make by using WordPress theme customizer are being saved in a database. It means that updates to the theme will not override them. If you, however, plan to make some changes to the CSS, HTML or JavaScript of your original theme, you may need to install the child theme. That way, you can safely upgrade the original theme anytime a developer updates it and still keep all the changes you have made. Child themes are also a great way to play with a code and learn it. It is because all the changes you make are on the top of a parent theme. It gives you the better idea of how things work. Also, if you do anything you do not like to your child theme, you can always delete it. It will not affect the original theme in any way. All in all, the child theme is a WordPress theme, that inherits all the design and functions from its parent theme. Parent theme is the original theme that you chose for your website.

How to pick a parent theme?

Not all WordPress themes are good to use as a parent theme. It is because not all WordPress themes are theme frameworks. If you want to modify the core functionality of your chosen theme (custom headers, sidebars, widgets, comments, administration menus and more), you should make sure that the WordPress theme you choose for your website is a theme framework. Theme frameworks allow you to modify and customize the core theme functionalities without touching the core theme files. In conclusion, if you want to introduce basic CSS changes, you can create a child theme to any WordPress theme and it will work fine. On the other hand, if you plan to add some new functionalities to your website or introduce more changes to its design, then you may want to look for the WordPress theme that is a theme framework.

How to install a child theme?

For this, you need to login to your hosting account where you can create a folder for your child theme in wp-content/themes/ directory. (Login to cPanel – go to File Manager – find public_html – next, go to wp-contents and finally find themes folder and open it). Now, let’s say you have chosen Twenty Fourteen WordPress theme for your website. It means that you need to create a folder called twentyfourteen-child in wp-content/themes/directory in order to create a child theme for your original Twenty Fourteen WordPress theme. Once you have the folder saved, create a blank file called style.css (click on +File, name it style.css and save all changes) in there and add some information. The information you need to add are as follows:

Theme Name: Twenty Fourteen Child
Theme URI:
Description: Twenty Fourteen Child Theme
Author: put your own name here
Author URI:
Template: twentyfourteen
Version: 1.0.0

Once you are done, you can save the file. You will now need to bring in stylesheets from the parent theme to your child theme. Previously, the @import method was very popular, but it is no longer the best idea to use it. It is because it increases the amount of time for the stylesheets to load. It affects website’s loading speed and speed is one of the most important ranking factors. Ideally, your website’s loading speed should be under five seconds. If it takes more than that, it creates worse user experience. And, because Google wants their customers to have the best user experience possible, it may put higher in searches those websites that load faster than yours. What is the correct way to bring in stylesheets from a parent theme to a child theme, then? You should enqueue the parent and child theme stylesheets by adding wp_enqueue_scripts action and use wp_enqueue_style() in your child theme’s functions.php.


Child theme is a WordPress theme that inherits all the functionalities from the parent theme. There are many advantages of using child themes. One of the most important ones is that you can make changes to your website without modifying the parent theme. You can add many new functionalities to your site. Upgrading the original theme will not override your modifications if you have the child theme installed. The best advantage of WordPress child theme is that you have your theme that you manage and you are still using the parent theme that a developer has built. Finally, child themes are a great way to learn how to build themes. They allow you to experiment by adding alterations on the top of a parent theme. And, if anything goes wrong you can always delete these changes and go back to the original state.