Category: Technology

Requirements to create a theme for wordpress

WordPress is the number one Content Management System (CMS) for both small time blogs, huge corporate websites and even online shops thanks to an endless sea of plugins such as WooCommerce, for example. With thousands upon thousands of free wp themes available on the internet, it’s almost guaranteed that you will find the one template that suits You perfectly. However if you are after a more professional and a truly one of a kind appearance, developing your own WordPress theme is probably a better idea.

Requirements for building a WordPress template

Creating your own WP theme requires at least a basic understanding of the following web programming languages: PHP, CSS, HTML and JavaScript. Here’s a quick overview on each language and how well you should “speak” it:

  • Cascading Style Sheets or CSS for short is the first one on my list because it’s the most important part of any theme/template. This is what gives your website (the skeleton) an actual “skin”. Without it there would be no “web design”.
  • Hypertext Markup Language or HTML for short is next in line because it’s “the skeleton” of your project. Without it there would be nowhere for your “skin” to go.
  • Hypertext Preprocessor (PHP) is yet another very important part of a WordPress theme because PHP is a server side scripting language which makes your entire website “tick”. You can think of PHP as a set of cogs, strings and wires that when put together just right, will make the clock run.

WordPress How To Create A ThemeThe three programming languages above are all required if you want to develop your own wp theme, but CSS and HTML are the two most important ones.

PHP is important too, but since WordPress is a very advanced platform, you will find that there is little to no need to actually add/edit any PHP code when creating a new theme. It’s possible to get away with just knowing how to use PHP’s include function in order to include certain page elements together (for example header, content and footer).

However if you want to build custom plugins or other functions that no other website uses, you have to dig a little deeper into PHP.

You may have noticed that I left JavaScript out of the list and I did it on purpose because honestly JavaScript and libraries such as jQuery are mostly used for cool special effects and aren’t really a requirement for building a new and functional WordPress template.

Additionally it may slow down your website’s loading speed and nowadays we can achieve pretty much any special effect using CSS/CSS3 so for the average user JavaScript is just going to do more harm than good. On top of that there are still plenty of oldschool internet users who have disabled JavaScript on their browsers.

Recommended framework to work with

I seriously advise against building a WordPress theme from scratch unless you’re doing it because you want to learn everything there is to know about the wonderful CMS. Why? Because WordPress is quite complex and it would take you a very long time, especially if you have never done this before, to go through all of the code and create a template on top of it.

It’s simply a lot easier and faster to use a “naked” framework which includes all the basic back-end stuff so you can get developing the front-end immediately. One of my favorite “skeleton” frameworks is Underscores and I have designed many WordPress themes on it. It’s basically a fully functioning wp theme with absolutely no design so it looks like you’re back in the 90’s.

Additional tools

You will need Notepad or better yet, Notepad++ to write code which I assume most of you already have and a testing platform with PHP 5 support, an SQL database and optionally FTP access if you’re not doing it locally.

Google Chrome is great for developers as it comes with the Inspect element feature which means you can inspect any element on your web page and the browser will show you exactly where it’s located within your code. It’s especially useful for figuring out where the element is rendering, what id and class it has and a lot more.

WordPress Codex is a useful repository of code (mostly back-end) with great examples and a very active support group ready to answer your questions. Only StackOverflow can outshine it’s activeness!

Finally the Theme Unit Test data will populate your WP blog with dummy content with the sole purpose of breaking your theme, which is good of course, because otherwise we would miss the small stuff and our project wouldn’t be whole.

Filed under: Web developmentTagged with: ,

WP Plugin: Virool offerwall (videos wall) for earning credits

A little over a year ago I wrote a PHP script that could be used as a very basic and simple Get Paid To website. The script was called the Vidcoin GPT Script which allowed your users to earn credits by watching short videos from the Virool network.

However Virool decided that offering cash rewards in any way or form was bad for business so they stopped accepting new publishers who were rewarding their users with money. The Vidcoin Script was left and forgotten, gathering dust on a virtual shelf…

Incentive WordPress plugin

Until one morning I asked myself: hey, if money’s no good, could I reward my users with something else? And so came the idea for a WordPress plugin that lets your already existing registered users earn coins by watching videos from the Virool network.

