Monthly Archives: May 2015

Working With Metal On iOS 8: Know The Basics

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

Metal is a high-end accelerated graphics rendering API, used by many iOS developers worldwide. On the iOS 8 platform, some of the key features and advantages of Metal have been highlighted here.

 

 

Till last year, iOS game developers had to be overly reliant on OpenGL ES – which served as a virtual linking tool between game elements and device processors/hardware. A common complaint against OpenGL ES was its heavy overhead, that tended to affect the performance of games and graphics-rich apps. Metal, a low-level graphics API (released with iOS 8) has emerged as a better alternative – particularly since it enables developers to bring their games directly in sync with hardware setups, and get the optimal performance from the Apple A7 and A8 chip processors. In what follows, we will take you through some key points related to using Metal for mobile game development on the iOS 8 platform:

 

  1. Device compatibility – For starters, the high-end mobile graphics features that Metal brings to the board cannot be enjoyed on all iDevices. Game developers can use the API only when creating applications for handsets that have the A7, or better still, the A8 processor. In other words, iPhone 5S, iPhone 6/6 Plus, iPad Mini 3 and iPad Air 2 are the devices compatible with Metal. A game that uses Metal can very well be downloaded on iPhone 5 or iPhone 5C – but since they run on older processors, the improvement in graphics won’t be discernible.
  2. Procedure of reducing overheads – How does OpenGL ES work? It reads and translates functions into graphics commands, and then sends the latter to the hardware of devices. This gives rise to two types of overhead. Firstly, there is the ‘engine-side overhead’, which occurs due to the need for the CPU to reiterate over the program objects, the required material parameters, lighting effects, and such tasks. On the other hand, there is the ‘Graphics API & Driver’ overhead. This is the part that Metal reduces significantly (it does not have much effect on the ‘engine-side’ overhead). The new API does not require any additional synchronization, handles explicit actions more efficiently, and all state-creation and validation is performed upfront. According to iPhone app development experts, this almost entirely does away with the ‘Graphics API & Driver’ component of overhead.
  3. Support on Unity – When Metal was initially announced (in September 2014), there was no mention of it being supported on the Unity game engine. The scenario changed with the release of Unity 4.6.3 – which, for the first time, offered complete Metal-rendering functionality. With the launch of the Unity 5.x versions, mobile game developers have been increasingly able to combine the features of the engine and the Metal API. The result, of course, has been better, faster, more engaging games and applications.
  4. Greater speed and responsiveness – In comparison with OpenGL ES on the A7 processor (in iOS 7 devices), Metal allows developers to render 3D games about ten times faster. This boost in the Draw Call rates (the pace at which scenes in 3D games are rendered) automatically makes Metal games much more responsive than earlier. For game developers who wish to add a touch of realism to the gameplay environments, the faster load time and the built-in support for precompiled shaders also works wonders. Users no longer have to patiently wait for games to load on their iDevices, and developers are more confident about delivering an immersive, engaging gameplay experience.
  5. Loading and compilation – As briefly touched upon earlier, presence of precompiled shaders is one of the high points of the Metal API tool. Those using Metal to create an iPhone/iPad game can load the shaders at runtime, after they have been compiled at the time of building the code. In fact, the shader codes can also be compiled at runtime. This, in turn, simplifies the entire process of generating program codes, while debugging becomes easier for app testers as well. Apple clearly had an eye on reducing the complexities of mobile game development, when it came up with Metal.
  6. Are Metal games console quality? – That would be a ‘Yes’. As long as end-users are not expecting games that are at par with the PlayStation 4 standard – the graphics of Metal games would more than satisfy them. The GPU power of iOS devices are utilized to the full by Metal, to render game graphics that are equally good as those viewable on the PS3. Over time, the quality of graphics rendering with Metal is expected to improve further.
  7. Prior programming expertise required – Before trying to code iOS games with Metal, new developers have to get an in-depth idea of the Objective-C programming language (well, without Obj-C and Swift, iOS apps cannot be developed anyway!). The shading language used in Metal is C++11 – which shares several features with C++. On the Metal framework, C++11 is used to perform all tasks related to coding for games – right from graphics addition, to computation and execution of programs on the GPU. In addition, coders should also have some relevant advance experience of working with OpenGL and OpenCL. LLVM and Clang come into play for implementing the shading language of Metal.
  8. Impact on battery performance – Metal extracts every bit of available juice from the A7/A8/A8X processors of iDevices. As a result, users who install Metal-powered games on their handsets might experience slightly worse battery life than before (the battery life of iPhones is nothing great in the first place). However, this effect is not drastic – and is often rather negligible – since Metal does away with the overheads of OpenGL ES, streamlines the gameplay, and lowers the total number of commands. Yes, the graphics level is higher, but that is offset to a large extent – thanks to the unified pixel-coding feature that Metal offers. The workload on the GPU gets lowered, which minimizes the risks of excessive battery drains.
  9. The advantage of building libraries – Professionals from leading iPhone app and game development companies opine that developers should create libraries during the process of building the application. This makes the entire development process more systematic than when the source codes of the Metal shaders are compiled at runtime. A library (in the .metallib format) can be created either by making use of available command line utilities, or directly inside the Xcode environment. Results from app performance surveys confirm that libraries indeed add to the performance and immersiveness of a Metal game/app.
  10. Cam Metal give a boost to Apple TV? – At present, it cannot. Apple has made Metal compatible only with devices that are powered by the 64-bit A7 or A8 chip processors. Apple TV – the Cupertino company’s much hyped digital media player and set-top box – got its latest refresh way back in January 2013 (version 3 Rev. A), and is still stuck with the old A5 processor. However, during the upcoming Apple WWDC 2015, Apple TV is expected to get an upgrade (it has been a long time coming) – and then, it might well be compatible with metal games. iOS game developers feel that Tim Cook is missing a trick by not bringing the console-quality games to the Apple TV platform.
  11. Metal does not enhance the performance of games only – Metal cleans up excess overheads from the CPU and GPU of the latest iDevices. As a result, the performance of any iOS application that uses these resources (like video-streaming apps or images apps) goes up by a couple of notches. Although the API is, of course, mainly focused on easing the process of game development, it adds to the speed and power of other apps as well.
  12. Handling computation and graphics together – This makes the job of iOS game developers that much easier. The same textures, buffers, command queues, and other data structure elements in Metal can be used for computing operations as well as the addition of graphic elements. All resources can be seamlessly shared across graphic shaders, the runtime interface(s) and the functions for computing. What’s more – the shading language also supports both graphics and computing. Developers need not worry about integrating other languages in the API framework.
  13. Good for the latest flagship devices – According to device analysts and mobile software developers, the CPU/GPU efficiency of Metal bolsters the general performance of the latest flagship iPhones. On any device running on iOS 8, Metal ensures that the speed of software operations gets a boost, and the device itself becomes more responsive. Common tasks, like taking pictures and listening to audio files, become more efficient too.
  14. What’s with the name? – According to Craig Federighi, senior VP at Apple Inc., the new API is geared to give app developers ‘metal access to the power of A7’ (A8 had not been unveiled at that time). This justifies the choice of name – Metal – for this new graphics API for making iOS games. The company probably also had the oft-used catchphrase of software programmers – ‘close to the metal’ – while deciding the name. Metal allows coders to get the most out of device hardware and processors, and avoid most of the third-party overheads (read: OpenGL ES), and that’s precisely what the name indicates.
  15. Other platforms have similar tools too – Metal offers more than a generous share of advantages to iOS developers – but it’s not like those working on other platforms do not have access to similar tools. The much-maligned Microsoft platform has Direct X 12, while Android Lollipop has the Android Extension Pack – which have roughly similar functional features to those of Metal. The Mantle technology on Advanced Micro Devices (AMD) also has several common features.

While SceneKit on iOS 8 is primarily aimed at amateur/casual game developers, Metal is the tool for professional-level, hardcore game development for iOS devices. It has been found that the performance of Metal games do not get affected in any way by the overheads of the Unity engine – a great news for developers working on games for multiple platforms. The enhanced graphic features of Metal were first showed off at last year’s WWDC, in a game called Zen Garden (by Epic). The first look indicated that Apple had something good on hand for game developers – and the surging popularity of Metal bears testimony to that!

Google I/O 2015: 15 Likely Highlights

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 much-awaited Google I/O 2015 kicks off tomorrow at San Francisco. Scheduled to be held over two days (following a 150-minute keynote presentation), the annual Google conference will witness several interesting announcements.

 

 

