Knowledge7

The Linux and Mobile Solution Provider

  • About
  • Training
  • Services
  • Clients
  • In the news
  • Blog
  • Contact Us
You are here: Home / Archives for Cédric Clain

Implementing effective navigation

In order to provide a good user experience, one of the most important steps in designing and developing an Android application is to determine how the user will navigate the app. You should start by designing the screens hierarchy to clearly show the relationship among different screens. Then, decide on how to effectively traverse your content.

Android provides various navigation paradigms such as tabs, navigation drawers and up and back navigation. It is important to understand the best practices associated with those paradigms in order to provide a coherent navigation experience for users. Always remember that users expect similar components to behave in similar ways. Following best practices will avoid your users from getting lost and will make using your app easier.

20150826-song-explorer-for-all-v4

SongExplorerForAll v4

One common pattern found in almost all Android applications is the navigation drawer. A navigation drawer is basically a panel which is revealed when the user swipes from the left edge of the screen (although a navigation drawer can also be found on the right). It generally displays a list containing the main top-level navigation options. In SongExplorerForAll v4, we add an empty navigation drawer to the app.

This is done by declaring a DrawerLayout as the root view layout of our Main Activity.

SongExplorerForAll v5

The SongExplorerForAll app displays a list of top artists worldwide. However, the Last FM Api also allows us to query a list of top artists based on top charts for a particular country (For example, the top chart artists in France might be different from the top chart artists in Spain). In SongExplorerForAll v5, we give the user the option to choose between either to display the top artists worldwide or to display the top artists based on top charts for Mauritius. The user chooses between those two top-level options via the navigation drawer. To achieve this we need to do the following:

  • Create the appropriate url to query the top chart artists for a particular country
  • Populate the list in the navigation drawer with the two values Top Artists Worldwide and Top Artists in Mauritius. Here, since there are only two items, it is not necessary to use a RecyclerView. A ListView with a simple ArrayAdapter is enough.
  • On selecting one of the two items from the ListView, we need to get a reference to the ArtistListFragment being displayed and update it accordingly. Getting a reference to the fragment is done by first adding a tag to the fragment on creation and then using this tag to access it.

SongExplorerForAll v6

Another key component for navigating an Android app is the action bar. The action bar is located at the top of the screen and basically is used for

  • Branding purposes (includes the application name, logo and branding color)
  • Making important and commonly used actions prominent and easily accessible
  • Ensuring consistent navigation together with tabs

In Android 5.0 Lollipop, the Toolbar was released which is basically a generalization of the action bar. While the action bar is part of the activity window, the Toolbar can be placed anywhere within a layout. A Toolbar can be set as the action bar using the setActionBar() method.

In SongExplorerForAll v6, we add a Toolbar to the Main Activity and set it as the action bar. We then add two menu elements, share and about. The share menu is displayed as a share icon in the Toolbar while the about menu is displayed when the user clicks on the more button (three vertical dots) in the action bar. When adding an icon, it is important to provide resources for the different density buckets (mdpi, hdpi, xhdpi, xxhdpi etc.) in order to ensure good graphical quality and performance on all screen densities.

Finally, we also add the drawer indicator in the action bar.

20150826-song-explorer-forall-v6

Our forthcoming training courses

  • No training courses are scheduled.

Optimising for tablets

This topic is part of our Android Application Development training

We have seen previously various best practices (such as using match_parent and wrap_content) for supporting different screen sizes. Android also allows us to provide several alternative layouts to target different screen configurations.

For example, let say we have an activity whose layout, found in the res/layout folder, is called activity_details.xml. This layout would be used for any device. However, Android allows us to create another folder, res/layout-large, in which we can have a different implementation of activity_details.xml. For example, in the activity_details.xml file found in res/layout, we can have an image whose width has been set to 100dp and in the activity_details.xml file found in res/layout-large, we can have an image whose width has been set to 200dp. In such a case, the activity_details.xml file found in res/layout-large would be selected on devices with screens classified as large.

Now, using the large size qualifier also has some limitations. Instead, we can use smallest-width qualifiers which allows us to specify specific screen sizes. For example, we can place the activity_details.xml file in the folder res/layout-sw600dp. Resources found in this folder would be used by devices whose smallest width is 600dp or more. Android also allows us to use orientation qualifiers such as res/layout-land where resources found in that folder would be used by devices in landscape mode.