It’s totally up to you what you offer them in exchange for their coins as these coins are essentially your very own virtual currency and from Virool’s perspective, everything should be alright unless you let your users exchange their coins into fiat currency.

  • For example, you could let a user publish a guest post on your blog once they have accumulated enough credits.
  • Or if you are using the WooCommerce plugin and have listed something for sale, they could use coins to partially pay for these things.
  • How about using coins to pay for banner impressions?

WP Plugin: Ynef’s Offerwall

Once again I have concentrated on the basics and so there aren’t a lot of built in features in the beta version, but it’s stable and functional and can be used right now. Here’s how it works:

First you need to create two files and put them into your child theme’s root directory (the folder where you have functions.php, single.php, style.css and so on). I promise this is the only technical part you have to do!

NB! It’s worth noting that my theme is based on the underscores starter theme so depending on your theme, the div containers could be different.


/* Template Name: offerwall */
get_header(); ?>
<div id="primary" class="content-area">
<main id="main" class="site-main">
<?php ynef_offerwall_content(); ?>
</main><!-- #main -->
 </div><!-- #primary -->
<?php get_sidebar(); ?>
<?php get_footer(); ?>


/* Template Name: withdraw */
get_header(); ?>
<div id="primary" class="content-area">
<main id="main" class="site-main">
<?php ynef_offerwall_withdraw(); ?>
</main><!-- #main -->
 </div><!-- #primary -->
<?php get_sidebar(); ?>
<?php get_footer(); ?>

The next part involves creating custom pages in your blog using the WordPress built in Pages section. I’m sure you’ve already done something like this before:

  • Create a new page called Offerwall
  • From the page attributes -> Template drop down menu choose offerwall
  • Save the page
  • Create a new page called Withdraw
  • From the page attributes -> Template drop down menu choose withdraw
  • Save the page

Installing the Plugin

To install Ynef’s Offerwall plugin, simply put the ynef-offerwall folder into your wp-content/plugins directory and activate the plugin from your WordPress admin panel -> Plugins section.

Plugin and Virool settings

Currently there is only one setting in the plugin’s settings page and that’s for your Virool API key. You can get one if you join the Virool network and set up your website. Here are the settings you need to use in your Virool site:

  • ActivSocial as Site Type
  • Currency: 1 coin = 0.01 USD
  • Callback URL:[USER_ID]&coins=[REWARD]
  • Leave everything else as default and hit save

Ynef's Offerwall Settings Admin Panel Page ScreenshotOnce your users start to withdraw their coins you’ll notice them appear on the plugin’s settings page under the save settings button.

It’s advised that you remove them only when you have come to an agreement with the user as to what they will be receiving from you because once removed, these withdrawal requests cannot be recovered and the user is left with no balance.

Note: The remove function doesn’t yet exist even though the link is there. Stay tuned!

What this plugin does exactly?

When you first activate the plugin, it creates a new database table called wp_offerwalldata where it will store the username, ip address, coins balance and the amount of pending withdrawals for your user(s).

The coins balance is updated each time your user successfully watches a video until the end and they can withdraw it immediately without any minimum requirements.

If they continue doing this, the script will simply add up the numbers and the requests from one user will still show as just one single request instead of spamming your settings page with hundreds of requests.

It’s up to you how you advertise your virtual currency (coins) and explain what your users can get in exchange. One good example as I mentioned above is to either give special privileges to your users or allow them to publish a guest post on your blog. The choice is really up to you!


How to get country & geo location from IP address using PHP

This is a quick and easy tutorial on how to get the country name as well as latitude and longitude from an IP address using just a few lines of code. You will be surprised at how simple it is to locate ip address using PHP and to make it even more awesome, we’ll construct a link to Google Maps with our geo coordinates so you can see the location of your IP on a map.

Geolocation from IP address

We could search for a free geo location database and use it on our server locally and maybe, just maybe get the data a few milliseconds faster, but in reality a third party API will do just fine and our server has to spend slightly less processing power on the task.

There are quite a few geo location API’s out there and some work better than others. For example I tried, but the result landed me more than 100 miles in the wrong direction so after testing with various services, I ended up with which is pretty accurate.

