Iรฑaki Bes ๐Ÿ“ฑ Android Architect โ“‹๐ŸŒฑ

@inakibes.bsky.social

๐Ÿ‘‰๏ธŽ Android developer ๐Ÿ‘‰๏ธŽ Kotlin | Kotlin Multiplatform | Testing | CI/CD | Koin | Compose | Legacy code | Java | Clean Code | Clean Architecture ๐ŸŒฑ #AndroidDev #Rural #SoyRural #Spain #Huesca

๐—ž๐—ผ๐—ถ๐—ป ๐—ถ๐—ป ๐—ž๐—ผ๐˜๐—น๐—ถ๐—ป ๐— ๐˜‚๐—น๐˜๐—ถ๐—ฝ๐—น๐—ฎ๐˜๐—ณ๐—ผ๐—ฟ๐—บ: ๐—ฎ ๐—ฐ๐—ผ๐—บ๐—ฝ๐—น๐—ฒ๐˜๐—ฒ ๐—ด๐˜‚๐—ถ๐—ฑ๐—ฒ ๐—ณ๐—ผ๐—ฟ ๐Ÿฎ๐Ÿฌ๐Ÿฎ๐Ÿฒ Koin is not tied to the Android framework. Unlike Hilt, it is fully decoupled from Android, which means the same dependency injection framework can run in KMP, backend services, desktop apps... blog.insert-koin.io/koin-in-kotl...

Koin in Kotlin Multiplatform: A Complete Guide

Annotate your classes. Let the compiler wire them. Ship to Android & iOS. Koin is simple and powerful.

blog.insert-koin.io

๐—ž๐— ๐—ฃ + ๐——๐˜‚๐—ผ๐—น๐—ถ๐—ป๐—ด๐—ผ + ๐Ÿฐ๐Ÿฌ๐— + ๐—ฑ๐—ฎ๐—ถ๐—น๐˜† ๐˜‚๐˜€๐—ฒ๐—ฟ๐˜€. ๐——๐˜‚๐—ผ๐—น๐—ถ๐—ป๐—ด๐—ผ ships weekly to more than 40 million daily active users on iOS and Android, and ๐—ž๐—ผ๐˜๐—น๐—ถ๐—ป ๐— ๐˜‚๐—น๐˜๐—ถ๐—ฝ๐—น๐—ฎ๐˜๐—ณ๐—ผ๐—ฟ๐—บ is becoming central to how they scale development. ๐Ÿš€ 2025.kotlinconf.com/talks/812400/

Bild

If you have a teammate who loves abbreviating variable names like usrCfgTmp2 or calcFnx, do them a favor: ๐—บ๐—ฎ๐—ธ๐—ฒ ๐˜๐—ต๐—ฒ๐—บ ๐—ฐ๐—ผ๐—ฑ๐—ฒ ๐—ถ๐—ป ๐—ฏ๐—ฎ๐˜€๐—ต ๐—ณ๐—ผ๐—ฟ ๐—ฎ ๐˜„๐—ต๐—ถ๐—น๐—ฒ After a few hours of juggling -z, -f, $1, $?, and [ ! -d "$x" ], theyโ€™ll suddenly understand why the rest of the dev world asks for descriptive variable names

๐—ช๐—ฒ ๐—ฎ๐—น๐—น ๐˜๐—ต๐—ผ๐˜‚๐—ด๐—ต๐˜ ๐—ถ๐˜ ๐˜„๐—ผ๐˜‚๐—น๐—ฑ ๐—ป๐—ฒ๐˜ƒ๐—ฒ๐—ฟ ๐—ฐ๐—ผ๐—บ๐—ฒ and that OpenAI was focused on other types of products; but itโ€™s here ๐Ÿคฏ ๐Ÿคฏ ๐Ÿ˜ณ ๐—ข๐—ฝ๐—ฒ๐—ป๐—”๐—œ ๐—ต๐—ฎ๐˜€ ๐—ท๐˜‚๐˜€๐˜ ๐—ฟ๐—ฒ๐—น๐—ฒ๐—ฎ๐˜€๐—ฒ๐—ฑ ๐—–๐—ผ๐—ฑ๐—ฒ๐˜… ๐—”๐—ฝ๐—ฝ, its agentic coding tool: openai.com/index/introd...

Introducing the Codex app

Introducing the Codex app for macOSโ€”a command center for AI coding and software development with multiple agents, parallel workflows, and long-running tasks.

openai.com