The next fortnight or so promises to be mighty interesting for mobile app developers and general software enthusiasts across the globe. The two-day Google I/O 2015 starts tomorrow at the Moscone Center (West) in San Francisco – where a series of announcements and product updates are expected to be made. Close on its heels will be this year’s Apple WWDC, which would be held from 8-12 June. In today’s discussion though, we will focus on the most likely big announcements that are likely to happen during Google I/O 2015:

 

  1. A new iteration of Android Wear – Given how quickly Apple Watch has caught on among the early adopters, the Mountain View company would be eager to release a worthy competitor (or will there be multiple products?) soon. It has been more than a year since the custom Android version for the human wrist, Android Wear, was launched. Gadget analysts are expecting a word about the latest version of Moto 360, as well as a detailed session on the new features and enhancements that Google has managed to add in its Android Wear platform.
  2. First look of Android M – Yup, time travels fast. Less than seven months ago, Android app development experts were wondering whether the name of Android 5.0 would be ‘Lemon Meringue Pie’ or ‘Lollipop’. At this year’s Google I/O, its successor – codenamed Android M – would be announced. According to reports from mobile forums, Android M (i.e., Android 6.0) would be unveiled on the first day of the event, during the ‘Android For Work’ session. The key feature of the new version of Google’s mobile platform will be its enhanced support on devices used at workplaces. Given the lackluster adoption rate of Android Lollipop, all eyes would be on how Google promotes Android M. Don’t expect its name to be mentioned this early though – Google never does that!
  3. More on Virtual Reality – A short session, titled ‘Make Believe’, features in the itinerary of Google I/O 2015 – where representatives from mobile software and app companies would get first-hand experience of virtual reality – via consoles, headsets, and other gadgets. Useful tips and guidelines regarding the creation of virtual reality (VR) experiences for end-users would also be shared. Google Cardboard, released at last year’s event, has got to be one of the most underrated Google products in recent times (it is a VR-based helmet, in case you were not aware) – and it is widely expected that this year’s Google I/O will witness a greater focus on virtual reality.
  4. A possible comeback for Google Glass – While many online wearable technology forums and communities dismissed Google Glass as a flop long back, the tech giant has repeatedly said that the Glass program was ‘not dead’. It won’t be entirely surprising if the I/O is chosen as the platform where Google decides to release a new, improved version of Glass (Glass 2.0?). In order to be successful, it needs to have a more mass-appeal (read: a less geeky feel) and bear a lower price tag. Another Explorer Program might well be launched too.
  5. A foray into satellite imaging – In 2014, Google had acquired Skybox – then a little-known satellite images and analytics service provider. With the help of the latter’s technology, Google is likely to show off its very first attempt at satellite imaging at its annual conference this year. Right from disaster mapping and management, to provisions for faster, smoother internet access across the world – everything will be included from the much-anticipated Google-Skybox collaboration. All announcements and information-sharing regarding this will be made during ‘The Earth In Real Time’ session.
  6. The arrival of Android Pay – Once again, while Apple Pay is gradually catching on and Samsung Pay is being considered to be almost equally good – Google Wallet (released in 2011) has remained rather low-key. If the buzz amongst Android app development experts are anything to go by, things might well turn around with the announcement of Android Pay (as an extension of Google Wallet) at the I/O 2015 event. Google has clearly stated that Android Pay will be a mobile payment platform, and not a direct competitor of Apple Pay – but there will surely be a tussle between the two. Expect a list of retailers worldwide who have already pledged their support to Android Pay as well. Mobile payments is yet another domain of smartphone technology that is growing first, and tomorrow’s event is likely to add to this growth.
  7. Google’s take on Apple Touch ID? – The Touch ID on iPhones (the reported bugs in iOS 8.3 notwithstanding) offer greater security assurance to users. The recently released Samsung Galaxy S6 flagship has demonstrated that fingerprint sensors can indeed be seamlessly included on Android smartphones. It will only be natural if it is announced that Android M will come with such fingerprint authentication setups for all pre-installed applications (like Drive or Gmail). According to a section of Android app developers, the API of the fingerprint authentication tool would have the option of being added to any app, making the latter compatible with this security feature.
  8. Online photo-sharing and storage – Google fanboys might not admit it yet – but the ambitious Google Plus platform has fallen flat in its endeavor to become a worthy rival to the likes of Facebook. In such a scenario, the company might announce an all-new Photo Storage and Sharing (Google Photos will probably be its name) service at the I/O event. Not much is yet known about the specifications of this service – but it would be positioned as a competitor to Instagram and Flickr.
  9. News on second-generation Chromecast – The first-gen Chromecast dongle was a runaway success, and mobile app and software developers feel that Google I/O 2015 would be just the right platform to build on it. With Android TV having hit a bit of a dead end (Apple TV, with all its limitations, is still way more popular), a multi-featured Chromecast 2 can emerge as a more than decent rival of Apple AirPlay. Google will have to work on the audio features of Google Cast (the video functionality is already pretty much high-end). Support for 3D videos and 4K streaming is expected to be present in Chromecast 2. New controllers for the media streaming device would be unveiled as well.
  10. The Internet of Things – This is, arguably, the announcement that app developers and techies attending the event would be looking forward to the most. Nest, a smoke alert and thermostat service company, was bought up by Google last year – and at I/O 2015, the first hints of the collaboration between Google and Nest are likely to be revealed. There will be a separate session called ‘Working With Nest To Build A Thoughtful Home Together’, where Google will reportedly showcase Brillo – its low-powered Internet of Things (IoT) operating system. From powering common home gadgets, to adding to general security levels, Google’s IoT program will be covering everything.
  11. A word about Android Auto – The Android Auto program has long been in the works, and Google evidently has plans to make it a decent enough competitor of Apple CarPlay. Two sessions related to Android Auto – ‘Designing For Driving’ and ‘Getting Your Car On The Road With Android Auto’ have been mentioned in the Google I/O 2015 itinerary – a clear indication that the company has major announcements to make about its efforts to bring the Android experience in automobiles. We might get to know the names of the automakers which will be supporting Android Auto at the event.
  12. Granular app privacy – A recent Bloomberg report suggests that Google will be building on the user-permission requirements at the time of downloading apps from the Play Store. Professionals from the field of creating Android apps feel that Google would announce a more granular level of app privacy – which would mean people would be able to decide which device feature(s) any particular application is able to access. This, in turn, would provide a more personalized app-experience. ‘Nearby’ and ‘Voice Access’ are two other new app features that are likely to be introduced at this year’s Google event. Some time might also be set aside for a hands-on demonstration of the Designed For Families program.
  13. Revamped Hangouts and probably a new Calendar app – The acquisitions of Emu (a startup IM app) and Timeful (a unique calendar application) by Google in 2014 make this a probable announcement at the conference. Since Emu has machine learning features and comes with an AI-supported ‘assistant’, it might also enhance the features of Google Now (are the makers of Siri and Cortana listening?) as well, apart from improving Google Hangouts. In the calendar app of Google, we fully expect some new Timeful features – to enhance overall usability.
  14. Reports on Project Ara – Ever since Google’s modular smartphone program – codenamed Project Ara – has been announced, it has been in the news. At the Google I/O starting tomorrow, a session has been set aside, where hand-on demo sessions on the program would probably be held. In particular, the manner in which the different parts of an Android phone can be separately upgraded (that’s what the modular Project Ara is all about) would be showcased. There is an outside chance of select delegates being given Ara devices as well. For the time though, gadget and mobile software experts will be more than happy to get an in-depth understanding of Project Ara (which will have its full launch in August).
  15. Stable release of Polymer – Work has been going ahead at a fairly frenetic pace on Google’s very first open-source framework for desktop/mobile web app development – Polymer. The project has moved on from Version 0.5 to Version 0.9 in the last six months, and Polymer v.1.0 (a stable release) may very well happen during the annual conference. The built-in support for Material Design-based animations, component reusability and 3D user-displays make Polymer an interesting platform for app developers.

 

Yet another likely announcement at Google I/O 2015 will be related to the release of the ‘buy buttons’ for retailers (which would work with sponsored product searches and ads on mobiles). Although both Huawei and LG have been reported to be working on new Nexus handsets – chances of a flagship Nexus phone/tablet at the event are slim (Nexus 6 was unveiled a full six months after Android L was announced at last year’s Google I/O). Instead, there should be some news about Project Fi – which is geared to make Google a mobile carrier service provider. At the Advanced Technology and Projects (ATAP) session, some information about Google’s ambitious Project Tango (involving the creation of a tablet with cutting-edge spatial reception) will be shared too.

 

Sundar Pichai will be taking over at the Google I/O keynote tomorrow at 6:30 GMT – and over the course of the next few hours, we will find out how many of these likely announcements are actually made at the event.

 

What new announcements are you looking forward to at this year’s Google I/O?

AppBoard Tuesday – Save Your Android Apps From Rejection At The Play Store

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

