How-to: Laravel 4 tutorial; part 6 – virtualised development environment – Laravel Homestead

[easyreview title=”Complexity rating” icon=”geek” cat1title=”Level of experience required, to follow this how-to.” cat1detail=”We’re pulling together a few sophisticated components here, but keep your eye on the ball and you’ll be okay.” cat1rating=”4″ overall=”false”]

Laravel Tutorials

Introduction

It has been a while since I have had time to work on Laravel development or indeed write a tutorial. And since then, I have decommissioned my main web development server in favour of a Synology NAS. Dummy and I use a third party hosting service for hosting our clients’ web sites and our own. This shared hosting service comes with limitations that make it impossible to install Laravel through conventional means

So instead, I’m setting up a virtual development environment, that will run on the same laptop that I use for code development. Once development is complete, I can upload the whole thing to the shared hosting service. Getting this set up is surprisingly complicated, but once you’ve worked through all these steps, you’ll have a flexible and easy-to-use environment for developing and testing your Laravel websites. This article assumes we’re running Windows.

Components

  • virtualbox_iconVirtualBox enables you to run other operating systems on existing hardware, without wiping anything out. Your computer can run Windows and then through VirtualBox, it can run one or more other systems at the same time. A computer within a computer. Or in this case, a server within a computer. Download VirtualBox here and install it.
  • vagrant_iconVagrant enables the automation of much of the process of creating these “virtual computers” (usually called virtual machines). Download Vagrant here and install it.
  • git_iconGit for Windows. If you’re a developer, chances are you know a bit about Git, so I’ll not go into detail here. Suffice it to say that you’ll need Git for Windows for this project: here.
  • PuTTY_iconPuTTY comes with an SSH key pair generator, which you’ll need if you don’t already have a public/private key pair. Grab the installer here.
  • php_iconPHP for Windows. This is not used for powering your websites, but is used by Composer (next step). I suggest downloading the “VC11 x86 Thread Safe” zip file from here. Extract all files to C:\php. There’s no setup file for this. Rename the file php.ini-development to php.ini and remove the semicolon from the line ;extension=php_openssl.dll. Find a line containing “;extension_dir” and change it to extension_dir = "ext"
  • composer_iconComposer for Windows. Composer is a kind of software component manager for PHP and we use it to install and set up Laravel. Download the Windows installer here and install.

SSH key pair

You’ll need an SSH key pair later in this tutorial. If you don’t already have this, generate as follows:

  1. Start PuTTY Key Generator. (It may be called “PuTTYgen” in your Start Menu.)
  2. I would suggest accepting the defaults of a 2048-bit SSH-2 RSA key pair. Click “Generate” and move your mouse around as directed by the program.
    PuTTY key generation
  3. You can optionally give the key a passphrase. If you leave the passphrase blank, you can ultimately use your key for password-less logins. The drawback is that if your private key ever falls into the wrong hands, an intruder can use the key in the same way. Make your decision, then save the public and private keys. You should always protect your private key. If you left the passphrase blank, treat it like a plain text password. I tend to save my key pairs in a directory .ssh, under my user folder.
  4. Use the “Save private key” button to save your public key (I call it id_rsa).
  5. Don’t use the “Save public key” button – that produces a key that won’t work well in a Linux/Unix environment (which your virtual development box will be). Instead, copy the text from the “Key” box, under where it says “Public key for pasting into OpenSSH authorized_keys file:”. Save this into a new text file. I call my public key file “id_rsa.pub”.

Install the Laravel Installer (sounds clumsy, huh?!)

  1. Load Git Bash.
    Git Bash window
  2. Download the Laravel installer with this command: composer global require "laravel/installer=~1.1". This will take a few minutes, depending on the speed of your connection.
  3. Ideally, you want the Laravel executable in your system path. On Windows 7/8, from Windows/File Explorer, right-click “My Computer”/”This PC”, then click Properties. Click Advanced System Settings. Click the Environment Variables button. Clik Path in the System variables section (lower half of the dialogue) then click Edit. At the very end of the Variable value field, add “;%APPDATA%\Composer\vendor\bin”.
    Set PATH
    Click OK as needed to save changes. Git Bash won’t have access to that new PATH variable until you’ve exited and restarted.

Create Laravel Project

All your Laravel projects will be contained and edited within your Windows file system. I use NetBeans for development and tend to keep my development sites under (e.g.): C:\Users\Geek\Documents\NetBeansProjects\Project World Domination. Create this project as follows:

  1. Fire up Git Bash. This makes sure everything happens in the right place. The remaining commands shown below are from this shell.
  2. Change to the directory above wherever you want the new project to be created.
    cd ~/NetBeansProjects
  3. Install Laravel:
    laravel new "Project World Domination"
    Note: if the directory “Project World Domination” already exists, this command will fail with an obscure error.
  4. That’s it for this stage. Were you expecting something more complicated?

Laravel Homestead

