Sunday, 25 June 2017

IdeaSpaceVR


IdeaSpaceVR is an open source content management system for the virtual reality web. Think of it like WordPress for virtual reality.

It allows you to manage your virtual reality spaces and assets like you would manage blog posts. You run it on your own server. All you need is PHP and a database.

You can download and install new themes and create a virtual reality website. Or create your own theme with the Theme API.

IdeaSpaceVR uses WebVR for interactive VR experiences. WebVR is compatible with all modern web browsers on PC and mobile (Samsung Gear VR, Cardboard, Daydream, Oculus Rift, HTC Vive).

If you are into virtual reality, you might want to give IdeaSpaceVR a try.

Saturday, 24 June 2017

GraphicsGale


When creating games that use pixel art, you need a tool that will help you to create your animated sprites. There are a number of tools to do this, but I will mention GraphicsGale because this week it became freeware.

GraphicsGale is great for pixel art and animation. It had a premium version which that includes support for GIFs, Windows icons, Windows cursor, and Windows animated cursor.

So if you are looking for a free tool for pixel art with years of industry experience behind it, give GraphicsGale a try.

Friday, 23 June 2017

Logo


Logo is an educational programming language, designed in 1967 by Wally Feurzeig, Seymour Papert and Cynthia Solomon.

Despite being a general-purpose language, Logo is often known for its use of turtle graphics, in which commands for movement and drawing produced line graphics either on screen or with a small robot called a turtle.

Logo was used in education to teach basic programming concepts to kids. It led to the invention of the paradigm of constructionism which involves visual programming languages like Scratch and MIT App Inventor.

Thursday, 22 June 2017

Young Digital Makers


This report by Nesta explores the growing movement to empower young people to create and not just consume with technology in the UK. It was completed in March 2015 but the information it contains is relevant for our context in Nigeria.

It takes a critical look at the demographics of young people across the UK and provides an overview of the digital artefacts they are creating and would like to create.

It is eye opening to see that even the UK is yet to achieve universal access to digital making for its young population.

I highly recommend this report to anyone working in edtech.

You can find a copy here.


Wednesday, 21 June 2017

Drawing Adinkra Symbols using Python - Introduction


I was privileged to live in Ghana for 15 months of my life. All over the place, I would see this symbols that I didn't know what they meant and one day I would ask my Ghanaian friends their meaning.

What would follow would be an exposition into the heart of Ghanaian culture. Sadly, that culture is dying. This isn't just true for Ghanaian culture but for the African culture in general.

The reason I believe is because of the lack of relevance to modern day life. What if we could merge culture and technology and create Afritech.

Afritech would be a way of living that embraces our culture as its past and technology as the future.

This series is my own contribution. In my own small way, I aim to teach technology with a focus on African culture and history.

This series "Drawing Adinkra Symbols using Python" will look at the Adinkra symbols and attempt to draw them using the Python programming language.

The version of Python used here will be Python 2.7. I agree that the world has moved on to Python 3 however, a lot of Python packages haven't kept up with this pace so Python 2.7 is a safe place to start.

I will be using turtle graphics in Python to achieve this. Turtle graphics earned their usage in computer science from the Logo programming language and are a great way to teach programming concepts.

With all things in life, it is best to start from the beginning. The documentation for Python turtle contains all that we will need. I shall not go into it.

Rather, my approach will be to explain commands as I need them. I will assume that I am teaching an absolute beginner to the Python programming language who has installed the Python interpreter on his computer and is ready to start coding.

I don't intend to optimize the code for this projects. I will leave that for you the reader. My job will be to go through the symbols and draw them using code.

Let's get started.

Grid Drawing
Drawing to scale involves using a grid. In order to draw the Adinkra symbols, I will use a grid of 500 X 500 pixels in my Python environment.

The images are 200 X 200 pixels and I will attempt to use code to draw them. The aim will be to replicate the images using the grid.

