Monday, 28 November 2011

Augmented Reality Today

Augmented Reality, although a relitively new technology, has already had some commercial applications.

The Pokedex 3D is an example of the technology today. The user places a card in front of the Nindtendo 3DS' camera, and uses the console to view the Pokemon which appears on the screen, thanks to the Pokedex 3D software. Nintendo have used this technology quite a lot in their 3DS, and it is a popular selling point of the console.


The video below displays a quirky application of AR. A company has had some AR business cards made up, and you can see how they interact in the video. 



As you can see, at the moment AR is mostly for entertainment purposes.

However, the supermarket chain Tesco have released an augmented reality web application which is designed to help customers with online shopping. At the moment there are only electronics such as televisions and media such as DVDs available to view. If Tesco were to expand this to include everyday groceries, this could be a very useful feature. You would be able to compare products by size as if they were in front of you. This would be very handy, as often online shopping can be even harder than shopping in real life as products often don't have decent descriptions or even images.

Unfortunatley the application crashes every time I try to use it so I can't post screenshots.

Friday, 25 November 2011

Augmented Reality and the Future

Augmented Reality is a technology which can be hard to explain. Imagine if a computer games graphics were projected into the real world. AR is, basically, this idea brought to life.

AR has a range of useful applications, as well as being something you can use purely for entertainment. Informative graphics and writing can be layered over the real world, and viewed with a smartphone or a pair of specially designed glasses. Audio can coincide with the graphics you see.

MIT Media Lab's SixthSense is an example of Augmented Reality technology. It incorporates a small projector, camera, smartphone, and mirror in a necklace style piece of equipment, as well as coloured caps which the user wears on their fingertips. By using the mirror and camera to view and examine the surrounding environment, transferring that data to the smartphone which processes it and obtains GPS coordinates, and then using the projector to project information onto the surface in front of the user, SixthSense can make a watch appear on your arm, a phone number pad appear on your hand, or something else entirely.





Using the fingercaps, the user can physically manipulate the projected infromation, like a mouse is used to interact with a web browser, or how a user interacts with a touch screen smartphone.

In day to day life, SixthSense could be a handy piece of technology. If you were to pick up a can of soup in a supermarket, SixthSense could find and project information such as nutritional value, allergy / suitability information, and reviews onto the can.

Although this isn't an example of AR as it is today, this "reverse AR" is a good example of how the technology could look in the future.

Monday, 31 October 2011

Designing an Application for the Semantic Web

[...Info explaining Semantic Web and RDF files here...]

An application which makes finding music you like a breeze. Using RDF files and a semantic web to analyse music you like and find music which is similar to that - therefore finding new music that you will, most likely, enjoy.

Fluffy Friend Finder - Mobile Mock-ups


This is what the application would look like on a mobile device. The notification allows the user to choose if they want to share their location with the application.


This is what the user would see if they accept the notifications prompt. It's basically the same as the website version.



This is the final search result on the mobile device. It lists all the info of the main site, but in a form optimised for a mobile device.

Fluffy Friend Finder - Website Mock-ups


This is the main / home page of the website. The navigation bar and RSS feed will be on the left hand side, and the logo and name will be at the header of the page. On the right hand side will be the social icons - the application / site will be linked to an RSS feed, Twitter, Facebook, StumbleUpon, Reddit, and Blogger. The main reason for this is coverage / advertising, as well as to provide more insight and information about the application.

In the center of the page is the content. On the main home page, this is a small description of the application, and a button. When the user presses the button, the function of the application will be performed - using HTML5's geolocation technology, information about animals nearby the user available for adoption will be displayed.


This is the initial search result page - what is displayed once the user presses the "Find a Furry Friend" button. The content on this page is a description of the map, and a map which visually displays the data found (animals available for adoption nearby the user). A "You are here!" marker will indicate the users location. If the user clicks on a marker, they will be taken to a page displaying the information about that animal.


This is the animal search results page. Here is the information displayed about the animal the user chose by clicking on the "X" on the previous page. In the content section, there is information about the animal such as age, species, gender, and so on. There is also an image or images of the animal (if available) - if there is more than one, there is a slider / scroll bar to show this, and a map indicating the animals location.

I think this page looks like a bit of a mess. I'll probably do it again.