Homestead is a pre-built development environment, consisting of Ubuntu, a web server, PHP, MySQL and a few other bits and bobs. It’s a place to host your Laravel websites while you’re testing them locally. Follow these steps to get it up and running:

  1. From a Git Bash prompt, change to your user folder. Make sure this location has sufficient space for storing virtual machines (800MB+ free).
    cd ~
  2. Make the Homestead Vagrant “box” available to your system.
    vagrant box add laravel/homestead
    This downloads 800MB or so and may take a while.
  3. Clone the Homestead repository into your user folder.
    git clone https://github.com/laravel/homestead.git Homestead
    This should be pretty quick and results in a new Homestead folder containing various scripts and configuration items for the Homestead virtual machine.
  4. Edit the Homestead.yaml file inside the Homestead directory. In the section “authorize”, enter the path to your public SSH key (see above). Similarly, enter the path to your private key in the “keys” section.
  5. Vagrant can easily synchronise files between your PC and the virtual machine. Any changes in one place instantly appear in the other. So you could for example in the “folders” section, map C:\Users\Fred\Code (on your Windows machine) to /home/vagrant/code (on the virtual machine). In my case, I’ve got this:
    folders:
    - map: ~/Documents/NetBeansProjects
    to: /home/vagrant/Projects
  6. We’re going to create a fake domain name for each project. Do something like this in the Homestead.yaml file:
    sites:
    - map: pwd.localdev
    to: /home/vagrant/Projects/Project World Domination/public

    Of course, if you put “http://pwd.localdev” in your browser, it will have no idea where to go. See the next section “Acrylic DNS proxy” for the clever trick that will make this all possible.
  7. To fire up the Homestead virtual environment, issue the command vagrant up from the Homestead directory. This can take a while and may provoke a few security popups.

Here’s the complete Homestead.yaml file:

---
ip: "192.168.10.10"
memory: 2048
cpus: 1

authorize: ~/.ssh/id_rsa.pub

keys:
- ~/.ssh/id_rsa

folders:
- map: ~/Documents/NetBeansProjects
to: /home/vagrant/Projects

sites:
- map: pwd.localdev
to: /home/vagrant/Projects/Project World Domination/public

variables:
- key: APP_ENV
value: local

At this point, you should be able to point your browser to http://127.0.0.1:8000. If you have created a Laravel project as above, and everything has gone well, you’ll see the standard Laravel “you have arrived” message. The Homestead virtual machine runs the Nginx webserver and that webserver will by default give you the first-mentioned web site if you connect by IP address.

Laravel landing page

VirtualBox is configured to forward port 8000 on your computer to port 80 (the normal port for web browsing) on the virtual machine. In most cases, you can connect directly to your virtual machine instead of via port forwarding. You’ll see in the Homestead.yaml file that the virtual machine’s IP address is set to 192.168.10.10. So generally (if there are no firewall rules in the way), you can browse to http://127.0.0.1:8000 or http://192.168.10.10 (the port number 80 is assumed, if omitted). Both should work. Personally I prefer the latter.

Acrylic DNS proxy

Of course we want to be able to host multiple development websites on this virtual machine. To do this, you need to be able to connect to the web server by DNS name (www.geekanddummy.com), not just by IP address. Many tutorials on Homestead suggest editing the native Windows hosts file, but to be honest that can be a bit of a pain. Why? Because you can’t use wildcards. So your hosts file ends up looking something like this:


127.0.0.1 pwd.local
127.0.0.1 some.other.site
127.0.0.1 override.com
127.0.0.1 webapp1.local
127.0.0.1 webapp2.local

(If you’re using 192.168.10.10, just replace 127.0.0.1 in the above example.) So this can go on and on, if you’re developing a load of different sites/apps on the same Vagrant box. Wouldn’t it be nice if you could just put a single line, 127.0.0.1 *.local? This simply doesn’t work in a Windows hosts file.

And this is where the Acrylic DNS proxy server comes in. It has many other great features, but the one I’m particularly interested in is the ability to deal with wildcard entries. All DNS requests go through Acrylic and any it can’t respond to, it sends out to whichever other DNS servers you configure. So it sits transparently between your computer and whatever other DNS servers you normally use.

The Acrylic website has instructions for Windows OSes – you have to configure your network to use Acrylic instead of any other DNS server. Having followed those instructions, we’re now most interested in is the Acrylic hosts file. You should have an entry in your Start menu saying “Edit Acrylic hosts file”. Click that link to open the file.

Into that file, I add a couple of lines (for both scenarios, port forwarding and direct connection, so that both work):

127.0.0.1 *.localdev
192.168.10.10 *.localdev

I prefer using *.localdev, rather than *.local for technical reasons (.local has some peculiarities).

This now means that I can now put in my Homestead.yaml file the following:

sites:
- map: site1.localdev
to: /home/vagrant/Projects/site1/public
- map: site2.localdev
to: /home/vagrant/Projects/site2/public
- map: site3.localdev
to: /home/vagrant/Projects/site3/public
- map: site4.localdev
to: /home/vagrant/Projects/site4/public
- map: site5.localdev
to: /home/vagrant/Projects/site5/public
- map: site6.localdev
to: /home/vagrant/Projects/site6/public
- map: site7.localdev
to: /home/vagrant/Projects/site7/public

and they will all work. No need to add a corresponding hosts file entry for each web site. Just create your Laravel project at each of those directories.

Managing MySQL databases

I would recommend managing your databases by running software on your laptop that communicates with the MySQL server on the virtual machine. Personally I would use MySQL Workbench, but some people find HeidiSQL easier to use. HeidiSQL can manage PostgreSQL and Microsoft SQL databases too. You can connect via a forwarded port. If you wish to connect directly to the virtual machine, you’ll need to reconfigure MySQL in the virtual machine, as follows:

  1. Start the Git Bash prompt
  2. Open a shell on the virtual machine by issuing the command vagrant ssh
  3. Assuming you know how to use vi/vim, type vim /etc/my.cnf. If you’re not familiar with vim, try nano, which displays help (keystrokes) at the bottom of the terminal: nano /etc/my.cnf
  4. Look for the line bind-address = 10.0.2.15 and change it to bind-address = *
  5. Save my.cnf and exit the editor.
  6. Issue the command service mysql restart
  7. You can now connect to MySQL using the VM’s normal MySQL port. Exit the shell with Ctrl-D or exit.

Okay, okay, why go to all this trouble? I just prefer it. So sue me.

Forwarded port Direct to VM
Port: 33060
Host: 127.0.0.1
User name: homestead
Password: secret
Port: 3306
Host: 192.168.10.10
User name: homestead
Password: secret

