Offline Webapps with HTML5 – slides from GDG Brunei DevFest W

GDG Brunei DevFestW - Offline Webapps with HTML5.png

2 weeks ago I had the opportunity to present a 15 minute technical talk to the GDG Brunei DevFest W organised by GDG Women Brunei.

I pre-recorded a video just in case that the Internet was not cooperative but thankfully the Internet was good.

Slides:

Demos:

Source code:

GDG Brunei

Standard Chartered Bank has not been good to me

Over the past few years Standard Chartered has left me with a very bad taste in my mouth and I’m not even directly a customer of theirs…

Here are their ‘crimes’ that they have committed against me

  1. Sent me unsolicited SMS messages
  2. Not giving me direct answers regarding a loan
  3. Not following up on a loan prepayment
  4. Not processing a loan prepayment request (~3 months and counting)
  5. Hanging up while trying to get a temporary Internet banking password over the phone

Sent me unsolicited SMS messages

Every so often I get an SMS from Standard Chartered with them offering some of their new service or their next big event. Not even having a bank account with them, I find this intrusive and unwanted. Contacted them vai the “Contact Us” link on the Brunei Standard Charted website. Let’s see what becomes of it.

Not giving me direct answers regarding a loan

Wife has a loan and she was overseas, so I tried to get some information about prepayment and some extra details. They said they couldn’t give it out the details of the loan payment scheduled or even how the amounts were calculated. Took several visits to finally get a print out of it payment schedule from which I had to manually figure out how they did the calculations in order to gauge different prepayment options.

Not following up on a loan prepayment

After doing the calculations, we asked regarding a loan prepayment and never got a response back. While I may never know the real answer, the skeptic in me thinks of a straight forward answer that they are told to delay things like this so they can make more money out of us.

Not processing a loan prepayment request (~3 months and counting)

Back in December, finally sent a prepayment request which is still pending approval. What kind of approval is needed? Followed up with the loan office and was told that ‘it was sent for approval’. Comes back to the notion of delays to get more money out of us.

Hanging up while trying to get a temporary Internet banking password over the phone

While it is not a person physically doing the hanging up, after making the appropriate selection on the automated phone system, it rings once or twice and then just hangs up. Who are we supposed to contact, if the number provided doesn’t even enable us to get in contact with a live person.

Does it matter?

Perhaps its been one of those weeks that are physically short but mentally long and draining, but Standard Chartered has not been good to me and somebody needs to know.

Is this a rant? Probably.

Are the scenarios made up? I wish they were.

Is Standard Charted a good bank? Not in my experience thus far.

What do I hope to achieve with this? Some venting. Also a weird wish that Standard Charted will in get contact with me to sort it all out, but more importantly, to improve their service. But whatever happens, for the time being I’ll have to live with the annoyances of SCB in my life. Here’s to hoping it doesn’t have to be a long term thing.

 

Update: Seems that we have go actually physically visit Standard Chartered in order to get it sorted out. Not exactly an easy option to just fly in to sort it out, but I guess there isn’t really much of an option….

Standard Charted Email

SMARTER eVCS Android app source

It is now available at: https://github.com/thewheat/SMARTER-eVCS-Android

The Android app is currently meant to be used in conjunction with the SMARTER eVCS webapp but hopefully I’ll get time to upgrade both the Android app the make it a standalone app.

Also once again, anybody interested in helping in this community development project, do get in contact or just get the code, make some changes and submit pull requests.

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.

So You Want to Develop for Android – Google I/O Extended Brunei (2012)

An overview of Android development with a quick and easy way to get started in cross platform development (including Android) with PhoneGap, presented at Google I/O Extended Brunei. The presentation aims to provide attendees with basic understanding of Android development and providing them tools to create an actual application.


(this is a recorded presentation done after the actual event due to Internet connectivity issues during the event prevented an ideal recording environment)

Links

  1. Hackathon file list

    linked at http://tiny.cc/googleiobn complete with installation guide, tutorials, sample code and presentation slides used for the presentation

  2. PhoneGap Sample Code on GitHub

  3. “So You Want to Develop for Android” presentation slides

