Monthly Archives: January 2015

Timesnaps app by Teknowledge

Hussain Fakhruddin
Follow me

Hussain Fakhruddin

Hussain Fakhruddin is the founder/CEO of Teknowledge mobile apps company. He heads a large team of app developers, and has overseen the creation of nearly 600 applications. Apart from app development, his interests include reading, traveling and online blogging.
Hussain Fakhruddin
Follow me

Timesnaps - All-New Photo Slideshow App

Life is all about fleeting moments, right? Time is never at a standstill, and the person/thing/tour we love the most grows and changes in a blur and a whiz – somehow heightening a sense of loss in our hearts. These were precisely the thoughts of Luke Holden, as he started toying with the concept of an iPhone application that could actually track the passage of time. And what else to do this better, than via photos?

 

The Search For A Developer Company

Timesnaps (the name was Luke’s brainchild) was going to be the very first mobile app that Luke had ever created. Instead of trying to dabble in coding methods that were alien to him, he decided to hire a professional mobile app company for the purpose.

 “I guess I could have tried to make the app myself, or simply got in touch with a freelance developer. However, I did not want to compromise with any aspect of the vision I had for Timesnaps. Hence began my search for an app company.”

Luke Holden - founder of Timesnaps

– Luke Holden (Project Owner, Timesnaps)

 

While browsing through the profiles of app development firms online, Luke came across the website of Teknowledge Mobile Studio. He requested for a free app quote, and was pleasantly surprised by the fact that this company indeed responded within 16 hours (that’s one ‘yay!’ for us!). The specified terms were to his liking, and work on the project started the following week.

 The Early Stages

Luke constantly emphasized that Timesnaps was not going to be like any other already existing app in iTunes. He shared a basic wireframe with the iOS developers at Teknowledge, which served as a preliminary reference point. During this early phase of the Timesnaps project, there were regular interactions to understand the exact proposed nature of the app.

Timestamps - Wireframe sketch 01

“I have been in the app development business for close to 9 years, and even so, I was amazed by Luke’s vision for Timesnaps. He wanted the app to track changes in virtually everything – right from the growth of a baby or a plant, to moments during a honeymoon tour or even the sky and the clouds. It was different from anything I had ever worked on before…and of course it was a challenge, but me and my team decided to take it on.”

Hussain Fakhruddin, CEO, Teknowledge Software

– Hussain Fakhruddin (CEO, Teknowledge Mobile Studio)

The Challenge

Our team agreed with Luke that making this iOS app was not going to be a difficult task per se (the project was completed in five weeks flat). The biggest challenge, in fact, was regarding something else. Till date, smartphone-users were familiar with image-capturing apps and social networking apps. Capturing the passage of time through a mobile application was an entirely new concept. We had to ensure that people actually liked Timesnaps.

Mechanism of how Timesnaps works

“I knew that I had a winning app-idea, and was quietly confident that the guys from Teks would do a good job with it. But was I sure from the very outset that Timesnaps would emerge such a big hit? Frankly, no…there was a lot of nervousness.”

Luke Holden - founder of Timesnaps

Luke Holden (Project Owner, Timesnaps)

Creating Stories From Snaps

This was, in essence, the key function of the Timesnaps application. After a lot of deliberation among our mobile app developers and idea-sharing with Luke, arranging pictures in slideshows was identified as the main functionality of the app. The flow of the app was customized in such a way that users could start creating slideshows immediately after taking photos and accepting them.


Timesnaps has been reviewed as a simple, user-friendly photo-sharing app.

“I have always been a fan of photo-sharing apps, and had downloaded Timesnaps just out of curiosity. The new functions of the app – particularly the slideshare creation and sharing feature – are absolute delights. This is an iPhone photo app done just right!”

– R. V. Mitchell, iPhone 6-user.

(downloaded Timesnaps on Jan 6, 2015)

 

How Does Timesnaps Work?

To make sure that people did not get confused by the workflow of Timesnaps, the UI of the app was made as user-friendly as possible. A user could go on a snapping spree after the tapping the ‘New Timestamp’ button (located at the center of the screen). A provision for setting alarms was also included, to remind users to take photos of the person/thing whose progress over time was being tracked.

Making slideshows is easy on Timesnaps

“I had personally requested Hussain to let his best developers handle my project. I am happy to say that he readily obliged. I found those in charge of making Timesnaps to be proficient both coding as well as non-technical matters.”

Luke Holden - founder of Timesnaps

– Luke Holden (Project Owner, Timesnaps)

 

Slideshows could be created with the snapped photos (there is a ‘Ghost Button’ to add further customization and stability). The slideshows can also be shared directly on Facebook and/or uploaded on Facebook.

 

“Social media integration is a key feature in nearly all of our iOS app projects. After discussions with Luke, it was decided that Timesnaps won’t be an exception.”

Hussain Fakhruddin, CEO, Teknowledge Software

– Hussain Fakhruddin (CEO, Teknowledge Mobile Studio)

In-app Purchases

Initially, Luke was not planning to put any limits to the number of projects/slideshows that could be created with the free version of Timesnaps. It was during the final stages of development, that an in-app purchase option was included in this innovative imaging app. The basic version of Timesnaps can store a maximum of 3 projects. Further projects can be unlocked by purchasing the ‘Go Pro’ option (Price: $2.99).

“Initially, there was a bit of a confusion regarding the camera photostamp visible at the corner of the photos. This is a default feature in the standard version of Timesnaps, and can be removed by opting for the ‘Go Pro’ option.”

Luke Holden - founder of Timesnaps

– Luke Holden(Project Owner, Timesnaps)

unnamed (3)

Other Advantages Of The ‘Go Pro’ Feature

 

“I asked myself whether the possibility of creating and storing more photo projects was enough to justify the presence of the ‘Go Pro’ option. The gut feeling was ‘no’ – and there had to be something more on offer for the users spending their money for the in-app purchase.”

Hussain Fakhruddin, CEO, Teknowledge Software

– Hussain Fakhruddin (CEO, Teknowledge Mobile Studio)

Luke sat with the app developers and graphic designers at Teknowledge, to chalk out the additional features that would be given to the pro-users. In addition to giving them access to an unlimited number of projects, the ‘Go Pro’ option offers:

 

  • Removal of the ‘Rate Us’ popup (visible in Standard version).
  • Option to create any number of high-definition, interruption-free slideshows.

 

All pictures taken with Timesnaps are saved inside the app itself, and are not exported to iPhone albums. This, in turn, completely removes the risk of losing any photo.

 Timesnaps - Closing in on 4 Thousand Downloads worldwide

Two things about Teknowledge really built my belief that they would make my app a winner. First was, of course, their sincerity and sheer knowledge about iPhone app development. Secondly, and perhaps more importantly for me, they had separate teams for coding, testing and app designing. The project was always systematic, always streamlined.”

Luke Holden - founder of Timesnaps

– Luke Holden(Project Owner, Timesnaps)

 We made it a point to include Luke in the actual development phase. Feedback and suggestions were sought from him from time to time, after sharing mockups and prototypes of the app with him. The focus was on making the app just as he wanted.

 Timesnaps is a photo storytelling app for iOS devices

Since its release, Timesnaps has notched up well over 3.9 K downloads from the iTunes store already. In addition, it has earned favorable reviews online, from portals like Appszoom, xyo.net and Appcrawlr. Luke had a vision of making an app that could follow the passage of time itself – and we managed to make Timesnaps a lovely tool for just that!

Timesnaps is available for free download at https://itunes.apple.com/us/app/timesnaps/id843757664. It features high on the list of our 650-odd apps that we are very, very proud of.

14 Likely Features In The Android Lollipop 5.1 Update

Hussain Fakhruddin
Follow me

Hussain Fakhruddin

Hussain Fakhruddin is the founder/CEO of Teknowledge mobile apps company. He heads a large team of app developers, and has overseen the creation of nearly 600 applications. Apart from app development, his interests include reading, traveling and online blogging.
Hussain Fakhruddin
Follow me

The adoption rate of Android Lollipop, after more than two months of its release, has remained shockingly low. A major update – Android 5.1 Lollipop – is scheduled to be launched in the end of February. We have highlighted some likely improvements in the new update, in what follows.

 