๐— ๐˜‚๐—น๐˜๐—ถ๐—ฝ๐—น๐—ฎ๐˜๐—ณ๐—ผ๐—ฟ๐—บ ๐—ฝ๐—ฎ๐˜๐˜๐—ฒ๐—ฟ๐—ป๐˜€ ๐—ถ๐—ป ๐—ž๐—ผ๐˜๐—น๐—ถ๐—ป ๐—ฎ๐—ป๐—ฑ ๐—–๐—ผ๐—บ๐—ฝ๐—ผ๐˜€๐—ฒ ๐—ณ๐—ผ๐—ฟ ๐—ถ๐—ข๐—ฆ ๐—ถ๐—ป๐˜๐—ฒ๐—ฟ๐—ผ๐—ฝ๐—ฒ๐—ฟ๐—ฎ๐—ฏ๐—ถ๐—น๐—ถ๐˜๐˜† ๐Ÿ“ฑ๐ŸŽ The talk was presented at droidcon London 2025 ๐ŸŽค www.youtube.com/watch?v=0gnB... #kotlinmultiplatform #kmp #composemultiplatform #iosdev #crossplatform #droidcon #android #androiddeveloper #kotlin #AndroidDev

Kotlin and Compose Multiplatform patterns for iOS interop - John O'Reilly | droidcon London 2025

YouTube video by nextapp devCon

youtube.com

๐— ๐—ถ๐˜€๐˜๐—ฟ๐—ฎ๐—น ๐—ฟ๐—ฒ๐—น๐—ฒ๐—ฎ๐˜€๐—ฒ๐˜€ ๐—ฉ๐—ถ๐—ฏ๐—ฒ ๐Ÿฎ.๐Ÿฌ, ๐—ถ๐˜๐˜€ ๐—ป๐—ฎ๐˜๐—ถ๐˜ƒ๐—ฒ ๐˜๐—ฒ๐—ฟ๐—บ๐—ถ๐—ป๐—ฎ๐—น ๐—ฝ๐—ฟ๐—ผ๐—ด๐—ฟ๐—ฎ๐—บ๐—บ๐—ถ๐—ป๐—ด ๐—ฎ๐—ด๐—ฒ๐—ป๐˜, now powered by the Devstral 2 model family. mistral.ai/news/mistral...

Terminally online Mistral Vibe. | Mistral AI

mistral.ai

๐—ฃ๐—ฎ๐—ด๐—ฒ๐—œ๐—ป๐—ฑ๐—ฒ๐˜… ๐—ฝ๐—ฟ๐—ผ๐—ฝ๐—ผ๐˜€๐—ฒ๐˜€ ๐—ฎ๐—ป ๐—ถ๐—ป๐˜๐—ฒ๐—ฟ๐—ฒ๐˜€๐˜๐—ถ๐—ป๐—ด ๐—ฎ๐—น๐˜๐—ฒ๐—ฟ๐—ป๐—ฎ๐˜๐—ถ๐˜ƒ๐—ฒ ๐˜๐—ผ ๐˜๐—ฟ๐—ฎ๐—ฑ๐—ถ๐˜๐—ถ๐—ผ๐—ป๐—ฎ๐—น ๐—ฅ๐—”๐—š ๐Ÿ‘ˆ ๐Ÿ’ฏ The key difference is conceptual: - Classic RAG asks โ€œwhich fragments are similar to the query.โ€ - PageIndex asks โ€œwhere would an expert look for this answer within the document.โ€ github.com/VectifyAI/Pa...

GitHub - VectifyAI/PageIndex: ๐Ÿ“‘ PageIndex: Document Index for Vectorless, Reasoning-based RAG

๐Ÿ“‘ PageIndex: Document Index for Vectorless, Reasoning-based RAG - VectifyAI/PageIndex

github.com

๐— ๐—–๐—ฃ ๐—”๐—ฝ๐—ฝ๐˜€ ๐—ฎ๐—ฟ๐—ฟ๐—ถ๐˜ƒ๐—ฒ๐˜€: ๐—ต๐˜‚๐—บ๐—ฎ๐—ป๐˜€ ๐—น๐—ฒ๐—ฎ๐—ฑ ๐—ฎ๐—ป๐—ฑ ๐—บ๐—ฎ๐—ป๐—ฎ๐—ด๐—ฒ ๐Ÿค๐Ÿค– ๐— ๐—–๐—ฃ ๐—”๐—ฝ๐—ฝ๐˜€ closes that gap, and AI can now provide a UI to interact with it in specific contexts. This UI can emit events, open links, send messages, or silently update context. modelcontextprotocol.github.io/ext-apps/api/

