Page: https://www.qgates.com/articles

All Articles

Computer donation appeal - Coombe Dean School (Plymouth)

Posted by Seb T in news on

Lenovo Thinkpad T450s Laptop

*** Children In Plymouth Need Your Help! ***

Do you have an old, unused laptop gathering dust? Perhaps an older machine you've upgraded from, with older software, or slow/unreliable performance? Or a desktop type computer that you've been meaning to dispose of?

If so, please consider contacting us to donate it for recycling, to provide those students of Coombe Dean School who do not have access or have shared access only with much needed equipment for home and remote learning during the Covid-19 period. Queensgate Studios are working together with Coombe Dean to refurbish and re-purpose unwanted computers for children desperately in need of a device to access online learning.

Continue reading »

Computer and Laptop buying guide

Posted by Seb T in blog on

Lenovo Thinkpad T450s Laptop

(Updated 22nd June)

By popular request our guide to parents, teachers and students looking to buy laptops during the COVID pandemic. Over the coming weeks this guide will be expanded and refined so do check back occasionally.

So which laptop is the best buy? Read on...

Continue reading »

HTML table row transitions with Vue.js and Velocity.js

Posted by Seb T in blog on

Vue.js and Velocity.js

CSS and JS transitions/animations are great for adding subtle (or less so) transition effects to elements in the DOM. But one use-case that requires special attention is tables. In a recent commercial application we needed interactive tables with fine-grained control of the appearance of table rows and cells. In this aticle we provide a simple demo using Vue.js and Velocity/js that shows a simple slideUp/slideDown to highlight row insertion/removal visually. The method illustrated is easily expanded with a sequence of animations and can be used to control complex table layouts with compound row, column or cell animations.

For slides, the usual approach involves overflow:hidden together with manipulation of an element's height property over time. A typical approach (eg. with jQuery) would involve some JS to perform a slideUp/slideDown, or using CSS transitions we could apply some CSS classes together with the transition property. But tables present an edge-case: the browser determines the height of tr and contained td elements by content and refuses any attempts to override the height of these elements, either with CSS or inline styles.

Continue reading »

Howto: Install Laravel 5.5 on shared hosting

Posted by Seb T in blog on

Laravel PHP framework

(updated 31st August 2017)

There are a few guides on the interwebs concerning installing Laravel on shared hosting, but they're either incomplete or out of date. Recently we updated one of our client sites to Laravel 5.5; the site needed to go live on a cpanel-type shared hosting (LAMP). The good news is that it's easy. Even better news is that I created a PHP script to do everything necessary to prepare your Laravel application for deployment. So what's involved? Let's dive in!


I'll keep this brief. You're a webdev and you're about to push your locally tested and working L5.x site live? Back up your existing site source, configuration and data. If it all goes wrong, roll back. If it's a production site receiving high-volume traffic, employ a strategy to test your live site via a local DNS redirect and switch the DNS live when happy. You know the drill.


It's unlikely that your shared hosting provider will give you the necessary permissions, command line access or freedom to deploy your app in a state where it can be remotely developed. So we're going to assume that command line access to tools like node npm composer and php artisan ... are unavailable on a shared hosting account. This means that substantial development will occur locally, and the live install will be a snapshot of the current local development state. You'll have the ability to FTP in and make edits to PHP source, blade templates etc., but you won't be able to compile your client-side assets or install composer packages. You probably know this anyway, but it's worth spelling out: shared hosting is a restricted but low-cost option for hosting small-scale applications or prototypes. Expect some limitations.

Continue reading »

Secure messaging for the masses? Part 1

Posted by Seb T in blog on

Privacy and Security

In this two-part post I discuss text-based instant messaging as a mechanism for people to achieve secure, private communication between one-another. It is my assertion that this is a basic human right and not the exclusive domain of those with a specific need for secrecy, 'something to hide' or criminal intent. One of the most basic freedoms is the ability to communicate without fear of eavesdrop from corporate, business, government or other agencies or individuals.

In part 2, I review specific software tools from this perspective, balancing simplicity, convenience and features in an attempt to find the best tool for secure messaging available today.

In this part I explain, in simple terms, how cryptography is used to secure communication in transit between sender and recipient. I contrast simple password-based encryption with the basics of public-key (or twin-key) cryptography and why it's a good thing, setting the scene for the review in part 2.

Continue reading »

Smartwatches are out of step with the masses

Posted by Seb T in blog on

Laravel 4 PHP framework

Smartwatches and other wrist-accessories for technocratic hipsters have generated plenty of excitement but poor sales. Apple have been guarded about sales figures and other manufacturers who've invested less heavily in the idea of the next 'world beating' meme see it perhaps as a loss-leader, a device to complement others in their lineup or ecosystem. Pebble, the famous Kickstarter startup, has built a successful niche product through being 'first' and device agnostic with its products, and manufacturers like Fitbit have placed emphasis on the perceived USP of a smart wrist: health & fitness. In recent days, Tag Heuer have entered the race (pun unintentional) with the first smartwatch from a marque of note and a physical quality, they hope, unrivalled in the sector.

Why then, with the excitement surrounding these devices several years ago has success been so limited? Is it another example of idea vs. reality along the lines of video-calling vs. voice-calls? I argue no, and that the answer is staggeringly simple. If I'm right, I predict the Tag Heuer device will have equally disappointing sales to its budget-conscious siblings.

The answer is battery power and default screen-off.

Continue reading »

SCMS - Sublime Text CMS for Joomla, Wordpress

Posted by Seb T in blog on

Sublime Text, Wordpress, Joomla CMS

Available for Sublime Text versions 2 and 3!

Currently in development and due for release soon is our Sublime CMS extension. This plugin for the fabulous Sublime Text editor allows CMS administrators and site developers to take advantage of a professional text editing environment on Linux, Mac and Windows for working on both existing and new content within the CMS, bypassing the web-based CMS back-end.

Features of SCMS include:

  • Designed for site builders, web designers / developers, administrators and professional content editors. End users will typically prefer working through the familiar web-based CMS content editing environment.
  • Continue reading »

Howto: Update Laravel 4

Posted by Seb T in blog on

Laravel 4 PHP framework

In this guide I walk through the steps I took to bring my Laravel 4 codebases bang up to date. Intended audience:

  • you've been focused on learning and developing Laravel 4 code for a number of months, with possibly >1 Laravel 4 codebases installed locally and in various stages of active development.
  • some you don't care too much about so you've hacked them around and run composer update often.
  • others are for more serious projects and, having broken your "carefree" L4 installs several times with composer update and other methods of staying up-to-date, you got wary and decided to stay with a particular (old) L4 codebase for a while so you could concentrate on your own work.
  • though you may be comfortable with git and use it for your work, your L4 installs are not tied to laravel's github repos, so git diffing and merging with remote repos may not be appropriate for you.

Continue reading »

As a creative photographer, I wanted a responsive website with a unique style to showcase and sell my work. Seb delivered a beautiful site that also works brilliantly on phones and tablets.

Pam West, H-Pinkness Photography, Brighton, UK

We specialise in wealth management for Doctors and Dentists. Queensgate Studios built a site to showcase us and allow our advisers to regularly inform clients about financial matters which matter to them.

Laurence Newman, Legal and Medical Investments Ltd., UK

We design documentation systems for emergency, first response and global industries. Queensgate Studios built our online presence, ordering system and EDIS, our first electronic system.

Carl Wallin, CWC Services, UK

We needed Android support for Flexicall, a system designed around legacy Windows Mobile 6 devices. Queensgate Studios delivered on time and on budget.

Cuda Drinks Co., Plymouth, UK