Managing your environment

Each time you change the Homestead.yaml file, run the command vagrant provision from the Homestead directory, to push the changes through to the virtual machine. And once you’ve finished your development session, run vagrant suspend, to pause the virtual machine. (vagrant up starts it again.) If you want to tear the thing apart and start again, run the command vagrant destroy followed by vagrant up.

How-to: Use custom DocumentRoot when hosting web sites on a Synology NAS

Synology DS214playI’ve recently taken the plunge and invested in a Synology NAS – the powerful DS214Play. Some of my colleagues have been raving about Synology’s NASes for a while and I thought it was about time I saw what all the fuss was about. This how-to article is not the place for a detailed review so suffice it to say I have been thoroughly impressed – blown away even – by the DS214Play.

The NAS is taking over duties from my aging IBM xSeries tower server. The server is a noisy, power-hungry beast and I think Mrs Geek will be quite happy to see the back of it. Life with a technofreak, eh. One of the duties to be replaced is hosting a few lightly-loaded web apps and development sites.

The NAS has fairly straightforward web hosting capabilities out of the box. Apache is available and it’s a cinch to set up a new site and provision a MySQL database. Problems arise however when you try to do anything out of the ordinary. Synology improves the NAS’s capabilities with every iteration of DSM (DiskStation Manager, the web interface), but at the time of writing, version 5.0-4482 of DSM doesn’t allow much fine tuning of your web site’s configuration.

A particular issue for anyone who works with web development frameworks (Laravel, CodeIgniter, CakePHP and the like) is that it’s really bad practice to place the framework’s code within the web root. I usually adopt the practice of putting the code in sibling directories. So, in the case of CodeIgniter for example, within a higher-level directory, you’ll have the system, application and public_html directories all in one place. Apache is looking to public_html to load the web site and then typically the index.php file will use PHP code inclusion to bootstrap the framework from directories not visible to the web server. Much better for security.

DSM doesn’t currently provide any way of customising the web root. All web sites are placed in a sub-folder directory under (e.g.) /volume1/web/. That’s it. When typing in the sub-folder field, forward and back slashes are not permitted.

Synology virtual host 01

This is my intended folder structure for an example CodeIgniter application:

volume1
|
\----web
     |
     \----test.domain.com
          |
          \-----application
          |
          \-----public_html
          |
          \-----system

Here’s how to do it.

  1. First, use the Control Panel to create your new virtual host. I give all my virtual hosts the same sub-folder name as the domain name. Here, let’s go for test.domain.com:
    Synology virtual host 02
  2. Very shortly, this new sub-folder should appear within your web share. You can place your framework in this folder. If you’re not yet ready to put the framework there, at least create the folder structure for the public folder that will equate to your Apache DocumentRoot. In my example, this would involve creating public_html within the test.domain.com directory.
    Synology virtual host 03
  3. Next, log in to your NAS as root, using SSH. We need to edit the httpd-vhost.conf-user file.cd /etc/httpd/sites-enabled-user
    vi httpd-vhost.conf-user
  4. The VirtualHost directive for your new web site will look something like this:

    ServerName test.domain.com
    DocumentRoot "/var/services/web/test.domain.com"
    ErrorDocument 403 "/webdefault/sample.php?status=403"
    ErrorDocument 404 "/webdefault/sample.php?status=404"
    ErrorDocument 500 "/webdefault/sample.php?status=500"


    Change the DocumentRoot line as required:

    ServerName test.domain.com
    DocumentRoot "/var/services/web/test.domain.com/public_html"
    ErrorDocument 403 "/webdefault/sample.php?status=403"
    ErrorDocument 404 "/webdefault/sample.php?status=404"
    ErrorDocument 500 "/webdefault/sample.php?status=500"

    Then save the file.

  5. UPDATE: Thanks to commenter oggan below for this suggestion – instead of the following direction, you can just issue the command httpd -k restart at the command line.
    There’s not a lot of information out there about causing Apache to reload its configuration files. I found that calling the RC file (/usr/syno/etc.defaults/rc.d/S97apache-sys.sh reload) didn’t actually result in the new config being used. Whatever the reason for this, you can force the new configuration to load by making some other change in the control panel for web services. For example, enable HTTPS and click Apply (you can disable again afterwards).
    Synology virtual host 04
  6. You will now find that Apache is using the correct web root, so you can continue to develop your web application as required.

NB: There’s a big caveat with this. Every time you make changes using the Virtual Host List in the Synology web interface, it will overwrite any changes you make to the httpd-vhost.conf-user user file. Until Synology makes this part of interface more powerful, you will need to remember to make these changes behind the scenes every time you add or remove a virtual host, for all hosts affected.

iPhone 6. The Rumour Mill – Likely Models, Versions and new Features

So we wait with baited breath to see what the next iteration of the Apple iPhone will be. With the competition putting out ‘iPhone killers’ Apple Bitealmost daily and nibbling into Apples market share, it seems time for something dramatic from the innovative tech Company.

Whilst still very much at the rumour mill stage, here is what the available evidence and info is strongly suggesting.

The next version of the iPhone is widely and will almost certainly be called the iPhone 6. It is scheduled for release in September of this year.

If the huge orders Apple has been placing in Japan with Sharp and in South Korea with LG, is anything to go by then the anticipated increase in screen size will become a reality. Initial reports and information leaked from those factories suggests we will be looking at two versions. The current models 4” screen will be scaled up into 2 new versions sporting either a 4.7” or a 5.5” screen. It goes without saying that this will be the high end resolution liquid crystal versions.

