Photo by You X Ventures on Unsplash

Agile is about managing changes within and to a project such that progress is not halted for any reason. You’ve had your tasks all planned out under a sprint, but bugs unavoidably show up. You’ve got 8 working hours in a day, and every hour already has its tasks. How do you bring bug fixes into your sprint? Do you create another sprint for bug fixes or halt what you’re currently doing and attend to the bugs?

After a few research on bug handling practices that fit into the Scrum approach to Agile software development, I show you a few…

Photo by timJ on Unsplash

This article assumes that you have a basic understanding of object-oriented programming and its implementation in any OOP language such as C# or Java.

S.O.L.I.D design principles encourage developers to create more understandable, maintainable and flexible object-oriented software. Today, we take a look at dependency inversion. Robert C. Martin in Agile Software Development, Principles, Patterns, and Practices gave the following guidelines to dependency inversion:

A. High-level modules should not depend on low-level modules. Both should depend on abstractions (e.g. interfaces).

B. Abstractions should not depend on details. Details (concrete implementations) should depend on abstractions.

The first time I saw those…

Photo by Fatos Bytyqi on Unsplash

Welcome to the third and final part. In How to Implement Elastic Search With Laravel and Docker (2), we connected our Laravel application to an Elastic Search container, setup a model for customers table and created a controller that converts the table to an Elastic Search index. We also implemented a Laravel command that enables us index our tables from terminal.

In this tutorial, we’ll create a search controller inside our Laravel application and add methods for searching through customer_index, paginating and formatting search results.

Create a Search Controller

Elastic Search is in its own container. We’ll be communicating with it via API calls…

Photo by Oskar Yildiz on Unsplash

In How to Implement Elastic Search With Laravel and Docker (1), we installed Docker on our local server, setup a Docker container for Elastic Search and created a test database called “northwind”. We also imported sample data to our database.

In this tutorial, we’ll connect our Laravel application to the Elastic Search container we created. We’ll setup a model for customers table and create a controller that converts the SQL data in the table to an Elastic Search index

Connecting Your Laravel App to the Docker Container

Let’s index customers table from our Laravel application. First, we’ll add Elasticquent package to composer.json.

"require": {
"elasticquent/elasticquent": "dev-master"

In this tutorial, you will learn how to deploy Elastic Search in a Docker container and integrate with your Laravel application. I assume that you already have a Laravel 5.8 application setup. I use Ubuntu 18.04 and would be working a lot with bash. But before we run any terminal command, let’s take a look at what a Docker container is.

Photo by Jeffrey Blum on Unsplash

Docker Containers

According to Docker website:

A container is a standard unit of software that packages up code and all its dependencies so the application runs quickly and reliably from one computing environment to another.

The purpose of a container is…

Search engine optimization (SEO) is the process of affecting the online visibility of a website or a web page in a web search engine’s unpaid results […] In general, the earlier (or higher ranked on the search results page), and more frequently a website appears in the search results list, the more visitors it will receive from the search engine’s users.

Source: Wikipedia

Somehow, amongst thousands of others, Wikipedia just got another article (this) to reference her content on search engine optimization — a big reason it shows up among the first three search results when you google “seo”. The…

Benjamin Ayangbola

Software Engineer. Happily doing Javascript (Angular, React, Nodejs), PHP (Laravel) and SQL

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store