blog

The developers respond: interview with Julio Rivas

Xataka Móvil interviewed Julio Rivas for their report "Development of mobile apps (II): Which mobile platforms should we develop for and which one should come first?"
Read in Spanish →
Read in English →

Could you introduce yourself and tell us what you do and what the company you work for does?

My name is Julio Rivas and I currently work as Lead iOS Developer at TAPTAP Networks. At TAPTAP, we have two main lines of work: one the one hand, there are different advertising SDKs (SonataAds, NativeAds, etc.) and, on the other hand, we develop new apps for our clients.  

Chosen platform(s)On which platform do you develop apps/games for mobile devices?

When we take on a project, we always develop it at least for iOS and Android and mobile websites have sometimes been developed as well.  

What are the reasons for this choice? Are there technical reasons that make it easier or more interesting to develop in one or the other?

The main reason is to try to reach the largest possible number of users. We also have a great team with a lot of experience in native development, which helps.  

In what languages are the mobile apps you develop mainly coded?

iOS apps are developed natively in Objective-C, using all the proprietary tools provided by Apple (Xcode, Cocoa, Interface Builder, etc.) along with real devices for testing. We also use a series of third-party frameworks for different features, such as statistics, push notifications, error monitoring, etc. My Android colleagues develop in Java along with the new Google IDE: Android Studio.

How is development planned? Which factors are taken into account when approaching a new project? Do you think about issues such as different screen sizes and resolutions, different formats (perhaps specific apps for tablets), security, privacy or even energy efficiency?

We always try to work with efficient methods and we always try to use Kanban or scrum in our internal projects and do weekly springs along with partial deliveries. The problem arises when you're working in projects for customers since applying these methods is sometimes complicated, depending on their degree of involvement and the deadlines that need to be met. Regarding more technical details, in the end it depends on the technical specifications of the project at hand. Right now, in the iOS division, we believe that developing new projects for an iOS version lower than 7.0 is not worth the effort, since we can reach over 80% of the market with it. It's different in the case of ad libraries, since we cover all versions from iOS 5.0 so we can support almost 100% of the market.

How is something as important as the user interface and usability handled in mobile apps? What part of the success of an app or game is due to this factor (perhaps a percentage, such as "60%")?

Obviously, the user interface is almost the most important part of an app since, as we usually say, the product has to be eye-catching. This is where our UI/UX colleagues come in as they're the best qualified to do this, even though we developers are always trying to do our bit by keeping up to date with the latest trends and the apps of the moment.

Speaking of tablets, when it comes to iOS, there's a clearly defined catalogue of iPads but, for Android, this option is much more diluted. Why?

As you say, iOS developers are lucky in this regard since we practically only have to deal with one device, even though, in some cases, we do take into account different OS versions. When it comes to Android, in my opinion, this is a big problem but my Android colleagues would know more about this.

If you work with different mobile platforms, could you describe their main advantages and disadvantages?

I am very specialised in iOS. I've been working with this technology almost since it came out but I've also taken a course or two on Android and I can say that the great difficulty that Android presents compared to iOS is fragmentation due to the large number of operating system versions and screen sizes. I think this is an obstacle for this technology.

Is there any particularly promising platform for developers because of its philosophy, tools or community?

For the time being, I'm still betting on iOS and Android. It's true that Windows Phone is gaining ground but it's still in its infancy and I think they've come too late. Regarding web technologies, such as PhoneGap or Firefox OS, these have great projection but they're very green right now and, at the moment, you can notice a great qualitative leap between native development and web development.

Again, if you work with different mobile platforms, is it easy to transfer (port) development from one to the other in a simple way? If so, which base platform is usually chosen?

In the case of hybrid apps developed in HTML5, it's really fast, using platforms such as PhoneGap but, in the case of native apps, it's a bit complicated since the technologies are completely different even though the philosophy is actually the name.

Developer communityIs there a lot of action in the developer community? Do you share knowledge?

The truth is we do. Social networks and the different developer communities are a source of infinite knowledge and, thanks to them, you can stay up to date about the latest trends. Furthermore, in this world, you are in a continuous learning process. If you're not up with the latest news, you're dead.