We can expect the iPhone 6 to be a far more powerful beast with an uprated processor and according to some sources; a major Taiwan Semiconductor Manufacturer has started a production run of these next generation A series ‘Apple A8’ chips. First reports are emerging of a very fast 2.6GHz chip.Apple Chip

As well as the increase in screen size we expect the iPhone 6 to be far thinner than it is now. Here at G&D we have read more than one report suggesting it could be as little as 5.5 mm, which is quite a significant change to the current design.

So what about that screen? It seems Apple may well be moving to an Ultra-Retina display with a pixel density pushing 389ppi. Design features will also include a durable Sapphire screen at long last. All this coupled with the larger screen sizes adds up to a mouth-watering combination that some would say is long overdue.

Other rumoured features that have been floating around cyber space,

Significant improvements to the camera with major changes to the aperture size and possibly moving to as much as an 8-megapixel camera. Some sources are even suggesting Apple has decided at last that the camera is an ever important aspect of a smartphone and Powerful iphone 6 cameramay go all out with a 10 mega-pixel version with an f/1.8 aperture complete with interchangeable lenses.

There is also a lot of hype about Apple going with a bezel-less display or at least playing with the iconic design feature to make it less prominent.

Personally, I’m a little worried that Apple may be finding it necessary to do battle with competitors on screen size. Once a smartphone doesn’t fit into my trouser pocket, it’s no longer a phone in my eyes. However if they can squeeze every available mm of front facing space into being a screen, that would be the way to go!

The Apple App store is also set for some changes and improvements but details are sketchy so far.

 

News: Motorola announces new smart watch Moto 360 – and it’s a beauty

One of the most interesting areas of development in the consumer technology industry is wearable tech. The segment is in its infancy and no one quite knows whether it will prove to turn out damp squibs or cash cows (if you’ll pardon the mixed metaphors). Top manufacturers are jostling for space with arguably premature “me too” gadgets that amount to little more than technology previews. There are even technology expos dedicated to this new sector.

Galaxy Gear - not great
Galaxy Gear – not great
When Samsung brought out its Galaxy Gear, I thought “we might have something here”. But the price was all wrong. I know the company can’t expect to ship many units at this stage in the game, but the opening price of £300 for a bleeding-edge, partially-formed lifestyle accessory kept all but the most dedicated technophiles firmly at bay. The Gear has failed to capture the public’s imagination and I think I know why. Putting aside the unconvincing claims that the Gear “connects seamlessly with your Samsung smartphone to make life easier on the go“, there’s one very big problem with this, and almost all other smart watches: it’s ugly.

Watches long since ceased to be simply pedestrian tools that tell you the time. They are fashion accessories. They express our individuality. Who wants to walk around toting one of these half-baked forearm carbuncles?

So I noted with interest Motorola’s announcement yesterday that the company is getting ready to launch the new round-faced, Android Wear-powered Moto 360.

Motorola D811 - stylish DECT answerphone
Motorola D811 – stylish DECT answerphone
MOTOACTV - ugly duckling
MOTOACTV – ugly duckling
Somewhat like Apple. Motorola has a reputation for adding its own design twist to everyday technology. I have a DECT cordless answering machine from Motorola, chosen largely on the strength of its looks, in a market where most of these devices have very similar capabilities.

Motorola’s previous attempt at a smart watch, the MOTOACTV, is frankly no supermodel. But if the MOTOACTV is the acne-ridden, orthodontic braces-sporting ugly duckling, the Moto 360 is the fully grown, airbrushed to perfection swan.

The Moto 360 in all its glory
The Moto 360 in all its glory

Just look at it. Now we’re onto something. Now we’ve got a watch where I wouldn’t have to spend all day persuading myself it’s pretty. Quite the contrary. I’m not that bowled over by the leather strap version, but in metal bracelet guise, I think we’re looking at a genuine designer item.

Pricing is yet to be announced, and no doubt it will be a long time before it’s stocked in UK stores. But this Geek hazards a guess that it will be worth the wait. Until it’s available, the only smart watch that comes close in terms of style in my humble opinion is the Pebble Steel, which is a little hard to come by, this side of the Atlantic.

Action Camera Comparison – GoPro 3 vs. Ghost Drift HD vs. Garmin Virb HD

I am an amateur film maker and my chosen subject is Land Rovers driving Green lanes on UK expeditions. I guess you could say I have quite specific requirements from an action camera but crucially I think, my filming is about as severe a test as you can get. Rough terrain, extreme weather conditions, impacts and even the occasional underwater dunking.

These are the conditions under which I need my action camera to operate. If I’m honest I don’t care what the manufacturer says the camera can do. I don’t care about the popular myths or if it’s the market leader. I want to know how they actually perform in the real world. To do this I am going to compare them in a number of critical areas with the only starting factor being that they must all be in a similar price bracket. In this case this is in the region of £250.

So the 3 cameras emerging as top dogs in that bracket are Garmins Virb HD, Drift’s Ghost HD and the market leading GoPro 3.

This slideshow requires JavaScript.

BASIC FEATURES

I’m finding increasingly that action cameras in this price bracket are packing themselves with features that you just don’t need. Let’s just concentrate on what’s important shall we? First up the quality of footage. On paper the Virb HD has the lens capable of shooting the best still and video footage. In reality, if you crank these cameras up to their highest settings you eat battery life and memory cards and your action footage, if fast moving, just looks weird. They all boast apps and phone connectivity, which is essential to the feature poor GoPro 3 as it doesn’t have an integral screen?!? Feature-wise it’s quite Ghost Drift HD remotetough to separate the Virb and the Drift Ghost HD. Both are very similar but I’d probably give it to the Ghost because of its fantastic multi-purpose remote control unit. The fact I can conveniently flick it on and off also means my editing time is dramatically reduced.

 

CONSTRUCTION

