Cocept's Blog Posts

  • Content Creation For Managers If "Pay to get in the way" is the mantra of traditional marketing, "Create and they will come" is that of content marketing.
    Read More
  • SEO For Managers Search Engine Optimisation for Managers. None of the low level nitty gritty, just a high level summary document of what it means to SEO, and how to manage people who do it.
    Read More
  • Jekyll is adding .html file extension despite permalink

    If you want to remove the .html file extension from your jekyll permalinks, you must include a trailing slash:

    Read More
  • Fix for Wordpress Media Upload Http Error on Nginx

    I ran into an issue when uploading large files to Wordpress using the new drag and drop media uploader. The file would upload to 100% then immediatly show an enigmatic error message: “Http error”. It looked like this:

    Read More
  • Removing SEO Spam from Wordpress Blog Posts

    I was commissioned to repair, update and secure a Wordpress website that was may years out of date and had been hacked to pieces.

    Read More
  • Changing the Colour of the Toolbar in Chrome on Android

    You might have noticed a dash of colour injected into Chrome for Android lately, particularly if you visited the mobile version of this site:

    Read More
  • Using the Pillow Imaging Library on Amazon Elastic Beanstalk

    I often use Amazon Elastic Beanstalk (EB) for project deployment. Several times now I’ve hosted projects on EB that use Pillow, Python’s image manipulation library, and have run into a slew of problems. I have documented solutions to each one I encountered below:

    Read More
  • Contact Forms for Static Site Generators like Jekyll

    Static site generators like Jekyll are great. They’re fast, simple to use, and you can even get hosting that is updated directly from your Git repository using Github pages like I do.

    Read More
  • Sandboxing User Data in Model Forms

    A lot of online applications nowadays are built using Multi Tenant Data Architecture, meaning the data for multiple clients is stored in the same database. This can obviously cause some data security concerns because the developers have to ensure that their client’s data is sandboxed and not accessible by other clients.

    Read More
  • Push Menus

    A Push Menu is a navigational menu that is placed off canvas and brought into view when the user performs a particular action.

    Read More
  • Sticky Menu UX Pattern

    A Sticky Menu is a menu that stays put even when you scroll down. I’m using one on this page - scroll to the top and the menu bar hugs the top of the page. Scroll down slightly and it follows you instead of disappearing.

    Read More
  • Generate Random EAN13 Numbers

    Here is a simple script for generating totally random EAN13 numbers. The script is written in Python and simply prints the result to the standard out.

    Read More
  • Install PIL on Amazon Beanstalk

    To install python libraries like PIL on an Amazon Elastic Beanstalk instance, put the following into a file called “requirements.txt” in the root of your project:

    Read More
  • Amazon Elastic Beanstalk PIL JPEG Support

    The error message “decoder jpeg not available” in your Amazon Elastic Beanstalk instance means you are trying to use PIL with a jpg image but don’t have the required software installed on the server to perform the decoding. To have the required software installed when your EB server is created, edit your EB extension file (usually located at .ebextensions/python.config) to add the following lines:

    Read More
  • Flask File Upload Connection Reset

    While following the Flask file upload tutorial here, you might get a "This webpage is not available" message due to the connection being interrupted (ERR_CONNECTION_RESET). This is due to a problem with how modern browsers interact with the Werkzeug WGSI.

    Read More
  • Track Outbound Links to New Windows with Google Analytics

    You can use Google Analytics to track when a user clicks on a link that takes them to an external website using the code snippet in the link below:

    Read More
  • Odoo (Formerly OpenERP) Functional Binary Field

    In order to have more flexible file serving functionality within Odoo, you can swap out binary fields for a functional field that returns the contents of your file. Below is a sample class that loads a file’s contents from a file system path and serves it to the user using a functional field. It was originally built for version 6.0 but should work on newer versions too:

    Read More
  • Rails 4 CKEditor uninitialized constant Ckeditor::Orm

    With Rails 4 you may get the following traceback when trying to use the CKEditor gem:

    Read More
  • Fingerprint Not Appended to Assets When Deploying in Production

    When deploying your rails 4 app, you might experience a problem where the** fingerprint is not appended** to the assets name on your HTML when you deploy into production. To solve this issue:

    Read More
  • Gridster iFrame breaks Drag and Drop

    Gridster is an open source javascript dashboard plugin. It provides a nice simple way to make an auto reshuffling dashboard with very flexible contents. 

    Read More
  • Create an OpenERP Webkit Report from Scratch

    This guide will help you prepare your OpenERP instance to use the Webkit reporting engine - a reporting engine rendered by webkit and powered by HTML and Python mako templates.

    Read More
  • Setting up Lithium PHP Web Framework on Ubuntu

    Below is a very thorough tutorial for configuring the Lithium PHP web framework to work flawlessly in Ubuntu. It takes you through steps which prevent several issues that are commonly encountered when configuring Lithium on Ubuntu, such as setting up permissions for the template directory correctly.

    Read More
  • Android Studio Ubuntu Classpath

    When setting up Android Studio on Ubuntu you might get the following error message:

    Read More
  • Lithium Could not write compiled template - Ubuntu

    When setting up the Lithium PHP Web Framework it is necessary to allocate the correct permissions to the app/resources folder, otherwise you will get a message like the one below, when Lithium tries to write the view cache files:

    Read More
  • Kivy unexpected keyword argument '__no_builder'

    This error comes from subclassing a widget and overriding __init__ without **kwargs.

    Read More
  • Kivy Screen Manager Blank

    Following the Kivy Screen Manager tutorial here might prompt you to define your Screen Manager outside of your app class so you have access to it everywhere. Like this however, you will find that your screens are blank and ignore your KV layout file! The fix to this is simple:

    Read More
  • Dependency issues after downgrading PHP 5.4 to 5.3 on Ubuntu

    After using the php version downgrade script to downgrade your PHP version from 5.4 to 5.3, you might experience an issue where installing php plugins leads to the below dependency errors. In my case, I was installing a list of packages as advised on this guide.

    Read More
  • Install PHP 5.3 on Ubuntu

    Installing php 5.3 on Ubuntu can be a bit tricky. Luckily, some kind *nix wiz made the following bash script that will downgrade your existing php 5 installation to version 5.3.

    Read More
  • MoSync QR Code Scanner

    In this tutorial I will show you how to easily create a cross-device QR code decoder using nothing but MoSync, HTML 5 and a couple of Javascript libraries.

    Read More
  • Failed loading ZendDebugger cannot open shared object file

    If you get the following error while trying to install ZendDebugger with Xampp 32 bit on a 64 bit machine but already have libssl installed, you might need to install libssl 32 bit! Try:

    Read More
  • Move All User Folders to Another Hard Drive - Windows 7

    Sometimes, especially if you have a nice new shiny solid state drive (like me), you will want to put all the user files and folders (Documents, Videos, AppData etc) onto a hard drive different to where your operating system is stored. 

    Read More
  • Android Use Classes From Another Project in Eclipse

    A good project architecture separates abstracted code into different projects. This short article shows how to implement this when developing for Android in Eclipse:

    Read More
  • Taking Screen Shots with your HTC Desire HD

    Some people have been complaining of their HTC Android phone playing the camera shutter sound randomly. Most people do not realise that this is caused by a software update that allows their phone to take screen shots of the current screen!

    Read More
  • Android Custom Notification Sound Tutorial

    In order to make your notification play a custom notification sound when it is shown, follow the steps below:

    Read More
  • Search Entire Project in Eclipse

    It came as quite a shock that Eclipse didn't have it's own "Find Across Entire Project" feature. Even more of a shock that a quick google search didn't provide a definitive answer! So here is the solution I found - a simple plugin for Eclipse that quickly let's you find across the entire project:

    Read More
  • Android - Add views in a loop

    Sometimes you need to dynamically create an unknown number of views - for example rows of data in a table. Because you cannot add the same view more than once without recreating it in a new variable, this is not as straight forward as one would think.

    Read More
  • Eclipse Auto Format Line Wrapping Width

    When using CTRL + SHIFT + F in Eclipse by default it wraps your lines quite tightly. If you have a relatively large screen this is unnecessary and annoying. To change the width that Eclipse lets your code use before wrapping it to the next line, use the steps below:

    Read More
  • Android R.drawables not updating in Eclipse

    If your R.java class is not being auto updated by eclipse for new files in a "drawables" directory that you created, it is because the drawable folders that existed originally (drawables-hdpi, drawables-ldpi & drawables-mdpi - which stand for drawables high, low and medium DPI) all resolve to the class R.drawables instead of R.drawables-hdpi etc.

    Read More
  • Rosetta Stone microphone setup takes ages

    If, when starting up Rosetta Stone, the microphone configuration stage where you have to repeat "1 2 3 4 5" takes longer than a few steps (On average I was repeating them 13 times! Now down to 1.), here is what you can do to fix it:

    Read More
  • HTC Desire HD Slow and Laggy

    Some people using the HTC desire HD mobile phone have experienced severe lag when trying to interact with it, for example swiping through home screens or opening apps.

    Read More
  • Umbraco HTTP Error 500.19

    When setting up Umbraco with IIS on Windows you may encounter the following error page:  

    Read More
  • HTTP Error 500.21 - Internal Server Error

    This post shows you how to fix the following IIS error message: Handler "PageHandlerFactory-Integrated" has a bad module "ManagedPipelineHandler" in its module list This error occurs when the IIS module is incorrectly registered (nope, I don't know what that means either.) But to fix it, follow the steps below:

    Read More
  • Windows 7 Service Pack 1 Update Failed

    I recently tried installing the Service Pack 1 update for Windows 7 and got the following error: 0x800f0a12 Some research told me that the update failed because it didnt have access to the system partition (A hard drive partition that stores backups of system files) which needed to be modified. To rectify this, do the following:

    Read More
  • Get Twitter tweets on your website or blog Twitter has discontinued their tweet API which means this post is now deprecated
    Read More
  • GIMP Path To Selection

    First, make your selection using the Pen Tool.

    Read More
  • What is PHP-GTD? How do you install it?

    From time to time we all get a bit overwhelmed trying to keep track of everything that’s on our mental to-do list, and when we’re feeling like this it’s hard to stay focussed and just get things done – it’s a catch 22. Well, GTD stands for “Getting Things Done”, an acronym coined by a man called David Allen. He wrote a book about getting things done, which describes how you need to first empty your mind of all the clutter before taking on specific tasks. This process allows you to become much more focused and, well, get things done.

    Read More
  • ReCaptcha Not Showing in Firefox

    After successfully integrating Recaptcha in my site and it working on Chrome, Safari, Opera & IE8 (shock!) I saw that Firefox was rendering… absolutely nothing. A quick Google search didn’t really yield any useful results so after a bit of time spent digging I found a solution posted in a Google group that I’m going to post here.

    Read More
  • Cufon Installation Tutorial

    Cufon is a script that makes fonts on your website clearer and prettier using flash vectors. In the past, I have used cufon with a font called delicious – http://www.exljbris.com/delicious.html.

    Read More