“Intro to Dart” @ Dart Flight School, Brunei 2014

On the 15th of February the Google Developer Group (GDG) Brunei held a Dart Flight School at DST’s Signature Store.

Dart is a new language that learns from Javascript and adds features that are missing in Javascript such as classes and optional static typing. It aims to provide a better developer workflow and efficiency, better performance vs Javascript and can compile to Javascript in order to be deployed anywhere.

I prerecorded an “Intro to Dart” video just in case as with all things, technology can be troublesome at times =)  There is also a 4 hour long Hangouts on Air recording of the entire event

Intro to Dart slide deck

Dart Flight School

The code labs served as a way to learn Dart and it is even deployable on Heroku. We also covered a bit of Angular JS with a work in progress AngularJS intro project on GitHub.

All in all, Dart seems compelling that it is more performant compared to Javascript, can be compiled to Javascript so you reap the development benefit while still maintaining deployability via Javascript, having a single language for both client and server and adding ‘modern’ features added to Javascript make it easier to develop in. Certainly an alternative to Javascript+Node and perhaps something to use in a future project.

Brunei Geek Meet and RHoK (Random Hacks of Kindness) Brunei

Image

Today marks the first meetup of Brunei Geek Meet (http://www.meetup.com/BruneiGeekMeet/), a meetup where I hope to start fostering the meetup culture that I’ve been experiencing here in Melbourne. We aim to be run by the community for the community. I believe that everybody has something to share and I want Brunei Geek Meet to be a platform for people to contribute to the community as a whole: be it as a learner, as a presenter, as a mentor, as a discussion starter, etc. We are more technology oriented (but are open to geeks of any kind!) and we intend to have talks, code labs, hacknights/days and other events where people can attend, learn and contribute in their own ways.

I am also please to announce that we have a license to hold a RHoK event in Brunei. With the tagline “Hacking for Humanity” RHoK believes in providing a platform for people (particularly technologists) to do social good and make the world a better place.

Image

This is done by hackers working to solve a community problems which can be used in the region of the problem, and even to a bigger audience of the World. When I first attended RHoK, it brought me back to the days I was working on the SMARTER eCVS and I want RHoK Brunei to be of the same nature: for us to see a local need and for technologists to team up to work on a solution.

With that, I would like to extend an invitation to any individuals or organisations that are facing or know of problems that could use a technological solution to get in touch with me and so we can kick off some discussion on how the developer community of Brunei could help. My contact details are tim@thewheatfield.org / @thewheat. I truly hope that you can be a part of RHoK and help contribute to the betterment of the Brunei developer community by providing a real world problem that we, as a community, can get together and help solve.

Happy Software Freedom Day! Have some code!

Today is Software Freedom Day and as a user of technology you should think about the programs that you use and understand the importance of the free software movement.

Depending on who you talk to, “free” it can mean different things but in terms of Software Freedom Day, “free software” refers to freedom and not price. Some of the core beliefs of both free software movement is that computers users should have the freedom to:

  1. use the software for any purpose
  2. study the software and modify it to suit their needs
  3. distribute copies, either gratis or for a fee, and
  4. distribute modified copies to help their community

Do watch the following video for Richard Stallman (RMS) explaining Software Freedom Day and has some great insight into GNU and GNU/Linux

 

I thought it was appropriate that I release the code for the SMARTER eVCS as an open source project dual licensed under the GPL V3 and MIT License. As I previously mentioned I hope that this will foster some community development and be a point for people to involve themselves in a community project of a different kind that I believe has yet to be done in Brunei.

The code is available at https://github.com/thewheat/SMARTER-eVCS-webapp

It requires CakePHP for now and was built on an older version of CakePHP and somethings on the todo list are as follows

  • Move to AJAX instead of full page load for the user front end (admin can stay as is for now)
  • Responsive/Mobile site design
  • Using HTML5 and possibly Javascript MP3 playback instead of relying on Flash
  • User login with each user having ability to manage multiple profiles
  • Possible remove the need for CakePHP all together to make it lighter

Next up will be the Android app source code release and also deploying the demo app online for people to play around and test. In the meantime, anybody willing to support, contribute or help can leave a comment / fork the code / spread the news. Any and all forms of participation is truly appreciated.

Giving Back to the Community

A couple of months back I started attending some meetups here in Melbourne and over a month ago I was able to attend my BarCampMelbourne (my first BarCamp!) and it was a great experience. What struck me most as I look back, is that there aren’t any kind of meetups like this back home in Brunei, at least to my knowledge. Events and meetups such as these rely on people giving back to the community and for regular meet-ups, to be consistent about it.

At one meetup, there was a company saying that they wanted to open source part of their product in order to give back to the community but it would take time for them to do so as it would take time for them to sort out their code and make it nice enough to publish: especially since it would represent the company. Sometimes they also have to separate out what code that they can release as open source, as some code may be libraries used which they may not have rights to distribute. I acknowledge that no company wants to put out bad code or give out something that isn’t theirs to give, but I also acknowledge that it is a point for procrastination: an excuse or crutch to fall back on and also possibly thinking that the code/work isn’t good enough. Or perhaps that is just me.

I pledged to code the SMARTER Android app over 1 and a half years ago and I did deploy a webapp for them to use to internally as well as an Android app what utilized the exported data from the webapp. After that I was caught up in finishing up my work before heading off to Australia and I guess I fell off the wagon in terms of developing that system further and keeping in contact with SMARTER as a whole. So by next week I hope to open source both the webapp and Android app and follow up with them, if there is anything further that can be done. I know the programs aren’t perfect, I know the code isn’t perfect, I know that there is room for improvement and I know that there is work to be done.

Over the next few weeks I’ll try document what I’ve done and also future goals that we hope to achieve. I used the word ‘we‘ as I hope to get other developers / contributors on board. I want this to be a base for contributing back to the community of Brunei and I am open to contributors / suggestions / feedback.

SMARTER eVisual Communication System (eVCS) System Specifications

With respect to the previous post SMARTER Seeks Help to Develop App for ‘e-pad’, I did manage to meet with Malai, the founder of SMARTER, on Friday afternoon and have a discussion with him regarding my interest to volunteer for this project. I managed to detail out some specifications of the system and general information regarding their current systems. Do read the following and if you can contribute do comment below or tweet me @thewheat

Current Flipbook System

  • Currently SMARTER utilizes physical flipbooks in order to help autistic persons communicate. These are physical booklets that have to be brought around and can be cumbersome. The wish is to digitize this flipbook system and to be used on an Android tablet [there are 2 models currently in possession: one with a 7" screen and the other an 8" screen. (links are to similar Android tablets of that screen size)]
  • There is a self-made flipbook system using Microsoft Powerpoint that lets the user click on an action and be brought to a new slide showing the next task/action to take, but this requires a lot of manual effort in creating the flipbook and results in a large file size just for a single activity (17.7MB Powerpoint file for a 25 slide flipbook with 25 different actions/task). This is too cumbersome and needs to be improved
    Existing PowerPoint Flipbook

    Existing PowerPoint Flipbook

  • Flipbooks can be categorized into 2 categories
    • Non-sequential
    • Sequential

    Current Flipbook Samples

    Current Flipbook Samples

  • Sequential types are used for activities such as “Washing Hands” which has a sequence which is shown below and other non-sequential activities such as “I want to go shopping”, or “I want to go home””Washing Hands” sequence:
    1. Open Tap
    2. Wet Hands
    3. Get Soap
    4. Lather Soap
    5. Rinse Hands
    6. Dry Hands
  • Flipbooks are customized per person (autistic people identify with photos if they in the photos performing that action/task)

Proposed Application Specifications:

  • The application should have a graphical representation of the possible actions / activities for the user to select
  • Each item may have sub-items (e.g. First item is “I want to go shopping”, sub-items can be “I want to go to The Mall”, “I want go to Hua Ho” or “I want to go Yayasan”)
  • Voice clips can be played back went an item is selected (e.g. TapToTalk which speaks the action such as “I want to go out”)
  • For sequential activities, there should be an indication of the “next action” to inform the autistic person that there is a pending action to do (during my discussion with Malai, he mentioned that if there is no indication of a next step they could spend all their time doing a current action/task)
  • Pictures and voices must be customizable and be able to be changed by the guardians of the user.
  • Similar applications: TapToTalk, Voice4u, AACSpeechBuddy

Proposed Plan Of Action

  • For the initial stage, I propose a web-based working demo due to the following reasons:
    • it will allow relatively quick changes and mockups
    • it will allow for discussion of features as the actual Android application is developed
    • it can serve as a replacement for the current Powerpoint flipbook system and thus have increased efficiency in creating new flipbooks
    • allow the Brunei community of web developers to play around with HTML and Javascript interactions to see what could work best for the system
  • I have put together a working demo where users can add items (called categories) and specify sub-items to be displayed.
    eCVS Demo System

    eCVS Demo System

    eCVS Demo System - Edit Category

    eCVS Demo System - Edit Category

How You Can Help

  • Do you have any HTML / Javascript know how? Try create a usable interface for system. I will try show them to the people at SMARTER and we can proceed from there
  • Perhaps when the system is more fully functional you can help will data population by adding categories, finding sample images, doing voice recordings.
  • Give some feedback or thoughts on anything that you see: there may be something that you have thought about that has not occurred to any of use. Knowledge sharing beneficial to all =)
  • If you have anything to contribute, do let leave a comment stating how you could help