My big issue with action cameras has always been construction of the standard camera. Far too many claim to be impact-proof or waterproof but when you check, that’s only true if you put them in a case – usually a case that blocks sound, steams up and generally makes the camera harder to use.

pdp_image_HERO3Plus_black_cluster1Comparing all three cameras, the GoPro 3 immediately stands out as the poor relation again because of its traditional and I’d say, old fashioned design. It’s square and bulky and to be honest feels fragile. In comparison the bullet style, rubberised finish of both the Ghost HD and the Virb scream ‘ACTION! Go and film something dangerous!’

PICTURE QUALITY

What’s the point in going to all this trouble to create an action camera if it doesn’t shoot quality footage? Obvious you would have thought, right?

All 3 cameras need some tweaking in the settings to get the best out of them. The GoPro 3 is the market leader and I find myself desperately trying to find something that sets it apart but again its picture quality proves to be a let down. If I’m honest all 3 are pretty damn good but if I were to grade them I’d say the Ghost Drift HD tops the chart, the Garmin Virb HD takes second place and the GoPro – well I can only assume it was designed for the brilliant sunshine of California because it doesn’t like dark British country lanes!

BATTERY LIFE

As I’ve mentioned previously, a simple fact of shooting HD footage is that it eats power; an action camera by definition is usually small and takes a small battery. You kind of have to accept this and move on. What becomes more interesting is the price and availability of spare batteries and how easy they are to swap out.

Tests indicate that, at what I consider the optimal filming rate for an action camera – 720 at 60fps, you get in the region of 3 hours of film time from all these cameras. In reality what I find is that because the Ghost HD is remote controlled, I’m more inclined to switch it on and off and subsequently I get a good 2 hours+ extra battery life. A quick scan of replacement battery costs and the GoPro 3 has the cheapest batteries at £6.77 (Yeah GoPro 3!) with the Ghost Drift HD replacement battery costing £6.89. The Virb is a relatively new product and the Virb HD replacement batteries are an eye watering £25 so you aren’t likely to pack 3 or 4 of them in your spare kit.Ghost Drift Open

All are a nightmare to swap the battery. If you have an image of balancing precariously on a ledge in driving rain while you flick open a compartment and slot in a fresh battery, think again because they are all fiddly to get to.

ACCESSORIES

What I find consistently in the area of accessories is that almost without exception they are shocking. I won’t claim to have tested or researched every one that is available but the ones I have used or seen for all 3 cameras just doesn’t have the quality feel I want, when I’m attaching a couple of hundred quid to it and bouncing it through forests and rivers. This is a slight digression but I won’t use anything but these VacMounts for action cameras, which are bullet proof and beyond compare!

GHOST DRIFT – 4.5 out of 5

drift-hd-ghost-hero[easyreview title=”Dummy rating” icon=”dummy” cat1title=”Ease of use” cat1detail=”To get the best results, you need to spend 10 minutes with the manual. Menu isn’t the most intuitive.” cat1rating=”4″ cat2title=”Features” cat2detail=”It has everything you need but that remote is simply brilliant.” cat2rating=”5″ cat3title=”Value for money” cat3detail=”It is the most expensive of the 3 tested.” cat3rating=”4″ cat4title=”Build quality” cat4detail=”Tough rubberised coating and waterproof seals. Solid.” cat4rating=”4.5″ summary=”This is where the smart money is. A genuine GoPro killer”]

GOPRO 3 – 3 out of 5

GoProHero3[easyreview title=”Dummy rating” icon=”dummy” cat1title=”Ease of use” cat1detail=”Having to extract it from the case to access the features is annoying.” cat1rating=”3″ cat2title=”Features” cat2detail=”It’s got everything the others have, except a screen…” cat2rating=”3″ cat3title=”Value for money” cat3detail=”Newer models have meant dropping prices and bargains can be found.” cat3rating=”4″ cat4title=”Build quality” cat4detail=”I just don’t trust its build quality. Without its case I’d say it was fragile at best.” cat4rating=”3″ summary=”I genuinely have no idea how the GoPro is the market leader. It’s adequate but no more.”]

GARMIN VIRB – 4 out of 5

garmin-virb-hd-action-camera-27[easyreview title=”Dummy rating” icon=”dummy” cat1title=”Ease of use” cat1detail=”Nice clear menu structure. Buttons easily accessible.” cat1rating=”4″ cat2title=”Features” cat2detail=”Has all it needs to have. If only it had a remote.” cat2rating=”4″ cat3title=”Value for money” cat3detail=”It’s fresh on the market at a low price. Great as long as you don’t want a spare battery.” cat3rating=”4″ cat4title=”Build quality” cat4detail=”Identical to the Ghost HD” cat4rating=”5″ summary=”A very close second to the Drift Ghost just pipped due to the lack of a remote control.”]

5 Minute Review: Dash Board Non Slip Vehicle Mat Mount for Car Sat Nav Tomtom GPS

I love these cheap little odds and ends that transform how you use a piece of tech.

The problem? I’ve never been very happy with the way my car’s satnav mounts. Inevitably it ends up on my windscreen leaving a tell-tale circle on the window for thieves to see and generally making the screen dirty.

GPS Vehicle mount matEnter the very simple and very cheap non-stick car mount mat. I’m sure you’ve seen them advertised and I have looked at them and scoffed about how unsuitable they must be, especially given the textured dashes in most vehicles or the configuration of air vents resulting in a lack of flat surfaces. With the recent purchase of a TomTom Start 25M, I tagged on one of these fairly generic mats. (I did find a Car Sat Nav TomTom GPS version of the mat – perhaps there are some specific properties unique to TomTom?)