From mid-March, the app approval process at the Play Store has been considerably tightened up by Google. Gone are the days when newly submitted applications were only screened by a software and showcased at the store. In a bid to improve the quality of the Android app catalog and to cut down on infringements of copyrights, Google has announced that each app would now be reviewed manually after submission. It has not exactly been surprising that many mobile app companies have reported cases of app rejections at the Play Store, from the start of April (till then, app rejection was something associated almost exclusively with the Apple App Store). Anyhow, the fact of the matter is – getting Android applications approved at the store is no longer as easy as it was earlier, and in today’s AppBoard Tuesday (ABT), we share a few tips to avoid rejection risks there:

  1. Fill up the app rating questionnaire – This is something Google has started from this month, as a replacement of the generic Google Play rating scale that used to exist earlier. Non-completion of the questionnaire increases the chances of apps being labeled ‘Unrated’ at the store, and rejection, more often than not, follows. Android app developers need to log in to their Google Play Developer Console, select their applications (new and existing), and fill up the questionnaire for each of them. The content rating questionnaire has to be completed at the time of releasing app upgrades too.
  2. Do not pose as someone else – Google terms this ‘Impersonation’ – something that mobile app companies serving multiple clients have to be very wary of. At the time of submitting apps at the Play Store, it must not, in any way seem, that a developer/company is trying to pose as someone else/some other organization. False authorization claims are also sureshot ways for your app being ousted from the Play Store. Apps must not be created with the sole intention of diverting people off to specific websites, and all accompanying material (right from the text description and title, to icons and screenshots) should provide accurate information.
  3. Be careful about app’s network usage – Taking a leaf out of Apple’s book, Android has also set standards regarding the network and bandwidth requirements of new apps. In case the app you have submitted has any sort of unfavorable effect on the network of devices, or causes the service charges to escalate, it is likely to get rejected forthwith. Experts from the field of Android app development advise new developers to get familiar with the service terms and conditions of the authorized carriers first – and then create their apps accordingly.
  4. Violence and obscenity – It is fairly clear that the new local content rating system for Android apps has been put in place primarily for parents looking to download suitable mobile apps for their kids from the Play Store. In general too, a ‘zero-tolerance’ policy towards all forms of pornography and/or titillating content in applications has been announced. Developers have to ensure that their apps do not, in any manner, hurt the sentiments of any particular race, gender, or ethnic group (e.g., the villain of a mobile game being of a certain skin color). There should not be any scope for a person to use an app to bully fellow-users either. If any form of hate speech is found in a freshly submitted app, it will never be approved by the human editorial team.
  5. Using the payment system of Google Play is mandatory – This is for Android developers who wish to submit freemium apps (i.e., free-to-download applications with digital content that can be purchased by the users from within the app). It is compulsory to use the in-app billing service of the Google Play Store for including in-app purchase features in an app. What’s more, developers must fully clarify all the charges that are applicable on the in-app purchases. Any form of misleading information can get your app rejected. The in-app purchases should not involve transaction of physical items, or any type of purchase OUTSIDE the app.
  6. Showing ads in Android apps – Advertising is a valid mobile app monetization strategy (and certainly a more popular one than going for the paid downloads option). However, mobile app developers have to be more careful than before in this regard as well. Ads that either simulate the layout of the app itself, or affects the performance of other applications (or the device the app is installed on) are strictly prohibited, as are the advertisements that seek personal information from users, so that the latter can get full access of the app. For in-app advertising as well as mobile analytics tracking, the Android advertising identifier ID (along with new APIs) was introduced in v.4.0 of Google Play services. Interstitial ads, if any, should be displayed inside the app only.
  7. Say ‘no’ to spamming – Along with duplication. Do not submit an app that has the same name as other application(s) already present in the Play Store. Create unique, user-friendly, informative descriptions for each app – instead of simply copying and pasting the descriptions of your previous applications and/or spamming the content with excessive keywords. The title, metadata and description of a newly submitted Android application should not seem to be trying to influence its a) positioning and b) rating in any way. Publication of fake reviews – unfortunately a widely prevalent practice to date (have you seen the scores of app review exchange communities on FB and Google Plus?) – has become an absolute ‘no-no’ as well. Everything about your app has to be genuine….you manipulate, your app perishes!
  8. Stay away from copyright infringements – Protecting the intellectual property rights of developers and coming down hard on copyright violations were the key reasons for revamping the app review guidelines at Google Play. Android app developers have been strictly cautioned against misusing/violating the patents, trademarks, copyrights, or any other proprietary material of other app-makers. In addition, every developer now has the right to file a DMCA request, if and when doing so is deemed necessary.
  9. Apps should not share confidential information – Unauthorized sharing of any form of personal user information – credit card details, location data, contact lists, license numbers, and the like – is prohibited by the Google Play terms of service. Any app that accesses and shares such information (for commercial purposes) without users’ knowledge and consent is likely to be banned immediately. In general, any information that is not available publicly should not be accessible to third-parties via mobile apps. With mobile payments gaining in popularity, the strong stance of Google against random information-sharing makes a lot of sense.
  10. Avoid shady marketing tactics – Another fairly common ground for Android app rejections has been the presence of misleading/deceptive information on websites – from where it is possible to directly download the app under question. Many freelance developers often resort to underhand tactics to promote their apps (getting the app downloaded on devices without asking for the user’s permission, for instance). These strategies have to be stopped as well. Apart from such unsolicited app installations, mobile app marketing campaigns through bulk SMSes are not looked upon kindly either by the Google authorities.
  11. Keep things legal – Android app development experts would be well-advised to stay away from creating betting, lottery or mobile casino apps – which involve exchange of actual currency. Also, an app should not promote or directly sell prescription drugs. During the manual app review procedure, if any spyware, malware, phishing software, or links to common viruses are detected, the application will have no chances of being approved. Android allegedly has more cases of malware attacks, and Google is clearly trying to tackle this problem.
  12. Apps must not have system-level interference – An Android app is not permitted to have any impact on the devices it is downloaded and installed on. For example, an application should not affect the performance of other apps and/or widgets in the users’ handsets. It should not change the default settings of the phone browser. App developers have been cautioned against making any apps that encourage the deletion/installation of other third-party applications. As already stated above, all advertisements also have to be at the app-level, and not at the system-level.

In case a mobile app agency flouts the Content Policy and/or the Developer Distribution Agreement of Google Play multiple times, its official developer account can be terminated. Whenever an app is rejected or removed from the store, the concerned developer is informed via email. The new app review system at Google Play Store would, hopefully, raise the quality of apps showcased there – and that’s good news for any app-lover.

 

So, that’s more or less that in this week’s edition of AppBoard Tuesday. If you are into making Android applications and have faced app rejections recently – do share with us the cause for that. If you are aware of any other probable causes for an app getting rejected at the Play Store, let us know about them too. We love to learn!

 

ABT will be back next Tuesday with a new topic related to mobile apps under the spotlight. (and yes, you can suggest topics as well). Till the next time, you know you have to love thy apps!

Why Is Making Wireframes For Mobile Apps Important?

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

Most developers treat the creation of wireframes as the very first step in the process of making mobile applications. In what follows, we will highlight the importance of these wireframes.

 

 

At the time of providing free app quotes, most mobile app development companies offer clients the option to share their own wireframes. Even if a client does not have a wireframe to share, developers create it on his/her behalf – before the actual coding process starts. Alternatively known as the ‘skeleton’ or ‘blueprint’, app wireframes are, in essence, low-fidelity visual representations of the overall flow of operations in a smartphone application. We will here outline the key benefits of working with wireframes while making a mobile app:

 

  1. Check the layout of the app screens – When prepared correctly, wireframes give an in-depth understanding to mobile app designers about what the overall UI and individual design layouts of each screen should be. This, in turn, helps them to chalk up custom design prototyping plans, and zero in upon the designing/animation elements that would make the app user-friendly. In a nutshell, a wireframe offers a starter’s view of the way in which the content would appear on the app screens.
  2. Understand how the app is going to work – Wireframes are often referred to as ‘outlines’ by professional Android and iPhone app developers – and not without reason. They serve as that vital link between a theoretical app idea, and the final form of the application. Carefully studying the visual sketches of the successive screens helps developers understand how an app idea is going to be deployed – and the coding is done accordingly. If a programmer has only a vague idea about the nature of mobile software (s)he would be creating, the work will never be up to the mark.
  3. Fosters teamwork and real-time communication – Barring a few exceptions (a standalone freelance app developer, maybe?), a mobile app development project is not handled by a single person. Generally, a team of developers, designers and testers work on the same app at a time – and when the relevant wireframe(s) are shared amongst them, each of them remain in the loop about how the app is being created. The communication between app developers and UI/UX designers is, in particular, vital – since problems on that count can lead to serious design errors. What’s more, wireframes also make the clients a part of the development team – since the sketches are shared with them, and feedback and suggestions are actively sought. Making a mobile app requires solid teamwork, and wireframes are necessary for that.
  4. Moving on to high-fidelity mockups become easier – As long as wireframes include all the key elements of apps, they need not be very detailed (i.e., low fidelity). However, before the final app prototype is created, developers/graphic designers as well as clients might want to view a high-level UI mockup of the application. Once the mockup is ready, the developers can collaborate with app clients to refine the application with additional features and enhancements. Displaying all proposed components of an app – right from buttons and images, to text content and hyperlinks – becomes a lot simpler on mockups, if an wireframe had been created in the first place.
  5. Facilitates understanding of in-app navigation – The wireframe of a mobile application effectively gives a pictorial representation of how end-users are going to use that app. The screen transition scheme (i.e., the ‘flow’ of the app) becomes clearer to the entire app development team working on the project. In addition, with the help of the wireframes, developers can test-run the navigation structure of their app, and make changes (if required). Experts from the field of app development emphasize on the importance of making in-app navigation intuitive, and wireframes are just the tools to ensure that.
  6. The cost advantage – Many do not realize this at first – but making the wireframe of an app has cost advantages too, both for mobile app companies as well as clients. All that it takes to create a wireframe is a pen and a piece of paper – to draw up the sketches and label the functions of the screens and the components therein. All the enhancements, changes and tweaks can be made on paper itself, before developers move on to creating the concerned iPhone/Android app. Now, compare this with the concept of starting to make the application rightaway, detecting design errors midway, and reworking the entire thing. A waste of time, and more importantly, an escalation of the overall costs.
  7. Incorporating change becomes easier – Ever felt the frustration of having the final build of an app being rejected by the client? Or finding bugs in the project, when the design is almost complete? Leading Android/iOS app development companies are wary of such problems – and working with wireframes is their preferred way to stay away from them. Wireframes are shared with clients on a continuous basis – so that when (s)he gives a feedback, that can be incorporated immediately. By the same token, since mobile app testing also happens on a real-time basis, the hassles of having to deal with bugs and malware AFTER the coding is complete do not crop up. A detailed wireframe makes the process of making apps a lot more flexible.
  8. The benefits of making multiple wireframes – As already stated above, drawing up an app wireframe is a matter of a few minutes. Mobile app developers generally create 3-4 alternative wireframes of a single application – with subtle changes. This opens up the possibility of testing the different sketches/functional flow of the app, and selecting the one which most testers (as well as, of course, the client) approves of. There needs to be tweaks in the visual hierarchy, navigation structure, name of the labels/tabs and other such differences between two or more wireframes. That would make the comparison and preliminary testing meaningful.
  9. Facilitates the inclusion of animations the right way – In a mobile app for kids, or any gaming application for that matter, animations are extremely important. While chalking up the wireframe for such an application, app developers and animators can take a call on the place(s)/screen(s) where the animations will be displayed, what should be the level of animation, and such other important decisions. Without the right kind of interactivity, an animated component can be useless – and in fact, can mess up the navigation structure of the entire app. Checking animations out on handwritten wireframes is a smarter idea.
  10. Incorporating visual branding elements – This is vital for mobile business apps. The visual branding elements (logos, pictures, taglines, hallmarks, etc.) of a company need to be consistent across their websites, print ads, e-newsletters, and mobile applications. On a wireframe, app developers can play around with the positioning of these branding elements, seek suggestions from the client, do some comparisons, and decide which design option would be the most effective for brand-building. Just like animations and other forms of app content, wireframes give app designers an idea regarding where the business branding elements should go on the app screens.
  11. Helps in meeting deadlines – This follows from the earlier points. Since the client has access to the app wireframes at every stage and can suggest changes/modifications/additions at any time – chances of rejection of the final prototype is minimal. The total number of build iterations also remain low. Most mobile app companies work on several iOS/Android projects simultaneously, and they cannot afford to spend unnecessary man-hours on a single project. In addition, making wholesale revisions after the app is complete can be a rather costly affair. An wireframe ensures that such issues are averted, and projects are completed well within the deadlines specified in the app quotes.
  12. Help in an app’s promotion – The wireframe of a mobile app is also an ideal channel to showcase the level of research and thinking that has gone behind its creation. During the app marketing campaign through online social media forums, a few of the initial wireframes can be shared with prospective users – to highlight the redesigning that had taken place from the initial build to the app in its final form. Instead of a detailed text description, a series of wireframes can nicely showcase the evolution of an idea into an app. They double up as powerful marketing and information-sharing tools.