Is there a feeling that either Apple, Google or Microsoft treats the developer community better?

The developers of each technology will tell you that they're community is the best one but the truth is that there's plenty of information for everyone even though it's true that, with Apple, a single communication channel is missing, unlike what the Android community has with Google+.

Why?

I guess that, like everything else, each technology will try to keep their developers as happy as possible but they're not always successful. I'm a big fan of forums, blogs and especially stackoverflow, where you can find information about everything.

HTML5Mozilla and Firefox OS–among others–advocate for a market where HTML5 apps are the fundamental pillar of their markets. Is HTML5 the future?

They obviously have good foundation to be successful in the future in light of the capabilities of HTML5 and the large number of expert developers in web technologies but I think they're still far away from native development and that, at least right now, there's a big difference in the quality of apps developed in HTML5 and native ones (iOS/Android).

It doesn't look like iOS will focus too much on this type of solutions but Google does have Chrome OS for desktops as an alternative where HTML5 is key. Do you see iOS and Android adopting this type of solutions at a large scale?

I sincerely don't think so but, in the end, figures are what matters and if HTML5 gains market share from iOS and Android, they're going to have to react.

Today, with everything that HTML5 provides, is it possible to develop mobile apps and games with the same capabilities as those developed with native SDKs?

I don't think so but I'm sure that, if you were to ask HTML5 developers, they'd tell you the opposite. However, the user experience is not the same and, in the end, that's what makes the success of a product. I can think of a couple of examples, such as Facebook and LinkedIn, who developed their apps in HTML5 and, in the end, they had to rebuild the native ones. What's more, I think Mark Zuckerberg said in an interview that the decision to make the Facebook app in HTML5 was one of his worst decisions.

To become the best, what is HTML5 missing?

HTML5 experts can better help you on this matter but, in my opinion, the feeling of fluidity isn't comparable to native developments.  

Monetization. How do you monetize apps? Which models do you consider and, in your opinion, which are the most profitable?

At TAPTAP Networks, we work in advertising so, as you can imagine, our way to monetise all our investments is through this. We have different advertising products along with a very large network of premium advertisers, which makes it all possible. In my opinion, the best model to monetise apps is to distribute them freely with advertisements and, depending on the type of development, include in-app purchases.

It seems that in-app purchases are currently the most successful for developers. Do you think this model will continue into the future?

I think so. It's a very good model where users can buy more contents based on their preferences. The only downside I can think of are the percentages kept by both Apple and Google when you use their native systems.

What other future options do you see in this field?

I think NFC is a good option that hasn't been completely exploited. I think it's an extremely convenient payment system in countries like Japan, where it's a reality already and people use it all the time. But, like in many cases, until a bigwig like Apple focuses on it, it won't become successful worldwide.

The enormous variety of alternatives makes it complicated to monetise an app or game and achieve financial profitability. What do you think makes the success of a project and its profitability?

I think the success of a project, beyond its interface or even its reliability, is a good marketing campaign. Many developers don't take this aspect into account but it's almost as important as the product itself. Without a good marketing campaign that advertises the product on different media, it'll be impossible to reach a large number of potential users and be successful in the end.

Tips for those entering the field of mobile developmentDo you have any tips for young developers at the technical level?

Perseverance and passion are key and not only at the professional level. If this is something they like, I recommend young developers not to be afraid and delve fully into it but keeping in mind that you can't start building a house from the roof so it's good to start by studying the foundations and architecture of a technology before beginning to develop. Once they know the foundations, I recommend that they start to develop and get involved in different communities and development forums.

And on a practical level?

On a practical level, there's no better source of inspiration than the market itself so I recommend that they try to pay attention to new apps so they can stay up to date with the latest trends. Personal contact is also important so I recommend attending conferences and events since you'll meet many people and you'll be able to learn a lot.

Taptap
March 25, 2014

By checking the box, you consent to receive news and product information from Taptap Digital that may be of interest to you. For more information see our privacy policy.
Thank you!
Download Now
Oops! Something went wrong while submitting the form.

Get in Touch

We’d love to hear from you!