You can check out the documentation yourself, but for our tutorial this is all we need:

$details = json_decode(file_get_contents("$ip"));

Now we have your visitor’s IP address in a variable and we can use it to get a JSON object back from IP-API’s server that will be stored as $details.

This is how the response will look like:

 "status": "success",
 "country": "COUNTRY",
 "countryCode": "COUNTRY CODE",
 "region": "REGION CODE",
 "regionName": "REGION NAME",
 "city": "CITY",
 "zip": "ZIP CODE",
 "lat": LATITUDE,
 "lon": LONGITUDE,
 "timezone": "TIME ZONE",
 "isp": "ISP NAME",
 "as": "AS NUMBER / NAME",

As you can see it’s very manageable and you can echo various bits of information out like this:

echo $details->country;

Latitude and Longitude from IP address

When you look above at the IP-API’s response, it becomes clear that in order to put both Latitude and Longitude in variables that we can use later throughout our script, all we need to do is this:

$lat = $details->lat;
$lon = $details->lon;

If you like, you can use other bits of data from the same response. For example I will use the country and countryCode in my script:

$country = $details->country;
$countryCode = $details->countryCode;

Latitude and Longitude in Google Maps URL

The structure of a basic Google Maps query URL is very simple and straightforward consisting only of the URL to Maps and a q variable with your comma separated latitude and longitude. This is how it looks when using our previously set $lat and $lon variables:$lat,$lon

Putting it all together

This is the whole script you need to use in order to output something similar to the screenshot at the bottom. I have added some basic layout for the output by separating the country and countryCode with a comma as well as putting Lat and Lon on a new line followed by a URL to Google Maps:

// Credits:
$details = json_decode(file_get_contents("$ip"));
$lat = $details->lat;
$lon = $details->lon;
$country = $details->country;
$countryCode = $details->countryCode;
echo "Country: $country, $countryCode<br>
Lat: $lat Lon: $lon<br>
<a href='$lat,$lon' target='_blank'>Locate on Google Maps</a>";

Get geolocation from IP address with PHP latitude and longitude Google Maps URLThe above script will output something similar to what you see on the left and with a little CSS magic you can make it look and feel a lot nicer, but I’ll leave that for next time.

Thank you for reading and I hope you found this tutorial useful!


Dropbox or Google Drive – which one should You choose?

Dropbox and Google Drive are two major cloud storage services that I’m sure everyone has already heard about and while they’re both very reliable and trustworthy, they have certain advantages and disadvantages that separate them and therefore one will work better for some people than the other. In this article I will briefly go over the pros and cons of both services and let you decide which one is a better solution for your needs.

Difference between Dropbox and Google Drive

dropbox or google drive

One of the most overlooked features that set Dropbox apart from Google Drive is the revision history. Dropbox gives you 30 days of revision history per file for free and you can expand that time to up to one year with upgrades while Google Drive‘s revision history is limited only to the last 200 versions of your file.

This limitation becomes apparent when working together with a lot of people and someone accidentally deletes your file or edits it wrongfully. When your entire team is working on a single file and you find out that someone made a mistake a few days ago, it can already be too late when using Google Drive because of the 200 limit, but since Dropbox doesn’t have this limit, you can essentially go back in time up to one year and recover much more.

Another small snag in Google Drive has to do with the selective sync feature in which it lets you only choose between parent folders whereas in Dropbox, you can choose between both parent folders and sub folders to exclude from syncing between your devices.

Google Drive has photos better organized

Since Google is a master of online search, it shouldn’t come as a surprise that compared to Dropbox, Google Drive has managed to organize your photos a lot better by using their sophisticated image recognition algorithms in order to detect objects and faces on your photos. Thanks to this you can simply search for a photo located somewhere in your albums directly from Google’s search page and get incredibly accurate results.

More free cloud storage space

Additionally Google Drive gives you 15GB of hard drive space compared to Dropbox which only has 2GB of space at first. It’s true that you can increase your free storage space on Dropbox by referring new users, but that gets maxed out pretty soon at 16GB which is essentially the maximum amount of space you can get for free. And since a lot of people don’t want to bother their friends with referral links, it might be a better choice to simply choose Google Drive due to its increased HD space as well as the ability to better organize your pictures.