The latest round in the tussle between Apple iOS and Google Android has been a fascinating one. The latest mobile platforms from either (iOS 8 and Android 5.0 Lollipop) have not been perfect – but while the adoption rate of iOS 8 has soared, that of Lollipop 5.0 has remained below 0.1%. In fact, official Google stats revealed earlier this month highlighted Kitkat as the most popular version of the Android platform (with a shade less than 40% device share), while the figure for Lollipop were too low to be even displayed. After a couple of minor bug-fix updates (5.0.1 and 5.0.2), Google is all set to roll out a full-blown Android 5.1 Lollipop update from the second half of February 2015. Here are the major changes expected in the new update:

 

  1. Lower consumption of network resources – Early adopters of Android 5.0 Lollipop had confirmed that the platform caused their handsets to hog too much of data resources, particularly when connected to wireless networks. According to Android app developers, this tended to affect the speeds of the installed mobile applications. In the new update, the network usage levels would be lowered, so that the devices can work at high speeds.
  2. Arrival of the Silent Mode – In a bewildering move (or was it an oversight?), Google developers removed ‘Silent Mode’ from the Lollipop interface. This led to large volumes of user-complaints. As per reports from AndroidPit, the ‘Silent Mode’ option is all set to make a return on the Lollipop 5.1 version. People who like to keep their phones silent will heave a sigh of relief!
  3. Better battery performance – Well, as long as you are not expecting something ground-breaking – the battery performance of Lollipop 5.1 is likely to be significantly better than that of the initial version of Android L. The notoriously low battery life has been one of the key causes of users staying away from going for the update – and improvements in this regard would certainly be welcome news. Updated handsets should provide at least 2-3 hours of additional battery juice.
  4. Removal of ‘Ok Google’ problems – Voice-interactions with handsets running on Android 5.0 Lollipop has not been a uniformly smooth experience for many users worldwide. There have been issues with understanding voice commands, while reports have also come in regarding erratic task executions. In the new update, mobile app development experts as well as general users expect Google Now – the mobile digital assistant for Android – to become way smarter. The ‘Ok Google’ command might just become more useful.
  5. Lesser probability of connection drops – A major early problem with the Android Lollipop platform has been the unreliability of wi-fi connectivity. The frequent connection outages and drops have even caused several users to downgrade their devices from Lollipop to Android KitKat. This has not escaped the attention of the experts at Google, and the 5.1 update has been customized to provide fast and interruption-free wi-fi web browsing experience. With the percentage of mobile browsing in total internet usage going up every quarter, this could hardly have been overlooked.
  6. Alterations in the color palette of the Material Design interface – There had been a lot of hype over the all-new ‘Material Design’ of the Lollipop platform. It has not wowed everyone, however – and in particular, the default color palette has been generally deemed as unsatisfactory. As predicted by Android app developers and software analysts, the color pallette of Material Design is set for an overhaul in the Android 5.1 Lollipop upgrade. It would be interesting to see exactly what changes are actually made in the pallette.
  7. Fix of issues related to sudden app crashes – Although presence of bugs can also cause applications to crash/freeze, the new platform from Google Android has been responsible for the generally poor performance of apps installed on updated devices. As per early test reports, the frequency of crashes and sudden closures of Android apps on the Lollipop 5.1 platform is considerably lower than that on its predecessor. Downloading and using verified apps from the Google Play Store is likely to become much more hassle-free.
  8. Removal of notifications-related problems – Google promised better management of notifications on Android Lollipop. What final users received is a platform where the entire notifications system was confusing and problematic to handle. The feedback of users has been given due consideration by Google, to create the much more customized alerts and notifications system on the 5.1 version update. Checking new notifications will be a quicker and more seamless task on it.
  9. Greater stability – Not everyone who has moved to the Lollipop has experienced this, but reports of devices becoming slower, less responsive and lagging after the update have not been uncommon either. In order to keep up with the quality standards set by iOS (notwithstanding its own troublesome new version), Android 5.1 would come with greater stability and performance assurance. This, coupled with the revamped RAM features and superior battery life, is expected to bolster the user adoption figures of Android Lollipop.
  10. Improvement in audio features – A relatively minor complaint regarding the troublesome new Android mobile platform has been its under-par sound features. There have been cases of sudden volume fluctuations, while on certain devices, the audio has perpetually remained on the lower side. High-definition, crystal-clear audio features are sure to be a major highlight of the 5.1 update. People will no longer have problems with conversing on their phones and/or accessing the sound features of their favorite Android applications.
  11. A better, quicker rollout – This is, of course, not a problem with the platform itself – but the rollout strategy Google adopted for Android 5.0 Lollipop. Till this day, there are scores of Moto E and Sony phone-owners wondering when Lollipop would finally arrive on their handsets. Many devices have also got the Android 5.0.2 update directly, bypassing the 5.0.1 version. Android 5.1 Lollipop will be rolled out in a much more systematic manner – with the Nexus phones (understandably), getting it first, followed by the latest flagships of other vendors.
  12. Smarter multi-tasking options – Lollipop brought multitasking to Android devices in a big way, and if the buzz in leading online Android app development forums are anything to go by – this feature will get a further lift in the eagerly anticipated new update. The card-styled display of ‘recent apps’ might be tweaked around just a bit, while every tab would have its own card visible to the user. The lockscreen of updated handsets would be more secure too.
  13. More user-friendly controls and features – Two months of monitoring user-reactions to Android Lollipop’s features (the source code was made available in early-November) has given Google ample time to list out scopes of improvements in the platform. Although not yet revealed in detail, app developers and reviewers are expecting a fairly large number of new features in Lollipop 5.1, focused on enhancing the user-friendliness of the platform. Too many of new features might end up confusing people though.
  14. Better mobile web browsing via Google Chrome – Given the early promise that Android Lollipop had come with, the spectacular failure of the Chrome browser on the platform has been remarkable. Users have frequently lost pages stored in the incognito mode, tabs have closed/reopened on their own – and instances of browser crashes (unexpected shutdowns) have also been rather frequent. Chrome on Lollipop 5.1 is expected to be much more stable and reliable.

Rather worryingly for professionals who create video-based Android apps, there are no fixes for the video playback bug in the changelog listed for Android 5.1 Lollipop. Problems with the flashlight are, however, likely to be resolved. Android fans had fun pointing out the early bugs and issues with iOS 8 – but the shoe has been firmly on the other foot since the launch of Android Lollipop. Let’s wait and watch how good (or otherwise) the 5.1 update turns out to be.

 

AppBoard Tuesday – What Should A Good Mobile Business App Be All About?

Hussain Fakhruddin
Follow me

Hussain Fakhruddin

Hussain Fakhruddin is the founder/CEO of Teknowledge mobile apps company. He heads a large team of app developers, and has overseen the creation of nearly 600 applications. Apart from app development, his interests include reading, traveling and online blogging.
Hussain Fakhruddin
Follow me

The hiatus is over, folks! AppBoard Tuesday (ABT), the free weekly newsletter that gives you all the latest from the world of mobile app development and other related tech domains, is back…and we are not planning to take another break anytime soon. From now on, it’s going to be one interesting topic under the scanner after another, week after week.