A detailed wireframe allows developers to check out the proposed design layouts of an app from all perspectives. As a result, spotting potential problematic areas becomes a lot simpler – than what it would have been if the testing was done only after the completion of the app. Clients too view wireframes as the medium via which they can send along suggestions for changes (“Can you make that header tab slightly bigger, please?”) – and generally stay informed about how their app is being created. App wireframes are hardly ever very professional-looking (after all, they are hand sketches), but they can make the task of making a mobile app simpler and more systematic indeed.

iOS 9: 16 New Features & Improvements We Would Like To See

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

Will iOS 9 be announced this June, at the Apple WWDC event? Will we have to wait a few more weeks for the official announcement? We will soon know the answers – and in the meanwhile, here’s a wishlist of the improvements and new features that the upcoming version of the Apple mobile platform should have.

 

It has been nearly a couple of weeks since Apple seeded the 3rd beta of iOS 8.4 to developers. Rumors are rife regarding when it would finally be launched – with many mobile software and app developers predicting a late-June release (i.e., a week or two after WWDC 2015). It would be the final iteration of the iOS 8 platform before the Cupertino tech giant announces the already eagerly-anticipated iOS 9 update. Here are some likely (and some not-so-likely) features that iOS 9 will come with:

 

  1. An improved Siri – As many as 24 dictation languages were added to Apple’s much-loved virtual mobile assistant in iOS 8. However, it still does not provide an intuitive experience to end-users (something that Siri’s main rival, Google Now, does). On the new version of the platform, it would be great if Apple lets Siri interact with other pre-installed iPhone applications, as well as ‘remember’ the previous questions that it had been asked. At present Siri is little more than a ‘I-ask-you-answer’ app, and Apple needs to make it smarter.
  2. Improvements in Apple Maps – This has really been a long time coming. iPhone app developers do agree that Maps have come a long way since the shoddy iOS 6-days, but even so, it is far behind in terms of accuracy and overall usefulness than Google Maps. With iPhone 6 having a built-in altitude barometer, it would only make sense if Apple includes indoor map functionality in the Maps app. In addition, presence of a reliable public transportation/navigation feature would be nice.
  3. Split-screen multitasking – With iOS 9 rumored to be available for the latest iPad, iPad Mini and iPad Air models, split screens for multitasking would be a great addition. Users will be able to work on multiple iPad apps simultaneously, instead of having to close one (letting it run in the background would drain the battery) before launching another. Since the new flagship iPhones have larger screens (will iPhone 6S be larger than iPhone 6?), the option of using multiple screens would be handy for smartphone-users too.
  4. Guest Mode & Night Mode – Android Lollipop has the Guest Mode feature, and the upcoming iOS version should have it too. This will ease security concerns of users, when someone else requests to use their iDevices. Presence of a Guest Mode would be useful for parents who let their little ones use iPhone apps for kids (the children can log in as ‘Guest’). A Night Mode option, which will enable people to make their iPhone screens relatively less bright, would be an interesting addition as well. It’s all about making mobile platforms customizable – and iOS 9 should build on the work Apple started with its predecessor.
  5. Opening NFC technology to developers – All the devices that iOS 9 will be downloadable on – iPhone 6/6 Plus, Apple Watch, the iPhone 6S (which should be the handset iOS 9 debuts on) – will have NFC (near-field communications support). iPhone app developers would simply love to have access to this technology – and create apps that use NFC to provide better, secure and more personalized services (primarily, mobile payments) to users. The overall NFC-usage rates should also witness a spike if this happens.
  6. More organized ‘Settings’ Menu – A common complaint among iPhone users as well as professionals from mobile app companies is that the ‘Settings’ menu of iOS devices can become rather cluttered over time. Searching for something (say, an app or a music file) can be tricky, particularly if the user does not know where it is located/saved. The ‘Settings’ in OS X systems has a dedicated search box, which does away with such potential problems. It’s high time Apple brought that similar smart, organized feel to the ‘Settings’ of its mobile platform.
  7. More usable third-party keyboard apps – iOS developers and users alike jumped at the news that Apple was finally allowing the installation of third-party keyboard apps from the App Store – on iOS 8 devices. However, the usability and performance of these keyboards have left much to be desired. As of now, external keyboards cannot be integrated with the dictation functionalities of Siri. Neither can they access the auto-correct dictionary of the devices, or display menus to move over to another keyboard. People who have upgraded their handsets to iOS 8.3 have reported a ‘keyboard bug’ as well. iOS 9 would, hopefully, make external keyboard applications more usable, reliable and actually worth it. They have a gimmicky feel at present.
  8. No storage space crunch, please! – When Apple hyped up iOS 8 as the ‘biggest iOS release’, few had imagined that the bigness would be most evident in terms of its memory requirements. Over 23% of the default storage space of devices was taken up by the initial iOS 8 release (Apple ended up facing a Class Action lawsuit for this) – something that the disastrous iOS 8.1.3 upgrade failed to fix. We can only hope that iOS 9 would not pose similar problems, and users will not have to delete content (apps, games, music, etc.) to free up space before installing the new version of the platform. And while we are at it, can Apple please give people the option to hide some of the pre-installed apps? Many of them are hardly ever used, but are still present on the home screen.
  9. A boost for iTunes – Of late, both the content as well as the features of iTunes have come under a bit of flak. The new 12.1.2 update has not been universally well-received either. Since iOS 8.4 will already have a focus on music-playing features (the effects of the Apple-Beats deal will finally show), mobile app development experts are expecting the iTunes store to get more user-friendly too, with the release of iOS 9. Qualitatively as well, the iPhone music apps should become better. Apple might well spring a surprise on us all by including an AM/FM Radio application in the upcoming platform release. That would be nice!
  10. Wallpapers with animations – Apple Watch has loads of animated wallpapers and ‘faces’ – and Tim Cook and his team should seriously think about making the iPhone screens similarly engaging. At present, the wallpaper animation options on the Apple smartphones are, at best, limited. A wider range of animations will lend a more personalized, interactive feel to the phone wallpapers – something that iOS device-users have long been craving for. A few additional themes and a more streamlined layout of the home screen won’t be out of place either.
  11. Third-party access to Siri API – For professional iPhone app developers, the inability to access the APIs of Siri – which arrived way back with iOS 5 – has been rather frustrating. However, Apple has been showing signs of opening up its ecosystem (iOS 8 was indeed a big step in that direction), and it won’t be a big surprise if third-party developers finally get to include Siri-functionalities in their apps for iOS 9 devices. The virtual assistant would become more useful, and the iOS developer ecosystem would become that much stronger.
  12. Option to listen to audio without watching visuals – If you want to listen to the music of a video file (yep, only listen)…sorry, you can’t do that on iPhones, at least till now. The corresponding video file also has to be played (the best you can do is keep it in the background) – and that tends to cause unnecessary battery drain. On iOS 9, we would like to see Apple giving users the option to listen to audio files without HAVING to watch the video as well. It’s all about giving more options to people.
  13. More customized Control Center – One of the high points of the iOS 7 release was the Control Center. Simple swipe gestures are required to perform a whole lot of tasks – right from launching the flashlight and starting music, to adjusting the screen brightness of handsets. On iOS 9, Apple has the opportunity to make Control Center even more useful. There are way too many control tabs and buttons in the Settings app, and it would be convenient for users if they could decide which ones among them they would like to have in the Control Center (i.e., dropped off there). Things would become less confusing.
  14. Passcode protection for all apps – Most iPhone app developers do not bother adding passcode screens and/or Touch ID support in their applications (unfortunately, this is true even for mobile finance apps). This, in turn, leads to security threats – whenever a user lends his/her phone to another person for use. While it is not that likely to happen, there is an outside chance of iOS 9 providing Passcode Lock option for every individual app. Anyone who does know the unique PIN number of your apps will not be able to use them. This, along with the Guest Mode (if it indeed arrives), would make Apple devices more secure.
  15. A Battery Saver Mode – This won’t dramatically increase the battery life of iPhones and iPads – but at least people would be able to monitor the battery consumption of each app, and delete any application(s) that is sucking up too much of battery. The Battery Saver Mode would also allow them to get just that extra bit of battery juice that is so often required (for instance, making that one call to home, to inform that you will be late). Android 5.0 Lollipop already has a Battery Saver Mode, and Apple iOS 9 should have it too.
  16. More stable widgets and extensions – Handling high-memory tasks with extensions is often problematic on iPhone 6/6 Plus as well as iPad Air 2. The frequency of screen freezes and crashes is disturbingly high (the overall crash rate of iOS 8 is slightly higher than that of iOS 7, and disturbingly, a touch higher than the crash rate of the otherwise poorly-adopted Android Lollipop too). Apple has already announced that the iOS 9 platform would be more focused on adding stability and fixing performance issues (instead of focusing on new features) – and making the widgets & extensions more efficient surely features in the company’s plans.

In addition to the above, iPhone app development experts are expecting that iOS 9 would bring landscape view support for iPhone 6 (a la iPhone 6 Plus). To bolster the security factor, there should be an option for users to merge several Apple IDs into a single ID (for all types of transactions). It is not yet certain what the backward compatibility of iOS 9 would be (the lackluster iPhone 5C might be phased out) – however, Apple needs to keep an eye on the speed of the new platform on the older devices. iOS 9 (which bears the codename ‘Monarch’) might even be announced during this year’s WWDC – and all eyes will be on the new improvements, bug fixes, stability quotient and performance level of the platform. iPhone 6S and iPhone 7 are both rumored to release in 2015, and iOS 9 would probably debut on these two new devices.

 

How many of these features do you expect to see in iOS 9?

AppBoard Tuesday – The Journey From An Idea To An App

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

At times, you just know that you have chanced upon a good app idea. And then, all goes to waste – because you spend too much time procrastinating on how it can actually be transformed into a mobile application (or whether doing so would be even possible). The notion of learning the basics of iOS/Android programming, and then getting down to make an app, is hardly practical either. A unique, interesting, and (most importantly) practically viable app idea is worth its weight in gold – and in this week’s AppBoard Tuesday (ABT), we will guide you on how app ideas can be systematically transformed into efficient mobile applications:

  1. Make sure your app idea is complete – You cannot work with a half-baked, one-liner app idea (say, ‘I want to make an iPhone app for travelers’). Jot down the features that you want the application to have, and think about the manner in which end-users will benefit from it. Make sure that your app idea has one core focus (which would be the main ‘purpose’ of the app). There is also the small matter of deciding whether you should go for a native app or a mobile web app. With the surge in the worldwide smartphone usage rates and the emphasis on user-experience, opting for native applications would be smarter.
  2. Decide on the platform – If you want your app to have maximum reach, you should optimize it for the Android platform. On the other hand, if you wish to earn more revenue (mind you, that’s not a given…and the costs would be slightly higher), you need to hire the services of an iOS app company. Cross-platform mobile app development is important – but ideally, you should start off with a single platform. Once that one is successful, you can always create versions for other mobile platforms.
  3. Look for a mobile app company – If you do not have time to kill (and then some!), trying to give shape to your app idea all on your own won’t be a smart option. There are literally hundreds of good mobile app companies listed on the internet, whose services you can avail of. Do some research on the web, create a shortlist of 3-4 app development firms, and ask for free app quotes from each of them. Have a chat with their respective representatives as well. Depending on the quoted expense, the track record of the companies, and your first impressions about them – select the one that seems the most suitable.
  4. Be wary of shady clauses – Unfortunately, like in any other professional field, the domain of mobile app-making has its fair share of fraudulent companies (on the hunt for quick bucks and getting one up on unsuspecting clients). Before signing/agreeing to any contract document, ask about things like the estimated deadline for the completion of the project, the total costs and when you need to pay (run a mile from companies that charge all the money in advance!), the intellectual property rights of the app, and when/what upgrades will be released in future. The best Android or iPhone app development companies will never charge you extra for app upgrades.
  5. Include wearables in your app development plan – Okay, this one is (mainly) for those who wish to create iOS applications. Along with the iPhone version of your app, request the company to make a custom version for Apple Watch as well. It won’t be a tough ask to find a firm that has started out with WatchKit app development (it might have already released a few Watch apps). IT software and app developers feel that wearable technology is the future of mobile tech, and your app idea should include provisions for that.
  6. Know how your app idea is being worked on – Xcode, Eclipse, Android Studio, Swift, JSON – these might all be just random words for those of you who have an app idea, but are from a non-technical/non-programming background. That does not, however, mean you cannot understand (and indeed, ask the app company to help you understand) how the app is shaping up. Request for primary wireframes (low-fidelity sketches) and mockups to be shared with you on a regular basis. Suggest feedback and tell the developers on the job to modify anything that you do not like. You are the client, you are the one paying the big bucks, and you have every right to be a part of this ‘idea-to-app’ journey.
  7. Be careful about the app UI and designs – There are two ways to go about this. If you have professional-level expertise in working with tools like Photoshop, CorelDraw and Spine – you might take care of the designing/animation aspect of your mobile app yourself (make sure you let the app company know about that from beforehand). Alternatively, you can delegate the entire app development process (development and design deployment) to the agency you have hired. Make sure that the coding and the designing is not done by the same team (if it is, it’s time to look for another company). Check the screens, layouts, proposed touch behaviors/gestures, and the in-app navigation. Even a small glitch in these can ruin an otherwise nice application.
  8. Brace yourself for some initial disappointments – Mistakes happen, miscommunications crop up, the app prototype deviates from your initial idea – even if you hire the best mobile app company in the world. Never be hesitant to send in feedback and suggestions on the design prototypes (in case you do not feel that the screens are not quite pixel-perfect) – and keep at it until you are completely satisfied about the features/visual elements of the app. If possible, visit the offices of the company which is working on your project for a one-on-one meeting. It takes a bit of time for the developers’ way of working to become completely in sync with your way of thinking – allow some time for that.
  9. Know the tradeoffs – Think of a triangle. It has the app development cost figure at one corner, the quality factor of the app at the second, and the scheduled project completion deadline on the third. With competition among iOS as well as Android apps being fierce, you cannot possibly compromise on the quality factor. This means there will be a small tradeoff between the expenses and the time factor. If you are not in a tearing hurry to release your app, the final cost figure will remain within your budget.
  10. Find out how you will earn – Ah, now we come to the point that all (okay, most) people with an app-idea are interested about. Inquire the Android/iPhone app developers on the job about what monetization strategy will be used in your application (you can choose from in-app purchases, mobile ads, or paid downloads – the first among these being the most popular). In addition, make sure that the mobile app analytics will be monitored by the company (i.e., the way the app would be used by people). Ignore these factors – and you might end up spending big money on a piece of mobile software that does not yield adequate returns.
  11. Be a part of the app testing group – The initial builds of your app will be plagued by bugs, screen freezes, crashes, and other problems. Professional developers would systematically remove these problems (most IDEs offer real-time code testing options for agile development), and then move the app to the final testing phase. Apart from the in-house testers of the company, you should also install the app on your own smartphone/tablet – and check it out. Testing the app in the cloud is also important. Look out for the speed of the app, its bandwidth/memory requirements, and whether it is causing excessive battery drain. Factors like these can (and probably will) get your app rejected at the store.
  12. Make sure that the app is well-marketed – How many personal contacts do you have? 50, 100…500? You cannot possibly ask each and everyone to try out your new Android/iOS application – after it is released at the store. In the absence of proper app marketing, general awareness among smartphone-users about it would remain low (can’t blame them, there are 1.5 million+ apps at iTunes and Google Play Store). Do some marketing on your own – and make sure that the app is being publicized by the developers, via press releases, social media posts, emails & newsletters, and app review channels (the genuine ones, of course). The end-users can give a positive rating to an app only if they are aware of its existence!

When you contact an app company with your idea, ask about the devices the application should be optimized for. This is comparatively easier on the iOS platform, where new apps should be usable on iPhone 6/6 Plus, iPhone 5 (and maybe, iPhone 4S). The task is way more difficult for Android, where there are so many vendors – each tweaking around with the plain-vanilla version of the OS. You need to focus on maximizing the reach of your app as much as possible (read: optimize for all popular devices). After all, everyone should be able to check out your app idea!

 

That, folks, brings us to the end of yet another edition of AppBoard Tuesday. In an earlier edition of ABT (in October 2014), we had given a more general overview of how ideas can be transformed into apps – you can go through that too. Feel that there is something else required to move from the idea to the deployment stage? Let us know, and if your point is valid, we would include it in this list.

 

AppBoard Tuesday will come back next week, with another mobile app-related topic. Till the next time, love thy apps…and make sure that your app ideas do not go to waste!

 

 

Training iOS Developers. Shaping Careers. Helping In App Creation. All At Teks.

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

 

Making an iOS app requires in-depth knowledge about the platform, the development framework and tools, command over programming techniques…and a feel of the pulse of what would work and what won’t. That’s precisely why we conduct regular app development training workshops, seminars and hands-on sessions. We daresay they have been helpful for attendees, and well-appreciated among them till date.

 