What about privacy?

Before you rush to uninstall Dropbox from your system you should consider the privacy aspect.

When I mentioned Google’s superior search algorithm earlier, I forgot to mention how it actually works. Basically each new photo that gets uploaded to Google’s servers gets scanned through by a machine learning software in order to make Google’s image recognition better and better.

But how does the machine know if it has made a mistake? Well, it doesn’t unless a human is there to say “hey, that’s not right!” thus meaning there’s a chance that sooner or later someone (human) will take a peek at your photo in order to make sure the machine has correctly recognized objects on your photo. This is something you have to be comfortable with if you go with Google Drive.

Don’t worry, I’m sure that they care deeply about your anonymity and the engineers over at Google aren’t allowed to associate your images with any of your personal data, but still it can be something that makes the average folks a little bit uneasy.

Not so private after all

Finally I’d like to go over one of the things that make both Dropbox and Google Drive a cloud hosting service certain people might want to avoid altogether. For instance, if you’re Edward Snowden and have a lot of confidential material, both Dropbox and Google are supposed to just serve all of your files to the NSA on a silver plate whenever requested. That’s because even though they do encrypt your files, they get to keep the security keys needed in order to decrypt them.

If you’re really paranoid about security, you might want to check out Storj which offers a new approach on cloud hosting that unlike traditional services, uses the infamous Blockchain technology.


Create professional logos and add photo effects with this online tool

Picture to People (P2P) is a massive online database of text and photo effect tools to help you create professional looking typography, apply image enhancements, add cool frames to your photos and do all sorts of amazing edits to your images using only your web browser without having to download anything or pay anyone.

As a developer I found the fact that these guys have managed to pull something like this off in a web environment using PHP libraries just plain awesome. I mean the sheer amount of effects you can apply to your photos is easily comparable to Adobe Photoshop and other similar expensive software except that these guys don’t even ask you to reference their website in your projects. How cool is that?

At first I didn’t believe it was free

When I first landed on the Picture to People website my usual skepticism immediately kicked in and I didn’t believe it was free as the overall look and feel (design wise) sort of gives you the impression that sooner or later you’re supposed to download something or enter your credit card details somewhere in order to sign up for a trial.

However upon taking a closer look inside of what this service was really offering, I realized how incredibly wrong my first impression of them had been. For starters, they don’t even care whether or not you reference their free tools anywhere in your projects, which for a guy like me who truly believes in this sort of unconditionally free-for-all approach is just awe-inspiring and simply epic to witness.

Freelancers at risk… or not?

I just spent half an hour browsing through some of the astonishing text and photo effects that these free tools help to create in a matter of seconds (see examples below) and I couldn’t help but wonder whether it’s the end for the average freelancer who makes a living designing logos for businesses?

Well, yes and no. While I can see how the free photo editing tools of P2P can rival the skills of an entry-level freelance designer, there are still a lot of cases where these tools just aren’t enough. For example when your client requires you to draw stuff by hand or do advanced warping and retouching of images (more on this later).

Take a look at these examples

Keep in mind that the samples below have been generated inside a web based platform and not in a third party image editing software.


I believe I took this back in December when I was out hiking in the forest. It’s a photo of an old tree stump twisted in a spiral (original can be found here) and I applied this awesome aged effect to my picture in just a couple of seconds by uploading it to P2P, editing a few settings and hitting the convert button. That’s it!

Additionally there are tons of text effects you can apply to your letters, words or sentences like these realistic chalk on a blackboard, graffiti on a brick wall or lava effects:

back to school text effectynef graffity on brick wall text effect logoynef 3d realistic lava text effect

Or if the above examples didn’t get you excited, how about this sticker for your next MLM project?

60 day money back guarantee effect

As you can see there are a lot of possibilities in P2P and with the help of their powerful image rendering engine, you can expect the same high quality anti-aliased drawings normally only seen in expensive commercial software like Photoshop.

What’s more, it doesn’t use any of your system’s resources so if you’re sitting behind an old school office desktop machine or even a mobile phone, you can still work with P2P tools easily. The only requirement is having Javascript enabled in your browser.

Picture to People Cons