Using the above mentioned qualifiers together with fragments, we can implement optimised and dynamic user interfaces which will adapt to different screen configurations quite easily.

20150825-song-explorer-for-all-v3

SongExplorerForAll v3

In SongExplorerForAll v2, we used fragments to replace activities. In SongExplorerForAll v3, we create the new folder res/layout-sw600dp and add a different implementation of activity_main.xml in it to be used by screens whose smallest width is 600dp or more.

We also modify our MainActivity to display the appropriate fragments and perform appropriate tasks depending on whether the device has a larger screen. The result is that on smartphones, users get a list of artists and when selecting one of the artists get the artist’s details in another screen. On tablets, the list of artists and the artist’s details are displayed side by side.

This topic is part of our Android Application Development training

Our forthcoming training courses

  • No training courses are scheduled.

Building a dynamic user interface

This topic is part of our Android Application Development training

Till now, we have seen how to use layouts and activities to implement different screens. Basically an activity takes several views, arrange them according to a specific layout and manage their behaviour as well as the application flow. Since so far we’ve developed applications for smartphones, activities were perfectly fine. However, once we want to optimise our application for tablets, activities can have various limitations.

When dealing with larger screens, designing user interfaces get a little bit more tricky. By using the same user interface for let say a 4 inch smartphone and a 10 inch tablet, a developer would not make optimum use of the space available on the screen.

20150825-song-explorer-v11-tablet

If we have a look for instance at the SongExplorer v11 app on a 10 inch tablet, we can see that there’s a lot of space which is wasted on the right in the list of artists. One way to optimise the user interface for the tablet would be to use half of the screen for displaying the list of artists and use the other half for displaying the artist details such as the picture and tracks.

Unfortunately, since we have created the two screens using activities, this would require some complicated logic. Activities require full screen control when active and only one activity can be displayed on the screen at a time.

To address this issue, Fragments were introduced. Fragments not only can use a portion of the screen but also allow logic to be encapsulated into smaller building blocks and be reused. Fragments can be added statically to the UI but also dynamically to support different screen configurations.

SongExplorerForAll v1

In SongExplorerForAll v1, we implement the screen showing the list of artists and the screen showing the artist details using fragments instead of activities.

It is important to understand that fragments can only exist within a parent activity so we still need our MainActivity. We add the ArtistListFragment dynamically using a FragmentManager and FragmentTransaction.

You’ll notice here that on selecting a particular artist from the list, the artist details still open in a new activity since for now we haven’t told the application to replace the ArtistListFragment with the ArtistDetailsFragment. We are going to do that in the next version.

SongExplorerForAll v2

In order for fragments to be fully reusable, they should be built in such a way so as to be completely self-contained while at the same time being able to work with other components of the user interface. For instance, we should be able to reuse the ArtistListFragment in another application. However, while in the SongExplorerForAll v2 app the ArtistListFragment might need to communicate with the ArtistDetailsFragment, ArtistDetailsFragment might not necessarily be present in another app. This is why fragments should not communicate directly among each other. All communications among fragments should be performed through the parent activity.

In SongExplorerForAll v2, when an artist is selected from the list, it has to send this information to the ArtistDetailsFragment so that the latter updates itself accordingly. The information is first sent to the containing activity which then takes the appropriate action and passes the information to the ArtistDetailsFragment. This is done by creating an interface in the ArtistListFragment and implementing it in MainActivity.

This topic is part of our Android Application Development training

Our forthcoming training courses

  • No training courses are scheduled.

Asynchronous networking

This topic is part of our Android Application Development training

While accessing data found on the device (data stored in an SQLite database, data stored on internal storage, data stored on external storage or data stored in Shared Preferences) might be fine for some apps, very often, an app might need to send and receive data from a remote server. The data can be either a plain text, XML, JSON or image.

When developing an Android application, we should avoid performing long running operations on the UI thread as this could result in a poor user experience. Sending a request and waiting for the response might take time and thus, as of Android 3.0, the Android system will crash if a network request is made within the UI thread. One way of dealing with network requests is therefore to use AsyncTask which basically allows you to implement multi threading and to perform background operations outside the UI thread. The results are then passed back to the UI thread. Using AsyncTask can however be tedious as you have to do a lot of things manually such as writing code to access the network.

