development blog

Written by Mr Rebecchi

Building a Python dice game for the BBC Micro:Bit

What is the Micro:Bit?

The Microbit is a small-embedded system, which can run code. It uses a SoC (System on a Chip), which is a low-power chip which integrating all of the necessary components for a computer to run.

The Microbit has a number of features, which make it extremely useful for writing simple programs:

• LED Matrix – The LED (Light Emitting Diode) Matrix on the Micro:Bit is a 5x5 grid of pixels that can be turned on or off. This is used to display scrolling text, images or almost anything your imagination can think of.

• Input Buttons – There are two buttons, A and B, on the Micro:Bit which allows the programmer to wait for a button to be pressed before responding by doing something simple, such as displaying an image or text.

• Compass – The Micro:Bit features a compass, which can be used to test which direction the circuit board is facing. This could be incredibly useful if you were building an outdoor adventure game or simply if you want to display a compass on the LED Matrix.

• Accelerometer – Although this sounds like a complicated component, there is a clue in the name. The accelerometer is able to detect which direction the Micro:Bit is moved in. This allows you to test if the user has shaken the device, which direction the device is and other interesting things.


Written by Mr Rebecchi

Building an Android calculator - Part 1

As more and more people convert to the mobile revolution, it's getting more and more important that developers understand the code they are writing, and more importantly why they are writing it. We have moved out of the initial craze over mobile apps, the Android and iOS market is more saturated than ever, and it's getting harder and harder for developers to provide well built Android apps.

This tutorial aims to teach you the basics of building an Android application, through use of XML to build up views and add interactive elements, and Java to provide an implementation of logic. I am a relatively experienced Android developer, but by no means are my words golden. There will be other ways, and there will be better ways to implement certain parts of the Android calculator we are going to develop. However I aim to breakdown the application building in succinct steps, and try and explain what is happening as best as I can.

So without further ado, lets get started!

Android studio

The first thing we are going to need is Android studio, and preferably an Android phone. I'm not aiming to reinvent the wheel, so here are two blog posts that will help you learn a bit about Android studio.

The first is a link to my own blog (shameless plug) which shows you a little bit about how the ADB (Android Debugging Bridge) works. This information is not


Written by Mr Rebecchi

Installing Kodi on the Amazon Firestick with Mac OSX

Today I'm going to show you how to install Kodi on the Amazon Firestick using nothing but your mac, and a wireless router. This method is going to be using ADB, short for the Android Debugging Bridge, which can be used to control your devices with nothing but a data connection, either over a wired, bluetooth or WiFi network.

Kodi is an open source media player for many devices. Founded by the XBMC foundation, the software was previously known as XBMC (Xbox Media Centre), and has allowed software developers to create free streaming applications for low budget devices.

To get started you are going to want to follow the included instructions or watch this video to setup your Firestick HD and connect it to your wifi network. Once that's done you need to download and install the latest version of the Android SDK (Software Developer Kit) which includes the required ADB files to debug your device.

Installing the Android SDK

To get started with the Android SDK head over to the Android SDK website and download the latest version of Android Studio, as this comes packaged with the tools you need. Run the .dmg (Apple Disk Image) and drag the .app file to


Written by Mr Rebecchi

Scientific review of web server technologies


This essay is going to discuss modern web technologies from a scientific perspective. The outcomes of this essay will be an in depth review of web server technologies, how they are used and what features they have. We will also be reviewing how information is kept secure on a web server and why this is of utmost importance when implementing a server. Displaying of information is also important, and we shall look at the varying methods used for storing and displaying information from a server using both static and dynamic pages.

Lastly we shall briefly touch on the future of web servers and where current trends are headed. Where is server technology going to be in 10 years, and what are we expecting to see from new technologies and will this technology be more accessible or more restrictive?


Different web servers are designed to do a multitude different things, and therefore must make use of many technologies to achieve multiple tasks asynchronously. Throughout the history of web server design emphasis has been put into creating a ‘fit for all’ solution to a problem, however with an emphasis on power output. Microsoft Server 2008 for example has a built in loader to make server which allows it to run different things at the same time. The open source Linux platforms such as CentOS, Debian and even Fedora1


Written by Mr Rebecchi

Writing a Tic Tac Toe game in python - Part 1

Python is an extremely versatile language with relatively simple syntax that is very easy for a beginner to pick up. Today we are going to get started using python to write basic logic for a tic tac toe game.

Getting Started

First we are going to need to setup our development environment. On Mac OSx you should have Python installed by default. You can check this by creating a simple python script in a text editor and running it on the command line. My favourite text editor for Mac is available for free from the Text Mate website. On Windows you can download an Integrated Development Environment (IDE) called PyCharm. I'm going to be using Python 2.7.7 for our code today.

Once you have your basic IDE started up create a new directory in your Documents called Python and add a new directory to this folder called TicTacToe. We are now going to open up our IDE/Text Editor and create an empty file. Save this file in your TicTacToe directory and name it I'm using El Capitan so I have multi window mode enabled, so I can open my text editor alongside a Terminal window. You can find Terminal by navigating to Applications > Utilities > Terminal.


Written by Mr Rebecchi

Why it's important to have a fast and clean personal website

In an increasingly technology led world more and more people are turning to the web and other online services in order to connect with customers, advertise products and display information. You'd think this would mean having the most innovative and best looking website would be of paramount importance, but this isn't necessarily true.

Back to Basics

The KISS principle, or 'keep it simple stupid' can be applied to websites just as it can to most other things. Unless you have an e-store you don't need to have hundreds of tabbed menus displaying every page on your website, and if you do then you're just putting extra load on your server and ensuring that customers are gonna have that much harder a time finding relevant information on your site. If you'd like an example of a website that does the multi-tab menu well, then have a look at the Maplins site.

Instead, if the website is a blog, provide a search bar and allow users to browse by category. This subtle change will actually increase your readership as people will have to do a little bit of digging to find the information they are after, but not so much that they are unwilling to do it. Also, since I imagine your blog is going to have an overarching theme to it, the reader will stumble across a lot of information that isn't exactly what they wa


Written by Mr Rebecchi

Building a blog with Anchor

I've just built this blog in no-time at all using a super-lightweight and super fast content management system.

Firstly I'll get started on the steps I took when implementing this:

NOTE: unless you have an online or virtual server in which to run the Anchor CMS you won't be able to test it out. This is because your browser is unable to run .php files.

NOTE: Make sure to delete the /install directory that is included with Anchor after the installation has completed. This is b