This post explains how to treat a session with a local AI agent as a pair programming session, and how the four classic pairing styles map onto working with one. I’ll use Antigravity CLI for the concrete examples, though nothing here is specific to it. Swap in whichever agent sits in your terminal. The idea […] The post Pair Programming With Your AI Agent first appeared on Blundell.
Like every year, I binge-watched I/O. And like every year I came out the other side with more links than time. A fire-hose of announcements, most of which you’ll never touch, a handful of which will change how you work next week. Here I filter for you. Links to the sessions are inline so you […] The post Google I/O 2026: The Sessions Worth Your Time first appeared on Blundell.
Google just published a set of Android skills a collection of expert, AI-optimised instructions covering the most common and painful Android development workflows. (Upgrading to AGP 9, migrating XML layouts to Compose, wiring up Navigation 3.) AI automated step-by-step procedures grounded in official Android best practices. The GitHub repo defaults to wiring them into Gemini […] The post Android Skills: Expert Instructions for Your AI Agent first appeared on Blundell.
Forget just installing Android Studio and calling it a day. To operate at scale, you need a local environment that augments your engineering intuition with LLM-powered efficiency. Here is your Day 1 guide to setting up your machine for success. The post Zero to AI: An Android Developer’s Vital Local Setup first appeared on Blundell.
Tired of fixing endless linting errors? What if an AI could do it for you? In this post, we’ll walk through how to build a Python script that uses Google’s Gemini to automatically fix static analysis issues, exploring the process and the lessons learned along the way. This is a journey from a simple idea […] The post Linting, Automated: AI-Powered Static Analysis with Gemini first appeared on Blundell.
The intro before the intro. Like every year I watched the keynote & developer keynote with excitement, taking my usual notes and reactive thoughts as it streams. This year though instead of myself turning those thoughts into a blog post, I asked Gemini to do it! This post is the outcome of using Gemini’s new […] The post Google I/O 2025: AI Unleashed – What Android Devs Need to Know! first appeared on Blundell.
The forEach loop, are you using it without thinking? In Kotlin, empirically forEach is often the go-to loop, it’s pragmatically close at reach in the IDE auto-complete, but is it always the right choice? This post argues that for loops deserve more consideration, offering clarity and control that forEach sometimes lacks. Let’s discuss why a […] The post Choosing Wisely: for vs. forEach in Kotlin (A Thinking Dev’s Perspective) first appeared on Blundell.
This post gets you started with the new Gemma 3 model for on-device inference. Giving you the simplest steps to get started with AI on Android. Gemma 3 1B is a new model size in the Gemma family of open weight models. When deploying small language models (SLMs) in production settings, models need to be small […] The post Get started with Gemma 3 LLM on Android now! first appeared on Blundell.
This blog post explains how to create Room DAOs specifically for your Android debug build. These debug-only DAOs enable you to implement developer-centric features without affecting your production app. Keeping your codebase clean is essential for long-term maintainability. Debug-only DAOs help achieve this by isolating developer tools from user-facing features. Consider an app that caches […] The post Room Debug DAOs in Android: Streamlining Your Workflow first appeared on Blundell.
When introducing 3rd party libraries (like BugSee), often their configuration is dumped into your build.gradle/application:onCreate and mixed with everything else. This post shows you how to have cleaner, more maintainable code by creating your own gradle plugin. BugSee is a Flight recorder for your iOS and Android apps “See video, network and logs that led […] The post Android Bugsee SDK: Ignore the Docs, Do THIS Instead first appeared on Blundell.
Learn how to have runtime control of all parts of an animation or image, the color, opacity, scale, rotation .. any property within your SVG animation using Lottie Dynamic Properties. This tutorial is going to explain Lottie Dynamic Properties. Dynamic Properties are a way of controlling at runtime, the different parts of your animation. You […] The post Android Dynamic Animated SVGs (with Lottie Dynamic Properties) first appeared on Blundell.
This artical is a quick introduction into setting up the Gemini API client SDK on Android to perform Optical Character Recognition (OCR) on images. Let’s jump straight in: The Gemini API gives you access to the latest generative AI models from Google. Gemini is a series of multimodal generative AI models developed by Google. Gemini […] The post OCR with Gemini LLM on Android first appeared on Blundell.
Wanting to use the latest versions of Compose, but your app compileSdk is falling behind? I’ve been there! If you have a compileSdk 1.5.0 you’ll come across a horrid build error. Let’s fix that! The error is question is this: Compose dependencies with a version > […] The post Emoji error! Using the latest Compose with compileSDK first appeared on Blundell.
The correct, complete, 2024, settings to configure the Java version in Gradle for Android. The post Setting JDK level in Android Gradle builds first appeared on Blundell.
This post explains how you can inject dependencies into Android legacy singletons, or any classes that aren’t conforming to your current Android architecture, using Dagger & Hilt. I’ll cut straight to the chase, if you have a reference to Context, (which you usually always do in spaghetti legacy code) then you can use your normal […] The post Dependency Injection in Legacy Code first appeared on Blundell.
I wanted to brighten the screen, but all articles said you needed Android permissions. Codswallop! Here's how! The post Set Activity Screen Brightness without Permission first appeared on Blundell.
Quick blog posting showing you the build.gradle.kts version of the default build.gradle file from the “empty activity” Android Studio template. This post will go stale fast, get it whilst its hot. 🙂 The original templates come from the New Project, other templates are explained here: https://developer.android.com/studio/projects/templates Google has an explainer of converting build configuration scripts […] The post build.gradle.kts conversion for Android Studio Empty Activity first appeared on Blundell.
Learn the steps needed in a typical Android take home test. Giving you the tools and knowledge you need to ace this part of any Android interview process. The post Android Job Interview – Take-Home Test Cheat Sheet first appeared on Blundell.
This post aims to demystify some of the steps in a typical Android interview process. We’ll discuss steps, strategies, targets and solutions. Getting you better prepared to get your next Android role. This blog is from personal experience, caveat up front that your experience could be completely different, but I’ve been through A LOT of […] The post Proven Prepping for Easy Android Interviews in 2023 first appeared on Blundell.
This post shows you how to wrap a 3rd party Gradle plugin in your own plugin, so that you can interactive with it programmatically. The post Applying a 3rd Party Gradle Plugin as a Composite Plugin first appeared on Blundell.
Read at the source
Your visit, your choice.
Optional Google Analytics helps us understand visits. Microsoft Clarity records masked interactions to improve the site. Optional tools stay off unless you choose them. Privacy details.