Recently, Google has released a new framework called Volley which handles a lot of the tedious work for you. It also offers various advantages over AsyncTask such as caching, retry mechanism and various request types.

LastFMApp

Last FM, a popular music website, provides the Last.fm API which allows developers to build programs using Last FM data which includes details about artists and tracks among others. Once you create an API account and get an API key, the Last.fm API is free to use. The web service allows you to call methods that respond in REST style XML or JSON format.

Here, we use Volley and send a request to Last.fm API to get a list of top chart artists. The response obtained will be a JSON object which we display in a simple TextView.

When using Volley, network operations are managed by a RequestQueue to which you pass request objects.  A recommended practice is to create the RequestQueue as a singleton, thus ensuring that the RequestQueue lasts the lifetime of your app.

Also, in order for an application to be able to access the network, we should add the android.permission.INTERNET permission in our AndroidManifest.xml file.

LastFMAppReloaded

Now that we have a JSON object response, we need to parse it and retrieve data that is of interest to us. In LastFMAppReloaded, we retrieve the name of the first artist returned in the JSON response and display it in a TextView.

For this, we use the JSONObject and JSONArray classes and some of their methods such as getJSONObject() and getJSONArray().

20150824-last-fm-app-with-image

LastFMAppReloadedwithImage

The Last FM Api also returns the urls for pictures of the different artists. In LastFMAppReloadedwithImage, we also retrieve the image for the first artist returned in the JSON response.

In Volley, this is pretty straight-forward using the ImageLoader class and the NetworkImageView component.
20150824-song-explorer-v9

Song Explorer v9

Previously, we created the Song Explorer app which basically retrieved a list of artists from a database and displayed it in a listview (RecyclerView). Then on selecting one of the artists, we could get more information about that artist as well as a list of tracks for that particular artist.

Now that we know how to perform network requests with Volley, in Song Explorer 9, we’ll retrieve the list of artists from the Last FM web service instead of from the database.

You’ll notice that selecting a particular artist from the list returns an error. This is because the artist id we used in the database is different from the artist id used by the Last FM api. We’ll fix that in Song Explorer v10.

Song Explorer v10

The Last FM Api also has a method which allows us to retrieve a list of top tracks for a particular artist. In Song Explorer v10, when selecting a particular artist from the list, we are redirected to another activity just like in the previous versions of Song Explorer but this time, we display the artist name, the artist image and a list of top tracks for that artist.

Song Explorer v11

Finally, just like we did for the ForexWithStyle app, we’ll modify the style and add some colors to the Song Explorer app.

20150824-song-explorer-v11

This topic is part of our Android Application Development training

Our forthcoming training courses

  • No training courses are scheduled.

Learning Business Studies on your smartphone

20141106-business-studies-cover

Last year, Sarvesh Nundalallee, a Business Studies teacher at Curepipe College, in collaboration with Knowledge7 launched an Android application called Business Studies Volume 1. The aim of the app was to provide Business Studies students (at A-level e.g. Higher School Certificate and first year university) a way of preparing for their exams while on the move.

20141106-business-studies-appFollowing the huge success of Business Studies Volume 1, Sarvesh Nundalallee and Knowledge7 are glad to announce the launching of the full Business Studies Q&A application. While the first version covered the Business Environment section of the program, this new version covers all six chapters of the program namely Business and its environment, People in the organisation, Marketing, Operations and project management, Finance and accounting and Strategic management.

Study whenever you feel like doing so

Time is a very precious resource for students. This application allows you to make the most of it by giving you the flexibility to study anytime, anywhere without having to carry a heavy Business Studies book.

Since the app works without an Internet connection, you just have to take out your smartphone or tablet and start browsing through a huge repertoire of questions and answers from exam papers of the past ten years. It allows you to make good use of your free time.

Know exactly what examiners expect from you

Many students are not aware of examiners’ expectations regarding the structure of answers to essay-type questions. Although marking schemes are available to students, many find it difficult to answer appropriately. The Business Studies Q&A app provides a list of model answers. This allows students to better understand how to answer correctly for maximum marks.

