# Sanskar's Stuff

Sanskar's Stuff

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## A note on Context Windows

DevFeed: [A note on Context Windows](<https://devfeed.tech/articles/a-note-on-context-windows-25673.md>)

Original publisher: [Read original article](<https://blog.sanskar10100.dev/a-note-on-context-windows>)

Author: Sanskar Agrawal

Published: 2026-07-03T12:39:24Z

Content type: opinion

Language: en

Sources: [Sanskar's Stuff](<https://devfeed.tech/sources/sanskar-s-stuff.md>)

Topics: [context window](<https://devfeed.tech/topics/context-window.md>), [long-context](<https://devfeed.tech/topics/long-context.md>), [Claude Code](<https://devfeed.tech/topics/claude-code.md>), [codex](<https://devfeed.tech/topics/codex.md>), [Claude](<https://devfeed.tech/topics/claude.md>)

Tags: [agents](<https://devfeed.tech/tags/agents.md>), [claude](<https://devfeed.tech/tags/claude.md>), [claude-code](<https://devfeed.tech/tags/claude-code.md>), [codex](<https://devfeed.tech/tags/codex.md>), [context](<https://devfeed.tech/tags/context.md>), [context-window](<https://devfeed.tech/tags/context-window.md>), [cost](<https://devfeed.tech/tags/cost.md>), [developers](<https://devfeed.tech/tags/developers.md>), [mcps](<https://devfeed.tech/tags/mcps.md>), [retrieval](<https://devfeed.tech/tags/retrieval.md>), [skills](<https://devfeed.tech/tags/skills.md>), [terminal](<https://devfeed.tech/tags/terminal.md>)

### AI overview

This opinion article discusses context-window management in long agent conversations. It argues that auto-compaction may occur too late, retrieval quality can decline as context grows, and larger contexts cost more. It recommends monitoring context usage, starting new conversations, keeping concise project instructions, limiting MCPs, skills and subagents, and using subagents to reduce context inflation.

### Source excerpt

In long agent conversations, Developers often lose track of how much context has been used. Tools like Claude Code or Codex have auto-compaction built in, but they compact too late. Opus 4.8 has a mil

## Drawing Custom Alerts on Top of Bottom Sheets in Jetpack Compose

DevFeed: [Drawing Custom Alerts on Top of Bottom Sheets in Jetpack Compose](<https://devfeed.tech/articles/drawing-custom-alerts-on-top-of-bottom-sheets-in-jetpack-compose-25678.md>)

Original publisher: [Read original article](<https://blog.sanskar10100.dev/drawing-custom-alerts-on-top-of-bottom-sheets-in-jetpack-compose>)

Author: Sanskar Agrawal

Published: 2024-10-08T06:26:32Z

Content type: tutorial

Language: en

Sources: [Sanskar's Stuff](<https://devfeed.tech/sources/sanskar-s-stuff.md>)

Topics: [Compose](<https://devfeed.tech/topics/compose.md>), [Jetpack Compose](<https://devfeed.tech/topics/jetpack-compose.md>), [Android](<https://devfeed.tech/topics/android.md>), [Mobile](<https://devfeed.tech/topics/mobile.md>), [ui](<https://devfeed.tech/topics/ui.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [compose](<https://devfeed.tech/tags/compose.md>), [implementation](<https://devfeed.tech/tags/implementation.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>), [mobile](<https://devfeed.tech/tags/mobile.md>), [modal](<https://devfeed.tech/tags/modal.md>), [ui](<https://devfeed.tech/tags/ui.md>)

### AI overview

A Jetpack Compose tutorial showing how to draw a custom alert above an open bottom sheet. It uses a popup-based alert and explains that upgrading to Material 3 version 1.3.0-alpha06 or later fixes earlier bottom-sheet scrim and navigation-bar inset issues; the article uses the available 1.3.0 stable release.

### Source excerpt

Bottom Sheets have become ubiquitous in Mobile design across Android and iOS. If you're using Jetpack Compose, you'll likely implement them using either the ModalBottomSheet or the BottomSheetScaffold. The former is more used in my experience, so fur...

## Automating Bluetooth Profile switching thanks to Copilot Chat

DevFeed: [Automating Bluetooth Profile switching thanks to Copilot Chat](<https://devfeed.tech/articles/automating-bluetooth-profile-switching-thanks-to-copilot-chat-25675.md>)

Original publisher: [Read original article](<https://blog.sanskar10100.dev/automating-bluetooth-profile-switching-thanks-to-copilot-chat>)

Author: Sanskar Agrawal

Published: 2023-10-09T20:20:18Z

Content type: opinion

Language: en

Sources: [Sanskar's Stuff](<https://devfeed.tech/sources/sanskar-s-stuff.md>)

Topics: [Bluetooth](<https://devfeed.tech/topics/bluetooth.md>), [GitHub Copilot](<https://devfeed.tech/topics/github-copilot.md>), [Linux](<https://devfeed.tech/topics/linux.md>), [AI Chat](<https://devfeed.tech/topics/ai-chat.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [developer-productivity](<https://devfeed.tech/topics/developer-productivity.md>), [Shell](<https://devfeed.tech/topics/shell.md>)

Tags: [bluetooth](<https://devfeed.tech/tags/bluetooth.md>), [chatgpt](<https://devfeed.tech/tags/chatgpt.md>), [coding](<https://devfeed.tech/tags/coding.md>), [command-line](<https://devfeed.tech/tags/command-line.md>), [copilot](<https://devfeed.tech/tags/copilot.md>), [github-copilot](<https://devfeed.tech/tags/github-copilot.md>), [linux](<https://devfeed.tech/tags/linux.md>), [productivity](<https://devfeed.tech/tags/productivity.md>)

### AI overview

The author describes using GitHub Copilot Chat to create a shell script that switches Bluetooth headset profiles on EndeavourOS. The script provides a keyboard-accessible workaround for a microphone problem, although it took about 30 minutes of back-and-forth to reach the correct commands.

### Source excerpt

A task I completed that I wouldn't have (or at least, not without putting several hours into it) without Generative AI: I use an Arch-based Linux distro called Endeavour OS. It's a great OS, but lately, I've been having this issue where my computer w...

## Context Receivers in Kotlin: An Example

DevFeed: [Context Receivers in Kotlin: An Example](<https://devfeed.tech/articles/context-receivers-in-kotlin-an-example-25676.md>)

Original publisher: [Read original article](<https://blog.sanskar10100.dev/context-receivers-in-kotlin-an-example>)

Author: Sanskar Agrawal

Published: 2023-02-26T16:21:57Z

Content type: tutorial

Language: en

Sources: [Sanskar's Stuff](<https://devfeed.tech/sources/sanskar-s-stuff.md>)

Topics: [Kotlin](<https://devfeed.tech/topics/kotlin.md>), [coding](<https://devfeed.tech/topics/coding.md>), [ui](<https://devfeed.tech/topics/ui.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [code](<https://devfeed.tech/tags/code.md>), [coding](<https://devfeed.tech/tags/coding.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [kotlin-flow](<https://devfeed.tech/tags/kotlin-flow.md>), [reactive](<https://devfeed.tech/tags/reactive.md>), [stateflow](<https://devfeed.tech/tags/stateflow.md>), [ui](<https://devfeed.tech/tags/ui.md>)

### AI overview

This tutorial introduces Kotlin context receivers, a feature added in Kotlin 1.6.20, and explains their use through comparison with extension functions. It focuses on simplifying code that combines a StateFlow receiver with lifecycle-related context when collecting reactive UI state. The supplied text ends before the example is complete.

### Source excerpt

Context Receivers are a new feature introduced in Kotlin 1.6.20. They're useful for receiving the context from the call-site when a function is called. To understand it and its utility, let's first take a look at a similar feature available in the la...

## Integrating Google Maps, Places API, and Reverse Geocoding with Jetpack Compose

DevFeed: [Integrating Google Maps, Places API, and Reverse Geocoding with Jetpack Compose](<https://devfeed.tech/articles/integrating-google-maps-places-api-and-reverse-geocoding-with-jetpack-compose-25681.md>)

Original publisher: [Read original article](<https://blog.sanskar10100.dev/integrating-google-maps-places-api-and-reverse-geocoding-with-jetpack-compose>)

Author: Sanskar Agrawal

Published: 2023-01-08T16:51:10Z

Content type: tutorial

Language: en

Sources: [Sanskar's Stuff](<https://devfeed.tech/sources/sanskar-s-stuff.md>)

Topics: [Google Maps](<https://devfeed.tech/topics/google-maps.md>), [Jetpack Compose](<https://devfeed.tech/topics/jetpack-compose.md>), [Android](<https://devfeed.tech/topics/android.md>), [API](<https://devfeed.tech/topics/api.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [api](<https://devfeed.tech/tags/api.md>), [geocoding](<https://devfeed.tech/tags/geocoding.md>), [google-maps](<https://devfeed.tech/tags/google-maps.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>), [places-api](<https://devfeed.tech/tags/places-api.md>)

### AI overview

A tutorial for building an Android address-selection screen with Jetpack Compose, Google Maps, the Places API, and the Geocoding API. It covers Google Cloud project setup, billing, API enablement, API-key configuration, place autocomplete, and converting coordinates to addresses.

### Source excerpt

Integrating Google maps into Android apps has been somewhat of a tough nut to crack for developers. With the advent of Jetpack Compose for building native UI on Android, the Google Maps team announced a Map SDK for Compose, available here. However, i...

## Developing for Android with a local REST API server

DevFeed: [Developing for Android with a local REST API server](<https://devfeed.tech/articles/developing-for-android-with-a-local-rest-api-server-25677.md>)

Original publisher: [Read original article](<https://blog.sanskar10100.dev/developing-for-android-with-a-local-rest-api-server>)

Author: Sanskar Agrawal

Published: 2022-12-26T09:17:38Z

Content type: tutorial

Language: en

Sources: [Sanskar's Stuff](<https://devfeed.tech/sources/sanskar-s-stuff.md>)

Topics: [Android](<https://devfeed.tech/topics/android.md>), [REST API](<https://devfeed.tech/topics/rest-api.md>), [Server](<https://devfeed.tech/topics/server.md>), [Development](<https://devfeed.tech/topics/development.md>), [HTTP](<https://devfeed.tech/topics/http.md>), [networking](<https://devfeed.tech/topics/networking.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [backend](<https://devfeed.tech/tags/backend.md>), [gson](<https://devfeed.tech/tags/gson.md>), [http](<https://devfeed.tech/tags/http.md>), [local](<https://devfeed.tech/tags/local.md>), [networking](<https://devfeed.tech/tags/networking.md>), [rest-api](<https://devfeed.tech/tags/rest-api.md>), [retrofit](<https://devfeed.tech/tags/retrofit.md>), [security](<https://devfeed.tech/tags/security.md>), [server](<https://devfeed.tech/tags/server.md>)

### AI overview

This tutorial explains how to connect an Android app to a REST API server running locally on a development machine. It covers configuring endpoints, using the machine's local address and port, connecting an emulator or physical device, and enabling HTTP while avoiding that setting in production.

### Source excerpt

When you're building an Android app, chances are that it'll be interacting with the internet in some way. More often than not, this is through the use of REST API. First, a refresher Ideally, you'd have a couple of base URLs, one for production usage...

## Implementing Periodic Notifications with WorkManager

DevFeed: [Implementing Periodic Notifications with WorkManager](<https://devfeed.tech/articles/implementing-periodic-notifications-with-workmanager-25680.md>)

Original publisher: [Read original article](<https://blog.sanskar10100.dev/implementing-periodic-notifications-with-workmanager>)

Author: Sanskar Agrawal

Published: 2022-04-09T14:49:59Z

Content type: tutorial

Language: en

Sources: [Sanskar's Stuff](<https://devfeed.tech/sources/sanskar-s-stuff.md>)

Topics: [Android](<https://devfeed.tech/topics/android.md>), [coding](<https://devfeed.tech/topics/coding.md>), [App](<https://devfeed.tech/topics/app.md>), [Transactions](<https://devfeed.tech/topics/transactions.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [android-app-development](<https://devfeed.tech/tags/android-app-development.md>), [android-apps](<https://devfeed.tech/tags/android-apps.md>), [android-development](<https://devfeed.tech/tags/android-development.md>), [android-studio](<https://devfeed.tech/tags/android-studio.md>), [apps](<https://devfeed.tech/tags/apps.md>), [cloud-functions](<https://devfeed.tech/tags/cloud-functions.md>), [cloud-messaging](<https://devfeed.tech/tags/cloud-messaging.md>), [coding](<https://devfeed.tech/tags/coding.md>), [firebase](<https://devfeed.tech/tags/firebase.md>), [firebase-console](<https://devfeed.tech/tags/firebase-console.md>), [notifications](<https://devfeed.tech/tags/notifications.md>), [sdk](<https://devfeed.tech/tags/sdk.md>), [transactions](<https://devfeed.tech/tags/transactions.md>)

### AI overview

This article describes implementing recurring Android notifications for the Transactions app. It compares Firebase Cloud Messaging with on-device WorkManager periodic work requests, choosing WorkManager because users need to change the reminder time and opt out without relying on a backend.

### Source excerpt

I had some free time on my hands this morning so I decided to work on an issue for my app Transactions. The issue was to add a recurring notification feature that would remind the users of the app to log their transactions for the day. So, I did some...

## QueryBuilder: How I wrote a runtime SQL query generator for an Android app

DevFeed: [QueryBuilder: How I wrote a runtime SQL query generator for an Android app](<https://devfeed.tech/articles/querybuilder-how-i-wrote-a-runtime-sql-query-generator-for-an-android-app-25682.md>)

Original publisher: [Read original article](<https://blog.sanskar10100.dev/querybuilder-how-i-wrote-a-runtime-sql-query-generator-for-an-android-app>)

Author: Sanskar Agrawal

Published: 2022-02-07T12:05:01Z

Content type: tutorial

Language: en

Sources: [Sanskar's Stuff](<https://devfeed.tech/sources/sanskar-s-stuff.md>)

Topics: [Android](<https://devfeed.tech/topics/android.md>), [SQL](<https://devfeed.tech/topics/sql.md>), [Databases](<https://devfeed.tech/topics/databases.md>), [Kotlin](<https://devfeed.tech/topics/kotlin.md>), [Object-relational mapping](<https://devfeed.tech/topics/orm.md>), [SQLite](<https://devfeed.tech/topics/sqlite.md>), [kotlin-flow](<https://devfeed.tech/topics/kotlin-flow.md>), [coding](<https://devfeed.tech/topics/coding.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [app-development](<https://devfeed.tech/tags/app-development.md>), [coding](<https://devfeed.tech/tags/coding.md>), [database](<https://devfeed.tech/tags/database.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [kotlin-flow](<https://devfeed.tech/tags/kotlin-flow.md>), [orm](<https://devfeed.tech/tags/orm.md>), [room](<https://devfeed.tech/tags/room.md>), [sorting](<https://devfeed.tech/tags/sorting.md>), [sql](<https://devfeed.tech/tags/sql.md>), [sqlite](<https://devfeed.tech/tags/sqlite.md>)

### AI overview

A developer explains how an Android app called Transactions uses Room ORM over SQLite and Kotlin Flow, then describes the need for incremental sorting and filtering. The article compares filtering Kotlin lists with writing custom DAO methods for every query combination, motivating a runtime SQL query generator.

### Source excerpt

I've been building an app called Transactions for some time. As the name suggests, Transactions offers you the capability to track your income and expenses made through cash or digital mediums. I mostly wrote it for my personal use, but it caught on ...

## How to get a free .tech domain, connect it to GitHub pages and get a free SSL certificate

DevFeed: [How to get a free .tech domain, connect it to GitHub pages and get a free SSL certificate](<https://devfeed.tech/articles/how-to-get-a-free-tech-domain-connect-it-to-github-pages-and-get-a-free-ssl-certificate-25679.md>)

Original publisher: [Read original article](<https://blog.sanskar10100.dev/how-to-get-a-free-tech-domain-connect-it-to-github-pages-and-get-a-free-ssl-certificate>)

Author: Sanskar Agrawal

Published: 2021-12-31T15:21:54Z

Content type: tutorial

Language: en

Sources: [Sanskar's Stuff](<https://devfeed.tech/sources/sanskar-s-stuff.md>)

Topics: [GitHub Pages](<https://devfeed.tech/topics/github-pages.md>), [SSL](<https://devfeed.tech/topics/ssl.md>), [Cloudflare](<https://devfeed.tech/topics/cloudflare.md>), [Website](<https://devfeed.tech/topics/website.md>)

Tags: [cloudflare](<https://devfeed.tech/tags/cloudflare.md>), [copy](<https://devfeed.tech/tags/copy.md>), [dns](<https://devfeed.tech/tags/dns.md>), [domain](<https://devfeed.tech/tags/domain.md>), [free](<https://devfeed.tech/tags/free.md>), [github](<https://devfeed.tech/tags/github.md>), [github-pages](<https://devfeed.tech/tags/github-pages.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [ssl](<https://devfeed.tech/tags/ssl.md>), [technology](<https://devfeed.tech/tags/technology.md>), [web-development](<https://devfeed.tech/tags/web-development.md>)

### AI overview

A tutorial explains how developers can obtain a free .tech domain through the GitHub Student Developer Pack, connect it to a GitHub Pages site with DNS records, and configure Cloudflare nameservers to obtain a free SSL certificate.

### Source excerpt

.tech domains are excellent personal domain names for developers because they basically put up your tech role upfront without even having to open your website. You can get one for free (for a year) by signing up for the GitHub Student Developer Pack ...

## Android App Shortcuts

DevFeed: [Android App Shortcuts](<https://devfeed.tech/articles/android-app-shortcuts-25674.md>)

Original publisher: [Read original article](<https://blog.sanskar10100.dev/android-app-shortcuts>)

Author: Sanskar Agrawal

Published: 2021-12-11T09:31:59Z

Content type: tutorial

Language: en

Sources: [Sanskar's Stuff](<https://devfeed.tech/sources/sanskar-s-stuff.md>)

Topics: [Android](<https://devfeed.tech/topics/android.md>), [App](<https://devfeed.tech/topics/app.md>), [coding](<https://devfeed.tech/topics/coding.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [android-app-development](<https://devfeed.tech/tags/android-app-development.md>), [android-studio](<https://devfeed.tech/tags/android-studio.md>), [app](<https://devfeed.tech/tags/app.md>), [coding](<https://devfeed.tech/tags/coding.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [mobile-apps](<https://devfeed.tech/tags/mobile-apps.md>), [phones](<https://devfeed.tech/tags/phones.md>), [shortcuts](<https://devfeed.tech/tags/shortcuts.md>)

### AI overview

A tutorial on adding static launcher shortcuts to Android apps using shortcuts.xml. It explains how these shortcuts expose app destinations or features from the launcher, covers compatibility with lower minSdkVersion values, and discusses intents, activities, and fragment-centric architectures.

### Source excerpt

Most popular apps on Android phones have launcher shortcuts; app-specific destinations or features that appear when you long tap their icon in the launcher. Users can even drag the shortcuts outside to your home screen as demoed below: This has bee...

## Competitive Programming: Benefits, Career Value, and Criticism

DevFeed: [Competitive Programming: Benefits, Career Value, and Criticism](<https://devfeed.tech/articles/to-cp-or-not-to-cp-25683.md>)

Original publisher: [Read original article](<https://blog.sanskar10100.dev/to-cp-or-not-to-cp>)

Author: Sanskar Agrawal

Published: 2021-11-14T13:29:40Z

Content type: opinion

Language: en

Sources: [Sanskar's Stuff](<https://devfeed.tech/sources/sanskar-s-stuff.md>)

Topics: [Programming](<https://devfeed.tech/topics/programming.md>), [coding](<https://devfeed.tech/topics/coding.md>), [Software](<https://devfeed.tech/topics/software.md>)

Tags: [career](<https://devfeed.tech/tags/career.md>), [coding](<https://devfeed.tech/tags/coding.md>), [competitive-programming](<https://devfeed.tech/tags/competitive-programming.md>), [opinion](<https://devfeed.tech/tags/opinion.md>), [programming](<https://devfeed.tech/tags/programming.md>)

### AI overview

The author presents competitive programming as a puzzle-like activity that develops fast problem-solving under constraints and may help with recruiting. The article also discusses criticism of competitive programming, including coding habits that may not reflect software engineering, and notes alternative paths such as building apps or contributing to open source.

### Source excerpt

Before we start, I'd like to clarify where I'm coming from. I like Nikola Tesla, Guido van Rossum and Steve Wozniak. Money is important, but it's not as important as doing good engineering. How is this relevant? I want you to know where I'm coming fr...

## Why it's completely fine to not work at a MAANG

DevFeed: [Why it's completely fine to not work at a MAANG](<https://devfeed.tech/articles/why-it-s-completely-fine-to-not-work-at-a-maang-25684.md>)

Original publisher: [Read original article](<https://blog.sanskar10100.dev/why-i-do-not-want-to-work-for-maang>)

Author: Sanskar Agrawal

Published: 2021-11-08T16:37:54Z

Content type: opinion

Language: en

Sources: [Sanskar's Stuff](<https://devfeed.tech/sources/sanskar-s-stuff.md>)

Topics: [engineering-culture](<https://devfeed.tech/topics/engineering-culture.md>), [Google](<https://devfeed.tech/topics/google.md>), [Tooling](<https://devfeed.tech/topics/tooling.md>), [coding](<https://devfeed.tech/topics/coding.md>)

Tags: [career](<https://devfeed.tech/tags/career.md>), [coding](<https://devfeed.tech/tags/coding.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [google](<https://devfeed.tech/tags/google.md>), [jobs](<https://devfeed.tech/tags/jobs.md>), [opinion](<https://devfeed.tech/tags/opinion.md>), [software-engineering](<https://devfeed.tech/tags/software-engineering.md>), [tooling](<https://devfeed.tech/tags/tooling.md>)

### AI overview

The author argues that becoming a good engineer and creating value do not require working at a MAANG company. They suggest that startups and small or medium-sized companies may offer more freedom to shape products and build features, automation, auditing, and monitoring tools, while acknowledging possible trade-offs such as lower pay, fewer perks, and longer hours.

### Source excerpt

Perhaps a little bit of clarification is in order: I do want to work at Google. They have an amazing engineering culture and excellent tooling for people like me. I'm just not aiming for it like it's the end of the world and the sole goal of my life....