Mozilla Service Week + Software Freedom Day

Next week (14th-21st September) will be Mozilla Service Week. In the midst of it is Software Freedom Day on the 19th and Mozilla’s One Web Day. I’m planning to serve/participate in all these events by placing myself in different locations in Brunei each day and just being available to help anybody with their web/technology issues/problems.

Below are just a sample of the many things that can I intend to provide assistance for:

  • How to configure your phone to access the Internet
  • How to transfer Youtube videos to your computer / phone
  • How set up a website
  • How to customize your website
  • Trying out Linux
  • Getting legal free software
  • How to create videos
  • How to get free legal shows online

Basically to paraphrase Tekzilla‘s intro:

“If you’ve got a question, We’ve got an answer for you. And if we don’t we’ll track down somebody who does”

I have approached some places and to get approval from them to utilize their place for Mozilla Service week. So far I’ve got a green light from Foodzone (Gadong Properties) and Blue Eden/Inderaloka Biru (Kiulap) and I’m trying to get a place in Delima/Serusop (Easyway?), Gadong central (Coffeebean? Mall food court?), Lambak (Wywy?) and Bunut Area (Wywy?). Basically all I need is a place to sit down with an Internet connection, power sockets (for me and anybody else who comes along) and accessible to people.

I know this may not be much but I’m trying something new and hope to continue doing something like this as a weekly event as a contribution back to the community of Brunei. If you have any suggestions do comment or tweet me @thewheat. I’ll post latest info via twitter but will hopefully have a proper schedule by Sunday so if you’re free do drop by and say ‘hi’. Feel free to come join me and help out too =)

blogAd

P.S. I have to thank @jidah for mentioning Mozilla Service Week and OneWebDay as that’s where I learned about it and thus led to this.