@modelcontextprotocol/ext-apps - v1.0.1

Documentation for @modelcontextprotocol/ext-apps

modelcontextprotocol.github.io

๐—ฆ๐—ธ๐—ถ๐—น๐—น๐˜€ ๐˜ƒ๐˜€ ๐—–๐—ผ๐—บ๐—บ๐—ฎ๐—ป๐—ฑ๐˜€ โ†’ ๐—ฆ๐—ธ๐—ถ๐—น๐—น๐˜€ ๐˜„๐—ถ๐—ป ๐Ÿง โš™๏ธ Codex and Claude Code have decided to drop commands in favor of skills. The truth is, both features served the same purpose in different ways. I never fully understood when to use one or the other.

๐—š๐—ถ๐˜๐—›๐˜‚๐—ฏ ๐—ผ๐—ฝ๐—ฒ๐—ป๐˜€ ๐—ถ๐˜๐˜€ ๐—–๐—ผ๐—ฝ๐—ถ๐—น๐—ผ๐˜ ๐—–๐—Ÿ๐—œ ๐—ฎ๐˜€ ๐—ฎ ๐—ฝ๐—ฟ๐—ผ๐—ด๐—ฟ๐—ฎ๐—บ๐—บ๐—ฎ๐—ฏ๐—น๐—ฒ ๐—ฆ๐——๐—ž ๐Ÿ’ฏ ๐Ÿš€ Now in technical preview, the GitHub Copilot SDK can plan, invoke tools, edit files, and run commands as a programmable layer you can use in any application. github.com/github/copil...

GitHub - github/copilot-sdk: Multi-platform SDK for integrating GitHub Copilot Agent into apps and services

Multi-platform SDK for integrating GitHub Copilot Agent into apps and services - github/copilot-sdk

github.com

๐—–๐—น๐—ฎ๐˜‚๐—ฑ๐—ฒ ๐˜€๐—ผ๐—น๐˜ƒ๐—ฒ๐˜€ ๐—ฐ๐—ผ๐—ป๐˜๐—ฒ๐˜…๐˜ ๐˜€๐—ฎ๐˜๐˜‚๐—ฟ๐—ฎ๐˜๐—ถ๐—ผ๐—ป ๐˜„๐—ต๐—ฒ๐—ป ๐˜„๐—ผ๐—ฟ๐—ธ๐—ถ๐—ป๐—ด ๐˜„๐—ถ๐˜๐—ต ๐— ๐—–๐—ฃ๐˜€ ๐Ÿ’ฏ๐Ÿ’ฏ Instead of loading all MCP tools and capabilities into the prompt (and burning thousands of tokens), ๐—–๐—น๐—ฎ๐˜‚๐—ฑ๐—ฒ ๐—ฑ๐—ถ๐˜€๐—ฐ๐—ผ๐˜ƒ๐—ฒ๐—ฟ๐˜€ ๐—ฎ๐—ป๐—ฑ ๐—น๐—ผ๐—ฎ๐—ฑ๐˜€ ๐˜๐—ผ๐—ผ๐—น๐˜€ ๐—ผ๐—ป ๐—ฑ๐—ฒ๐—บ๐—ฎ๐—ป๐—ฑ ๐˜ƒ๐—ถ๐—ฎ ๐˜๐—ผ๐—ผ๐—น ๐˜€๐—ฒ๐—ฎ๐—ฟ๐—ฐ๐—ต. platform.claude.com/docs/en/agen...

Tool search tool

Claude API Documentation

platform.claude.com

๐—”๐—š๐—ฃ ๐Ÿต.๐Ÿฌ ๐—ถ๐˜€ ๐—ป๐—ผ๐˜ ๐—ฎ ๐—ฟ๐—ผ๐˜‚๐˜๐—ถ๐—ป๐—ฒ ๐˜‚๐—ฝ๐—ฑ๐—ฎ๐˜๐—ฒ โš ๏ธ It changes how Kotlin and KMP are wired into Android. Full details and migration guides are in the JetBrains blog: blog.jetbrains.com/kotlin/2026/...

Update your Kotlin projects for Android Gradle Plugin 9.0 | The Kotlin Blog

Learn how to migrate your projects to AGP 9.0 by moving to built-in Kotlin and the new Android KMP library plugin.

blog.jetbrains.com