20141106-business-studies-creatorsAvinash Meetoo, Founder and CEO of Knowledge7, believes that this application will be very beneficial to Business Studies students and that the future of learning resides in leveraging the use of technology to enhance the learning experience. He therefore invites other teachers who would like embark on a similar adventure to contact him on 5493-9394 or send him an email at .

Downloading the app for free

The app can be downloaded from Google Play Store. Questions and answers for the first chapter are free while questions and answers for the other chapters can be activated through in-app purchases. Get one chapter for $1.49 or all chapters for only $4.99.

Have fun studying with Business Studies Q&A. Do not hesitate to share with your friends and family.

Our forthcoming training courses

  • No training courses are scheduled.

Mobile marketing: the new game changer

20120306-rotator-mobile

The invention of the Internet was a game changer in business and marketing. At first, all businesses started by simply creating their websites but as the Internet matured, businesses started seeing other opportunities for using it as a highly effective marketing channel. While most businesses are now aware of its potential, although many of them haven’t really started embracing it, very few are aware of an even more effective emerging marketing channel – mobile technologies.

Why is mobile marketing so great?

Digital marketing research firm InsightExpress found that mobile ad campaign norms were four-and-a-half to five times more effective than online norms. One can easily understand why. The adoption rate of smartphones and tablets is truly amazing. eMarketer expects 4.55 billion people worldwide to use a mobile phone in 2014.

Now let me ask you a question. What are the three things you take with you before leaving your house?

Your keys, your wallet and your smartphone!

People check their smart phones and tablets several times a day whether they are at work, while travelling or at home. Moreover, mobile devices provide capabilities such as geolocation. Thus, advertising through a mobile channel allows you to target customers not only at the time you want but also based on their location.

Let’s take an example:

Android Application Development course at Knowledge7

This course has been designed for people who need to acquire the skills to develop powerful Android applications. It covers key topics such as using databases, asynchronous networking and the use of geolocation and Google Maps. You will also learn about the Android best design patterns.

Learn more

Let’s say you sell shoes and you have several retail stores around the country. You decide to use newspapers to advertise your shops. People will most probably read the newspapers at home or at work. They might be attracted by your awesome ad design and find your product really interesting. However, very often they will forget about it. Imagine now that you could send a notification to a person, through a mobile application, only when that person is within 25 metres of any one of your shops telling them about a special offer available on presentation of a coupon (a mobile coupon which is available through the application itself!). The chances of that person getting into your shop will increase greatly. Mobile marketing takes marketing to a whole new level.

In order to give you some inspiration on how to leverage the power of mobile marketing, below are three real-world examples of businesses who have created great mobile marketing campaigns.

Heineken Star Player Game

The Dutch brewing company Heineken, has created a mobile application called Star Player. Star Player is a game which allows players to predict what will happen at key moments in UEFA Champions League football matches. The game works in real-time and invites players to forecast the outcome of corners, free kicks, penalties, when goals will take place etc. and are awarded points accordingly. This game results in people being exposed to the Heineken brand during the whole match and well, we all know that it feels really good to drink beer while watching a football match…

Quidco

Cashback and voucher website Quidco.com has launched a mobile application that rewards users with cash and exclusive offers for checking in to certain stores and restaurants.

Cashback is paid when people click through and make a purchase at any of the retailers listed on their website. The Quidco app provides users with all the money-saving offers available nearby, including vouchers and in-store cashback deals. It also presents cash incentives and bigger offers for users who check in to certain restaurants and stores.

“While other apps inform the users of offers in their local area, the incentivised check-ins on the Quidco app will encourage consumers inside stores, thereby giving retailers more of an opportunity to influence customers and make a sale,” says Quidco’s Hannah Green.

https://www.youtube.com/watch?v=l0iVdUDEziU

Edendale

Edendale is a Mauritian company which specializes in the distribution of dairy products, juice, cereals etc. They contacted us last year to develop a mobile application – an Anchor Nutritional Game. The game shows you examples of balanced diets and allows you to create your own from a list of food items provided. It then explains how using Anchor products can help you achieve a balanced diet. When customers visit a supermarket, they can play the game on a tablet. This is specially fun for kids and will you be able to say no when your 8 years old daughter will ask you to buy that bottle of milk?

