Afriapps developer Andrew Mugoya is back at it again with a new book offering some designing help to app developers. Titled “Help! I am a developer with no clue about design”, the book aims to help developers integrate minimal design elements to make their apps acceptable not only to the Afriapps app store but also potentially the Android Market. Mugoya draws from his experience running Afriapps and having to reject badly design apps to offer tips that will ” will not turn developers into killer designers, but they will hopefully ensure users are not turned away from apps/sites due to woeful designs”. In combination with my previous post about website design tips for the African market, it’s a general consensus that in African software development, design if very often given the last place whereas it is a crucial element in making a product successful when well exploited. I would definitely encourage developers to read and learn from both sources in order to better their product and make them more competitive.
First to market:
Bottom line: If you are offering a great service, and customers catch on and engage with your service, it is unlikely that they’ll jump ship when someone else comes by who’s offering exactly what you are offering with a better looking skin on it.
User Experience Design trumps Graphic Design:
You may not want to hold up the product because of the graphic design side of things but user experience is everything. If you’re going to spend time on design, spend as much of it as you can on getting aspects of user experience and user interaction just right.
Mobile Web Rules in Africa Design Specifically for it:
[…]It would be wise to invest in creating a custom site for mobile, or making your website mobile friendly. As far as web design for mobile goes, the cardinal principle is to minimize. Minimize on the number of graphics you have, minimize on the number of actions a user needs to do or number of pages it takes to accomplish a task.
It turns out localization is not such an obvious task. I am currently trying to localize my Nouchi.Mobi app built with CakePHP and although CakePHP i18n console shell is helpful in created POT files, there still remains the question of translating time strings in French when using for example the CakePHP timeAgoInWords() or the PHP strftime() functions . I found a good tutorial on getting it set up in your environment here. Luckily I develop on Linux so i was able to find the LC_TIME files and import them in my application. Another tip i found out was also running the i18n shell task on your CAKE_CORE folder. It will create a POT file for your views, and your helpers as well which will give you access to some of the hard coded strings like month and day of the week values.
Nelson Mattos, Google’s vice president for product and engineering for Europe and emerging markets, stated on his Google+ account: “We were mortified to learn that a team of people working on a Google project improperly used Mocality’s data and misrepresented our relationship with Mocality to encourage customers to create new websites.” […] Mocality employees decided to do some investigative work, setting up dummy numbers, and found out that employees from Google’s GKBO were calling prospective customers and current Mocality customers, identifying themselves as GKBO employees partnered up with Mocality.
Shady salespeople using shadier tactics to meet to sales quota, but the interesting twist to this story came from give-it-to-you-raw Kenyan technology journalist Robert Alai who posted an article titled “Mocality Should not Play Victim, they Also Scrape Data and Fake Listings” that you should definitely read where he accuses Mocality of being “guilty by association” of fraud i.e scraping other sites listing and posting fake data. Alai also argues that the publicity will most certainly save Mocality from certain bankruptcy. He accuses Mocality and other local players of various ethical breaches that in the end reinforce to end users the idea that the internet is not trustworthy and is counter productive to the growth of their business models. The vitriol in the comments indicated to me that he touched a nerve somehow so I highly encourage you to give it a read and read the comments as well.
During the development of Nouchi.Mobi where i use this quite useful Facebook plugin (get it, it’s the best!), i ran into an issue trying to authenticate my localhost server against my Facebook app settings. I’vre created a virtual host entry in Apache pointing to my local project folder, edited my /etc/hosts file with a new “indexdot.dev” entry but i could not add that url to the Facebook app App Domain settings. The qualified domain name for my app in the Facebook settings was nouchi.mobi, and trying to login from my local app I would get this message;
API Error Code: 191
API Error Description: The specified URL is not owned by the application.
Error Message: redirect_uri is not owned by the application.
The solution was quite simple actually, thanks to this post, I added local.nouchi.mobi to my /etc/hosts file, created a virtual host entry in Apache pointing to my application folder and finally, added local.nouchi.mobi as a additional domain entry in my App Domain settings in Facebook and voila!
Moving from Subversion to Git can be hard and i ran into an issue trying to resolve conflicts in a file that was different in the two branches I work on. Since I am working on a Mac, with OSX Lion, i found these two articles to be quite useful: