Mobile developer’s guide to the galaxy
I was googling books on astrophysics when I found this handbook on ” Mobile development’s physics “. Don’t Panic: Mobile Developer’s Guide to The Galaxy is a quick-and-precise guide for mobile developers, still it’s very resourceful. So will be this review. I will share with you as in previous book reviews an overview, a summary and my recommendations on reading this handbook .
The book is a 16 chapters guide for mobile app developers, designers, and managers. It’s on its fourth edition, and it’s written by a community of 20+ writers from the mobile industry. Tackling topics like accessibility in mobile apps, UX design, mobile analytics, prototyping, cross-platform development, native development, mobile web and app marketing, I find it a very rich guide to consider.
+ What I appreciated about this guide is that it isn’t 100% technical, still, it contains the best technical insights. It covers the mobile development industry trends and presents them to developers, managers, marketers and designers all in a light but consistent way .
1- The galaxy of Mobile: Past, present, and future
Before jumping into actual talk on mobile development from a technical and business perspectives in the next chapters, @Robert Virkus lists in this first one the vanished choices in the mobile space from the past, discusses the current duopoly of Android and iOS for which he expects no change for the foreseeable future, and lists the aspects worth considering if you want to stand out in the very crowded mobile market, being, taking target regions into account, considering multi-purpose apps, building extendable and interoperable apps, and more.
In the good old days we had lots of choice in the mobile space
– feature phones & smart phones, Symbian, BlackBerry, webOS, bada, Firefox OS, Ubuntu Touch, Windows Phone, Sailfish OS, Tizen and of course Android and iOS, etc. Today, we have a duopoly of Android and iOS. While Sailfish and Tizen and few others still do exist, they play a niche role –
2- From idea to prototype
If I’d resume this chapter in a sentence it would be what @Andrej Balaz started with : ” People do not buy products, they buy better versions of themselves ” . So the whole point of this section is that ” one of the biggest pitfalls in product development is failing to understand what your customers use your product for in their lives ” . This chapter so introduces us to how to conduct pragmatic customer research, how to align teams around users’ desired progress, and how to prototype and test ideas by involving customers at every step.
The most pragmatic way to uncover what motivates people to progress is to research their shopping and decision-making behavior. As customers switch from one product to another, they shape what is important to them. Their emotional, physical and social circumstances influence what tradeoffs they are willing to make… Understanding your customers’ switching journey provides an excellent foundation for your product strategy.
3- Android and iOS
Each of these topics is introduced in a separated detailed chapter. But both have almost the same structure, starting with the platform’s ecosystem: when was it developed, on which hardware it works, and it’s progress till today, to the app’s architecture under that platform, the SDK and plugins, the Testing, Building, Signing, Distributing and Monetization under each platform . These two chapters are especially to read by beginner iOS or Android developers. They already each end with a learning resources section.
4- The internet of things
After all of the “contextual” previous chapters on IoT , Mobile Gaming, Entreprise apps, Cross-platform, Mobile web, and more. Being them all similar in structure, and rich in content, I picked IoT and AI chapters to give you a glance about them here. This one presents the roles for Mobile in IoT and 3d party tools written for creating IoT software for faster development.
The chapter ends with a great section on IoT protocols and communications.
One of the standing issues in development for the Internet of Things (IoT) is the occurrence of exotic communication protocols for a mobile programmer, with names like XMPP, MQTT and CoAP . Smartphone apps need ways to communicate using some of these protocols to interact with devices running as IoT. Thankfully some implementations are available such as the Eclipse Paho project which includes an Android client.
5- Security and privacy
This chapter first obviously goes on the criticality of Mobile security. Then it incites the developers to good practices regarding user’s data privacy and goes on a bit about privacy laws in the European Union. It also lists some of the theats to your own apps as a developer from reverse-engineering your app to MATE and MITM attacks.
As a final section this chapter presents great insights on how to protect your application, such as “Hiding the Map of your code” and making your reverse-engineered code harder to read , “Protecting network communications“, “Protecting against tampering”, not storing secrets or private info, not trusting the device you’re working for, performing threat modeling, and more.
The chapter end with an intresting list of tools and resources. I consider it the most informative part of this book.
When you come to planning your own development, determining the monetization business model should be one of the key elements of your early design as it might affect the functional and technical behavior of the app.
Pay per download, in-app payment, mobile advertising, sponsorships, revenue sharing, indirect sales and more are detailed in this chapter. The even good news is that this part of the book tells you how to “choose your monetization model” depending on your goals .
It is alot to be summed up here, as well as the rest of the book containing insights on Mobile analytics, Collecting and understanding user feedback, testing , accessibility, and alot more.
I obviously wont tell you about each part of this magical handbook in a blog post, but here goes my recommendations on what, how to ( and who can ) read it .
This guide is a must-read for those interested in creating and marketing mobile apps. I would also recommend it to those willing to start a business in the mobile environment. It’s a know-all-you-need about mobile development guide and it’s a great reference to consider.