20140114-edendale-in-nexus-7

Mobile marketing offers an endless number of possibilities. The only limit is your imagination and your ability to develop mobile applications.

Here’s a piece of advice: mobile is the future and is here to stay. Successful companies will be those who will adopt both online and mobile marketing.

It is possible to outsource the development of the mobile application (to Knowledge7 say). However, if you plan to create several mobile apps, having your own development team might be less costly. In this case too, Knowledge7 can help.

Do not hesitate to contact us for FREE advice.

Our forthcoming training courses

  • No training courses are scheduled.

Why Digital Marketing will inevitably win over conventional marketing

20140707-digital-marketing-lifebuoy

In this post, Cédric Clain, who is a Digital Marketer at Knowledge7, gives his views about Digital Marketing and the reasons why it will win over traditional marketing techniques soon.

20140224-cedric-clainMarketing is mainly about communicating the value of your business to customers. Let’s say you own a beer company which produces a really great tasting beer called Purebrew and you know that most of your customers live in a town called Betatown. In order to communicate the value of your beer and to eventually attract more customers, as a good marketer, you have to market your beer in Betatown. As a conventional marketer, you would probably do this by advertising in Betatown newspapers or by going there and distributing flyers to the Betatown inhabitants. Although that might sound like a great plan it does have some flaws. Most of the inhabitants of Betatown read the newspapers but many of the readers don’t drink beer. Also, many of the people who get the flyers will simply throw them away because either they don’t drink beer or if they do, they are too busy on their way to work to think about which beer to buy. What a waste of money. A waste which you can’t afford since Purebrew has started recently and you are not making a lot of profit right now.

There is bigger problem though. You’ve heard of a new town which was built a few years ago and the thing is that most of the inhabitants of Betatown are moving over there. A cool thing with this new town is that you don’t need to physically leave your current place to go there. It’s like a virtual town. However, most of the inhabitants of Betatown spend a large amount of time in that virtual town. As a result, the Betatown inhabitants don’t read the newspapers anymore as they spend more time in the virtual town. Forget about those flyers too. How are they going to know about your great tasting beer? Well, you have to market your beer in that virtual town. You have to market where your customers are. If you haven’t guessed yet, the town I’m talking about here is called Internet. You have to market over the Internet and this is what is basically called Digital Marketing.

Soon, traditional marketing methods are going to die. Why? Simply because the new generation is growing up with the internet and probably two mobile phones in their pocket. That’s the new world. As a marketer, you need to adapt or risk extinction.

Why Digital Marketing will inevitably win over conventional marketing?

20140524-1People shop and learn in a whole new way compared to just a few years ago. Nowadays, customers use social networks like Facebook or Linkedin to participate, collaborate and share views before making purchase decisions. The world of new marketing is about building relationships and trust. The lack of interactivity in conventional marketing methods doesn’t allow that. Through your website and social media networks, you can stay in touch with your customers 24 hours a day and 7 days a week. You can see what customers are talking about and use that information to tweak your products to better satisfy your customers. You can help your customers and answer their queries anytime and believe me, customers love that.

20140524-2Digital Marketing allows you to reach out to a greater number of customers at a lower cost. First of all, advertising over social networks for instance is much more affordable than advertising in newspapers. For companies which have a low marketing budget such as start ups, this can be an ideal solution. Second, online marketing is targeted. Advertise to people which have a greater chance of buying your products or services. This will improve your return on investment. Advertise beer only to people who drink beer. “Oh! But how can I know that?” Through social media networks this is possible!

Digital Marketing courses at Knowledge7

Effective Digital Marketing – A course designed for people who are involved with website management, sales, marketing and communication and who want to leverage the use of digital marketing to promote their organisation’s products and/or services. Learn to implement inbound and outbound online and social media marketing strategies.

Effective WordPress – Your website is the core of your digital marketing strategy. This course has been designed for people who manage websites or would like to launch a new website in the future. Learn to build a fully-functional dynamic website using the WordPress CMS.

