Zend’s Dead Baby, Zend’s Dead

In our world anyway.

We tried Zend Framework 2. Timing was wrong. It was too new, not enough support or forums.  ZF1 was too old and not worth becoming more familiar with unless we’re thrown into a legacy project.

Zend courses are really expensive.  Recently we looked at the number of world wide Zend Accredited Engineers, and noticed peak was in 2009, although now the data is displayed differently it’s harder to confirm that finding.

Zend Server didn’t work on the Mac. It needed a reinstall every few weeks after strange frustrating problems. The Phalcon Module wasn’t compatible with it (not even sure it’s compatible with the Windows version – didn’t work in the VM anyway).

Last year CodeIgniter was a disappointment. Stack Overflow was saturated with a questions proving a lack of basic PHP understanding so it was difficult to get proper CodeIgniter help. CodeIgniter didn’t provide many useful features other than the MVC layout.

Laravel to the Rescue :)

There is so much support, documentation and help for Laravel. Everyday new Laracasts are being added.  £150.00 for lifetime membership – and you can watch the videos more than once.

We look at these like a video manual more than a training exercise.

The courses are for any level and go deep into OO PHP and  Software Design Patterns.

We feel like we’re moving forward quicker than ever.

Google Glass Review

I got them for 2 reasons: 1 being a web application developer, it’s important to stay ahead of the game – so conceiving Google Glass Apps will be a hobby shortly.  And cycling thousands of miles a year there are considerable photo opportunities.

So, for the first test, I cycled along the Castleman Trailway from Ringwood to Poole. Battery was 79% but it didn’t quite last.

Wink to snap a photo worked a treat.  No privacy issues here. You need to be about 1/2 meter away a person if you take their picture so they’d certainly know about it.  Generally you get a wide angle shot.

I planned to document the route for my biking blog as it’s not clearly sign posted.  Ended up snapping 250 photos with ease.

I was surprised at how easy it was to accept incoming calls.  Sods law – that morning 3 support calls received enroute. Was able to resolve them all – hands free – voice triggered, and continue snapping the photos. Text messages were broadcast and easy to read too. No configuration necessary. Worked out the box – just synched with the mobile phone.

On approach to Poole, I didn’t know the exact address.  The navigation app didn’t automatically sync with the Android phone. This was the only disappointment, (not even sure it can sync) however, the Glass navigation was amazing – total augmented reality – until the battery died.

I found the status information bubble icon on peoples heads a bit weird. I didn’t need to know who was late for the pub or where they were going.  Or maybe I imagined that bit. The device did get quite hot so maybe it was that.

Downside – how to get the videos off using bluetooth.  Can fathom it. The instructions don’t correlate with the interface.  Also, the frame & lense pricing is very odd, and the frames cause the device to shut down! Possibly a faulty set – or user error … tbc ;)

They also work with finger gestures on the glass arm. Left/right swipes -> fwd/back. Tap -> click.  Down swipe -> dismiss. Easy.

A colleague had a go and managed to send a transcription of his experience of trying to use the things to a random contact via test message! It’s possible to screen-share via the mobile to avoid such behaviour …

Overall very handy (hands free) device. You wouldn’t wear them all the time … yet.


Laravel PHP Developers Bournemouth

We have succeeded in refactoring our legacy Letting Agent Software PHP code into the Laravel PHP framework – to Alpha testing stage.

We took a step back and looked at the legacy code. Although we’d inadvertently stumbled across the MVC software design pattern during this project, migration Laravel was a no brainer.  We gambled that it would be quicker to refactor the entire project than to add a bulk of new features to the legacy PHP code.

The speed in which we’ve refactored our Letting Agent Software was a pleasant surprise to us.  We are now in a suitable position to create single page apps by adding Angular to the front end.

It’s now full steam ahead with the new software features.

We are always keen to hear from other Laravel developers in Bournemouth so do drop us a line – contact Ringwood Internet!


Stop Gmail Audio Notifications – Android

Stop Android Audio email notification alerts

To disable this unfortunate default setting:

  • Click the Gmail application icon (not the Samsung ‘Email’ bloatware icon)
  • Click the menu icon (top left)
  • Select an email account
  • Scroll all the way to the bottom and select ‘settings’
  • Select a mailbox
  • Untick ‘Notifications’
  • Repeat for each mailbox

Remember to redo this if ever you clear the cache.


Android File Transfer

Because I can never remember how to transfer files from an Android Samsung S5 onto a Macbook Pro, this blog entry will remind me and help others in this unfortunate position.

It doesn’t work out of the box because of an MTP device cannot be mounted on the of a Mac. There are premium utilities but there’s another way.

Just install Android File Transfer on the Mac – and remember you’ve installed it for next time

and DO NOT INSTALL KIESKies bloatware will stop Android File Transfer from working! If you have installed Kies, download it again, and run the uninstaller.

Voice, Broadband & Data Products

Ringwood Internet can now provide all the following voice, data and mobile products.  We’ll be adding a brand new section to our website over the next couple of weeks with full information. But for now, here’s a summary:


  • SIP Trunks
  • Hosted Phone Systems
  • Inbound
  • Calls and Lines
  • PBX vs Hosted Telephony



  • Broadband
  • Fibre Broadband
  • Assured Broadband


  • FTTC Ethernet
  • Fibre Ethernet
  • EFM

Voice enabled

  • Converged Broadband
  • Converged Ethernet


  • Pay-As-You-Use
  • Fixed / Mobile Convergence
  • Fixed Number on Mobile App

Where to Add Google Analytics?!?

Google frequently suggest different locations to add the Google Analytics tracking code.  Reasons include preventing JS causing slow page rendering when waiting for a response, or JS errors causing Analytics not to track data properly.

So, from within Analytics itself:

PHP Implementation

Create a PHP file named “analyticstracking.php” with the code above and include it on each PHP template page. Then, add the following line to each template page immediately after the opening <body> tag:
<?php include_once(“analyticstracking.php”) ?>

“After the opening body tag”. That’s a new one to me, but makes perfect sense.

Job done.  Tested and it’s collecting data.

Now, I’ll just quickly add the domain to Google Webmaster Tools …

Oh, it’s not picking up the Analytics tracking code to verify ownership.  Ah, it’s the .htaccess rewrite … Nope, not that either…

Ahh, Google Webmaster Tools have other ideas:

Your tracking code should be in the <head> section of your page.



Bash Aliases for Laravel

Typing $ php artisan is getting tiresome. So how to create an alias in Bash on the Mac:

Edit ~/user/.bash_profile

//Add the line:
alias pa=”php artisan”
// pa is my chosen alias

// Add an alias to the project directory while we’re here:
// progexample is the alias name for the example project
alias projexample=’cd /Applications/XAMPP/xamppfiles/htdocs/example.com/’

Save and reload the profile from it’s directory location in the terminal:
$ . .bash_profile

Now, $pa migrate is the same as $ php artistan migrate

And to jump straight to the specific project directory it’s: $ projexample

Create Aliases for Aritsan

$ alias g:m=”php artisan generate:migration”

$ g:m create_orders_table –fields=”title:string, description:text:nullable”

Here are some Laravel Bash Aliases