At Teknowledge, we do not believe in rat-races – getting dragged down in a desperate fight to stay a step ahead of other mobile app companies. Instead, knowledge-sharing is the thing we have always valued the most. Anyone who wants to learn about iOS development – right from theoretical tidbits to actual deployment – can expect thorough guidance from our developers, and indeed, myself. It’s an exciting professional field, and Teknowledge would love to move ahead in this domain with all aspiring/currently working developers.

 

Before I outline the basics of the 22 different iOS training courses we offer, let me just touch upon one point. I do not generally write about these training sessions over here, on our official blog. So, why the exception now? Well, today marks the completion of 6 years of our very first iPhone app development seminar. It has been a long, enjoyable journey – one during which we have learnt, and hopefully helped others learn, quite a bit.

 

Okay, now onto our training courses. I’ll just focus on the courses that are on offer in 2015 (3 workshops, 1 of them overseas, have already been conducted this year). Check out the following – and do let us know if any of you would like to sign up for our upcoming seminars:

What Are Our iOS Training Sessions About?

 

Oh well, everything related to (and at times, not that closely related to) creating iOS applications. In particular, we focus on training developers to make complete apps for the iOS 8 platform.

 

Which Programming Languages Are Discussed At The Seminars?

 

We mostly concentrate on making our delegates familiar with the Swift programming language for iOS development. Porting Objective-C codes to Swift (and the other way round) is touched upon too. During the Q&A sessions following the hands-on sessions, we take specific questions about working with both Objective-C and Swift.

 

Do The Attendees Need To Know Programming?

 

Yes, a basic coding knowledge is a must. We take delegates through the more advanced techniques of iOS app-making, but they should have the knowhow to write simple Objective-C/Swift codes. We give the programming expertise of freshers an edge, and resolve queries & doubts of professionals.

 

Which Version Of Xcode Do We Focus On?

 

At present, it’s obviously Xcode 6 (Xcode 6.3, to be more precise). Apart from introductory lectures, we have provisions for practical sessions – where attendees can get a first-hand feel of working with the IDE. Right from storyboarding and GUI-designing, project navigation, a tour of the Xcode features, code debugging and using actions/outlets to connect visual features – everything is included in our Xcode training modules.

All You Need To Know About Cocoa Touch

If you wish to become a successful iOS app developer, there is no way you can manage without thorough knowledge of the various Cocoa Touch APIs. That’s the key reason why we have started allotting 4 sessions for training attendees on Cocoa Touch from this year (earlier on, we had 2 sessions for this). Using core classes of the framework, code partitioning, interacting/handling the controller layers – these are some of the topics related to Cocoa Touch we receive many queries on.

Other Topics We Cover In Our iOS Training Workshops

 

Yep, this is getting lengthy. Let me just wrap up by mentioning the other tools/topics that are touched upon at our app development training sessions. We invite internationally recognized speakers to share their knowledge on:

 

  • Setting up and using View Controllers, Segues and Storyboards.
  • Implementing touch gestures and animations in app codes.
  • The basics of Model-View-Controller (MVC).
  • Designing the UI and overall layout of apps (we have a separate team of graphic designers who helm this module).
  • Keyboard configuration and usage.
  • JSON framework (optional).
  • Mobile app testing.
  • General debugging methods.
  • Chalking out plans for app upgrades.
  • WatchKit app development (i.e., making apps for Apple Watch).

What Is The Duration Of Our Seminars?

When we started out (one sultry mid-May morning in 2009), it was a 6-hour seminar – with 3 speakers. Over time, we have been fortunate to have more guest speakers, and the number of delegates (from India and overseas) has grown exponentially. From the last year, we have started hosting two types of seminars:

 

  • Single-day iOS training (for those who are already know Swift programming and are familiar with the basics of Xcode/Cocoa Touch).
  • Two-day iOS training (for freshers who have just completed their programming courses).

 

 

Of course, experienced professionals are more than welcome to join the latter course. We would love to have them!

 

Do The Attendees Need To Bring Anything?

Their pens, their notebooks (or laptops)…and their thinking caps! From a couple of days in advance, we start setting up the projectors, PA system, Mac computers, and everything else that would be required for the workshop. All that our attendees have to do is learn, ask questions, and learn some more!

 

The People At The Helm

 

Apart from me and my senior colleagues, we invite globally renowned experts on iPhone app development to conduct sessions at our iOS training programs. On average, around 25 case studies and 15 dummy projects feature in the training modules we organize. As the attendees to our previous events testify, we provide the best iOS training sessions in Asia.

See You At The Next Seminar, Maybe?

If you are an aspiring iOS developer, we would love to have you as our guest in our next training program. We are planning to organize it sometime in late-June – and if you are interested to participate, simply drop in a mail to info@teks.co.in. We will notify you about the event itinerary, as well as the dates of the next edition of the Teks iOS training session.

Samsung Pay vs Apple Pay: Battle Of The Mobile Payment Platforms

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

Apple Pay became available to users in October 2014, and already, we have a worthy alternative mobile payment app to it – the Samsung Pay, which has released with the latest Galaxy flagship phones. In today’s discussion, we will analyze which of the two applications is better, on the basis of certain vital parameters.

 

 

You have got to hand it to Apple and Samsung for continuing with, and in fact, expanding their professional rivalry. As has been the norm over the years, the battle between the latest smartphones of the companies (iPhone 6/6 Plus and Galaxy S6/S6 Edge respectively) is going strong – and the tussle between the tech giants has now spilled over to the domain of contactless payments (i.e., mobile payments) too.

 

Samsung announced its mobile payment platform – Samsung Pay – at this year’s Mobile World Congress, barely six months after Tim Cook had let everyone know about Apple Pay (last September). Apple Pay debuted on iPhone 6, iPhone 6 Plus and Apple Watch, while the Korean company included Samsung Pay in the Galaxy S6/S6 Edge handsets. In this Samsung Pay vs Apple Pay battle for superiority, which one comes out on top? Let’s do a point-by-point comparison:

 

  1. Compatibility – To start things off, let’s see on which devices users would be able to avail the services of the two mobile payment channels. As was widely expected by software and mobile app developers worldwide, Samsung Pay is ONLY available on the latest Samsung Galaxy S6 and S6 Edge. The device compatibility of Apple Pay is rather limited too, since users who own the iPhone 6/6 Plus, or are early adopters of Apple Watch, can make payments with it. Both of these are proprietary software, unlike Visa Checkout or the proposed Android Pay platform. Apple Pay has the advantage of arriving earlier at the market, but the difference would hardly matter in the long-run.
  2. Security – Once again, there is nothing to choose between the two. The process of generating random numerical values by Samsung Pay and Apple Pay (‘tokenization’) ensures that the actual card details never get disclosed to the merchants and sellers. According to experts from the domain of mobile transactions and app development, ‘hacking’ card details is virtually impossible when payments are made via either of the two platforms. There is, in fact, a school of thought that mobile payment channels like these will gradually eat into the popularity of traditional credit card usage.
  3. Setting up the apps and adding cards – The edge lies marginally with the product from the Cupertino company here. There is no difference in the card registration/addition procedure on Apple Pay and Samsung Pay – it can be done either via scanning cards with the camera, or simply typing in their unique number and expiration date. However, there is a difference when it comes to accessing the cards for payments. To use Samsung Pay, an upward screen swipe (from the bottom) is required. On the other hand, whenever the latest flagship iPhone is in the vicinity of a contactless reader, the card details immediately appear on its lock screen. No extra swiping involved!
  4. Retailer support – Trust the two persistently warring tech giants to gather plenty of retailer support for their ambitious mobile payment channels. Within 72 hours of Apple Pay being available for iPhone-owners, more than a million cards were reportedly registered on it. The total number of retailers supporting Apple Pay stands in excess of 200000, with most American banks and credit card companies having pledged support to it. On its part, Samsung has announced that nearly 31 million retail companies already have the setup to support Samsung Pay transactions. The key factor here is: iPhone 6 is already a hit, giving a cushion to Apple Pay. To become a success, Samsung Pay will be heavily reliant on how well (or otherwise) the Galaxy S6 phones fare.
  5. Tracking transaction history – Apple does not, in any way track or store the details of the transactions conducted via Apple Pay. Mobile software analysts and iOS app developers feel that this eases a major security concern from the minds of users. Neither is any transaction data provided to third-party retailers. Samsung also refrains from tracking user-purchase and transaction history. Given that it is still early days for mobile payment technology, its main rival is Apple Inc., and there is still some apprehension among people about using these platforms – the Korean tech giant can hardly afford to slip up in this regard.
  6. NFC and moreWherever Apple Pay works, Samsung Pay works. The reason is simple enough: both the mobile payment gateways support near-field communication (NFC), which makes transactions quick, hassle-free and completely secure. The fact that Android-users had a feel of NFC before Apple finally got around to it on the iPhone 6 is a point in Samsung’s favor (since Android-users are more familiar with the technology). Samsung Pay offers yet another advantage too – it can also be used on magnetic credit card readers (Magnetic Secure Transmission, or MST). Since there are many retailers who have not adopted NFC yet, the reach of Apple Pay can remain limited. Samsung, however, has the software for point-of-sale terminal usage.
  7. Ease of usage – Apple Pay keeps things brief and systematic. All that iPhone or Watch-users have to do to use it is select the card for payment on the screen, and authenticate it via fingerprint sensor. The fingerprint sensor feature of the Galaxy S6/S6 Edge phones is central to the use of Samsung Pay as well. Users have to tap their phone screen at the magnetic strip of the merchant or the contactless card reader – which is an extra step. What’s more, many mobile app development experts as well as general users have reported that it is rather troublesome to hold devices in the ‘correct’ way over the magnetic stripe readers. Handing over the Android handset to the merchants is, understandably, not an option that finds favor among users. The difference is not much, but Apple Pay is just a tad simpler to use.
  8. A bit more about MST – Samsung Pay offers MST payment support over and above the NFC technology. This, in theory, should give it an advantage over Apple Pay (As we have pointed out earlier). What’s more, Samsung would, in all likelihood, move to the developing nations with its mobile payment platform – and in these countries, magnetic card readers are still way more popular among retailers than the NFC setup. In fact, Samsung had acquired LoopPay in mid-February to ensure that it did not need NFC for remaining functional. However, the Magnetic Secure Transmission has also been hailed by many iOS developers as a piece of outdated technology. Particularly in the United States, this extra feature won’t give any additional leverage to Samsung Pay over Apple Pay.
  9. Provision for in-app purchases – This one is a serious advantage in favor of Apple Pay. The terminal can be used for in-app purchase transactions, on freemium applications in the iPhone 6 phones, iPad Mini 3, and iPad Air 2. Those who are making payments via MST on Samsung Pay cannot use the platform for any form of in-app purchases – since the technology supports only older terminals. There is some uncertainty over whether Samsung Pay with NFC will be usable with general Android applications.
  10. Partnership with credit card companies – Both Samsung Pay and Apple Pay are already working in partnership with major players like MasterCard, Visa and American Express. From the perspective of the users, this means that cards will be automatically accessible and usable on either of the two applications, once they have been registered. However, Apple enjoys a first-mover’s advantage here, since it has already entered into tie-ups with close to 120 major financial institutions (including Bank of America, JP Morgan Chase and Citigroup). It remains to be seen how many, and how quickly, Samsung Pay is able to get into partnerships with the same leading financial institutions. One thing is clear though: it is a win-win scenario for credit card companies.
  11. Availability on wearable gadgets – Apple provides it, Samsung (as yet) does not. Android app development professionals worldwide feel that the next generation of Galaxy Gear devices would have Samsung Pay – but till then, the mobile payment app is available only on the recently released Galaxy S6/S6 Edge. Apple Pay, on the other hand, is available for use on Apple Watch – the company’s first smartwatch. As per early reports, using Apple Pay on Watch is extremely easy. Until Samsung Pay becomes available on its wearable gadgets, it will be at a slight backfoot.
  12. Geographical reach – The need to pick one from Apple Pay and Google Pay is an option that is available only to American users at present – since United States is the only country where both the mobile payment technologies are available. Apple Pay is, in fact, available only in the US, while Samsung Pay can be used for making payments in USA and…no surprises here…Korea. The advantage of geographical reach, however slight, lies with Samsung.
  13. Backward support – Apple Pay requires NFC, and hence, it is not (and will never be) usable on older iPhones (iPhone 4S and iPhone 5 owners will miss out). Similarly, Samsung has not revealed any plans till now of pre-installing the Samsung Pay app on the predecessors of the Galaxy S6 phones. Mobile application developers feel that, with backend support – both Apple Pay and Samsung Pay would have had higher adoption rates.
  14. Can Samsung Pay hurt Apple Pay adoption? – Even though the fight is apparently between the mobile payment platforms of the two companies, the competition is – in essence – not directly against each other. Android users are not likely to switch over to iOS simply due to the features of Apple Pay (neither is the opposite scenario likely). If Samsung Pay indeed becomes popular and Apple Pay keeps growing – they will contribute together to the growth of NFC technology in particular, and mobile payments overall.