20140524-3If you spend Rs 5,000 on marketing and in return get Rs 3,000 of sales, it’s definitely not worth it. But how can you measure that? Well, although it can be possible to measure the impact of conventional marketing methods, most of the time you get the information only after the marketing campaign and can’t really do anything about it. Digital Marketing techniques on the other side has a lot of tools which allow you to track customer acquisition, behaviour and conversion. Those information are available during the campaign and can be used to tweak your marketing strategy immediately. For instance if you notice that a particular post on Facebook has much more interaction than another one, you can take the resources spent on the second less performing post and place them on the first one for even more impact!

20140524-4Digital marketing allows you to think bigger. Conventional marketing methods are constrained in the sense that you have to target local customers. Targeting global customers would involve a much greater cost. Online marketing techniques on the other side allows you to target globally at an affordable cost. It allows you to think global.

Steuart Henderson Britt, the author of Marketing Management and Administrative Action wrote in his book:

Doing business without advertising is like winking at a girl in the dark. You know what you are doing, but nobody else does.

In today’s world, with more and more people moving online, I guess we can safely say:

Doing business without digital and social media marketing is like winking at a girl in the dark. You know what you are doing, but nobody else does.

Our forthcoming training courses

  • No training courses are scheduled.

Maîtriser le Marketing Digital et WordPress

20140718-digital-marketing

De nos jours, toute entreprise qui veut vendre ses produits ou services doit impérativement avoir une présence sur Internet et les réseaux sociaux. Cela demande d’avoir une stratégie Internet bien pensée et la maîtrise d’un certain nombre d’outils technologiques. Dans le but d’aider les entreprises à être plus visibles sur Internet et, par conséquent, à améliorer leurs ventes, Knowledge7 propose deux formations en août sur le marketing digital et sur la création de sites web. Durant les formations, nous adopterons une approche très pratique et pragmatique afin que les participants puissent être immédiatement opérationnels.

Marketing digital: augmenter sa visibilité sur Internet et les réseaux sociaux

Le marketing digital (Digital Marketing) est aujourd’hui incontournable avec, par exemple, presque 400,000 Mauriciens sur Facebook. Les entreprises ont l’obligation de communiquer et de promouvoir leurs produits sur les réseaux sociaux (Facebook, Twitter, LinkedIn, Google+, etc.) et aussi de mieux utiliser leurs sites web.

Lors de la formation Effective Digital Marketing, les participants mettront en pratique des techniques pour améliorer la visibilité en ligne. Cette formation, ouverte aux équipes de communication et de marketing, aura lieu du 13 au 14 août.

WordPress: Concevoir des sites web modernes et dynamiques

20140718-wordpress

La conception de sites web modernes passe aujourd’hui par l’utilisation d’un Content Management System (CMS) comme WordPress. La formation Effective WordPress permettra aux participants de créér un site web complet et couvre tous les aspects essentiels tels que l’acquisition d’un nom de domaine, l’hébergement, la configuration de WordPress, le design, la gestion des textes et des contributeurs, la modération de commentaires, etc. Cette formation s’adresse aux personnes qui doivent lancer ou gérer un site web sur mesure. Elle aura lieu du 20 au 21 août.

Ces cours durent chacun deux jours, sont agréés par la MQA et coûtent Rs 9,900 par participant. Les entreprises peuvent bénéficier de remboursements auprès de la HRDC.

Our forthcoming training courses

  • No training courses are scheduled.

5 reasons why we choose WordPress to build websites

20140722-wordpress-superman

We talked in a previous post about the changing habits of customers, how they are moving online and why therefore having an online presence is primary. Today, over two decades after the publication of the first webpage, a corporate website has established itself as an irreplaceable component which should be at the core of every good digital marketing strategy. People expect all organisations, whether it is a for-profit business, a governmental institution or a not-for-profit organisation to have a website. Social media presence, online advertising and others should all revolve around your website and should aim at attracting potential customers there.

But how do I go about having my own website?

For several years, creating a website has been considered a complex and costly process. In the beginning, there were static websites which consisted of several static web pages. Those web pages were generally created using HTML and were styled using CSS. Then came dynamic websites where the content of web pages is stored in a database and generated in real-time. Dynamic websites are therefore more interactive. Most websites today are dynamic and are created using scripting languages such as PHP and ASP.