๐—”๐—ป๐—ฑ๐—ฟ๐—ผ๐—ถ๐—ฑ ๐—ฆ๐˜๐˜‚๐—ฑ๐—ถ๐—ผ ๐—ฑ๐—ผ๐˜‚๐—ฏ๐—น๐—ฒ๐˜€ ๐—ฑ๐—ผ๐˜„๐—ป ๐—ผ๐—ป ๐—”๐—œ ๐—ถ๐—ป๐˜๐—ฒ๐—ด๐—ฟ๐—ฎ๐˜๐—ถ๐—ผ๐—ป ๐Ÿค–๐Ÿงฉ โ€ข LLM model flexibility โ€ข More autonomous agent mode โ€ข Changes Drawer for edit control โ€ข Multiple conversation threads โ€ข Journeys: natural language E2E tests โ€ข Remote MCP server integration โ€ข AI inside the Compose UI workflow #AndroidDev

Bild

๐Ÿ’ฏ ๐—ก๐—ฒ๐˜„ ๐—ถ๐—ป ๐—ž๐—ผ๐˜๐—น๐—ถ๐—ป ๐— ๐˜‚๐—น๐˜๐—ถ๐—ฝ๐—น๐—ฎ๐˜๐—ณ๐—ผ๐—ฟ๐—บ: ๐˜€๐—ต๐—ฎ๐—ฟ๐—ฒ๐—ฑ ๐—ฟ๐—ฒ๐˜€๐—ผ๐˜‚๐—ฟ๐—ฐ๐—ฒ๐˜€ ๐—ฎ๐—ฐ๐—ฟ๐—ผ๐˜€๐˜€ ๐—บ๐—ผ๐—ฑ๐˜‚๐—น๐—ฒ๐˜€ ๐Ÿ’ฏ This enables type-safe, multiplatform access to drawables, strings, fonts, raw files, Android assets, and web-specific resources, simplifying resource management in multi-module Kotlin Multiplatform projects.

Bild

A different approach to ๐—ฆ๐—ฝ๐—ฒ๐—ฐ-๐——๐—ฟ๐—ถ๐˜ƒ๐—ฒ๐—ป ๐——๐—ฒ๐˜ƒ๐—ฒ๐—น๐—ผ๐—ฝ๐—บ๐—ฒ๐—ป๐˜ (๐—ฆ๐——๐——) ๐˜„๐—ถ๐˜๐—ต ๐—ง๐—ฒ๐˜€๐˜€๐—น. The emphasis is not speed alone, but ๐—ฝ๐—ฟ๐—ฒ๐—ฑ๐—ถ๐—ฐ๐˜๐—ฎ๐—ฏ๐—ถ๐—น๐—ถ๐˜๐˜†, ๐˜๐—ฟ๐—ฎ๐—ฐ๐—ฒ๐—ฎ๐—ฏ๐—ถ๐—น๐—ถ๐˜๐˜†, ๐—ฎ๐—ป๐—ฑ ๐—น๐—ผ๐—ป๐—ด-๐˜๐—ฒ๐—ฟ๐—บ ๐—บ๐—ฎ๐—ถ๐—ป๐˜๐—ฎ๐—ถ๐—ป๐—ฎ๐—ฏ๐—ถ๐—น๐—ถ๐˜๐˜† ๐—ถ๐—ป ๐—”๐—œ-๐—ฎ๐˜€๐˜€๐—ถ๐˜€๐˜๐—ฒ๐—ฑ ๐˜€๐—ผ๐—ณ๐˜๐˜„๐—ฎ๐—ฟ๐—ฒ ๐—ฑ๐—ฒ๐˜ƒ๐—ฒ๐—น๐—ผ๐—ฝ๐—บ๐—ฒ๐—ป๐˜. tessl.io

Bild

๐—ก๐—ฒ๐˜„ ๐—ข๐—Ÿ๐— ๐—ผ ๐—บ๐—ผ๐—ฑ๐—ฒ๐—น๐˜€ ๐—ฎ๐—ฟ๐—ฒ ๐—ป๐—ผ๐˜„ ๐—น๐—ถ๐˜ƒ๐—ฒ ๐—ผ๐—ป ๐—ข๐—น๐—น๐—ฎ๐—บ๐—ฎ ๐Ÿš€๐Ÿง  If you run LLMs locally, this one matters. ๐—ข๐—Ÿ๐— ๐—ผ ๐Ÿฏ.๐Ÿญ and ๐—ข๐—Ÿ๐— ๐—ผ ๐Ÿฏ from the Allen Institute for AI are now available. #ollama #llm #ai #localai #machinelearning #kotlin #AndroidDev