If the user clicks on the "Customised Search" link, they are taken to this page. Here they can choose search criteria to make their search results more relevant to their preferences.

Saturday, 29 October 2011

Fluffy Friend Finder - Motive

Why adopt an animal when you can just go out and buy one? Why make an application to find animals when you could go to any old local pet shop and buy an animal?

Adopting an animal saves a life - animal shelters and rescues cannot keep the animals they receive for their whole lives. Limited space, monetary issues, and lack of staff means that animals are euthinised after a certain amount of time at a shelter or rescue. If you adopt an animal, you help both the adopted animal, and the animal which will fill the adopted animals space in the shelter or rescue.

Animal rescues are full of healthy animals. They examine, treat, vaccinate, and neuter animals when they arrive, or before they leave. They also get to know the animals, allowing them to inform prospective adopters about the animals personality, temperament, behaviors, and needs. This means that there is less risk of the people adopting the animal finding they are incompatible.

Animals generally don't end up in shelters and rescues because they're badly behaved, aggressive, or have been abused. Most animals are given to shelters and rescues because their caretakers couldn't keep them due to issues like getting divorced, not having the time to look after them, moving to a house where animals are not allowed, having children, not being able to afford their care, and so on. They haven't done anything wrong, they are just unwanted by their original caretakers.

When you get an animal from a shelter or rescue, you save money. Most animals will already be neutered and vaccinated, which saves the cost of having the operation and vaccinations done at the vets, which can be very expensive. You won't be charged for the animal like you would be in a pet shop. The shelter or rescue would only ask for a contribution towards the cost of looking after the animal while it was in their care. If you cannot afford this, most shelters and rescues are understanding.

In addition to these reasons, a lot, if not all, animals in shelters or rescues will already be toilet trained, sociable, friendly, comfortable around people, and eager to find a home. The animals in my family were all from shelters, and they all came pre neutered, vaccinated, toilet trained, and friendly!

While people purchase animals from pet shops, animals that need homes go without homes. Most animals who need homes are unwanted pets. It makes sense to give a home to an animal which needs a home rather than buy a 'brand new' animal which creates more demand for animals to be bought, which leaves more animals in animal shelters or with rescue operations. Most animal shelters, and especially rescues (which are usually run by an individual) can't afford to keep animals for their whole lives, and they're put down if they aren't able to be found a proper home.

The pet trade is ethically questionable. I shan't go into the details of puppy (kitten, hamster, rat, fish, chinchilla, ...) farms, but the process goes something like this. Pet shops obtain the animals they sell from large scale operations / breeders. The breeders breed animals. They breed animals on a large scale. Their concern is not with the welfare of the animals, but their production rate of babies. This could be compared to a battery egg farm in terms of production values - battery farmed eggs are cheap, but generally low quality, and not very considerate of the chickens. Animals from these breeding operations are cheap to the buyer (the pet shop), profitable for the seller (breeder), the product is low quality (Poor immunity, inherited health issues, physical issues from generations of inbreeding, ...), and there's not much thought towards the animals.

Friday, 28 October 2011

Fluffy Friend Finder

The idea for my application using HTML5's features - certainly geolocation, possibly CANVAS or intelligent forms? Those two are secondary - geolocation will be the focus. I also intend to use intellegent forms / data input on the site / application.

The user opens the webpage on their devices browser.

The browser asks to detect their location.

If they accept, the browser detects and displays the users location.

If declined, the browser redirects to a page displaying a sad face. :<

If accepted - the application searches a database of animals needing homes within a certain parameter (number of miles) for the users location. The results are listed in order of proximity to the user.

The application displays the results to the user.

The results will consist of information like:

[*] Species
[*] Age
[*] Health Issues or Requirements
[*] Dietary Information
[*] Pictures of the animal
[*] Colour
[*] Markings
[*] Personality
[*] Temperament
[*] Behavior
[*] Given Name
[*] Home Environment Requirements
[*] Cage recommended? If so, minimum floor space required (in square feet).

[*] Contact Details
[*] Home Inspection / Assessment Details
[*] Transport arrangements
[*] Donation

That's the gist of it. The aim is to produce an application that allows a user to find animals which need homes nearby, and display information about the animals, which will allow the user to find a new furry friend! Once that is in place, there could then be a search function using categories such as the ones above to allow the user to narrow down their options.