We're still on our way to better data scraping. We did a great job last time, but it's time for improvements. Now I want to introduce another even higher level tool for data scraping - Goutte. It's originally written by Fabien Potencier, the creator of the Symfony framework and is now maintained by FriendsOfPHP.
Annotations are specially-formatted PHP docblock comments that are used for class discovery and metadata description. While it is technically possible to use annotations for other purposes, at the moment Drupal only uses them for the plugin system.
In this tutorial we'll look at:
- What annotations are
- The use-case for annotations
- How to figure out what you can put into an annotation
By the end of this tutorial you should understand how annotations are used in Drupal and how to write them in your own code.
Recently I was compiling a list of Linux commands that every sysadmin should know. One of the first commands that came to mind was nmap.
nmap is a powerful network scanner used to identify systems and services. nmap was originally developed with network security in mind, it is a tool that was designed to find vulnerabilities within a network. nmap is more than just a simple port scanner though, you can use nmap to find specific versions of services, certain OS types, or even find that pesky printer someone put on your network without telling you.
There is a lot of literature about entities and their purpose in Drupal 7 context. Most of it has been adopted in Drupal 8 as well. In this post, I'll highlight the differences between D7 and D8 entities and how to use the entity API in 8.
Entities have their own classes in 8. Also, Drupal 8 introduces the concept of config entities. These are used to store user-created configuration if its more than a piece of text, boolean or integer. They differ from the usual entities in the following ways:
Today, eCommerce is a booming field, as an increasing number of businesses move into the online retail space to reach a wider audience and unlock the potential to maximise their profits. This means the tools required to set up and run an online store are in high demand, and storeowners are often spoilt for choice.
Much like previous versions of Drupal, version 8 of the CMS revolves around the concept of Entities. These are objects that have an ID, Language, Type, and Storage. Some optional properties are URLs, Bundles, and labels. They can be viewed, loaded, created, saved, and deleted, as well as have access permissions set for them. Most things in Drupal are entities, such as Users, Nodes, or Blocks.
R is a suite of software and programming language for the purpose of data visualization, statistical computations and analysis of data. It has strong graphical capabilities, and is highly extensible with object-oriented features.
GraphQL is an application layer query language that interprets a string by a server, which then returns the required data in a specified format. You may have heard that GraphQL was invented to assist or enable Relay. This is false. GraphQL was actually in play nearly three years before Relay.
On the one hand, you want to deploy changes to the live site QUICKLY (for, say, a Highly Critical security update).
On the other hand, you want make changes SAFELY, ie. you don't want it to break the site.
Testing is good. Automated testing is great.
But what if you simply didn't have the resources to comprehensively test the change (either manually or automatically)?