During our Friday brainstorming and research session last week, we came across a fascinating survey result. According to a Gartner study, by the end of 2017, 1 out of every 4 businesses will have its very own enterprise app store. The interest of business houses of all scales – right from established ones to ambitious startups – in using mobile applications to bolster brand visibility and sales leads is already significant enough. And that, dear readers, got us thinking about what features should a ‘good’ enterprise app be all about in 2015. After a solid weekend’s research, we zeroed in on the following predictions:

 

  1. Popularity of native apps would soar – If the trends visible from the latter half of last year are anything to go by, corporate houses would no longer be content with a mobile version of their websites (for promotions, information-sharing, etc.). Instead of relying upon desktop solutions, there will be a sharp spurt in the demand for native applications related to business. As a direct result, app companies are also likely to concentrate more on creating this type of custom apps. The Apple-IBM collaboration has already shown the way for seamless integration of mobile-desktop technology, and this trend would gain momentum this year.
  2. Wearables will still not be the prime interest of developers – Yes, Apple Watch is the most awaited gadget release in the first half of 2015. Even so, the flop show of other smartwatches as well as the doomed Google Glass has shown that wearable technology is yet to take solid roots in the worldwide markets. During this year, most businesses would keep their focus on making apps from tablets and smartphones – in particular, the latter (since tablet sales are, in effect, going nowhere). If Watch turns out to be a runaway success, entrepreneurs and marketers might just sit up and take notice.
  3. Reliance on hybrid cloud storage would increase – New business apps are likely to offer easy cloud storage options for targeted users. For several months now, the manifold advantages of data management on hybrid cloud – from lesser costs to better, quicker accessibility – have been evident, and these factors would drive on the demand for using hybrid cloud as a reliable storage medium. What’s more, in-house cloud storage resources would be complemented by the services of third-party cloud service providers.
  4. Need for better security and employee-level accessibility – The push towards adoption of the initially hotly-debated ‘Bring Your Own Device’ (BYOD) strategy would increase in 2015. That, in turn, would make it vital for mobile app developers to incorporate high-end security and accessibility features in business apps. The focus is likely to be on making mobile data (stored in the apps) available to every employee, who require the same. Breaches in mobile app data security protocols would (hopefully) become rarer.
  5. Free apps for business would rule the roost – This one is probably the easiest prediction to make. Free iPhone apps and Android apps have a much larger target audience than paid applications – and enterprise apps are not going to be an exception. Every company would want its app(s) to be downloaded by as many people as possible, and it would only make sense if free apps (with ads and/or other built-in app monetization feature) are opted for, to start things off. Of course, these apps might have in-app purchase options (for, say, gift vouchers and coupons).
  6. Implementation/monitoring of app analytics would be increasingly sought after – Who would be hiring mobile app development companies to create business apps? That’s right – hard-boiled businessmen, and they would be more than eager to find out whether their apps are being worth the investment. Understandably, they would require in-app analytics functionality, to monitor user-behavior. In general, it would all be about providing top-class user-experience – so that these apps can effectively serve as tools to expand a company’s clientele.
  7. Business software development would become more in-house – And that would, of course, include creation of enterprise applications. While iOS/Android app developers would still receive their fair share of business app development projects, more and more companies would start creating these apps with their in-house development team. For startups in particular, in-house app development would present lucrative opportunities to cut down on nearly all aspects of infrastructure – right from creation and deployment, to networking, storage and maintenance. Many companies will start recruiting software experts for in-house development of customized business apps.
  8. Mobile Commerce is likely to gain in importance – Google Wallet has been in the picture for several years now – but it is the relatively recent arrival (and acceptance) of Apple Pay that forms the basis of this prediction. With secure, touch-free payment gateways (mobile POS), new-age business apps would enable people to make transactions via their phones/tablets. In 2015, digital currency would be the primary mode of transaction between corporate houses and their clients, and m-commerce apps would enjoy high demand levels.
  9. Enterprise apps would serve ERP and CRM needs – As already highlighted before, mobile apps for business would increasingly focus on better user-experience. Active monitoring of user analytics would also enable entrepreneurs to get real-time feedback from customers, and alter their product/pricing strategies accordingly. This will automatically ensure smooth and information-inducing customer relationship management (CRM). In addition, in-memory computing solutions have the potential to rise in a big way for enterprise resource planning (ERP) for businesses. Companies with weak ERP branding and/or no in-house enterprise app would find the going tough.
  10. Apps would need to have offline functionality – Unlike the present scenario, the demand for business apps that work fine in an offline environment will receive a boost. Although more and more companies would move over to wi-fi internet connectivity in their office premises in 2015, employees would love to have apps that do not lose their functionality when not connected to the web. While working offline, business apps should not compromise on the speed factor either.
  11. Most enterprise apps would come with subscription options – According to leading business entrepreneurs as well as app development experts, enterprise apps in 2015 would be available with subscription pricing (either annual or per-user subscriptions). Preloading of bulky proprietary hardware and paying large amounts to acquire app licenses will not be opted for by most firms. Opting for subscription pricing models for mobile applications would offer a definite competitive advantage to users.
  12. Both iOS and Android would be equally important platforms for businesses – iPhone 6 and 6 Plus are big hits, and Android is not going to go away anywhere in spite of the lackluster performance of the recent Samsung flagships (thanks to the presence of so many vendor companies). As such, cross-platform mobile app development would be necessary while making enterprise applications. Neglecting any one platform would effectively mean wilfully curtailing the size of potential client-base.

The importance of business apps having systematically created app content would become vital like never before. Mobile searchability is yet another factor that developers are focusing on in 2015. App developers would get the chance to offer optimized ‘Platform-as-a-Service’ (PaaS) packages. The responsibility of specialized graphic designers in lending business apps an engaging appearance and layout will also be paramount. Companies that do not include dynamic mobile strategies in 2015 will start to lag behind their competitors.

 

That roughly sums up our predictions and hunches regarding the direction in which enterprise app development and usage would move in 2015. If you feel that there are any other significant trends, do write in. Have a contrary argument? If yes, share what you have to say – and we will definitely analyse if you are correct.

 

Before saying ‘adios’ for the week, a bit about our new apps. By last week, we had four new iPhone apps in their final stages of development and testing – One Brands (mobile shopping app), Sting (photo-editing app), Rapport Card (mobile relationship monitor) and Freebird (app for sharing creative works). You can check them out on our Behance profile.

 

AppBoard Tuesday (ABT) will be back next week with another interesting topic related to mobile applications. Till then, love thy apps!

Eclipse vs NetBeans – Which Is The Better IDE For Android App Development?

Hussain Fakhruddin
Follow me

Hussain Fakhruddin

Hussain Fakhruddin is the founder/CEO of Teknowledge mobile apps company. He heads a large team of app developers, and has overseen the creation of nearly 600 applications. Apart from app development, his interests include reading, traveling and online blogging.
Hussain Fakhruddin
Follow me

Eclipse is the go-to Java IDE for most coders working on Android applications. However, there are two other perfectly good alternatives to Eclipse available as well – NetBeans and Intellij Idea. We have here done a comparison study between Eclipse and NetBeans.

 