Very simply, the mat is completely fit for purpose. Even with my textured Audi dash and central vents, which the corner of the mat has to wrap around, it remains firmly on the dash. I say “firmly” – the centre piece that the GPS unit mounts on seems to lift from the dash surface slightly. As a result you can detect slight vibration in the attached device. That said, with some very tight and fast cornering and even an emergency stop, the mat and sat nav stayed resolutely in place.

Geek and Dummy TomTom GPS car dash mountMy TomTom Start 25M weighs in at 216 grams. If I’m honest I think that’s about the maximum weight I’d want to mount on the mat but that’s enough for most modern sat nav devices. I am very happy with the upright mounting of the sat nav and the fact I no longer have a sign on my windscreen announcing ‘there is a sat nav in this car somewhere; break in and steal me’.

I highly recommend you give one of these a try. Cheap as chips and simply brilliant!

Review: Ghost Drift HD Action Camera – The Best Action Camera for Vehicles & 4×4’s

SEE THIS CAMERA COMPARED TO TWO OF IT’S NEAREST RIVALS – VIRB HD & GO-PRO 3 

When I was first handed the Ghost Drift HD back in November it would be fair to say it had a lot to live up to – and not in comparison to the action cameras you might expect. The market leading Go-Pro I have always found to be all show and in fact not very much GO. My cheap and cheerful Kodak ZX range cameras are the real challengers, with their almost unparalleled lens quality, integral waterproof housing and cheap, easily changeable batteries. The Kodak ZX is a real hidden gem. So when I picked up the very sexy looking Drift HD with sky-high expectationsh, I was a bit disappointed with the results.

If you read my original review you will no doubt detect the ‘luke warm’ reception I gave it. Just keep in mind that I really did review it like the proverbial Dummy. I unpacked it, stuck in a memory card, mounted it on my bonnet and took it out.Ghost Drift Kit

Well what a difference a few months makes!!

Just before revisiting the Drift HD, let me qualify my review by saying I dislike the GoPro Hero 3 (direct competitor to the Drift HD). To start with, the internet is littered with stories of faulty units. My main beef though is that, since the manufacturer knows it’s considered to be the market leader, it cashes in on the hype with silly prices and expensive optional extras. Anyway, as far as I’m concerned if you need a separate waterproof case to make your action camera fit for purpose it’s just not an action camera!

Back to the Drift Ghost HD. The big selling point for me was the remote control unit and that’s proved to be a fantastic feature – not only because I can switch my cameras on and off from the comfort of the driver’s seat but because the colour coded LED indicators on the remote flash very clearly to tell me the cameras’ current modes. Don’t get me wrong, I keep it simple when I’m filming my green lane adventures but just occasionally I like to select the burst picture mode and take some still images – and the transition is effortless.

In my first review of this camera, I wasn’t a huge fan. So what’s changed to make me such a convert?

It’s amazing what a bit of experimentation can do. First off: mounting the camera. The 1/4″ standard camera thread is on the side of the camera. Brilliant I guess for a helmet cam. Not so much for a vehicle mounted camera. Nonetheless, get the right mounting solution and that little wrinkle is soon smoothed out.1/4 thread on Ghost Drift HD

Next, low light filming. The camera comes with default exposure setting of +0. Initially that gave me disappointing results. It only took tweaking that setting up to +1.0 and oh my word, the camera is transformed! I never thought I’d say this, but the images from this camera in all conditions are now superior to my beloved Kodak lensed ZX range of cameras. They are at least comparable to the very latest GoPro but without the silly price tag and it doesn’t need an extra case. Have I mentioned yet that the GoPro needs a waterproof case…?

It really is just the complete package for an action camera and as with all my kit this has been tested in wind, snow, constant driving rain and even the occasional dunking during a river crossing. I’ve also gained a few handy hints from this experience of using the camera in the field. These should really help you get the best from your Ghost Drift HD.

There is an app for the Drift Ghost HD. It’s quite a fun thing to play with and allows you to see what your camera sees, on your smart phone’s screen. Good fun to play with although I usually just use it to make sure my cameras are positioned correctly.

Spare batteries. Now although I found these batteries lasted approximately 5 hours of intermittent use via the remote control, I sometimes go on whole weekend trips; I wanted the flexibility of swapping out batteries. Spare batteries for the Ghost HD are very very cheap – about £11 for 2. Ghost Drift BatteryThat’s a lot cheaper than any of the other action camera contenders, for sure. The only thing I would say is that it’s a little bit fiddly to swap a battery. It gets easier with practice but not something you can do with cold gloved hands!

I run a Pure Sine inverter in my Land Rover so I can power larger devices. I’ve also picked up a great Patona external battery charger for these replacement batteries making the whole process of keeping my cameras running a lot easier and smoother.

Now as for memory cards, as you can imagine, shooting the amount of footage I do, I use about one 16GB card each day in each camera so it can be an expensive thing to kit myself out with enough of them. Well that’s where your friendly neighbourhood Geek comes in because he did a review of SD cards recently and it turns out that one of the cheapest SD cards is the best anyway, so the Samsung SD card is an easy and cost effective choice.

[easyreview title=”Dummy rating” icon=”dummy” cat1title=”Ease of use” cat1detail=”To get the best you need to spend 10 minutes with the manual.” cat1rating=”4″ cat2title=”Features” cat2detail=”What else could you possibly need.” cat2rating=”5″ cat3title=”Value for money” cat3detail=”It’s still a bit on the pricey side for me but a lot better value than the market leader.” cat3rating=”4″ cat4title=”Build quality” cat4detail=”Tough rubberised coating and waterproof seals. Solid” cat4rating=”5″ summary=”This is where the smart money is. A genuine GoPro killer”]

So you have my advice and you have my opinion now I’ve had the benefit of having used this camera in all conditions. It only remains fr me to show you the latest film I made with this set-up, which should be featured in Land Rover Monthly’s May Edition.