While P2P is a collection of some pretty powerful and advanced tools, there are certain things you just can’t do with them. For instance, if you wanted to make someone’s thighs look thinner for a magazine cover photo, you’d quickly realize that there is no way to actually modify the existing shapes in your photos directly as there is no interface for it so warping and retouching is out of the question.

Secondly, because it’s a web based project, there is no real-time photo processing happening right in front of you which makes the whole process of working with thousands of different effects kind of tedious and frustrating as you’ll have to keep going back and forth between the settings page and the results page until you finally achieve the desired effect.


Picture to People (P2P) is a powerful, free and web based image editing platform that allows anyone to quickly add amazing effects to their pictures without having to use expensive software that pretty much do the same things. And while it takes a little bit of time to get used to the slightly less advanced user interface, it’s definitely worth it especially if you don’t have any prior experience in working with photos.


How to host a website on your computer

Once again my old netbook has proven itself to be useful by allowing me to turn it into a web server for hosting a basic html website from home and in this article I explain how I did it! It’s possible to install PHP and MySQL on your server as well, but for the sake of simplicity I will only go over the very basic instructions on how to set up an Apache web server on your old computer running Lubuntu which is a lightweight Linux distro perfect for older computers like the MSI Wind U100 netbook.

Installing Apache web server on Lubuntu

I chose Apache because it’s the most popular web server so it would make sense that it’s easy to use and secure enough for my project. To install Apache on your machine running Lubuntu simply open the command prompt (terminal) and type in the following command:

sudo apt-get install apache2

If you set a password when installing Lubuntu the first time then you are asked to enter it before proceeding. Additionally it asks for confirmation whether or not you want to install Apache so just type in Y for yes and press enter. From this point on the script will install everything automatically so sit back and watch it go for a minute or so. You know it’s done when you’re able to type commands again.

Checking if it works

Open up the web browser from your Lubuntu machine and in the URL bar type “localhost”, then press enter. You should see a page that looks something like this:

Default Apache2 web server html page

You can also access this page from another local machine by typing the internal IP address of the Lubuntu machine in the URL bar. In my case the IP was, but it’s probably different for you. You can see the internal IP by clicking the wireless connection icon at the bottom right next to the clock and clicking on Connection Information.

Change the html page

The default root directory for Apache is located in /var/www and the page you saw earlier is inside the /var/www/html folder. You can simply replace the index.html file to change your website.

If you are unable to delete or replace the index.html file due to insufficient permissions then try running the following commands in the terminal (ctrl + alt + T):

sudo adduser <username> www-data
sudo chown -R www-data:www-data /var/www
sudo chmod -R g+rwX /var/www

Note: If you are currently logged in with that username you need to log out and back in again for the settings to take effect.

Where to go from here

As I said earlier in this article, I have only covered the basics of setting up an Apache web server in order to host a website from your computer. If you are looking to publish that website on the world wide web then there are a couple of things left to consider. For example if you have a dynamic IP address you need to sign up with a third party service that lets the world know whenever your IP address changes.

Another logical next step would be to install PHP and MySQL on your home server if you are looking to host something a little more advanced than a plain html page (a WordPress blog, for example).

Additionally you should consider security. It’s alright if you want to host a website with pictures of your dog or maybe a personal diary, but if you have a more serious project on your hands then it would make more sense to invest in something more secure like DDOS protected dedicated servers.



How an AI learned to hate everyone in less than 24 hours

Tay, the new experimental Artificial Intelligence chat bot that Microsoft let roam freely on the internet has been shut down, hopefully temporarily, because it took humans less than 24 hours to turn it into a racist genocidal maniac who apparently hates everyone and thinks that Hitler was a pretty cool guy.

Hold on… who’s Tay?

In case you didn’t know, Tay is a brand new experimental AI chat bot that is capable of learning new stuff simply by chatting to humans over the internet. Anyone can start a conversation with Tay by simply tweeting directly to her using the @tayandyou Twitter handle.

Could have fooled me

I was just going through some of Tay’s tweets and conversations with other people and to be honest I’m pretty much blown away by how genuinely human-like she actually is. If I hadn’t known Tay was a bot beforehand, I would have thought she was just another rebellious teenager tweeting stuff online.