In a recent comparison study, LoopPay beat Google Wallet hands-down, indicating that Samsung Pay (which comes with Infineon security assurance) is indeed an easy-to-use, secure and efficient mobile payment application. George Wallner and Will Graylin have ensured that the app is comparable to Apple Pay. While the robust sales of iPhone 6/6Plus phones have given a headstart to Apple Pay, its adoption is still sluggish (85% of iPhone 6-users are yet to give Apple Pay a try) – and even if Galaxy S6/S6 Edge sells equally well, the early adoption of Samsung Pay will not be very high. All things considered, Apple Pay holds the aces over Samsung Pay – thanks to its earlier arrival and popularity of the supported devices. Samsung Pay has plenty of high points too (in the short-run, the MST support can be a game-changer), and over time, has the potential to become equally popular.

 

The final winner? Contactless payments!

Are You Aware Of These New SpriteKit Features In iOS 8?

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

When the iOS 8 platform was launched by Apple, the SpriteKit framework received quite a few new features – geared to make the tool more developer-friendly. In what follows, some of these new SpriteKit features have been listed.

 

Released with iOS 7, SpriteKit has fast become the preferred mobile game development tool for many developers across the globe. According to reports, its popularity has already started to rival that of Cocos2D. The fact that SpriteKit is a native Apple framework has been an advantage too. On the iOS 8 platform, several new features have been added to SpriteKit – much to the delight of mobile game developers. We will here highlight some interesting new additions to SpriteKit on iOS 8:

 

  1. Integration with SceneKit – Apple finally brought the Objective-C-based SceneKit tool to its mobile platform – SceneKit – with iOS 8. Game development experts now have the option of using this tool to add 3D content in applications created with SpriteKit. A SK3DNode object has to be declared, which would serve as the root for the app/game scene. The three-dimensional content gets rendered directly within the SpriteKit pipeline, and coders can manage them just as general SKNode instances. The overall hierarchy becomes something like: SK3DNode → SCNScene → SCNNode → SCNLight/SCNCamera/SCNGeometry. Of course, SceneKit can be used on a standalone basis as well.
  2. Enhanced physics support – SpriteKit on iOS 8 offers delightful game physics support. The SKFieldNode, which is used to include physics fields, can be combined with an array of diverse factory methods. Radial gravity fields (SKFieldNode.CreateRadiaGravityField() ), Spring Fields (SKFieldNode.CreateSpringField() ), and radial vortexes are some instances of the new physics fields that can be created with SpriteKit. With the same SKFieldNode class, iOS app development experts can tweak around various field properties, like region, strength, and field force attenuation.
  3. Compatibility with OpenGL ES – Prior to the release of iOS 8, there were no provisions of accessing the OpenGL ES framework directly from SpriteKit. Apple has changed things around with its latest mobile platform, by introducing greater support for the built-in fragment shaders in OpenGL ES. The SpriteKit tool had been released in the first place to provide iPhone game developers an engine on top of OpenGL, and with iOS 8, collaboration between the two tools has become seamless.
  4. From Textures to Physics Bodies – This is a breakthrough feature of SpriteKit, added in the new version. While creating 2D/2.5D iOS games, developers can now derive physics bodies of sprites from their respective textures. The extra coding required for this only involves calling SKPhysicsBody.Create (i.e., sprite.PhysicsBody = SKPhysicsBody.Create () ). Note that, the size and the texture attributes have to be present inside SKPhysicsBody.Create. With the help of this new feature, game animators can now make clashes and collisions in their game interfaces appear much more realistic than before.
  5. Customized Shaders and Effects – Apart from supporting the fragment shaders of OpenGL ES, SpriteKit on iOS 8 comes with a variety of other shaders for screen customization. Since the required coding for implementing shaders has significant similarities with Objective-C, proficiency with that programming language is essential (then of course, you cannot start using SpriteKit without knowing Obj-C, right?). Since the shader effects are applied in the per-pixel method, they appear that much more detailed and engaging. After creating a ‘ShaderSceneEditor’ in the ‘SpriteKit Scene’ (under File → New → Resource), game developers need to navigate to ‘SKNodeInspector’, and set the Gravity and Size parameters. This will add the desired shader effect to the game scene.
  6. Magnetic Fields – Another newly-added feature in SpriteKit that helps iPhone app and game developers add more realism to their software. The Magnetic Fields are all about ensuring that, in a scene, all the nodes would be under a virtual gravitational effect and would be pulled in a downward direction. Both the strength and the position of the magneticFieldNode have to be configured, and coders have to add a separate SKPhysicsBody instance under didMoveToView: (to implement the gravitation pull). The magneticFieldNode instance variable, of course, is created in PhysicsScene.m. All new magnetic field nodes are added as ‘child nodes’ to the SpriteKit scene.
  7. Displaying physics field effects in sprites – Professionals from the field of mobile game development correctly point out that many of the new features of SpriteKit are related to its physics properties. Here’s another of them: developers can now add the effect of the same or different force fields on a sprite. A ‘public override void TouchesBegan’ class has to be added for the former. Whenever players touch the game screen/specific objects, the physics field effects are displayed (for example, radial movement of a character). A sprite can also be influenced by a different physics field by declaring a ‘SKFieldNode fieldNode’, and specifying the ‘fieldNode.Enabled’ option as ‘True’. Remember to add the other properties (falloff, position, strength, etc.) of the fieldNode as well.
  8. More lights for games – Game illumination can be made more personalized than ever before with SpriteKit in iOS 8. To make their iOS games more visually appealing, as many as 8 different lighting effects can be added to every sprite. Inside the LightingSceneEditor.sks, there is a well-stacked Media Library – with a host of resources that can be added to game interfaces (including ‘Shadows’). While configuring the light and shadow, developers have to first set the Node’s Z-Position to ‘1’, and then set the properties/values for ‘Ambient’, ‘Shadow’ and ‘Color’. Each property of the sprite nodes are matched with the ‘categorybitMask’ light property (this happens during the scene rendering) – and whenever the properties are in sync, the lighting/shadow effects are displayed on that particular sprite. In SKNodeInspector, the background has to be updated – otherwise the light won’t illuminate the background.
  9. Calculating Inverse Kinematics – The objects in SpriteKit games can now be made more geometrically accurate by iOS developers – thanks to the new Inverse Kinematics (IK) functionality. In the joint hierarchy in SpriteKit (with parent nodes and child nodes), the final points of any structure is given – and based on its position, coders can calculate the angles at which the other joints have to be present. The max. and min. rotation angles between joints is specified via the constraints specified for each of them. Since all the joints are moved around their respective ‘anchor points’, the overall structure remains systematic. Inverse Kinematics can be implemented directly from the PhysicsSceneEditor, and after selecting the target sprite(s) from SKNodeInspector.
  10. Getting real time feedback on shaders – Not only has Apple really revamped the shaders in SpriteKit on iOS 8, it has also made the chances of errors remaining undetected minimal. While coding the shaders, game developers can check real-time feedback (within the Xcode environment). Since alerts are generated as soon as any potential shader errors are detected, developers need not wait till the actual deployment of their games on simulators/devices to find out bugs (if any). The overall mobile app testing procedure also becomes a touch easier. To get the runtime feedback, coders have to configure the Assistant Editor in a manner that, both the new shader as well as the SpriteKit scene are visible.
  11. New set of Constraints – A new range of physics field constraints have also been added to the SpriteKit tool. The properties of every single sprite node can be altered by adding constraints to them. To specify constraints, you have to be in the ‘Edit’ mode and set values for IK Constraints Max and Anchor Point X. Once this is done, you can check out the effects of the specified constraints under the ‘Simulate’ mode. In addition, there are options to manually change the properties (size, position) of the sprite nodes.
  12. Including Custom Shaders – Ever since SpriteKit custom shaders were showcased by Apple at last year’s WWDC, they have been a focal point of interest for all iPhone/iPad game development experts. Adding these shaders is simple enough – an empty source file has to be created, and from ‘iOS’, the Other → Empty option has to be chosen. After that, a small block of code has to be written, to add a custom shader. Alternatively, shaders can also be added by detecting the tap-position of users on the game screen, and putting a custom SKSpriteNode there. Following each tap, a new sprite (the type depends on your specifications) gets added – with custom shaders and modified textures.

