From the Neolithic Revolution to the Information Age whereby the world is being wrapped in a blanket of sensors IoT Internet of Things. The dilemmas of life remain fragile for a huge portion of the world's population. Natural Disasters, wars, and famine are barometers for the health of our planet, its population, and its citizens. We depend on the planet for life and depend on its inhabitants to care for it and for its citizens. As the population grows so do the issues. How can we effectively manage resources and deployed them to address issues'. No resource is infinite and choices have to be made; human choices are required. Artificial intelligence could be employed to sift and highlight data, decision trees could be build to determine the allocation of resources and subsequent engagement.
One tap saves a family
The creation of integrity checked GeoData is critical to the success of Non-governmental Organisation missions. MSF UK's Mapswipe and HOT'sHumanitarian OpenStreetMap Tasking are applications created by two NGO's to enable crowd-sourced satellite image classification. Both applications allow registered users to download satellite imagery and classify artifacts of interest including buildings, roads, and other environmental infrastructure.
Mapswipe was easiest to use and contribute to as it application design is focused for input limited use, and employs swipe input as much as possible as can be seen within the promotion and tutorial video.
The use of gesture swipes and tap combinations are key to the usability of Mapswipe.
Another key element of Mapswipe is the feeling of contribution, as you complete mapping assignments a user's progression is continually updated. The Mapswipe team has included achievements to keep users engaged with the application and continue their contributions. As users feel more rewarded their engagement with the app and continued use will increase.
The costs associated with acquiring each new user should decrease as the number of referrals increase. Interestingly the ability to share from the app with others is in the main menu, it may be interesting to add this as part of the mapping screen where users are expected to spend most of their time.
After about five minutes of using Mapswipe, there was a real sense of achievement, and it's very clear how the next achievements will be unlocked. As you swipe map tiles from right to left the realisation grows as to how important each swipe is. The impact of each swipe and how the gesture of one user can become the receipt of life altering aid. All this is achieved through the power of touch and by being spatially aware micro-humanitarian.
Data visualisation can be performed in the browser and as our team are familiar with Microsoft Excel a solution to combine webcharts with Excel was explored. Chart.js is open-source framework and after creating a number of JavaScript samples; it was chosen as the charting framework.
The next challenge is to import Excel Spreadsheets into a JSON or Array Object. The open-source library JS-XLSX was tested, even though reviews highlighted its complexity. After setting up a Node.js server the main issue was to parse JSON in a cross browser compatible way. A Node.js server would store the Excel spreadsheets and run the import code. As the server had to have the ability to run Node.js Heroku was selected; as they provide a free Node.js container for non-commercial projects. Heroku integration with Github enables easy deployment of applications.
If your one of the lucky people heading to Games Fleadh this week your going to run into robocode robot programmers. Decided to take a look at programming a bot that would make some elimentary decisions. To really get a robot to make intellegent robot decision trees would be required and another post on this subject is planned for later.
The first thing to do is setup the Robocode envirnment and Eclipse is recommended as the best way to edit Robocode Robots.
Robocode is event based system so rather than just reacting to events, each event is stored in an event list. The list can be traversed or sorted and actions taken based on the priority of each event. The code has been added to GitHub and comments are very welcome.