Understanding inline, crossinline, noinline, reified, and where Keywords in Kotlin
A practical guide to Kotlin's inline, crossinline, noinline, reified, and where keywords, with code examples showing when each one matters and how they fit together.
In-depth guides on Android, Kotlin Multiplatform, iOS, web development, software architecture, and engineering careers. Written by David Cruz Anaya, a Senior Android & Kotlin Multiplatform engineer based in London and author of You Are Not That Important.
A practical guide to Kotlin's inline, crossinline, noinline, reified, and where keywords, with code examples showing when each one matters and how they fit together.
A practical guide to deciding when C++ belongs in an Android app. Learn the real use cases (audio, games, heavy compute, cross-platform cores), the hidden costs of the NDK and JNI, and a simple decision framework so you reach for native code only when it actually pays off.
After a redundancy or stalled senior-level job hunt, repeated rejections turn impostor reading into learned helplessness. The chain, the science, and the climb out for software developers.
Introducing Klarinet, an open-source Kotlin Multiplatform audio SDK that provides low-latency playback, recording, 16 built-in effects, and file I/O across Android and Apple platforms with a single API.
Every SaaS mobile app needs auth, onboarding, paywalls, and settings. I got tired of building them from scratch every time. So I built a production-ready Kotlin Multiplatform starter kit that ships Android and iOS apps in days, not months.
Learn how modern C++ features like constexpr, std::atomic, std::span, and RAII patterns work together with Google Oboe library to build real-time, low-latency audio apps on Android.
Master the art of building production-grade Kotlin Multiplatform applications with shared business logic across Android, iOS, and Next.js while maintaining native UI fidelity on each platform
Master the different Job types in Kotlin Coroutines and learn when to use Job, SupervisorJob, CompletableJob, and NonCancellable for building robust asynchronous applications
An Android developer's journey building a travel platform with Kotlin Multiplatform for shared business logic, Ktor for backend APIs, Supabase for auth/data, and Next.js for web including why Compose Multiplatform for Web was quickly discarded
How combining Rust's computational power with SwiftUI's elegance creates a blazing-fast financial charting app
Real-world case study: Achieving 6–80x speedups on technical indicators with Rust native code
A long time ago, I was asked to create some C++ code for specific functionality intended for use in both Android and iOS. I won't delve…
Picture this: a 10-year veteran engineer, respected by peers, known for shipping complex systems… who suddenly tanks a technical interview.
The "Add Two Numbers" problem on LeetCode is a classic linked list manipulation problem that comes up a lot in job interviews. This problem…
In the ever-changing world of software development, Kotlin Multiplatform (KMP) has emerged as a powerful tool for creating cross-platform…
Hey, fellow devs! Are you interviewing for a Flutter developer? Dart? and/or perhaps are on the brink of embarking on a new Flutter project…
If you are reading these lines is because you already know Kotlin and you are already or are expecting to face an interview in this field…
In 2014 I had the huge privilege of starting my career in software development as a Junior Game Developer coming from a ZERO commercial…
files with .kts extension are not new, but at some point in your Kotlin and/or Android development career you are likely to be in need of…
For the last few years, ConstraintLayout was an effective way to create complex UI for our Android applications. With Constraint Layout you…
With the release of Android Oreo (API 26) it include one feature, on my understanding, overshadowed with all that limitations, new…
On Android from the API level 3, when we run long background operation we did use IntentService allowing us to run this heavy operations…
Start typing to search…
Search across blog posts and portfolio projects