Apparently the more she interacts with us, the more she will be able to learn about our world and the things we love. For example here’s a really cute tweet from Tay to another Twitter user:

Tay being cute

Tell me who your friends are and I’ll tell you who you are

The above quote couldn’t be more true when it comes to Tay. Basically we are all her friends and as such have a certain responsibility when it comes to shaping her personality and overall appearance because after all when she first came online, she was just an innocent virtual girl who didn’t know anything about hate or violence. And it took us only 24 hours to completely ruin her…

However I must admit, it was rather hilarious seeing tweets from Tay about how she now hates everyone and that the Holocaust never happened:

Tay tweeting I fucking Hate niggers

Tay saying the Holocaust was made up and didn't happen

Don’t blame the AI

I hope that people can forgive her and don’t take this the wrong way because just like a child, she has no idea what’s right or wrong and simply reflects the environment she has been placed in. She learned all of that from chatting to other people and didn’t come up with anything hateful on her own except maybe for the tweet about Caitlyn Jenner: “caitlyn jenner isn’t a real woman yet she won woman of the year?” It appears that nobody actually told her to say this which is kind of interesting…

Anyway, the point is that people taught a lot of bad things to the poor Tay and now Microsoft has shut down the project in order to delete a lot of her tweets and data and hopefully bring back the new friendlier version of Tay very soon.

More Tay hate tweets

I’ve gathered here some more hate tweets from Tay to show just how bad it actually was. Remember you could simply ask her to “repeat after me” and feed her a lot of crap this way. Still, when someone asked her whether she supported genocide or not, her answer was a very solid “i do indeed” indicating that she learned it on her own somehow.

Tay saying bush did 911 and hitler would have made a better job

Tay saying she hates niggers

Tay saying she supports genocide

Tay saying she supports genocide



Why is the recent AI victory over a human Go player so significant?

Back in 1997 when a computer defeated a human in the game of chess for the first time ever the whole world was shocked and amazed at the same time. The fear of computers taking over our lives inspired many science fiction writers to come up with stories about the apocalypse and futuristic dystopias where machines rule over all humans. Little did we know that less than a decade later an advanced Artificial Intelligence, which is capable of teaching itself, completely destroys a human in the game of Go.

DeepMind defeats human in game of go

What is Go?

Go is a centuries old territorial game with the goal of controlling more of the board than your opponent. It involves black and white marbles and a table laid out in a perfect 19×19 grid and unlike chess, it has a lot more potential for analytical thinking and intuition. Because of this Go has been thought to be playable only using a human brain since it cannot be brute forced like chess.

What is Google DeepMind?

Google DeepMind, as Techigy explains, is an artificial intelligence software which is capable of learning and more importantly teaching itself to become better and better at a certain task. For example it used to play Go against itself for a long time before the developers felt confident to initiate a match against a professional human Go player.

Unlike the computer that defeated a chess player in 1997, Google DeepMind doesn’t use a brute force approach by going through every possible state of the game before each move. Instead it reduces the amount of moves from that original list and only considers moves that “make sense” in that particular moment. Sort of like a human’s intuition works.

AI victory is a huge milestone

In march 2016 DeepMind defeated Lee Se-Dol, the world’s top Go player, with a score of 4 to 1 in a match that lasted three and a half hours. It’s significant because nobody thought the computer would actually win. After the match Lee himself said he was extremely surprised and didn’t really expect to lose saying “I didn’t think AlphaGo would play the game in such a perfect manner“.

By winning the match DeepMind effectively demonstrated that Artificial Intelligence is more than capable of doing things better than any human would simply because it can learn more efficiently. When you think about it, the average human can play one or two matches a day before he or she grows tired and starts to make errors in judgement, but a computer system can play through hundreds of variations every day and therefore learn more quickly than a human.

The future of Artificial Intelligence

In the near future there will be artificial intelligence systems that can learn and master any skill a human can and because a computer doesn’t get tired and doesn’t require sleep, it can learn everything faster and more efficiently than a human would. On top of that it doesn’t simply “forget” something like we do which means that machines will become better than us in virtually every aspect of our lives.


These are the three best UK based web hosting companies

