Sign in

Elyes Mansour

@elyesm.bsky.social
57 followers 173 following 124 posts

Android dev passionate about tech, science, and workplace culture. Based in Denmark and working at framna.com building different apps and teaching Android at dtu.dk. linktr.ee/elyesm

PostsRepliesMedia
Elyes Mansour @elyesm.bsky.social · 03/09/2026
My CMP app stutters on first launch on iOS then becomes smooth after a few interactions. It has to do with Skia compiling Metal shaders lazily on first draw, cached per install. Flutter fixed this with SkSL warm-up, then Impeller. Any equivalent in Skiko? #kotlinmultiplatform #kotlin
000
Elyes Mansour @elyesm.bsky.social · 30/01/2026
Interesting thought I read today: Agents make meetings more bearable The idea is that coding is the most cognitively costing task in engineering, requiring juggling lots of details in working memory to write it properly. 1/4
100
Elyes Mansour @elyesm.bsky.social · 04/01/2026
I was researching communication protocols in the context of mobile apps, and I thought a visualization might help sell the difference between them better. This is not perfect but good enough as a starting point. Created in Figma Make with Claude 4.5 Sonnet. #AndroidDev
030
Elyes Mansour @elyesm.bsky.social · 30/12/2025
I wish Surface had a signature that doesn't take a content parameter similar to Box. I find myself using Box with modifiers instead of Surface, when I need a styled (shape, color, shadow) composable that takes no content. I just hate writing the empty lambda at the end 😅 #AndroidDev
010
Elyes Mansour @elyesm.bsky.social · 24/12/2025
I built a mutli-agent system using Google ADK and gave a short presentation about it back in October. youtu.be/geHif1qXHf0 #AiAgent
youtu.be
Building AI Agents with Google ADK
YouTube video by Elyes Mansour
020
Elyes Mansour @elyesm.bsky.social · 23/12/2025
I love navigating the editor with shortcuts, but I'm missing a way to navigate vertically in the code without using the mouse. Do you have a nice shortcut for that? #AndroidDev
010
Elyes Mansour @elyesm.bsky.social · 22/12/2025
TIL library modules need the androidTest source set to run Compose previews on device. This took way too long to figure out. #AndroidDev
120
Elyes Mansour @elyesm.bsky.social · 15/12/2025
I'd like to share a talk where I shared how I'm starting to see the emotion of fear differently. Instead of running the other way when we feel fear, we could consider instead that it might be pointing us towards weaknesses where we can grow. youtu.be/dthDY7gkqYo
youtu.be
The Positive Side of Fear
YouTube video by Elyes Mansour
010
Elyes Mansour @elyesm.bsky.social · 11/12/2025
Shout out to the team maintaining Media3/ExoPlayer. I was about to create a custom preloading logic, and then I found out they added a built-in PreloadManager that does a lot of heavy lifting. And the cherry 🍒 on top is its good documentation 👏 developer.android.com/media/media3... #AndroidDev
developer.android.com
Use a preload manager for faster response  |  Android media  |  Android Developers
High-level overview of the DefaultPreloadManager documentation.
020
Elyes Mansour @elyesm.bsky.social · 09/12/2025
In this talk, I cover how to create a production grade Compose PDF reader with no 3rd party dependencies, that achieves simultaneous page zooming. We also cover many Compose basics, as well as advanced topics like performance, re-composition, and accurate zooming. youtu.be/joKLvMwzJx8 #AndroidDev
youtu.be
Advanced PDF Reader in Jetpack Compose
YouTube video by Elyes Mansour
030
Reposted by Elyes Mansour
Nick Butcher @nickbutcher.bsky.social · 03/12/2025
We just released Jetpack Compose 1.10 with new features and a number of performance improvements. What's your favourite thing in this release? I 💚 the improvements to shared elements. android-developers.googleblog.com/2025/12/what...
android-developers.googleblog.com
What's new in the Jetpack Compose December '25 release
News and insights on the Android platform, developer tools, and events.
1182
Reposted by Elyes Mansour
Jaewoong Eum (skydoves) @skydoves.bsky.social · 29/11/2025
Published a new article, 'RemoteCompose: Another Paradigm for Server-Driven UI in Jetpack Compose'. You’ll explore RemoteCompose, understand its core architecture, and discover the benefits it brings to dynamic screen design with Jetpack Compose. skydoves.medium.com/remotecompos...
skydoves.medium.com
RemoteCompose: Another Paradigm for Server-Driven UI in Jetpack Compose
Building dynamic user interfaces has long been a fundamental challenge in Android development. The traditional approach requires…
5337
Elyes Mansour @elyesm.bsky.social · 18/11/2025
I saw a useful post online on how to make the Logcat window open up besides the emulator instead of underneath which requires reducing the emulator's size. Source: Qamar A. Safadi www.linkedin.com/posts/qamar-... #AndroidDev
040
Elyes Mansour @elyesm.bsky.social · 04/11/2025
Is this Dynamic Island look alike Pixel specific or available in stock Android as well? I don't see anything about it in the new Progress Centric Notifications introduced in Android 16. #AndroidDev
220
Elyes Mansour @elyesm.bsky.social · 04/11/2025
Man it's so easy to get sidetracked by implementing things "properly" instead of focusing on what actually moves the needle. I have to figuratively slap myself out of it sometimes 😅 Not arguing for doing things sloppily though. It's a balancing act depending on the circumstances. #AndroidDev
020
Reposted by Elyes Mansour
Aurimas Liutikas @liutikas.net · 01/11/2025
If you are using Gradle and your per project configuration time (total configuration time / number of subprojects) is more than 100ms there is likely something suboptimal in your build set up. #gradle
6163
Elyes Mansour @elyesm.bsky.social · 30/10/2025
Cursor 2.0 was just released and it brought a lot of changes. Here are some highlights: - Multi-agents execution - Composer - its own coding model - Embedded browser - Sandboxing - similar to Claude Code - Team commands There are many more changes. You can read more here cursor.com/changelog/2-0
010
Elyes Mansour @elyesm.bsky.social · 19/10/2025
I was just reading the Material 3 design system docs, and I saw this snippet where they're explaining motion and citing iOS directly as an example. Pretty cool that they're openly acknowledging a competitor. #AndroidDev
140
Elyes Mansour @elyesm.bsky.social · 17/10/2025
Had a great time yesterday presenting at the GDG meetup in Copenhagen. I talked about my experience building my first open source library. Someone came up to me at the end, and told me it felt more like standup comedy. The best compliment I could wish for 😁 github.com/elyesmansour... #AndroidDev
020
Elyes Mansour @elyesm.bsky.social · 15/09/2025
I've been "abusing" Gemini's Deep Research feature lately. From researching kitchen ventilation systems in Denmark to latest French political news, it's been giving me great results and within just a few minutes. Deep Research is definitely one of the most useful applications of LLMs so far. #AI
100
Reposted by Elyes Mansour
John O'Reilly @johnoreilly.dev · 29/07/2025
Yay, Swift export now available by default in today's Kotlin 2.2.20-Beta2 release ! #KMP 🚀 kotlinlang.org/docs/whatsne...
2174
Elyes Mansour @elyesm.bsky.social · 16/07/2025
I'm happy that my Jetpack Compose library was featured in the latest edition of the jetc.dev newsletter 🎉 github.com/elyesmansour... #AndroidDev
github.com
GitHub - elyesmansour/compose-floating-tab-bar: A Jetpack Compose floating tab bar that mimics the iOS 26 Liquid Glass tab bar behavior.
A Jetpack Compose floating tab bar that mimics the iOS 26 Liquid Glass tab bar behavior. - elyesmansour/compose-floating-tab-bar
040
Elyes Mansour @elyesm.bsky.social · 14/07/2025
I've released my first open source library, a FloatingTabBar composable that mimics the new iOS Liquid Glass behavior. github.com/elyesmansour... This is my first ever open source contribution and it's been a very valuable experience. I hope you like it and find it useful! #AndroidDev
040
Elyes Mansour @elyesm.bsky.social · 10/07/2025
Is there any best practice for when to remember Modifiers and when not? #AndroidDev
310
Elyes Mansour @elyesm.bsky.social · 10/07/2025
I just had this funny chain of problems and solutions problem A > solution A -> creates: - problem B > solution B -> problem X > solution X - problem C > solution C -> problem Y > solution Y I hope this is the end of the chain 😅 And I don't see any way around solution A. #AndroidDev
010
Elyes Mansour @elyesm.bsky.social · 08/07/2025
Alright, today I progressed a bit in my maven central publishing adventure. I rewrote all the Git history to use the Github no-reply email address. And I finally managed to actually upload an artifact, but now I have validations issues to resolve. At least I got the gradle task to work 😅
000
Elyes Mansour @elyesm.bsky.social · 07/07/2025
Publishing to MavenCentral has a learning curve to say the least 😅 I was about to buy a domain, then learnt that my information would be exposed on whois. Not too long after I learnt that Github Pages exist! Now I'm messing with gradle configurations. Wish me luck 😄 #AndroidDev
030
Elyes Mansour @elyesm.bsky.social · 03/07/2025
Debugging sessions are much more enjoyable when they're performed like steady and calm science experiments rather than expecting fast results immediately then cursing in frustration because my programmer ego is hurt. #AndroidDev #Programming
020
Elyes Mansour @elyesm.bsky.social · 30/06/2025
Coding with AI teaches the discipline of going slower when we can go faster. We still own a 100% of the code. We can't review a 1000 lines of code in one go, but we can review them in small chunks. If we'd like to maintain quality, then we need to slow down the process to a human level. #ai
010
Elyes Mansour @elyesm.bsky.social · 30/06/2025
This is my current iteration on recreating the iOS 26 navigation bar on Android. I hope to release this soon as my first open source project 🤞 #AndroidDev
030
Elyes Mansour @elyesm.bsky.social · 28/06/2025
The shared element transition API in Compose is quite powerful. It allowed me to achieve exactly the custom behavior I need. And thanks to the documentation page below, I was able to understand how to resolve all the visual artifacts I was seeing. developer.android.com/develop/ui/c... #AndroidDev
070
Elyes Mansour @elyesm.bsky.social · 28/06/2025
Claude Code on Android Studio works like a charm. I'm just missing the "Review Changes" button in Cursor to see all the changes made since the last prompt. #AndroidDev #Claude
110
Elyes Mansour @elyesm.bsky.social · 19/06/2025
I just made this prototype for a floating navigation bar similar to iOS 26. Designing the API for this component was a nice exercise. #AndroidDev
060
Reposted by Elyes Mansour
Kotlin by JetBrains @kotlinlang.org · 13/06/2025
🚀 The HTTP Client plugin is now in Android Studio! Generate and run HTTP requests directly from your code, with support for Retrofit, OkHttp and Ktor. Enjoy seamless editor integration, code completion, and more. 🔗 Read our blog for full details! blog.jetbrains.com/blog/2025/06...
blog.jetbrains.com
Run HTTP Requests in Android Studio | The JetBrains Blog
We are happy to announce that our HTTP Client plugin is now available in Android Studio! HTTP Client is a powerful tool for making HTTP, gRPC, GraphQL, and WebSocket requests. Its text-based interf
24715
Elyes Mansour @elyesm.bsky.social · 11/06/2025
I learnt a bit of Swift today. Two things I found particularly nice are the: - `try? ...` expression which is the same as `getOrNull()` in Kotlin but actually built in the language. - Class de-initializers that can execute some cleanup code when an object is deallocated. #Swift #AndroidDev
010
Elyes Mansour @elyesm.bsky.social · 23/05/2025
Thanks @jetbrains.com for a greatly organized #KotlinConf, and thanks to all the speakers who shared their knowledge with us. The biggest thing I'm excited about is Koog, the Kotlin framework for building Agents. I'm already getting my hands dirty with it. #Kotlin
040
Elyes Mansour @elyesm.bsky.social · 18/05/2025
A few thoughts I had today on how to select the right software engineers during the age of AI. medium.com/@elyesmansou... #AndroidDev #Hiring #Software_Development
medium.com
Thoughts on hiring software engineers in the age of AI
Looking at different tasks I would expect a candidate to implement part of a take home assignment, and how AI can go a long way in…
000
Elyes Mansour @elyesm.bsky.social · 10/05/2025
TIL the Surface composable consumes touch events because internally it's using an empty `.pointerInput(Unit) {}` modifier. #AndroidDev
020
Elyes Mansour @elyesm.bsky.social · 09/04/2025
We stayed away from the Gemini assistant in Android Studio because it lacked a privacy policy for businesses. Now it's finally here 🎉 android-developers.googleblog.com/2025/04/gemi... #AndroidDev
android-developers.googleblog.com
Gemini in Android Studio for businesses: Develop with confidence, powered by AI
Gemini in Android Studio helps you bridge design mocks to Compose UI code, accelerating Android development and boosting developer productivity.
000
Elyes Mansour @elyesm.bsky.social · 28/03/2025
It was a thrill giving a talk at the GDG Meetup in Copenhagen. The topic was about how to create an advanced PDF reader in Android with Jetpack Compose. I've gained a lot of appreciation for PDF readers after making one myself. The amount of complexity hidden inside it is surprising! #AndroidDev
000
Elyes Mansour @elyesm.bsky.social · 28/03/2025
I was trying to solve the issue of having to recompose the whole tree when the value in `staticCompositionLocalOf` changes, by propagating the `State` object itself. Then I found we can simply use `compositionLocalOf` instead to only recompose the scopes that are using the value 👌 #AndroidDev
000
Elyes Mansour @elyesm.bsky.social · 25/03/2025
Thank you Compose team for making this `VelocityTracker` class that calculates velocity based on touch events 🙏 #AndroidDev
000
Elyes Mansour @elyesm.bsky.social · 19/03/2025
I tried Cursor for the first time today and it blew my mind. I managed to build a Slack bot and deploy it to a Cloudflare worker, which is something I've never done before. It feels so good to jump on a new tech and build something simple without having to go through a steep learning curve.
010
Reposted by Elyes Mansour
Jorge Castillo @jorgecastillo.dev · 13/03/2025
Tail recursion in Kotlin 🌀 A topic not many people is super familiar with. Wrote about it. open.substack.com/pub/effectiv...
open.substack.com
Tail recursion in Kotlin
Learn the concept of tail recursion and how to get the most out of it in Kotlin.
081
Elyes Mansour @elyesm.bsky.social · 11/03/2025
I created non-recomposing size modifiers to improve the regular ones that cause too many recompositions due to animations. The code is shared in the gist below. Feel free to copy it :) gist.github.com/elyesmansour... #AndroidDev
000
Elyes Mansour @elyesm.bsky.social · 25/02/2025
Is there a resource where we can track a list of devices supporting the 16kb page size? #AndroidDev
000
Elyes Mansour @elyesm.bsky.social · 24/02/2025
Hey #AndroidDev, are there good resources about conducting a technical interview as the interviewer?
000
Elyes Mansour @elyesm.bsky.social · 24/02/2025
I just went from using animateFloatAsState to Transition to finally Animatable 😅 #AndroidDev
510
Reposted by Elyes Mansour
Chris Banes @chrisbanes.me · 13/02/2025
🚀 Should you use Kotlin Sequences for Performance? I have always thought that using asSequence() was the way to optimize chained operations in Kotlin. But after benchmarking, the results shocked me: Sequences are often slower! 😱 #Kotlin #AndroidDev chrisbanes.me/posts/use-se...
chrisbanes.me
Should you use Kotlin Sequences for Performance?
Should you use Kotlin Sequences for performance? I put List, Sequence, and Flow to the test with kotlinx-benchmark, and the results were surprising!
155210
Elyes Mansour @elyesm.bsky.social · 10/02/2025
What's your take on rebasing and force pushing to solve merge conflicts for a PR with standing comments? Is there a case where it makes sense? #AndroidDev
000