Most comparative analyses regarding the integrated development environments (IDEs) for Android developers revolve around Eclipse and Intellij. With 48% and close to 34% adoption rates respectively, these two are indeed the most popular IDEs for coding in the Java framework. However, NetBeans – yet another IDE – has its own set of fans, and in terms of popularity, it comes in at a respectable third (a shade over 10% adoption rate). Let us here do an Eclipse vs NetBeans comparison, and find out whether the former is indeed well and truly better than the latter:

 

  1. Downloading and installation – The NetBeans tool is available for free download from netbeans.org, and it has to be separately installed. The installation wizard is fairly simple though. On the other hand, Android app developers do not need to follow an installation procedure for Eclipse (also free) at all. After downloading it, the files can be directly copied and run.
  2. Swing vs SWT – NetBeans allows coders to work with its standard UI toolkit, named Swing. The toolkit facilitates seamless integration of Android applications developed with this IDE. Swing is also supported by tools like Jemmy, as well as a wide range of third-party code libraries. On the other hand, the Eclipse environment requires programming with the SWT toolkit. The number of external libraries supporting SWT is a lot lesser, and it does not offer similar customization options either. This round would go to NetBeans!
  3. Number of available plugins – While creating an Android app with Eclipse SDK, developers can access well over 2 million plugins. This is, arguably, the biggest reason, behind the overwhelming popularity that this Java IDE enjoys. On NetBeans, the total number of plugins available is around a measly 650 – which hampers its user-friendliness.
  4. The speed factor – Professional software and mobile app development experts love IDEs that allow high coding speeds – and Eclipse aces in this regard. The latest version of the IDE, Eclipse Luna, has significantly faster windowing, compilation and general coding speeds than NetBeans 8.0. Later this year, Eclipse Mars would be released – and it is expected to be even faster. However, this speed advantage of Eclipse can disappear if add-ons like PMD Plugins are installed.
  5. Database Support features – Both Eclipse and NetBeans are compatible with any database that comes with a built-in JDBC driver. However, Eclipse does not support Postgre SQL, something that NetBeans does. Also, as most Android app developers confirm, creation and modification of tables are simpler on the Database Explorer of Netbeans than it is with Eclipse. Many Java developers are big fans of the Maven build and deployment tool of Netbeans tool too.
  6. The learning curve – At a professional level, Eclipse is significantly easier to work with than NetBeans. That’s precisely the reason why almost all mobile app companies encourage their developers start working with Eclipse. In order to program in the NetBeans environment (with NBAndroid), in-depth knowledge of the Java coding language is required. For beginners, Eclipse is definitely the preferred option.
  7. Language and version control support – Yet another set of features where NetBeans manages to ‘eclipse’ the Eclipse IDE. While the latter supports only the default Java programming language, NetBeans provides full support to PHP, C and C++ too. In terms of version control support too, NetBeans wins hands down. It supports Git, Mercurial, Subversion and CVS, while Eclipse’s version control support is limited to Git only (for the others, more plugins have to be installed).
  8. Code formatting for PHP development – Any professional PHP developer would agree that the built-in code formatting features in Eclipse are, at best, just about okay. There are options for setting the indentation size and the tab policy under PHP → Code Style → Formatter. On Netbeans, however, there are multiple personalized options for direct code formatting – right from using braces and alignments, to swapping, making tabs and indents. There is even an option for blank lines.
  9. Block Commenting vs Line Commenting – There is nothing much to choose from between the nearly equally efficient source editors of NetBeans and Eclipse. The latter has the block comments option, while Netbeans comes with line commenting feature – both of which find favor among Android developers worldwide. The additional presence of Macros in Netbeans does give this IDE just a little edge though.
  10. Support for native app testing – Native testing out-of-the-box is easier while coding with the NetBeans IDE. Thanks to the presence of TestNG and jUnit, doing test runs and checking templates can be done quickly and without any hassles. Eclipse also offers native testing support – but for that, Android app developers need to download external plugins, like MoreUnit.
  11. IDE Configuration – Eclipse really excels when it comes to configuring and personalizing the IDE. There is an option for ‘preferences search’, and even at the project level, developers can override previous settings and features. NetBeans also has smooth navigation features, but does not even come close to Eclipse in terms of IDE configuration. The main reason for that? NetBeans does not have as many options as Eclipse to configure!
  12. Memory requirements – Another minor ‘yay’ in favor of Eclipse would be its lower RAM space requirement. Java/Android developers only need to have a minimum of 183 MB memory space, to download and start working with this IDE. To download and install NetBeans, at least 512 MB of free RAM space is necessary. For coders facing memory-management issues, Eclipse is, understandably, the chosen option.
  13. Real time app code testing – This is a very important feature for any professional mobile app maker. NetBeans and Eclipse both deliver on this count – albeit by different methods. While coding with the Netbeans IDE, developers can take advantage of Bugzilla, FindBugs and JIRA – all of which are directly integrated. Eclipse offers Kepler for code testing, and it can be used with FindBugs by downloading a plugin. The automated testing procedure is a touch simpler in NetBeans.
  14. Track record of previous versions – A lot of the superior popularity of Eclipse over NetBeans can be attributed to the sustained excellence of its features and the smart, systematic way in which it was rolled out to early adopters by IBM. Although NetBeans had the backing of Sun Microsystems, its early versions floundered – even as Eclipse Foundation released, and its user-acceptance levels got a big boost. At present, there are many Eclipse users who had tried out, and been disappointed by, the performance of previous Netbeans versions. Many of the early complaints of Netbeans have been already resolved, but most Eclipse-fans do not feel that there is any reason to switch.

There used to be a time when Eclipse was a way better Java IDE than Netbeans (anyone who has worked with Eclipse Galileo AND the Netbeans version at that time would vouch for that). However, the present version of Netbeans is more than a worthy rival IDE for Eclipse. It’s the greater familiarity factor that is likely to maintain Eclipse’s position as the best IDE for Android app and software development in future.

 

Top 12 Reasons Why You Should Request Free App Quotes

Hussain Fakhruddin
Follow me

Hussain Fakhruddin

Hussain Fakhruddin is the founder/CEO of Teknowledge mobile apps company. He heads a large team of app developers, and has overseen the creation of nearly 600 applications. Apart from app development, his interests include reading, traveling and online blogging.
Hussain Fakhruddin
Follow me

Prior to delegating your app project to any mobile development agency, you should ask for a detailed free app quote. In today’s discussion, we highlight some key benefits of asking for such app quotes from companies.

 

If you have a viable app idea, getting it developed is not a tough ask. There are hundreds of good mobile app development companies in practically every country – who can handle your project, do the necessary coding, share prototypes and wireframes with you, and submit the app in its final form. However, the first point of interaction between you and any app developer (from a company or a freelancer) would be when you ask for free app quotes. Why do you need to get detailed quotes at the very outset? Here are some reasons:

 

  1. To get an idea about the overall expenses – Depending on the type of Android or iPhone app you wish to create, companies will give you estimates of the total app development costs. This is essential for you to determine whether your idea is indeed worth spending the quoted amount, or whether you should put it on the back-burner and think up some other, simpler app concept. Unplanned expenses are never good, and mobile app development is not an exception to that.
  2. To compare and select – Wherever you might be from, do a bit of online research – and you will find several local mobile app companies proclaiming themselves to be the best. What’s more, most of them would promise free app quotes as well. It would be a smart option to collect quotes from, say, 4 different companies – compare among them (proposed features, estimated project completion time, costs, etc.), and then select the one that seems the most suitable. Hiring the very first app developer you come across would be too naive.
  3. To make sure that you do not pay unnecessarily – Okay, now let’s focus on the ‘free’ part. When you visit the website of an app development company/get in touch with a freelance developer and ask for online quotes, you are seeking information only, and not any service per se. Only when you select a company and delegate your project to it, does the question of making payments arise. Think of it this way – you have to come to a bookstore and have asked the price of a new novel. Does the store assistant charge you for giving you that information?
  4. To fit app development plans within your budget – One good thing about the online free app quote forms of most companies is that, they let clients take their pick from alternative budget options. Chances are that, you will also find details of the services available corresponding to the different budget slabs. That way, you can proceed with your plans to make a custom mobile app, without having to go overboard with your expenses.
  5. To avoid payment confusions in future – The last thing you want to worry about while your app is being developed are uncertainties about the payments that have to be made. Asking for a detailed free app quote is the smartest way to avoid such concerns. The total cost figure will be clearly specified in the response that your chosen company(ies) provides. If you find that the expenses are spiralling upwards, simply notify the developers about it. Chances of quabbles over payments after the app project is complete will be minimal.
  6. To confirm ownership of intellectual property rights – Nearly all leading iPhone app companies provide a non-competing agreement along with the free app quotes. This is vital, since it establishes that you retain the sole ownership of all intellectual property rights of your application (i.e., the company cannot pass off the app as its in-house product). In case you find that a company is hesitant about signing such agreements, it would be advisable to stay away from it.
  7. To stay involved with the development process – Many people plan to create an app, delegate their project to a company, and wait for the time when the latter finishes the task and the app is submitted to the store. This often results in the app in its final form turning out to be quite different from what you had initially envisaged it to be. At the end of the day, the app developers are working on your idea – and it’s only fair that you should have a say in how the software would be developed. When you ask for a free app quote, you can also share wireframes (if available) with the professionals of your selected firm. Other specific instructions can also be given.
  8. To avoid undue delays – Perfectly good app ideas might come to nothing, if there is too much delay between the thinking and the implementation stages. Almost every good mobile app company responds within a few hours of your contacting them for free quotes on apps. This, in turn, ensures that the actual development starts as soon as you have finalized which company to hire, and signed on the dotted line. When you think up an app idea, you should always look to implement it as soon as possible.
  9. To find out about advance payments – No mobile app developer in the world would agree to take his/her entire payment after the creation of your application is complete. Conversely though, you will come across many companies that demand hefty advance payments – even before any work is started on your project. At the time of asking for free app quotes, you should inquire about the timings when payments would have to be made, and how much has to be paid in advance. Ideally, a decent app company would never ask for more than 30%-35% of the total quoted development cost as advance payment.
  10. To ensure that app upgrades in future would be free too – This is a point where shady app development firms really become active. At the face of it, they give out free app quotes – but they also specify that app upgrades in future would involve additional payments. This somewhat defeats the very essence of getting app quotes for free. You need to make sure that the company of your choice would upgrade your app (if and when required), without charging you anything extra. To create an iPhone/Android app, recurring expenses should not be necessary.
  11. To avail the services of truly the best app companies – There used to be a time (even 3-4 years back), when clients used to look for local app development experts to handle their projects. Thanks to the proliferation of internet across the globe and the provision of free app quotes, getting in touch with, and availing the services of the best multinational mobile app company has become easier than ever before. You might be a resident of, say, Australia, and delegate your app project to a good European, or even Indian, app firm. Geographical boundaries have ceased to really matter.
  12. To give companies a proper launching pad to start brainstorming – The time when you request for app quotes is the best to highlight the precise type of mobile software you wish to be developed. The description and proposed features you provide would give your chosen company a reference point to start brainstorming on how the same can be implemented and what, if any, tweaks would be necessary. Consider this: if you mention that ‘I want an IM app’, the developers would be at a loss about what new features to include in it. However, if you specify that ‘I want an IM app with anonymous chatting features and real-time audio/video sharing’, the company gets a fair idea about the type of application it has to create.

