Hi there đź‘‹

Welcome to MangoDriod, my personal tech blog. I am Eknath, a software developer and a tech enthusiast. I write about software development, tech, and other things that interest me, the thoughts are purely mine but the articles may be written by AI tools, i consider these as a personal note for me hence i publish them here. I hope you find something useful here. Feel free to reach out to me on social media or directly via email mail@eknath.dev.

Ollama & Goose cli - Offline Agent setup

Fair Warning Make sure you are using a capable system — ideally with a powerful CPU, GPU, and adequate cooling — before running large language models locally. LLMs can consume significant resources, generate substantial heat, and may cause system instability or damage if your hardware isn’t up to the task. Please proceed with caution! This guide walks you through setting up Ollama (with deepseek-r1-goose) and Goose CLI. Step 1: Download & Install Ollama curl -fsSL https://ollama.com/install.sh | sh Or, if you prefer to download manually then checkout:https://ollama.com/download Ollama-SetUpGuide ...

June 20, 2025 Â· 2 min

Recommended Command Line Tools

Terminal is lit already but these are some must have commandline tools that i use and i think you must have too. HomeBrew Homebrew is a package manager for macOS (and Linux) that lets you easily install, update, and manage software and developer tools from the command line. # Installation command /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" After running the above command, just restart the terminal and you are good to go, before we start installing stuff lets understand what is formula and cask in brew context. ...

June 17, 2025 Â· 6 min

Basic Bash Commands

One of my mentors, RWX-Rob, runs online bootcamps called Boost, where he shares tech industry standards. A key lesson he emphasizes is the importance of learning Linux and working with its Bash command-line. Mastering the terminal has helped me save time and stay focused. These are my quick reference notes — not an exhaustive list, but the commands I use most often and im sure it will be useful for you too. ...

June 11, 2025 Â· 5 min

Google IO 2025 Updates Filtered for Android Developers

Google I/O 2025 just wrapped up, and as usual, it delivered a wave of exciting announcements and updates for Android developers. From revolutionary testing tools to enhanced IDE features and broader device support, this year’s I/O promises to streamline workflows and unlock new possibilities, if you missed and like to watch them,(here is the playlist)[https://youtube.com/playlist?list=PLWz5rJ2EKKc86SrjccwTtBzH4Ptu3Mrai&si=1BMDinkRFfi4dL9S] Journeys: Reshaping End-to-End Testing One of the standout announcements that immediately resonated with me was Journeys. This new feature in Android Studio is poised to transform how we approach end-to-end testing, making it significantly easier to write and maintain robust tests. ...

May 26, 2025 Â· 5 min

Mastering Raw Queries in Room: Why, When & When Not to Use Them (#OF06)

In the previous article, we explored the power and flexibility of DAOs with Room’s built-in query annotations. But what if your query needs don’t fit into Room’s constraints? Enter @RawQuery – the most flexible and dangerous tool in the Room arsenal. Let’s dive into what @RawQuery is, when it shines and shuns. What is @RawQuery? @RawQuery allows you to execute SQL statements that aren’t validated at compile time. Unlike @Query, which Room parses and validates during compilation, raw queries are evaluated at runtime. ...

May 25, 2025 Â· 5 min

DAO: The Backbone of Offline-First Apps (#OF05)

In our previous article, we covered Entities in Room. Now, let’s explore DAOs (Data Access Objects) – the bridge between your app and the database. DAOs allow you to execute queries that allow is to insert, update, and delete records efficiently and thats exactly what we are going to explore today. What is a DAO? A DAO is an interface annotated with @Dao that defines methods for interacting with the database. The Room compiler generates the necessary implementation for these interfaces and its methods, which enables us to access the database efficient and type safe. ...

March 9, 2025 Â· 7 min

Room Entity and its intricacies (#OF04)

In our previous article, we explored the key components of Room. Now, let’s take a deep dive into Room Entities, their importance, and the various ways to customize them. Entities are the foundation of Room—they define how your data is stored in the database. Properly structuring your entity ensures efficient querying, maintainability, and scalability. Let’s break it down! 🛠️ 🏗️ What is an Entity? An Entity in Room represents a table in the database. Each instance of the entity corresponds to a row in the table, Room generates corresponding SQL table schema based on how you create an entity class. ...

March 2, 2025 Â· 10 min

Abstraction in Software Development

In the world of software development, abstraction is one of the most powerful tools at our disposal. Yet, it is often taken for granted—seen merely as a technical concept or a convenience. In truth, abstraction is much more than that, i agree its confusing topic for some but it represents a currency of trust and a gateway to creative problem solving. Abstraction as Trust At its core, every abstraction is built on trust. When we build or use a library, framework, API, or even a programming language, we are placing our confidence in the people or systems that designed it. We trust that these abstractors have already handled the intricate details—the hows—so that we don’t have to deal with. ...

February 23, 2025 Â· 5 min

Key Components of Room & Manually Creating A Database Instance(#OF03)

👋 Intro On the previous article we have set-up the Room dependencies and plugins, Now lets get into the primary key components of a room library. There are three important components: Entity, DAO’s, and Database. Entity represents a single row of a table. (Table structure) DAO’s (Data Access Objects) are interfaces to write queries and define operations. Database is where you associate entities and include the DAO’s you’d like to access from outside. Let’s check it out one by one! 🔍 ...

February 22, 2025 Â· 5 min

Understanding Recurrent Neural Network

When diving into AI/ML, we constantly hear about transformers and their revolutionary impact. But how did we get here? The journey started from Traditional Neural Networks ➡ Recurrent Neural Networks (RNNs) ➡ Attention Mechanisms and finally to Transformers. RNNs were a significant milestone because they addressed sequential data processing but had major limitations. These limitations led to the birth of attention mechanisms and transformers. Interestingly, before GPT became a household name, Google extensively used RNNs in their products, including predictive text, speech recognition, and early recommendation systems. ...

February 19, 2025 Â· 4 min