The option of adding Color Sprites is yet another nice addition to the Lighting features of SpriteKit in iOS 8. With the help of the SpriteKit-SceneKit integration, game developers can check out live previews as well as import external models. It is advisable to start off working with SpriteKit on the latest stable iterations of Xcode (Xcode 6.3) and iOS 8 (8.3). The new features in the game engine indeed make the tool more exciting and developer-friendly.

 

 

AppBoard Tuesday – How NOT To Use Mobile Apps?

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

Let’s start off this week’s AppBoard Tuesday (ABT) with a rather remarkable statistic. Last year, on average, 1 out of every 5 downloaded mobile apps were opened only once within the first six months by users. Feel that this is a pretty damning evidence in favor of the fact that most apps are viewed as ‘unsatisfactory’ or ‘useless’ by people? Well, the ‘once-used’ figure stood at 27% in 2011 – so things have, in fact, improved ever so slightly. Even so, there are complaints galore about the usability of many iPhone/Android apps – with a large number of applications being downloaded but never used (nopes, not even once) by smartphone-owners. While there is no denying that a large number of these apps do have bugs and/or other issues, wrong usage of apps by users can also lead to problems. In today’s ABT, we make you aware of common mistakes while using mobile applications. Avoid them and get optimal app (and device) performance:

  1. Downloading ALL new apps – You might be in love with your iPhone and be eager to try out every available app on it – but that won’t be a smart idea. For even the busiest of executives or the most prolific mobile gamers, only a handful of apps are necessary on a regular basis – while the rest simply reside on the phone, taking up memory space and being a general nuisance. On Android phones, this is even more of an issue – since a large portion of the available DDR RAM is taken up by system files. Search for and download only the apps that you are likely to use regularly. Your phone is not a storehouse for dumping ‘never-to-be-used’ software.
  2. Not checking the battery consumption of each app – iOS 8 comes with a Battery Usage Monitor, the battery juice used up by each app can be tracked on the latest Android Lollipop-powered devices – and it would be a mistake to not use these features. Once every couple of days, check how much of your phone’s battery juice is being ‘sucked up’ by each of the installed applications. If you find any of the apps is causing serious battery drain, get rid of it immediately (you might consider reinstalling it, in case you use it regularly). If the battery performance of your handset has gone down all on a sudden, a rogue app is probably the reason for that.
  3. Letting apps run in the background – This is yet another mistake many smartphone-users make. Experts on mobile software and app development state that it is advisable to close every app, when it is not being used. Simply letting it run in the background (and this can happen without the user even knowing it) would be a folly, and would lead to unnecessary battery usage. Check the Task Manager of your device to find which apps are currently active, and close the ones that are not being used. Too much of mobile multitasking can be a bad thing!
  4. Not checking reviews before downloading apps – Exchanging fake 5* reviews have become a common mobile app marketing strategy for many companies (there are plenty of Facebook and Google Plus communities for the purpose). Even so, you should always check the store reviews and ratings of an app, before actually downloading it. Pay particular attention to the unfavorable (if any) reviews. These are the ones that will give you an idea about the problems that an app might give rise to.
  5. Ignoring problems in your device – A new iOS application is not working properly on your device, so it HAS to be a problem with the app, right? No, wrong! If you are using an older flagship smartphone (say, the iPhone 4S), it is entirely possible that your device is not performing optimally – and hence, it is not being able to support the apps you have recently downloaded. Getting your smart device serviced at least once a year would be a good idea. Glitches in a device can lead to unsatisfactory performance of apps too.
  6. Not checking for device compatibility – Most mobile app companies try to make their applications compatible with as many devices and version models as possible. That does not, however, mean that your phone would necessarily support a particular app. In particular, an Android application might work fine on one device, and show up problems in another (this occurs mainly due to the tweaks that the different vendors do to the ‘plain vanilla’ version of the Android OS). Older flagship iPhones might also be not supported by newly released applications (most new iPhone apps are optimized for iPhone 5, iPhone 6 and iPhone 6 Plus). Randomly downloading any app without checking its specs would be too naive.
  7. Glossing over privacy and security concerns – This is one mistake you definitely do not want to do. A couple of weeks back, there was considerable controversy over the usage of certain mobile wallet apps – on the grounds of their security (or the lack of it!) features. With mobile payment software like Apple Pay and, to a lesser extent, Google Wallet (Samsung Pay has also debuted on the Galaxy S6) gaining in popularity – it is of essence that you stay away from third-party, untrusted wallet applications. According to leading mobile app entrepreneurs, only such wallet apps should be used whose security features can be tested and found okay. Otherwise, unauthorized access of personal data remains a risk.
  8. Not upgrading the apps – App upgrades are not something teens generally miss out on. However, smartphone-users from a slightly older age-bracket might not keep track of the new versions and upgrades of apps released by the app development companies. These upgrades are free, they fix the bugs present (if any) in the previous versions, and bring along several new features. Not moving to the latest version of a mobile app would mean staying stuck with the outdated (and probably buggy) version. If you want top-class app performance, that’s certainly not what you want to do.
  9. Being unaware of the bandwidth requirements of new apps – Okay, this IS a problem of the app – but the onus lies on you to remove the applications that hog excessive amounts of mobile bandwidth. If your device slows down significantly after installing an app/set of apps, that is a telltale sign of a problematic app having been downloaded. Do not just let the app ‘live’ in your phone. You won’t be using it (read: can’t use it, for it’s too ‘heavy’), so what’s the point of keeping it?
  10. Not using parental control features in children’s apps – The best Android and iPhone apps for kids have built-in parental control features. Unfortunately though, many parents are not aware of this and/or do not know how to activate the parental permissions. As a result, children (bless their innocent souls!) have a free reign while chatting with shady strangers, downloading stuff via in-app purchases (for which the parent has to pay later), or surfing web pages that are…well…inappropriate for them. When you download a mobile app for kids, you should be the first person to learn how the thing works. This goes for general educational apps too. Do not have half-baked information, and then complain about not having control over how your kids are using smartphones and tablets.
  11. Be wary of device overheating – If you are an intense mobile gamer, you have probably faced this problem more than once. After an hour or so of playing games, if you find that the device has become fairly warn, stop playing, exit from the app – and give the smartphone/tablet some time to cool down (literally and figuratively!). Using apps continuously for extended periods won’t do much good for your mobile battery either. It is not the fault of a perfectly good gaming app if you overuse it!
  12. Using third-party Apple Watch apps – There isn’t much you can do about it. Close to 4000 WatchKit apps have already been created by developers – but only a few of them are of a decent quality standard. If you are one of the early adopters of Apple Watch, all that you have to do is wait for a few months. More, and importantly, better apps for Watch would soon be available at the store.

Do not get into any in-app purchase transactions that you do not need (no matter how lucrative an offer might sound). You should preferably download apps submitted by indie developers/mobile app companies which have a fairly large portfolio. Be careful about GPS-based location-sharing apps. If you use an Apple smart device, upgrade to the iOS 8 platform, since most new apps are optimized for the new platform (the adoption rate of the latest Android platform, Lollipop, is still pitifully low though). Use mobile apps the smart way – the way that they are meant to be used – and you will find that there are a lot less reasons for complaint. Mind you, you can always come across an app that is indeed buggy!

 

Okay then, that wraps up AppBoard Tuesday for this week. Do you know why we chose this topic for discussion today? Well, it can take upto $120000-$130000 to create enterprise apps, and it would be a shame if they were not used the right way. The costs for making general consumer apps is not insignificant either.

 

AppBoard Tuesday will return next week with another fresh mobile app-related topic for discussion. Till then, stay well, use apps wisely…and of course, love thy apps!