I prepared the materials assuming attendees would have no or very little Java programming background (which is needed for Android development) and thus a platform like PhoneGap was ideal as it provided an easy starting point into app development utilizing HTML and Javascript which are easier technologies to understand, and that more people would have exposure to. Based on the actual session, this assumption proved to be true and I believe was a good starting point and it has even spurred @mfirdaus to dabble with some Android development.

I highly encourage Brunei developers out there to contribute and give back to the community. During our time, there were no such developer events to my knowledge, and with social media, it is so much easier to get the word and out and just meet up and provide the young developers in the country with opportunities that we never had.

Footnote: Background

I was contacted by Cikgu Azaman (@azlinux) over a month ago regarding having a Google I/O Extended in Brunei. A hackathon was to be conducted and after throwing around a few ideas, I was put in charge of presenting an Android development session as in intro for the hackathon.

The event was held at iCentre on 27th June and while Internet connectivity didn’t allow a proper Google+ Hangout with a live video presentation (i.e. there was gagal-ness in trying to get things up and running) so we resorted to an audio Skype call while @mfirdaus went through the presentation slides at the Brunei side. So I thought it would be best to do a recorded presentation after the fact for a more complete presentation.

UBDFM Android App Version 1.5

Today sees the release of the unofficial UBDFM Android app that allows you to stream the online radio station right from your Android device (requires Android 2.2 and later).

Features:

Note: when listening via headphones, you will hear audio mostly from one side due to the stream from UBDFM not being balanced.

Hope you guys like it and do let me know if you have any feedback or feature requests!

iPad screenshot crashes iPad 2 (iOS 5.1)

Somehow I managed to crash my iPad 2 by trying to edit an image in the Photos app. This is a repeatable problem and I’ve tried restarting, closing all apps and it still happens. Check out the video below to see the problem in action

The offending image is below: try saving it on your iPad and try editing it in the Photos app to see if this happens on your iPad.  In current testing, it doesn’t seem to affect the new iPad (3rd gen), iPhone 4 or iPod Touch (4th gen).  I can still edit other photos or screenshots so this totally puzzles me and is completely reproducible. It this another one of those special Apple bugs just for me?

Android Google Maps Zoom Limit

A couple of months back, I noticed that the Google Maps app on my LG Optimus One phone couldn’t zoom in as far as it could before (unless my memory is failing me). Below is the maximum zoom level on the phone

This is not the maximum zoom of the Google Maps android application as my ZTE V9 tablet can zoom in much further as shown below

While you may think that this is a trivial matter, it really rises as a problem when I look for tram stops and street names here in Melbourne. Take a look at the CBD of Melbourne in the screenshot below and see how problematic this is: I can’t see the names of the smaller streets and I have to tap each tram stop in order to see the stop name.

To rub salt into the wound, apps that use a map view can zoom in further than the Google Maps application! Below are screenshots via the Domain.com.au app.

I’ve tried to search for a reason for this discrepancy and have yet to find one. The map settings are both the same in the tablet and phone. CPU and RAM-wise, both devices are comparable: 600MHz each with about 420MB of RAM. Both devices are rooted with my Optimus One running the official Android 2.3.3 ROM from LG and the tablet running Android 2.3.7 via CyanogenMod. The only other difference would be screen size and resolution: 7″ 800 x 480 screen on the tablet and 3.2″ 480 x 320 screen on the phone.

Anybody who has a clue what’s going on, do let me know. Any help would be well appreciated.

[categories Android, Technology]

The Brunei Times Unofficial Android App beta

After hearing that the Brunei Times introduced their iPad app and discovering that there is a mobile e-paper for iOS devices that served regular jpg files, I thought it would be great to have an Android app to do something similar to the iPad app.

Features:

  • Downloads current days paper and saves to SD card (/sdcard/Pictures/bt/date)
  • Pages download in the background
  • If all pages are downloaded, no further network connection is needed

Todo:

  • Add home screen for listing all previously downloaded papers
  • Possibly find the high resolution images used in the iPad app
  • Notification of download status
  • Carousel image gallery with multi-touch zoom as seen in image viewers (swipe to move page to page)

So after dusting off some Android development cobwebs I have managed to get the following beta app for your feedback =)

Direct APK download

draft