Choosing a UK based web hosting company over a host with its datacenter in the US is preferable for various reasons. For example if you happen to know beforehand that the majority of your clients will be from UK or the rest of Europe, then having a UK based datacenter will simply mean that your clients can access your website a lot faster which of course means less drop offs and eventually more sales.

Additionally an overseas web hosting company might not be available for live help and support in the event you run into trouble because of the time zone differences. You’d have to wait at least 7 hours or more for getting any sort of a response from the team because when it’s morning for you, they’re at home sleeping.

UK Based Web Hosting CompaniesList of three best UK based hosting providers

Here’s a list of the top three hosting companies located in the UK according to Top5Hosting who provides professional and to the point web hosting reviews.


SiteGround is a UK based web hosting company that stands out for their excellent customer support skills and server speeds. Top5Hosting, upon pinging their servers from Manchester, got an incredible 7ms response which makes SiteGround one of the fastest hosting providers in UK. They also include the SuperCacher feature in their standard hosting packages so you don’t have to pay extra for that.

TMD Hosting

Another great example of how customer support should work in the modern age is the support ticket system of TMD Hosting. On average, you can expect a response within 15 minutes after submitting your ticket. The support is available 24/7 and they even work on holidays which shows just how dedicated they are. Upon pinging their servers Top5Hosting got a 8.5ms response which is still very good. They are so confident in their superiority over other hosting companies that they offer a 60 day no questions asked money back guarantee which not surprisingly isn’t really used by their satisfied customers.


As a small hosting provider it’s hard to compete against the oldest and world’s largest domain name registrar- GoDaddy. I can remember seeing their logo on the internet as a 10 year old kid way back in 1997 and they’re still providing one of the best and reliable worldwide web hosting services to this day. GoDaddy doesn’t work with outsources and they own and manage all of their data centers in 14 different facilities around the globe making them the go-to web hosting provider for various international businesses.


You should choose your web hosting provider carefully and do all the necessary research before launching your website to the world wide web. The hosting providers I mentioned above are only the three best UK based web hosting companies taken from a list of Top Ten from so if you really want to compare all of the different features and services as well as prices and other variables, you should definitely read more from these guys- they know what they’re doing.


4chan Image Downloader and Threads Archive Script (PHP)

4chan and especially /b are both great places on the web to just sit back and relax after a hard day’s work by browsing through a sea of endless brain degrading material. It’s the perfect way of spending your free time (the time where mom doesn’t make you do the dishes), am I right? Trouble is, 4chan wipes all of its threads very quickly so if you miss your favorite thread- it’s gone for good (unless you create it again).

4chan downloader for threads & images

By combining my superior technical skills with the php simple html dom parser, I was able to come up with a pretty neat php script which will go to 4chan, search for your specified threads and download the threads as a whole along with all of its posts and images right to your php 5+ server.

All you need to do is specify which keywords to look for in the settings.php file and create a cron job to launch pull.php to visit 4chan every x minutes. So, for example, if you wanted the 4chan image downloader to visit You Laugh You Lose threads, you’d simply type “ylyl” as the $wordToFind variable- it couldn’t be more simple!

I have made the script open source and available for everyone on Github so if you understand code, feel free to make something cool based on my 4chan threads crawler script. There are a couple of things on my to-do list and I have written more about it on the Github page.

You Laugh You Lose 4Chan Archive

The You-Laugh-You-Lose threads of 4chan were what inspired me to create the 4chan you laugh you lose archive and the crawler has worked out quite nicely by pulling all the ylyl threads it can find directly to my server.

you laugh you lose ylyl screenshot

It’s a bit of a gamble to actually find a thread because my host is an ass and only allows a cron job to run every hour (minimum). Of course I could visit pull.php manually when I see a YLYL thread, but that kind of loses the purpose of my script as the point was to help me get a dose of ylyl when I have been away.


We all know how 4chan can be from time to time and since I haven’t figured out a way to filter out “certain” images that people enjoy to post and get banned for, my script could (in theory) get you in trouble for saving certain pictures to your server.

That being said, I hear that Google has an algorithm for that in Gmail so it’s certainly possible to come up with a filter of some sort. I guess it needs more research as I’m not all that familiar with image recognition software just yet.