How-to: Clean up audio and remove noise with Audacity

As you may know, here at Geek & Dummy, we’re building up a free library of sound effects, which you’re welcome to use in your own projects. For the best results you really need to use decent quality recording equipment – a microphone attached to your computer will just pick up lots of unwanted noise. We’ve achieved really great results with the Tascam DR-05, which for the price (about £80) packs an amazing sound quality into an easily pocketable format. It helps to pair this with a decent SD card – see our recent MicroSD card head-to-head to see what’s the best value for money in that department.

  1. When recording, make sure your audio sample contains about 2 seconds of ambient noise. This enables us to profile the ambient noise before we remove it from the sample.
  2. Run Audacity. If you don’t have this incredible (but dull-looking!) free software, pick it up here.
  3. Open the sample (File –> Open).
    Cleaning audio 01
  4. Using the selection tool, select your couple of seconds of ambient noise – this “silence” should look virtually flat in the display.
    Cleaning audio 02
  5. On the menu, choose Effect –> Noise Removal.
  6. Click “Get Noise Profile”.
    Cleaning audio 03
  7. Press Ctrl-A to select the whole sample.
  8. On the menu, choose Effect –> Noise Removal again.
  9. This time, click OK. The default settings are probably okay, though you can play with them to achieve different results.
    Cleaning audio 04
  10. Listen to the sound sample. Sometimes noise removal can result in artificial sounding samples. If that’s the case, you can take a noise profile from a different quiet section of the sample and try again, or try with different parameters.
  11. You can now remove silent sections of the audio as required. You can either select the sections and press the delete key, or use the Truncate Silence feature in Audacity (Effect –> Truncate Silence) to do it automatically. Use the zoom tool for precision removal of short sections of silence.
    Cleaning audio 05
  12. We “normalize” the sample to take it to the maximum volume possible without causing distortion. Before normalizing, you may want to find and delete any unwanted loud sections from the sample, in order to improve the effect of normalization.
    Cleaning audio 06
  13. To normalize the sample, ensure it is all either selected or deselected. Then choose Effect –> Normalize. Again there are some configurable settings here.
    Cleaning audio 07
  14. Listen to the sample again to make sure you’re happy with the results. All changes can be undone with Ctrl-Z.

Review: Bose Soundlink Mini

Bose SoundLink MiniSeldom does a product reach out and and grab me with the intensity of “Have me, have me”, like this product did. In fact I can honestly say that only the iPhone, (the original first release), gave me anything like a similar sensation. I recall like it was yesterday, in December 2007, just a few weeks after the iPhone was launched, when I first held it, and realised in only a few minutes that, no matter what – I had to own one, and fast!

Now, I’m aware of bluetooth speakers – I have been for some time. I’ve conducted some modest research into them in the past; my conclusion was always they were too damn (expensive), or just rubbish. Suitable for a camping trip perhaps, but certainly not for full time home entertainment.

Well, a colleague brought one of these into work recently. I kid you not, within seconds of it springing into life, the same iPhone sensation gripped me and I ordered one for myself the very same day.

Bose, I think most will agree is a quality manufacturer of speakers. They have been one of the market leaders for as long as I can remember, and I can remember the days when “technically advanced” was when your cassette player could skip to the next track! One of the better things ever to come out of America, since Coca Cola, Bose is right up there on my scale of best perceived quality manufacturers, on a par with European examples such as Audi, Omega and HP Sauce.

Bose SoundLink MiniSo when I first heard the Soundlink Mini in the flesh, not only was I blown away by the performance of such a compact unit, but I immediately also thought that it would fit the needs of my ever-demanding, cable-hating wife. The variety of places we could utilise this neat little device were numerous; we could take it outside in the summer, replacing the iPad Air that we use to play music when dining outside. Perhaps it could come with us on weekends away, to hotels, cottages, foreign holidays even? With a little thought, its use could be expanded with ease. Use it in the kitchen, broadcasting iPad Air audio from a YouTube cooking tutorial, listen to the football commentary whilst tinkering in the garage, piping Radio 5 Live from your iPhone 5s and so on. Take it into the bathroom, the workplace, your mate’s house – the options are almost endless.

Made largely from aluminium, the speaker is robust and weighs around 1.5 lbs, giving an immediate impression of good build quality. It has rubberised top-mounted controls and is a cinch to use. It can pair with multiple devices, (remembering the last 6). Connection of your device, phone, iPad, Mac, or PC is even easier than connecting to your car’s hands-free, without the need to enter any passcode.

From such a compact unit, my impression would be that it wouldn’t cope with any modest volume demands, but how wrong I was. Whilst I agree it may fall short of providing music enough to satisfy a full-on house party, it’ll certainly provide enough output to meet everyday needs in our house, and if I had neighbours, enough to get them banging on the wall I’m sure! One observation, of a slightly negative nature, is that you can’t adjust the tone the speaker offers the listener. I have a number of theories as to why this may be, but ultimately the lack of such a feature is not a problem as the output offered is rich and deep enough to do justice to rock music, and the treble range is just as sweet for raw acoustic performances – I simply love it.

An optional extra is a Bose carry case made especially for this unit, but at around £40 I don’t think it represents value for money. Bose also offer a variety of coloured soft shell cases, which you may find funky, but don’t really appeal to me.

If you want to read about the detail of the unit to learn about battery life and range, you can do so on Bose’s own website. I don’t get too hung up about stuff like that. I’m never far from a power socket, and I don’t live in a house with rooms anywhere big enough to test the range of the connectivity. Why would I want to control music upstairs when the unit is playing downstairs?!