To draw a grid, the commands we will need are:
  1. import turtle
  2. turtle.penup()
  3. turtle.setposition(x coordinate, y coordinate)
  4. turtle.pendown()
  5. turtle.forward(distance)
  6. turtle.right(degree)
  7. turtle.left(degree)
So with this 7 commands we can create a grid. Go through the Python turtle graphics documentation for version Python 2.7 and try out the commands in your Python.

The code to do this is shown below:

import turtle

# Horizontal lines
turtle.penup()
turtle.setposition(-250, 250)
turtle.pendown()
turtle.forward(500)
turtle.right(90)
turtle.forward(500)
turtle.right(90)
turtle.forward(500)
turtle.right(90)
turtle.forward(500)
turtle.right(90)
turtle.penup()
turtle.setposition(-250, 200)
turtle.pendown()
turtle.forward(500)
turtle.penup()
turtle.setposition(-250, 150)
turtle.pendown()
turtle.forward(500)
turtle.penup()
turtle.setposition(-250, 100)
turtle.pendown()
turtle.forward(500)
turtle.penup()
turtle.setposition(-250, 50)
turtle.pendown()
turtle.forward(500)
turtle.penup()
turtle.setposition(-250, 0)
turtle.pendown()
turtle.forward(500)
turtle.penup()
turtle.setposition(-250, -50)
turtle.pendown()
turtle.forward(500)
turtle.penup()
turtle.setposition(-250, -100)
turtle.pendown()
turtle.forward(500)
turtle.penup()
turtle.setposition(-250, -150)
turtle.pendown()
turtle.forward(500)
turtle.penup()
turtle.setposition(-250, -200)
turtle.pendown()
turtle.forward(500)

# Vertical lines
turtle.penup()
turtle.setposition(-200, 250)
turtle.right(90)
turtle.pendown()
turtle.forward(500)
turtle.penup()
turtle.setposition(-150, 250)
turtle.pendown()
turtle.forward(500)
turtle.penup()
turtle.setposition(-100, 250)
turtle.pendown()
turtle.forward(500)
turtle.penup()
turtle.setposition(-50, 250)
turtle.pendown()
turtle.forward(500)
turtle.penup()
turtle.setposition(0, 250)
turtle.pendown()
turtle.forward(500)
turtle.penup()
turtle.setposition(50, 250)
turtle.pendown()
turtle.forward(500)
turtle.penup()
turtle.setposition(100, 250)
turtle.pendown()
turtle.forward(500)
turtle.penup()
turtle.setposition(150, 250)
turtle.pendown()
turtle.forward(500)
turtle.penup()
turtle.setposition(200, 250)
turtle.pendown()
turtle.forward(500)
turtle.penup()
turtle.setposition(0, 0)
turtle.left(90)

The code shown above creates a grid of 500 X 500 pixels and resets the turtle to be at the origin of the window when the program finishes running.

The image of the grid is shown below:


This grid will be the basis of how we draw all our Adinkra symbols.

Tuesday, 20 June 2017

Science-based Games


If you are interested in science based games, you would be interested in this list of science based games started by Piotr MigdaƂ.

Have a great week ahead.


Monday, 19 June 2017

2017 Summer High School App Building Challenge



Thunkable is a drag-and-drop platform to build native mobile apps. It started as a research collaboration between MIT and Google focused on making it easier for novice developers to build mobile apps.

It is similar to App Inventor and is compatible with it. The main difference is that Thunkable allows you to develop native apps. It is App Inventor as it should have been in my own opinion.

The Thunkable High School App Building Challenge is an opportunity for students to address problems in their local communities by building awesome apps!

Details of the program are as follows:
Registration Opens: June 15th
Registration Closes: July 7th
App and Video Submission Deadline: August 25th
Winners Announced: September 28th

This competition is for Android apps only. It is open to high school students from all over the world. For more information, click this link.