Fco Pardo's Avatar

Fco Pardo

@mcena

Android & JVM developer. Opinions are my own, I don't buy them.

14
Followers
70
Following
21
Posts
20.11.2023
Joined
Posts Following

Latest posts by Fco Pardo @mcena

#AndroidDev anybody else getting terrible battery life after the android 16 update?

24.06.2025 06:17 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Being able to reply like that is priceless, though

13.05.2025 01:43 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Hey Jorge, I was looking at a trace today and I wondered... In android compose, does it make sense to render the view ahead of time, as a parallel to asynchronous inflation? Let's say I keep the compose root hidden until the network data arrives. Does compose reuse views internally on android?

12.05.2025 23:40 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Halo

11.05.2025 05:55 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Pretty sure many Android devs are still around on this platform.

Reply saying hi πŸ‘‹ so everyone can find you.

This will help people find a big bunch of colleagues to follow πŸ‘πŸ‘

RT this for more reach! πŸ™

10.05.2025 11:04 πŸ‘ 68 πŸ” 25 πŸ’¬ 66 πŸ“Œ 1

Damn. Not KMP too.

24.04.2025 06:33 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
mDevCamp 2025: 11th International Conference for Mobile Developers Join the 11th International Conference for Mobile Developers on June 2-3, 2025, at HoleΕ‘ovice Market. Connect, learn, and experience the future of mobile development!

At @mdevcamp.bsky.social, our own Filip DolnΓ­k is flipping the scriptβ€”bringing the iOS developer’s perspective on using KMP in production. πŸ’‘

If you're an #iOSDev exploring #KMP, this is your talk.

Real talk. Real lessons. Real Kotlin on iOS.
πŸ“ Prague
πŸ—“οΈ June 3
πŸ”— mdevcamp.eu#filip-dolnik...

11.04.2025 17:49 πŸ‘ 9 πŸ” 4 πŸ’¬ 0 πŸ“Œ 0

... You can deal with the data in the same fashion you do now, have react read it from native, as a prop (stateless function parameter in compose). Then you can compare against a stateless compose version

06.04.2025 18:27 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

It does not really make sense to go from compose to react. Compose fixes stuff affecting react, and kotlin allows to truly separate declarative UI code from everything else. So it will feel weird. Maybe try adding a RN screen/component to a compose app...

06.04.2025 18:25 πŸ‘ 1 πŸ” 0 πŸ’¬ 2 πŸ“Œ 0

I would argue we had all that, even without Rx. The difference is, you don't need much effort to pick up coroutines, and that's their biggest selling point. JVM concurrency is powerful, but it does need lots of practice.

06.04.2025 18:09 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

If Compose Multiplatform is drawing directly on iOs (like, through Core Graphics or similar), it would be more reliable, since the output would be pretty much guaranteed. If it is just repurposing SwiftUI/UIKit underneath, it would be as reliable as RN, perhaps more given the shared memory access

16.03.2025 08:36 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

You live the life made for you by the person you were 10 years ago. And there is a moment when you need to invest in things that aren't your career. Nobody gets younger while time passes.

20.02.2025 00:38 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Damn that's me.

But I'd like to point out, we were using regular java libraries. It was super fun to see your code explode after swapping out from Ant to Maven.

But it was fun.

23.01.2025 17:46 πŸ‘ 2 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

The saddest part is, that actually happens sometimes

14.01.2025 08:37 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

"ship it, ship it, ship it" oriented development.

05.01.2025 14:58 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

The baeldung blog would be a good starting point, it is very approachable, then you move into books and documentation.

04.01.2025 22:42 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Naming is Hard Before we dive into today’s topic, I would like to make it clear that what follows is specific to how Android, and more precisely the Android RunTime (ART), works. Some of what follows applies to othe...

New blog post! If you are a Kotlin or Java Android developer, this one should make you go 🀯.

www.romainguy.dev/posts/2024/n...

I'm not even sorry.

20.12.2024 00:57 πŸ‘ 148 πŸ” 45 πŸ’¬ 19 πŸ“Œ 12
A Podcast About The Entire History Of The Universe
A Podcast About The Entire History Of The Universe YouTube video by CrashCourse

throughly enjoying @astrokatie.com & @johngreensbluesky.bsky.social talking cosmology from big bang to universe's end ☺️
i'm so exhausted and this is so fascinating & soothing
on YT & podcast RSS: feeds.simplecast.com/ASAdCBih
youtu.be/L5YO9nmojo4?...

07.12.2024 20:12 πŸ‘ 148 πŸ” 18 πŸ’¬ 4 πŸ“Œ 1
Preview
Optimize String.toFloatOrNull() by romainguy Β· Pull Request #5364 Β· JetBrains/kotlin The existing implementation used a regular expression which caused memory allocations, which are expensive on mobile devices. In addition, a custom parser can outperform regular expressions. The ne...

JetBrains just merged my contribution to the Kotlin standard library. It's a rewrite of String.toFloatOrNull() to eliminate all allocations (~940 per call!) and go 225x faster on a Pixel 6. If you want to see how it was done: github.com/JetBrains/ko...

tl;dr regex out, hand-written parser in

22.11.2024 18:06 πŸ‘ 164 πŸ” 14 πŸ’¬ 8 πŸ“Œ 2

The CPU profiler, The Debug class traces and custom markers are the best way to diagnose this. I'll try to take a look.

18.11.2024 05:48 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

... It means your tasks are too serialized, forcing the app to wait all the time. Like a McDonalds with 10 doors and 1 cashier. Usually this points to the amount of JS callbacks. No matter the architecture, if you are running a callback from native, the others are not running.

18.11.2024 05:47 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

The CPU type can play a role too. An A12 has a 4+4 CPU. Android reduces both frequency and amount of awoke cores to save up energy. So, CPUs with multicore clusters tend to underperform with single thread tasks. Try a 1+3+4 or similar CPU. If the results are super different...

18.11.2024 05:45 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Native operations need to delegate the actual work to dedicated threadpools, and leave the module thread alone. That makes a huge difference.

You also need to consider the type of operation you are waiting for. If you are using the keystore for example, that adds a ton of time.

18.11.2024 05:37 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Do you have a specific feed to reproduce? For this kind of issue, the dataset is critical.

There are a ton of things to look for here.

I would start by profiling the CPU activity and check how optimal the associated native operations are.

18.11.2024 05:36 πŸ‘ 0 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

Everything eats CPU time. You need to balance the workload to ensure background work can't take over the entire CPU, and balance the background workload so no single work lane takes over the entire CPU portion dedicated to background work

08.11.2024 17:40 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Madurez es la peor razΓ³n para optar por RN. No sΓ³lo sigue siendo beta, sino que Meta pone cada vez menos esfuerzos en mantenerlo y delega en la comunidad, que estΓ‘ compuesta por gente que evita activamente adquirir el conocimiento necesario para mantener librerΓ­as.

07.12.2023 13:49 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0