If you’ve got £170 or thereabouts burning a hole in your pocket and need a wireless Bluetooth speaker which is well-built and offers top drawer performance, then stop reading this now, and get clicking! I’m married to a woman who views audio visual products / any technology really, about as high up her priority list as I do face cream and Yoga, so you may understand why we have clashed for years over these priorities. To be fair, cost isn’t the usual bone of contention – normally it’s whether it can be seen with the human eye or not. My wife doesn’t really care what it sounds like, how technically advanced it might be, where it came from or anything like that: if it’s visible, then “You think you’re putting THAT, there?!” is a standard response. Cables are sinews of the devil!

For those of you living with such a woman, who lives the minimalist dream and likes her choones, imagine the points you’ll score when you bin the cumbersome, slightly dated, yet perfectly functional and technically superior hi-fi unit and replace it with this?! If the £170 ticket price is making your eyes water too much though, take a look at Geek’s review of the Soundlink SW100.

This slideshow requires JavaScript.

[easyreview title=”Boris rating” icon=”collab” cat1title=”Ease of use” cat1detail=”So easy, even Dummy could use it. Effortless syncing with multiple devices.” cat1rating=”5″ cat2title=”Features” cat2detail=”Pretty basic really, but it does what it does, very well. I didn’t harbour any unrealistic expectations of it.” cat2rating=”3″ cat3title=”Value for money” cat3detail=”With a high ticket price, it’s only expensive if it fails to perform, and it certainly doesn’t.” cat3rating=”4″ cat4title=”Build Quality” cat4detail=”Premium build & premium performance, it’s a 5 from me.” cat4rating=”5″ summary=”With such simplistic function and premium performance and build, this is a top notch device. Well done Bose. “]

Review: Giotto’s Rocket-air Super Blower AA 1900

Dusty computerAnyone who’s pulled a computer apart will know how much dust, crud and miniature wildlife can take up residence within your machine’s delicate circuitry. This build-up is bad for your computer. In particular, it makes fans and heat sinks less efficient and causes everything to warm up.

At best, this is a nuisance. Many power-regulating computers will simply slow down to allow the system to cool off. At worst, though, the excess heat in a power supply for example can set your computer – and your house or office – on fire. Clearly this is not A Good Thing.

Periodically then, it’s a good idea to take an “air duster” to your computer’s innards. Air dusters usually consist of cans of compressed air, with a straw-like nozzle to direct the air flow. They’re designed to create enough pressure to remove dirt but not so much as to cause damage.

Where I work, we used to get through a ton of these cans of air. The problem was, just when you really needed the air duster, you’d look on the shelf and there’d just be an empty can. Harrumph. How inconsiderate.

Giotto’s Rocket-air Super Blower AA 1900
Giotto’s Rocket-air Super Blower AA 1900
So looking around for a better solution to the problem, I came across this fellow, the “Rocket-air Super Blower” by the Chinese/Taiwanese Company, Giotto’s Industrial Inc. (Beware of the annoying noisy Flash animation that plays whenever you visit the site.)

The Rocket-air has a thick flexible rubber body and a solid plastic nozzle. Squeeze firmly and you get a blast of air not dissimilar to that from a can of compressed air. It’s not hard work to operate and of course the best part is that you have an unlimited supply of air at your disposal (at least until some thieving, envious toe-rag runs off with it).

It’s theoretically available in a few different colours. I’ve only seen it in the UK in the red/black regalia, not that it matters: I didn’t buy it for its looks. Mind you, as looks go, it’s a fairly funky tool and was surprisingly quite a conversation piece when it first arrived.

Speaking of design, you have to love the attention to detail here. Giotto’s makes camera equipment, so the Rocket-air’s primary function is to blow dust from delicate camera lenses (the fact that we can bend it to other uses is a big bonus). On the opposite side to the nozzle, there’s a fast air inlet valve. This means that when you release the blower, rather than sucking dust back in through its nozzle, it pulls in (hopefully) clean air from the other side.

Oh, and the “rocket fins” on the base of the blower enable it to stand up stably. Not massively important, just a nice bit of design. On two of these fins there are holes punched so that you can thread a lanyard through. Great for hanging it from your neck should you be so inclined. People will give you funny looks though.

So it’s well made, durable, moderately attractive, great at its job – there’s got to be a catch, right? The price. Amazon has it on sale for £8.99 at the moment. I don’t know about you, but my first thought was, “That’s a bit expensive for a glorified executive stress toy.” But then if you think about it, you can’t really buy a can of compressed air for less than £3 or £4. So the Rocket-air pays for itself pretty quickly – I would expect it to last as long as a hundred cans of compressed air. When you put it that way, it’s a bit of a bargain.

This slideshow requires JavaScript.

[easyreview title=”Geek rating” icon=”geek” cat1title=”Ease of use” cat1detail=”Short of poking it in your own eye, I’m not sure you can get this wrong.” cat1rating=”5″ cat2title=”Features” cat2detail=”Does everything you expect of it. I suspect it could be made slightly more powerful, but otherwise, there’s little to criticise.” cat2rating=”4.5″ cat3title=”Value for money” cat3detail=”When you compare it with the alternatives, it’s pretty near the cheapest solution to our dusty problems.” cat3rating=”4.5″ cat4title=”Build Quality” cat4detail=”Great attention to detail. Some slightly annoying slivers of rubber haven’t quite been removed after it came out of its mould. But otherwise, really well made. Feels like it will last forever – or at least until I retire (which is much the same thing).” cat4rating=”4.5″ summary=”Great solution to the problem of safely cleaning dust and dirt out of computers and fans. As a bonus, you can use it on your camera too. Can’t really recommend it any more highly.”]

“Dusty Shuttle” image copyright © Dave Kirkham, licensed under Creative Commons. Used with permission.