Website Developer | Laravel Enthusiast

My Blog is about Web Development and anything else I find interesting.

Michael Brooks Profile Image

Most helpful GIT command...

Posted in Programming Tutorials on May 23, 2017

Learn how to save time and the need for remembering branch names.

Michael Brooks Profile Image

Social Network API update

Posted in Programming Tutorials on Aug 30, 2016

<p>Last time I updated you guys on this, I only had a list of ideas and how it would initially pan out. I have now started the project and published the repo onto GitHub (which can be <a href="">found here</a>).</p> <p>If you would like to contribute then I would whole heartedly appreciate any contributions, pull requests or feedback on the project. I must warn you guys that it is literally just started, but so far I have implemented Dingo and JWT tokens as part of the API.</p> <p>You can also find my todo list publicly available through <a href="">Trello</a>. You can see what I would like to be done, what needs testing and what has been c...</p>

Michael Brooks Profile Image

Create a Raspberry Pi 3 Bluetooth tag

Posted in Programming Tutorials on Aug 09, 2016

I found this to be a really nice starting project for my newly purchased Pi 3. However, I did run into a few problems which I will address in this Blog post. You can pretty much follow either this post, or the MagPi one, but my post will address any issues I had when following their tutorial. So to start, they requested I find the Mac address for both my phone and PC. I followed their advice for looking on my phone, but the Mac address was long and full of dashes which looking at the Python script is not what they want. Instead, I used the Pi to search for my phone on Bluetooth and find the Mac address using the following in Terminal...

Michael Brooks Profile Image

ReactPHP and Symfony

Posted in Programming Tutorials, General Updates on Jul 18, 2016

I started listening to a which talks a lot about different PHP and server technologies and on one of the later episodes, they talk about is a great asynchronous solution for PHP and it offers non-blocking async which is fantastic and can be easily compared to NodeJS (although we won't be doing that here).

Michael Brooks Profile Image

How to containerize your PHP/NGINX docker project properly

Posted in Programming Tutorials on Apr 11, 2016

<p>This evening, I had myself a little challenge. I would turn my two containers (MariaDB and my own built container) into more containers, but using the power of Docker's official container repos. E.g. I would have 3 containers in total PHP7-FPM, NGINX and my already created MariaDB.</p> <p>If you don't know my steps I previously created, you can check it out <a href="">here</a> and skip to MariaDB for your database container and settings.</p> <p>First off, I used the PHP container and followed instructions to have a PHP7-FPM container. You can see below for the Docker file, just copy it and run the command below...</p> <script src=""></script> <pre><code>docker...</code></pre>

Michael Brooks Profile Image

Hosting your site With Digital Ocean and Docker

Posted in Programming Tutorials on Mar 27, 2016

I want to share with you how I am hosting my website with [Digital Ocean]( (hosting company) and [Docker]( (places your app in containers). First off, I created my droplet on DO and used the docker image from the list of "One-click Apps". The droplet was the $10 a month size as I don't currently need anything more. (If you want to try Docker for a month or two then [click here](

Michael Brooks Profile Image

Using View Composers in Laravel 5.2

Posted in Programming Tutorials on Feb 03, 2016

I have started using Laravel's View Composers which come in handy when you have a navigation bar that constantly needs certain data. For example, you have an ecommerce store and you need to poll how many items a user has in their basket on pretty much every page they move onto, or you need a login/register button when a user isn't logged in and then a profile options button when they are. You could be really lazy and add the same code/query into every single controller, which yes, that will work, but then that's not DRY (Don't Repeat Yourself). To fix this, we can complete a couple of simple steps and have one bit of code which will constantly be in use every time a certian partial is called.

Michael Brooks Profile Image

Using Vagrant and Homestead In as Little Steps as Possible (Per Project Install)

Posted in Programming Tutorials on Jan 20, 2016

I want to show you guys just how quick and easy it easy to get a Laravel project up and running alongside Vagrant/Homestead.

Michael Brooks Profile Image

Mounting Volumes in Docker and Using Windows 10

Posted in Programming Tutorials on Nov 20, 2015

This is a quick post to details some issues I have found when trying to use Docker within a Mac or Windows environment. I had been following this tutorial on how to get [Laravel up and running on Docker]( and my first pain I came across has been shared with both Mac and Windows environments. Basically, when you go to mount a volume, by default you can only mount local directories in your User folder. To fix this, you first need to open up your VirtualBox GUI. Click on your current VM and click on "Settings", then head over to "Shared Folders". When you get here, you will want to click on the plus symbol to add a new folder share. For me, I wanted to mount my sites directory which could be found in my d drive...

Michael Brooks Profile Image

Oauth Tutorial - Part 1 - Setting up Facebook

Posted in Programming Tutorials on Apr 05, 2015

Last week I promised that I will be creating some tutorials regarding Oauth and Laravel's Socialite plugin. Today, we will start with setting up each website and creating on app on these sites to accept our Oauth requests. Firstly, we will start with Facebook, then head on over to Twitter and Google+. I am using these as my website won't be for developers, it will be for everday people so I don't expect them to have a Github or Linkedin account. If however, I want to implement these at a later date, I will post the setup of them here for you to see.

Subscribe to my mailing list