20140804-sony-music

For a long time, people have been building websites from scratch. Creating dynamic websites was done by professional web programmers who were proficient with web technologies. However, with the birth of Content Management Systems (CMS), that is no longer the case. Now anyone can create a fully-functional dynamic website using a CMS.

Why WordPress is an excellent Content Management System

At Knowledge7, we use WordPress to power our company website and the other websites of our network. We also use WordPress to create websites for our clients. It has always worked seamlessly. While there are other CMS around, here are five reasons we believe you should choose WordPress like us:

20140524-1WordPress is easy to set up

WordPress is open-source and therefore free to download and use (get it here!). The vast majority of web hosting companies support WordPress and allow you to install WordPress with one click. WordPress also provides a hosting service. This is a particularly good solution for those who want to get started rapidly.

20140804-wall-street-journal

20140524-2 WordPress is easy to use

Once we deliver a website, our clients generally find it easy to create and edit content. You don’t need to be a programmer to update your pages. Adding images and videos too is straight forward. At Knowledge7, we offer an Effective WordPress training to allow selected members of your organisation to maintain your website.

20140804-bbc-america

20140524-3WordPress is beautiful

WordPress can be customised with themes to choose the look of your website. There are thousands of free and affordable themes on the Internet, many of them designed by professionals. Themes exist for all kinds of needs: to enhance the look of your website, to make the website easy to navigate by smartphone and tablet users, etc.

Upcoming Digital Marketing courses at Knowledge7

Effective Digital Marketing – A course designed for people who are involved with website management, sales, marketing and communication and who want to leverage the use of digital marketing to promote their organisation’s products and/or services. Learn to implement inbound and outbound online and social media marketing strategies.

Effective WordPress – Your website is the core of your digital marketing strategy. This course has been designed for people who manage websites or would like to launch a new website in the future. Learn to build a fully-functional dynamic website using the WordPress content management system.

20140524-4WordPress is powerful

WordPress started as a blogging platform. It has come a long way since then. Want to add a subscription form to your website? Want to add e-commerce features? WordPress allow for these and much more. WordPress is now a powerful content management system and powers some of the most visited and well-known websites on the planet. See for yourself:

  • Sony Music
  • Wall Street Journal
  • BBC America
  • Usain Bolt

20140524-5WordPress is Search Engine Optimised (SEO)

Last but not least, WordPress respects a number of important Search Engine Optimization (SEO) best-practices. A website made with WordPress and having great content will have a better performance with search engines such as Google Search or Bing. This is important in our era where everyone is competing for attention.

20140804-usain-bolt

You need a website? Look no further than WordPress!

Our forthcoming training courses

  • No training courses are scheduled.

5 rules to make a great Android app

20140709-morpheus

Since Android 1.0 was released in 2008,  Android has conquered 80% of the mobile market. There’s no doubt that Android is the present as well as the future. And Android is moving fast. Very fast.

Don’t believe me? Have a look for yourself at the Google I/O 2014 keynote. Remember Android 1.5 Cupcake? Or Android 2.2 Froyo? The time when Apple was boasting about the great design of iPhone apps? And where, to be honest, the Android user interface was not so great? Well, Android has come a long way. Version after version, Google has added new features which allow developers today to make Android apps which look as good, if not better, than their iOS counterparts. Of course, good design is not only about look. It’s also about functionality, usefulness, intuitiveness, unobtrusiveness, user-friendliness and aesthetics. As an Android developer, you need to be able to cope with this rapid pace.

Here are five things you should take into consideration when developing for the Android platform.  This is not an exhaustive list but it should give you some insights on how to create great apps.

20140524-1

Supporting various screen sizes, orientations and devices

Our next Android Application Development training starts on Thursday 20 November 2014

Learn more

Unlike iOS developers who have a limited number of devices to design for, as an Android developer, you have a more challenging job. You have to cater for the wide variety of devices and, failure to do so, inevitably means a risk of missing a large audience.

Fortunately, Android was developed with this in mind and Android will perform scaling and resizing to make your application work on different screens provided you follow design best practices. For example, using density-independent-pixels (dip) to specify components sizes is recommended. Android also allows you to provide images in various sizes for different kinds of devices.

