The video on-demand of this session is available to logged in QCon attendees only. Please login to your QCon account to watch the session.

Session + Live Q&A

Modern Mobile Development: Native vs Cross-Platform

A question every mobile app project has to ponder is: do we want to go native, or do we want to use a cross-platform framework? And if you go the cross-platform route, which framework better suits our needs?

The choice is never easy, and requires a holistic understanding of the project’s needs, and the specific strengths and weaknesses of each approach. No two products are alike, no two companies are alike, and as such, there is no absolutely right answer. On the other hand, there are potentially many “wrong” answers that we need to identify. So, how to choose? As the common refrain in software engineering goes, “it depends”.

This session aims at giving you the knowledge and tools necessary to make the best possible choice for your product, not just from a technical point of view, but also considering the impacts on the teams and the company. By covering some history of cross-platform frameworks, and identifying the unique pros and cons of each potential approach, we’ll reach a better understanding of the question itself, and get ready to make one of the most impactful choices for your product.

Main Takeaways

1 Hear about frameworks for mobile development, some of their history, pros and cons.

2 Learn how to make the best decision for a mobile app-building framework.


Sebastiano, what is the focus of your work these days?

I work at JetBrains, and I am the team lead on the package search team, which is a sub product of IntelliJ IDEA, our flagship IDE. Our goal as a team is to make developers' lives easier, managing and finding new dependencies for the project. We know what dependencies are out there for your JVM-based project and we will tell you if there are updates, we'll let you search for new dependencies directly in the IDE searching not just maybe in central, but other repositories as well, depending on what you need. We also have a website that you can use if you don't want to use the IDE plugin, but you can also find our plugin bundled in IntelliJ starting from version 2021.2.

And what is the motivation for your talk?

The motivation for my talk is that I used to be a mobile engineer. I used to be team lead on a mobile team in an agency, and I have seen a lot of companies decide whether they wanted to use native application development versus some cross-platform framework. And I've seen people make this choice without really understanding what it means in practical terms for themselves, for their company, for the team, for the people that have to work on it and for the long term maintenance of their product. So I want to help people as much as possible to figure out what's what. What are the key aspects that they need to consider when they look at their product and they need to decide this because this is not a small decision. This is a decision that is fundamental. It's like deciding which cloud provider you want to use. Once you have done it, sure you can switch at some point, but it's not going to be painless. So it's the best way to make this kind of choice with as much information as possible.

How would you describe the persona and the level of the target audience?

This talk is going to be targeted at people that are in the position of making this choice, people that are team leads, architects, CTOs; that kind of level is what I'm aiming at because it is going to be interesting for maybe the people that already work, let's say, in the trenches, in the development team. But ultimately, it's unlikely they're going to be the ones making this choice, probably it's going to be made from above them. I'm trying to bring up things that maybe people in the development team know or feel, and bring them up to give them more visibility in the higher strata of the organization.

And what do you want this persona to walk away with from your presentation?

I want everyone that comes to this talk to understand if they need to use a cross platform framework, if it makes sense for them, and if it does make sense for them, I want to help them choose which one to use because there is a lot of them out there and they're all very different, even though some of them look similar. They might have the same principles behind them, but they are addressing very different audiences and very different needs. So I want to help people understand which one is best for them, if any.  


Speaker

Sebastiano Poggi

Team Lead @jetbrains

Sebastiano is an experienced Software Engineer — growing his interest from a hobby into a career, in areas ranging from industrial automation and mechatronics to a full time mobile and desktop development. His first full-time job as an Android developer came in early 2012 at “i'm...

Read more
Find Sebastiano Poggi at:

Date

Tuesday May 10 / 11:10AM EDT (50 minutes)

Track

Current Trends in Frontends

Topics

Mobile DevelopmentMobileFrontendsDevelopmentUXUser Interface

Add to Calendar

Add to calendar

Share

From the same track

Session + Live Q&A Frontends

Micro-Frontends Anti-Patterns: 7 Years in the Trenches

Tuesday May 10 / 10:00AM EDT

Micro-Frontends are the distributed architecture for the user interfaces that are solving not only technical but also organizational challenges.  In this session, you will learn the most common anti-patterns I've seen in the past 7 years of implementing and consulting multiple companies...

Luca Mezzalira

Principal Solutions Architect @AWS

Session + Live Q&A Frontends

Google’s Flutter: Mobile, Web & Desktop Frontends from 1 Codebase?

Tuesday May 10 / 12:20PM EDT

The phone is the main computer for consumers today. Even enterprise users increasingly rely on mobile devices. Now native mobile applications often provide a better user experience than web applications. But developing two different applications for iOS and Android is usually too...

Karsten Silz

Senior Full-Stack Java Developer

Session + Live Q&A Frontends

Module Federation: The Federated Applications Revolution

Tuesday May 10 / 01:30PM EDT

When we work on distributed architectures we face several challenges like how to split the domains, how to create independent teams, or how to deploy multiple times per day without external impediments.  In this talk, I'll go into detail about Module Federation as well as share design...

Zack Jackson

Principal Engineer @lululemon

View full Schedule