The terms of usage documents provided at the time of getting app quotes should be scanned very carefully – since there are several companies that take up projects, only to re-delegate them to other, third-party firms (not something you would like). If you want to make an app with cross-platform compatibility, you can state that at the outset as well. When you find a mobile app company whose services seem to be good enough, ask for a detailed free app quote from it first. Go through the given details, compare the quote with that provided by at least a couple of rival companies – and then take a final decision on which app company you should hire.

 

Mobile Game Development – Tips For Beginners

Hussain Fakhruddin
Follow me

Hussain Fakhruddin

Hussain Fakhruddin is the founder/CEO of Teknowledge mobile apps company. He heads a large team of app developers, and has overseen the creation of nearly 600 applications. Apart from app development, his interests include reading, traveling and online blogging.
Hussain Fakhruddin
Follow me

In terms of downloads, mobile games have raced ahead of other app categories over the last few quarters. With more and more app developers turning to make games, we have shared a few tips for game development in what follows. They would come in handy for interested developers.

 

Mobile games have come a long way from the days of ‘Snake’ and ‘Bantumi’. The download stats for the first two weeks of January 2015 at the Apple App Store clearly indicate that gaming apps are by far the most popular category of mobile applications at present. During this period, 21.14% of all downloaded apps were iOS games – while educational apps came in a distant second, with a shade over 10% downloads. Not surprisingly, app development companies are increasingly starting to turn their attentions towards creating gamers. We will here discuss a few pointers for efficient mobile game development for professional developers:

 

  1. Start off with a 2D game – Yes, 3D games are more popular, but they are trickier to create as well. As a beginner, you should start out with a relatively simple 2D game. For creating the game elements and assets, you will need to have in-depth knowledge of working with Photoshop. There are several 2D game engine tools available as well (e.g., GameSalad), which you can refer to – in case your programming expertise is on the lower side. With time, start learning 3ds Max, Maya and similar applications, which would help you graduate to 3D games.
  2. Select the iOS or Android platform – Blackberry App World is not going to recover anytime soon, Tizen is still iffy, and Windows has a lot of catching up to do. To ensure high visibility of your game, choose between the Apple iOS and the Google Android platforms. Getting a new app approved on the latter is easier, but app and game developers typically make more money from Apple App Store.
  3. Keep things familiar – The interaction time of users with gaming apps is low – generally, a few minutes at a stretch. If you put in a host of never-seen-before features in your game, do not expect people to actually spend time to ‘learn’ how it works. Keep the gameplay options simple – so that users from any age group can try their hands on it, without having to refer to the instruction manual. The moment your mobile game is perceived to be ‘difficult’, its download figures will plummet.
  4. For games, content is the king – Most new indie app developers as well as mobile game development companies make the mistake of focusing too much on the graphic designs of games – while the actual game content takes a backseat. This should never be the case. The layout, display, controls and UI/UX of a game should complement a strong, engaging, unique content. No one downloads games to check out how beautiful it looks – it’s all about whether the central theme of the game appeals to them.
  5. Go with the flow – Selecting the genre for a new game need not be as difficult as it is often made out to be. Any good Android/iPhone game developer would agree that the best idea is to do a research on which genre(s) are the most popular at present, and make your game belong to it. For instance, the immense popularity of Candy Crush Saga confirms that Arcade games are in vogue now. Action-based games, like treasure hunts, have plenty of takers too. Avoid making a game in a genre that is not generally liked. To put it differently, don’t try to be a ‘game-changer’!
  6. Keep learning all the time – As you gradually move your mobile game from the concept to the development/designing stage, avail of all the available online tutorials and resources. From sources like Lynda, Cartoon Smart and Digital Tutors (to name a few), you will find a lot of helpful pointers for making your very first gaming app. Network with other mobile app and game developers, and find out what other resources/references/game samples they use as reference. The more you know about making a game, the better it will turn out to be. Remember, you should never be in a tearing hurry to launch your game.
  7. Don’t get bogged down by mistakes – Coding, even during your college days, wasn’t easy – and things will (let’s face it) get tougher when you start developing your own game app. Be prepared to make coding errors, design mistakes and other follies – even the best mobile app developers make them. What you need to do is learn from your mistakes, and make sure that they do not happen again. In case your first mobile game flops (and there is a fair chance of that), try to find what exactly went wrong. You will be able to make a better, more successful game later, with the help of this knowledge.
  8. Be familiar with the IDEs – If you are planning to go for cross-platform mobile game development, you will have to simultaneously learn how to work with Xcode (for iOS) and Eclipse (for Android). Ideally though, you should select one platform, and get familiar with its integrated development environment (IDE). For designing purposes, you will have to learn (in case you have a separate team of mobile app designers, train them) the workings of free tools like Inkscape and Gimp first. Later on, you can move on to more complex tools like Adobe Creative Suite. Take one step at a time, and get your feet gradually wet in this domain. There is no need to learn everything at once.
  9. Keep the user motivated – There are two basic thumb-rules that any mobile game development expert must follow: Firstly, the game should never ‘end’, and there should be many levels which the users can gradually progress too. Secondly, and perhaps more importantly, there needs to be missions/objectives of the gameplay. A user should feel that the entire game has a goal (maybe collecting coins, getting reward points, unlocking secret treasures, etc.). A purposeless mobile game would soon bore people.
  10. Consider your target audience – Are you making a mobile game for small kids? Will your game mostly be played by adults on the go (think about those people furiously tapping away at their smartphones while traveling!)? What would be the income bracket of the people who are most likely to download your game? These basic queries need to be resolved, before you get down to make an Android or iPhone game. Features like in-app purchases, inclusion of violence in the gameplay (for combat games) should be decided on the basis of the profile of your target audience. In a fun game for kids, you will need to include child-friendly controls too.
  11. Have a USP for your game – While it is not advisable to not make a totally out-of-the-box app, it is vital to differentiate your game from the thousands of others already present at the online app stores. Pick a feature of your game that, while not necessarily unique, can serve as its main USP (for instance, one-shot death, star system, online/offline modes, multiplayer options, etc.). Make sure that all your hard work does not lead to the creation of ‘just another game with nothing special about it’.
  12. Test your game – The last thing any new game developer wants to hear is that bugs and crashes have been reported in his/her recently launched mobile game. Prior to submitting at the App Store/Play Store, get your game tested on devices – by relatives, colleagues, friends and other reliable acquaintances in your circle. Ask for honest, detailed feedback. If any of the features of the game is found to be problematic, work on it (redesigning and tweaking with the app codes are part and parcel of mobile game development). Only when your focus group of testers are satisfied with your game, plan its release.
  13. How long should you spend on developing a game? – A tricky question – but one you need to address at the very outset. While it is not possible to make a proper mobile gaming app in a couple of weeks flat – do not spend more than 12-14 weeks on a single project. The development process can get delayed due to a host of reasons – and if most of those reasons are technical, you would be better off moving on to another mobile game project.
  14. Give your game as much exposure as possible – Making a great game no longer cuts the ice, if you do not promote it properly. The World Wide Web is as good a platform as you can hope to get, to publicize your game. Use social networking channels like Twitter, Facebook and Google Plus to share screenshots and trivia about your game. Share reviews of your games (provided, of course, they are positive!) on these sites as well. Do not publish fake testimonials and reviews, however – as many mobile app companies do. Ask for opinions and suggestions from people who have already downloaded your game. Ideally, you should start building up curiosity about your game from a few weeks before its release.

 