20140524-2

Optimizing for tablets

Although Android performs scaling and resizing, you should make the effort to optimize your application for large screen sizes and densities especially tablets.

Here’s is an example of a typical list-detail application. The first screen displays a list of items. Clicking on one of those items, you get a second screen displaying the details related to that particular item.

list-display

detail-display

The list screen and detail screen looks like they work in landscape on tablets. While this would look great on a 4″ smartphone, this design is not optimized for 7″ or 10″ tablets. The look is not great but the app is not optimally using the screen real estate as there are a lot of unused space. Optimizing the design for tablets might result in:

display-mode-when-landscape-1024x715

Here, a multi-pane layout is used to display both the list and details side by side. By clicking on one of the items in the list, the details for that particular item is updated. The design is much better as it makes better use of the available space and offers a better user experience. There is no need to switch from one screen to another. The only thing that it might need is some colors.

In Android 3.0 Honeycomb, fragments were added in Android which allows you to build more flexible and dynamic user interfaces. For example, the list and details parts above are distinct fragments which are shown on the same screen. Note that fragments have been backported to earlier versions of Android (1.6 Doughnut) thanks to the Android Support Library v4. Make sure to use them.

20140524-3

Using an action bar, touch gestures, a navigation drawer, etc.

Over the years, Android has introduced new features and patterns in order to provide a more appealing and rich user experience: the action bar, new touch gestures and the navigation drawer among others. You should leverage those capabilities in your app.

A word of caution here however: don’t use new features only because they exist! New UI features are introduced for to solve specific UI issues: some provide better navigation while others are used to allow users to better browse content. Make sure to understand the rationale behind each UI pattern and follow best practices!

20140524-4

Make sure that your app is intuitive and easy to use

Often, you might want to develop an application which will run on different platforms using a cross-platform framework such as Apache Cordova (aka Phonegap). While using the same code on different platforms can help you save time, it can greatly affect user experience.

You should be aware that there is a world of difference between Android and iOS (to take the two most common mobile platforms used worldwide). For instance, in Android, people expect to use the back button located at the bottom of a screen to move to a previous screen. In iOS, there is no permanent back button. iOS apps have to provide their own back functionality, for example, as a button at the top of the screen.

In general, people do things on their phones without really thinking. These are called user reflexes. Android users have developed reflexes when using Android applications. This is true for iOS users too. And, of course, the reflexes are not necessarily the same.

If your Android app doesn’t follow Android guidelines and design patterns, your users will have a really hard time figuring out how to perform simple tasks. Believe me: many will rapidly give up and just uninstall your app. Don’t try to mimic elements from other platforms: a back button at the top of an Android app is completely out of place!

20140524-5

Focus on the content

My last point will be about aesthetics. Confused? Aesthetics? What is this focus on the content?

Often, when you think about aesthetics, you think about what can be done to make your design pleasing to the eye only. But aesthetics is also about usability. Be particularly careful about making you app difficult to use while making it beautiful!

The solution is to use typography, regular grids, white space, bold colors and recognisable images.

Effective use of the above does much more than just please the eye: they create hierarchy, meaning and focus.

Our next Android Application Development training starts on Thursday 20 November 2014

Learn more

Users download apps which provide them with information they need. Make this information prominent and easy to consume. Focus on the content. Focus on helping your users achieve their aims. Don’t use colours for the sake of having colours, use easy to read text with a nice typography and use white spaces to make the screen less crammed. You’ll have a beautiful app, simple to use, and loved by users.

During the last Google I/O conference, Google introduced Android 5.0 L, to be release at the end of the year, and one of the major innovation is Material Design.

Material Design is a new way to design apps to make them behave like real objects. UI components are placed on distinct layers with subtle shadows. They react when touched like real objects do. Material Design is not revolutionary. But it has the potential to make apps much easier to understand and use by normal people. And, we developers, need to cater for normal people.

Don’t forget to have fun in the process 😉

Our forthcoming training courses

  • No training courses are scheduled.
Next Page »

Looking for something?

Want to know more?

Get our newsletter

Discover the latest news, tips and tricks on Linux, the Web and Mobile technologies every week for FREE

This work is licensed by Knowledge7 under an Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) license.