There are certain app categories, in which new apps start off slowly, and then gradually pick up. Unfortunately, mobile games are not one of them. If the download figures remain low over the first 2-3 weeks after its launch, you will have to accept that it has not worked (for whatever reasons), learn from the experience, and proceed towards making a better game. Making mobile games can be a lot of fun – all that you need to have are the necessary coding skills, an imaginative streak, eagerness to learn, and…the most difficult part for many…lots of patience.

 

14 Handy Pointers For Programming With Apple Swift

Hussain Fakhruddin
Follow me

Hussain Fakhruddin

Hussain Fakhruddin is the founder/CEO of Teknowledge mobile apps company. He heads a large team of app developers, and has overseen the creation of nearly 600 applications. Apart from app development, his interests include reading, traveling and online blogging.
Hussain Fakhruddin
Follow me

All set to start creating iOS apps with Swift? Go through our round-up of some interesting features of Apple’s new programming language, before getting down to code with it.

 

Apple’s all-new programming language, Swift, has been in the news ever since it was initially announced at WWDC 2014. The internet has been flooded with online tutorials, for programmers and app developers to get a hang of the new language. On October 7, Apple posted a video on its official developer blog, providing directions as to how iOS apps could be created using the new programming language. We will here share a few tips and pointers that would come in handy while coding for apps with Swift:

 

  1. No more ‘go to fail’ errors – Swift has been conceptualized as a more secure programming language than Objective-C. Software and mobile app developers need to use open brackets while using ‘if’ statements in their codes. This, in turn, removes all chances of the problematic SSL ‘go to fail’ bug message. A default statement also has to be provided in the switch statements. That way, even if none of the statement possibilities are satisfied, the program will have something to run on.
  2. Using Swift REPL – One of the smartest (and easiest too) ways to interact with the Swift codes is Apple’s very own ‘Read-Eval-Print-Loop’ (or, REPL) technique. The best thing about REPL is that you need not be working in an Xcode playground to use the method. All that you require are the program command lines and the latest version of Xcode beta – and you will be able to implement Swift REPL right from the Terminal on your Mac system running on OS X Yosemite.
  3. Working with Arrays – The way in which iPhone app developers can create and manage arrays in Swift is a major departure from the manner in which the same tasks can be done in good ol’ Objective-C. In particular, the process of adding objects to arrays has been made easier than ever before. The following line of code does the trick:

          <code>var yourArray = [“Hello”] var yourString: String = “World” yourArray+=yourString

  1. Other array-related functionality in Swift – Apart from allocating arrays and adding    objects to them, Swift allows iOS app coders make and manage array subsets, change the objects inside arrays and join multiple arrays with ease. The feature that allows arrays to be declared as ‘constants’ (Constant Arrays) is also worth a mention. Working with Arrays can become significantly faster in Swift, once you have invested some time in learning the language thoroughly.
  2. Creating a caching library – A common problem of both Objective-C and Swift is data caching, particularly when developers are working with lengthy codes. With Apple’s new programming language, caching libraries can be created to do away with this issue. For instance, in table view, images can be cached in the library – till the time the table view is finally deallocated. After that, the cache gets cleared. That way, scrolling remains smooth, your coding speed remains high, and there is no chance of unnecessary data overloading. However, for smaller Swift codes, default libraries like NSCache might be enough.
  3. Advantage of Inferred Typing – With Swift, coders from iPhone app companies no longer have to explicitly set types in their codes at all times. The built-in compiler can access information to activate ‘Inferred Typing’, to set types on its own. Of course, the option of explicit typing is still available, but picking ‘inferred typing’ generally makes app codes much easier to use/understand/share.
  4. Optionals in Swift – In Objective-C, every property has to be declared with an initial value (barring which, an error message is generated). In Swift too, variables are assigned the ‘non-optional’ attribute (i.e., valid values are required) by default. However, coders get more leeway in this language, thanks to the ‘Optionals’ feature. A ‘question-mark’ (?) has to be included to define any variable as ‘optional’, and it does not contain any initial value (remember that having a nil value is a different thing altogether). What’s more – values can be added to variables declared as ‘optional’ later on.

                Example of Optionals in Swift: var message = String? //OK

  1. Using generics for more customized functions – What ‘Templates’ are for the C++ language, ‘Generics’ are (roughly) for Swift. You no longer have to rewrite function types for every different case (e.g., when it has to handle integers and floating point numbers). Generics are, in essence, functions which offer enhanced reusability with all types of variable types. Once you are comfortable with using Generics, you will find that the total amount of manual coding required has gone down quite a bit.
  2. Working in Xcode Playgrounds – To take full advantage of the features of Swift, iPhone app development experts need to have in-depth knowledge of Xcode Playgrounds first. You need to download Xcode 6 on your system, and move to File → New File → iOS\Source\Playground. Once you have clicked on ‘Next’ a new editor file will open. Rename the file with the ‘ .playground’ extension. As you start coding in the editor file, the outputs will be viewable on a real-time basis in the sidebar. This, understandably makes code debugging – and ultimately, the overall mobile app testing – a lot more foolproof.
  3. Overriding dealloc – Yet another effective way for iOS memory management while coding with Swift is by overriding the ‘dealloc’ method. In other words, while creating iPhone apps, developers can deallocate the viewcontroller whenever required. In addition, the retain cycle within an app code can be found very easily with this method. Never deallocating the ‘dealloc’ method (in either Swift or Objective-C often leads to memory leakages and errors.
  4. Do not expect a big difference in speed – iOS apps created with Swift are accepted at the Apple app store (the new language was accorded ‘Gold Master’ status in early-September). However, contrary to initial expectations (and despite the name!) Swift is roughly similar to Objective-C in terms of coding speed. This is, in fact, not a surprising fact – since both the languages use the Cocoa and Cocoa Touch frameworks (for making Mac and iOS applications). In any case, Apple does not have any immediate plans to phase out the 30-year old Objective-C language anytime soon, and Swift is meant to be used in collaboration with it.
  5. Compound variables in tuples – Unlike most other programming languages, the code tuples in Swift do not require that the values in them have to be identical. Right from integers and string elements, to Boolean values – multiple types of values can be stored together in a single Swift tuple. The tuples can be further divided into variables and constants as well. Accessing a tuple in Swift by its index number is not at all difficult either.
  6. ‘Let’ vs ‘Var’ – In an Apple Swift code, variables are declared with the ‘var’ keyword, while all constants must have the ‘let’ keyword preceding them. While declaring every value as variables offers greater flexibility, coding experts have highlighted that doing so prevents the Swift compiler from functioning optimally. In fact, you should try to use the ‘let’ keyword (i.e., use Constants) as much as possible. Use ‘var’ only when it is absolutely necessary.
  7. No more semicolons – Just as in Python, you need not worry about putting a semicolon at the end of every statement in a Swift code. For iPhone app developers used to coding in Objective-C, Swift offers a way out from forever being wary of error messages being flashed – whenever they forget to put in a semicolon after any line. Furthermore, the Swift shares the code bases and libraries of Objective-C – which makes it easier for developers to make the transition to the new language.


The growing popularity of Swift programming language would pose at least one difficulty for professionals who specialize in cross-platform mobile app development – since porting iOS apps to the Android platform will become much tougher than before. However, that is only a minor blip in what is a really well-conceived and user-friendly language. You have to agree with what most developers have to say – “Swift is the future”.

AppBoard Tuesday: Mobile App Designing – Do-s & Don’t-s

Hussain Fakhruddin
Follow me

Hussain Fakhruddin

Hussain Fakhruddin is the founder/CEO of Teknowledge mobile apps company. He heads a large team of app developers, and has overseen the creation of nearly 600 applications. Apart from app development, his interests include reading, traveling and online blogging.
Hussain Fakhruddin
Follow me

Brilliant app concepts count for very little if graphic designers botch up the interface of the application. If you browse through the 1.3 million+ apps at iTunes and Play Store, you will come across many applications which are difficult to even understand, let alone using them. A simple rule of thumb needs to be followed – mobile app designing should always be about facilitating app-usage, and never about the designers/animators showing off their professional skills. In the first AppBoard Tuesday of 2015 (by the way, HAPPY NEW Year, everybody), we will highlight some key do’s and don’t’s of designing iPhone/Android applications:

Mobile App Design DOs:

  1. Think from the user’s perspective - There are two ways of conceptualizing how the screens/interface of an app should be designed. The first is the one which would be easy for the UI/UX designers at your mobile app company, while the other is the one which focuses on user-convenience. The latter should be the one you focus on. Remember, the success of an application is not determined by how easily it can be designed, but whether it is finally deemed to be user-friendly (easy-to-understand menu bars, smooth in-app page navigation, etc.). Put ‘designer needs’ in the back-burner, and let ‘user needs’ take centerstage.
  2. Factor in virtual keyboards – An otherwise good-looking app screen can appear messy and cluttered as soon as users call up the virtual keyboard (e.g., to provide text inputs) on it. In fact, this is often one of the reasons why many promising new mobile apps for kids fail every quarter. During the app testing phase, you need to check every screen of the app, with the keyboard displayed on it. Do not just assume anything about user-behavior, you are more than likely to be proved wrong!
  3. Be logical in choosing app designs‘It looks good’ is never a good enough reason for choosing any particular layout/design theme for an app. Most mobile app development companies, while providing online free app quotes, request users to share preliminary layouts, and provide a brief summary of what the application would be all about. Use this data while designing the concerned app (i.e., the mobile app design chosen should be relevant to its genre/type/specific features). And yes, if that means sacrificing some of your creativity, so be it.
  4. Keep the platform and the device in mind – Gone are the days when you could create an iPhone app and be done with it. Given the overwhelmingly larger market share that Android enjoys, cross-platform mobile app development and designing are skills you need to muster. In addition, keep track of all the new and popular mobile devices on which the app would be used, and optimize the design layouts accordingly. The last thing you want is anyone complaining that your new app is not properly viewable on his/her device.
  5. Remember the importance of reiteration – Contrary to what many mobile app developers believe, making apps is NOT a one-shot game. You need to implement the preliminary design elements, test the app, make changes (if necessary), iterate the entire app testing procedure, and so on (this chain should continue until all design flaws have been ironed out). Do not rely only on automated testing, and get feedback from human testers (ideally, form a focus group). The more the number of app reiterations you do, the less you would have to worry during the final mobile app testing phase.
  6. Use icons cleverly - New developers make the mistake of pushing in as many words as possible on the, relatively speaking, small app screens. Using icons in place of words would be a much smarter strategy. For starters, you would save a significant amount of space (a nice and clear icon would take up a lot less space than even a 3-letter word) – and as we know, keeping app screens uncluttered is of essence. What’s more, app icons, over time, help in marketing/branding purposes. When chosen and used properly, the icon can become the ‘symbol’ of a mobile application…at times a repeated icon can be more identifiable to users than even an app’s name.
  7. Refer to available app design tutorials and guidelines – Thanks to the emergence of so many online mobile app development forums and communities, there is no paucity of app design tutorials and case studies. Make use of such open source resources as much as possible (without, of course, stooping to the level of full-on copying!). Share your app design ideas with peers, and learn from their successful (and failed) projects. While designing an Android or iOS app, you might overlook a design mistake – but the same can get easily spotted if there are other professionals taking a look at your work.

 

(Note: Make sure that no one else can ‘steal’ your app ideas/concepts/designs though. Be careful about copyrights and intellectual property rights).

 

 

Mobile App Design DONT’s:

  1. Not considering the profile of the target audience – Mobile app designing not something you do ‘on the app screens’, it is something that has to augment user-convenience. An iPhone app for kids, for instance, should have automatic page turning features, text-highlighting options, and bright, colorful illustrations. On the other hand, for a personal finance-related app (most of the users of which would be 30+ in age), the texts, icons and checkboxes need to be relatively large (for proper viewability). Think about the type of layout that the final users of the app would prefer, and proceed accordingly.
  2. Making things complicated – There is a general rule that ecommerce websites and most mobile apps share – a maximum of 3 clicks/taps should take users to the page/screen that they are looking for. Just because you can create unique and snazzy app design themes does not mean you should do it – since such ‘new’ and ‘complicated’ designs might totally confuse final-users. In case your app links to other web resources, put links at appropriate places – instead of cramming in all the text in the app screen. Your clients might not get the chance to know your full expertise, but they will certainly be delighted with your simple, user-friendly app. Remember the catchphrase, ‘Less Is More’?
  3. Considering mobile screens as miniature computers - Well, they are not. A mobile app can never be the extension of a mobile website (even if your web application is hugely successful). While incorporating the designs of a smartphone app, you need to focus more on gestures, and less on viewing time on single screens. Researches have shown that the interaction time of users with mobile applications is, on average, significantly lower than that with web apps. App designing should always start from scratch – trying to make a smaller version of a website will simply not work.
  4. Displaying the splash screen for too long - For all the colors and images that you include in the splash screen of an app, remember that it is a static page, and should never be displayed for more than 5-7 seconds (for certain exceptions, the duration can be 10 seconds). While testing the app, ensure that the ‘default.png’ file(s) are getting properly loaded on the splash screen. Let’s put it this way – the splash screen is something that the user sees as the app loads on his/her handset. No one is interested in staring at it for minutes!
  5. Making the app a riot of colors - Definitely not a smart idea. If the app screens look like a veritable rainbow (!), rest assured that people would not like your app. Any professional graphic designer worth his/her salt would know how gradients and textures should be used so that the screens look nice and lively, without coming across as too frivolous. Consistency is the name of the game here. The text color has to be chosen in such a way that it stands out against the background. There are plenty of alternatives available, and there is no reason to assume people would strain their eyes to read the text on your app screens.
  6. Being too innovative for your own good - Always keep in mind, anyone can download the app you have designed. While there might be mobile app addicts who would soon grasp the navigation features and displays you have included, there can also be first-time users who would find the controls and features of the application as too difficult. Do some advance research about the types of app designs that work well at the stores, and create a variant of the themes that have already been tried-and-tested. If your mobile app designs are too innovative, there is every chance that it would be perceived as ‘experimental’ and not quite worth it.
  7. Including buttons that are too small - There are lots of images and illustrations in your app, and you need to manage the screen space properly. Many app designers make the folly of including buttons that are not of the optimal size (read: too small), to save some space. You need to make sure that the buttons present on the screens of the app should be such that, users with comparatively thicker thumbs/fingers have no troubles in tapping them. Trying to tap an app button, and failing repeatedly, can be a major irritation.

 

The first thing any good mobile app company should do is recruit and train a separate in-house team of graphic designers and animators – who would work in collaboration with the developers/coders. In an earlier post, we had highlighted that app developers cannot double up as designers themselves. The secret to creating efficient, engaging, apt and attractive mobile app designs is to keep things simple. Ironically, that is the most difficult challenge for many designers!

 

And folks, that’s that for this week’s edition of AppBoard Tuesday (ABT). If you have a tip for mobile app designing to share, simply put it in the comments section – and we might include it in our list (we love to keep learning!). Wish to see any other specific topic related to mobile app development? Let us know, and we’ll be only too happy to cover your topic of interest in a future edition of our newsletter.

 

ABT will return with another interesting discussion on…you guessed it…next Tuesday. Till then, stay well, and love thy apps!

iCloud Drive – 15 Things You Should Know

Hussain Fakhruddin
Follow me

Hussain Fakhruddin

Hussain Fakhruddin is the founder/CEO of Teknowledge mobile apps company. He heads a large team of app developers, and has overseen the creation of nearly 600 applications. Apart from app development, his interests include reading, traveling and online blogging.
Hussain Fakhruddin
Follow me

The iCloud storage setup gave way to the new iCloud Drive, with the launch of iOS 8 and OS X 10.10. It offers greater opportunities to share and sync documents between their Macs and Apple handheld devices. In what follows, we have highlighted some topics of interest related to iCloud Drive.

 

Unveiled at the Worldwide Developers’ Conference in 2014, iCloud Drive has been tipped by many software developers and analysts as Apple’s answer to Google Drive. Contrary to what initial rumors were though, the new cloud storage system is NOT a substitute of Dropbox. iCloud Drive was made available to users with the release of iOS 8 and OS X Yosemite (10.10) in October, and it has been given the thumbs-up by researchers and app developers worldwide. We will here familiarize you with some basic features and functionalities of iCloud Drive:

 

  1. Activating iCloud Drive – This one is a no-brainer – before you check out its features, you need to enable iCloud Drive first. Doing so is easy enough. On your Mac, go to System Preferences, select the iCloud icon, and check the box beside iCloud Drive (it might be checked by default too). Once that is done, you can start selecting the apps that are to be stored on the cloud.
  2. Selecting a iCloud Drive storage plan – You can take your pick from 5 alternative storage plan options that Apple offers for its all-new cloud storage system. According to Mac and iPhone app developers, people who do not use iCloud on a regular basis can very well do with the basic 5GB storage option (which is free). Depending on the formats of the files to be stored and whether other cloud storage services (Google Drive, Dropbox, etc.) are being used, you can also choose from the 20GB (Monthly $0.99), 200GB (Monthly $3.99), 500GB (Monthly $9.99) and 1TB (Monthly $19.99) options. Your choice should be such that you never run out of storage space due to heavy backups.
  3. Compatibility features required for using iCloud Drive – Apple iCloud Drive can be used to sync data between Mac systems, and upgraded iPhones, iPads and iPod Touch devices. Prior to upgrading to the new iCloud, all mobile devices have to be upgraded to the iOS 8 platform (of course, you need not worry about that if you are using iPhone 6/6 Plus), while the Mac system has to be running on OS X Yosemite. Mobile app developers have confirmed that iCloud Drive can be used to store select iWork apps as well. The minimum browser requirements for using this cloud service are Chrome 28, Firefox 22, and Safari 6.
  4. What can you do with iCloud Drive? – Syncing and saving files across Apple devices are not the only two services of iCloud Drive. After activating it, you can use the new iCloud to edit, access and import documents directly (you would need compatible apps for doing so). Early adopters had made the mistake of activating iCloud Drive right after the launch of iOS 8, before OS X Yosemite was released. They had, understandably, not been able to sync files between their computers and mobile devices. In essence, iCloud Drive is a virtual external hard drive.
  5. Viewing files stored in iCloud Drive – On OS X 10.10-powered Mac systems, files saved in iCloud Drive can be accessed directly via the iCloud.com website. Alternatively, iCloud Drive can be viewed from the sidebar of your Mac system’s sidebar. Files can be created directly, and folders can be removed from Drive. All the folders/files are displayed in an organized manner – based on the app they have been created from (a far cry from the ‘Documents & Data’ setup of the erstwhile iCloud). Although Apple app development services have come a long way, there is still no dedicated iCloud Drive app for iOS 8 devices. A third-party app (from the App Store) has to be used to use Drive and access the files stored in it. The ‘storage provider’ point on iOS 8 devices is directly plugged into by iCloud Drive.
  6. File types that can be stored in iCloud Drive – There are no restrictions as such regarding the file formats that can be stored/synced in iCloud Drive. However, experts in cloud-sharing and app development advise users about two things. Firstly, files uploaded to iCloud Drive need to be less than 15 GB in size. Secondly, users have to make sure that they are not running out of overall storage space (this is where the selection of the right cloud storage plan is of essence). Provided these conditions are fulfilled, any type of file can be uploaded on the new iCloud Drive – right from presentations and projects, to professional documents and files.
  7. The ‘Look Me Up By Email’ feature of iCloud Drive – Apple offers users the opportunity to let other users find you (by your unique Apple ID/email) and share with/get from you documents via Drive. Once this lookup option is tapped, a set of iPhone apps are displayed – through which users can start connecting with other users of the new Apple Drive. The ‘look me up by email’ feature can be used directly via iCloud.com as well.
  8. What is the iCloud Drive storage space used for? – Users are often concerned about the things that are present in iCloud Drive by default (those who go with the free 5GB storage option are particularly concerned about it). Professional cloud storage experts and mobile app analysts have explained that the storage space in the new Apple Drive contains iCloud Photo Library beta, iCloud Mail, iCloud Backup, the files stored in the Drive, and the apps that are used to activate/avail iCloud Drive services. The iOS apps, music and books are not counted within the free storage. My Photo Stream does not occupy space within the Drive either.
  9. Photos on iCloud Drive – The iCloud Photo Library was made available by Apple alongside the release of the (rather troublesome) iOS 8.1 upgrade. There was some initial confusion regarding how the Library was to be used – which were soon cleared up by tutorials and guidelines in online iPhone app development communities. All that you need to do is go to ‘Settings → Photos & Camera’, and toggle the ‘iCloud Photo Library beta’ tab to ‘On’. While the presence of the iOS photos app makes accessing the Library a breeze on mobile devices, accessing it on Mac systems is slightly more problematic. Things are expected to change after the arrival of the OS X Photos application later this year.
  10. Using iCloud Drive on Windows systems – iCloud Drive becoming available on Windows systems before iMacs was a bit of a surprise. All systems running on Windows 7, 8 and 8.1 can use the Drive – thanks to the ‘iCloud for Windows 4.0’ resources. There are many people who work simultaneously on Windows and Mac computers, and iOS devices – and this feature comes in mighty useful for them.
  11. Customized folder setup on iCloud Drive – After you have activated iCloud Drive on your Mac system, there should be a corresponding icon (of the same name) on the desktop. Unlike the earlier iCloud system, file and folder arrangement is a lot more systematic and organized on iCloud Drive. For instance, there is a Quick Time Player folder that can only store files which can actually be played by Quick Time Player. Since files are categorized in folders according to their types, risks of data losses are minimal. The simple ‘drag-&drop’ feature can be used to create any number of personalized files and folders in iCloud Drive. For easy access, app developers recommend saving documents in the ‘Pages’ folder.
  12. Compatible apps with iCloud Drive – Pages, Keynote, Byword, Numbers – all the iWork applications are provided with built-in iCloud Drive integration feature. iOS app developers also have the CloudKit (set of APIs for iCloud) to use the applications that actually help in storing data on the Drive. Every file and app saved in the new iCloud can be accessed directly by users.On Yosemite systems, creating apps inside the compatible applications is also extremely easy.
  13. Viewing photos on iCloud Drive – Earlier on, we had highlighted how the iCloud Photo Library can be enabled and images can be stored on them. To view the saved photos on your iOS device, you only have to tap the ‘Photos’ app. All the images will be synced inside it. If you wish to see the images on your Mac, you will need to download and install the iPhoto application (from the Mac App Store). Once that’s done, activate iPhoto and turn on the iCloud integration feature. In ‘Shared’, there will be a iCloud option. Click on that, and your photos will become viewable.
  14. Storage space management in iCloud Drive – Getting rid of old backups and tweaking the backup settings of iCloud Drive (read: deleting unnecessary data/files) is essential to make optimal use of the available storage space. Instead of storing all your photos in Drive, mobile app development experts advise people to use other apps, like Flickr, Cloud Drive and Google Plus. The storage space status of iCloud Drive should be regularly checked (iCloud → Storage & Backup → Manage Storage). In addition, remember that photos on iCloud remain on the servers of Apple for a maximum period of 30 days.
  15. How does iCloud Drive stack up against its competitors? – In terms of free storage options, Microsoft OneDrive (15 GB), Google Drive (15 GB) and Box (10 GB) are ahead of Apple’s iCloud Drive. Dropbox and Box also have unlimited storage plans (@ $15/user) while iCloud Drive maxes out at 1TB. Some of the rival cloud storage tools have more number of storage options as well. However, iCloud Drive comes up aces in terms of security and reliability. There are hardly any chances of a rehash of the infamous celebrity iCloud hack (which happened last August).

To keep files secure and in sync on the cloud network, Apple’s iCloud Drive is a powerful tool. Although the storage options could have been better (e.g., users would have loved to have the 20GB storage for free too), Drive is great for people who work on their Macs and iOS devices in tandem. Over the next few months, Apple might make iCloud Drive even more user-friendly, so that it starts comparing favorably with its major rivals.