My 2026 San Juan Softie 100 Race Plan
My 26-hour and 28-hour pacing plans, aid station splits, fueling, drop bags, lights, and weather strategy for the 2026 San Juan Softie 100.
Posts tagged with 'all'
My 26-hour and 28-hour pacing plans, aid station splits, fueling, drop bags, lights, and weather strategy for the 2026 San Juan Softie 100.
A writeup of a small agentic system I built to triage my email inbox.
I embedded an MCP server inside a native Rust prose editor. It became the single most impactful architectural decision I've made, not for users, but for how I build the product itself.
Every layer from App to API to MCP loses fidelity. An exploration of what gets lost and why it matters for enterprise APIs.
Human DX optimizes for discoverability. Agent DX optimizes for predictability. What I learned building a CLI for agents first.
Connect Google Apps Script to PostgreSQL via JDBC. Covers connection strings, JSONB/UUID workarounds, parameterized queries, transactions, and PostGIS.
How I vibecoded a fiction-specific AST and NER pipeline using LLM distillation, GLiNER fine-tuning, and ONNX export for CPU inference in Rust.
Automatically colorize your VS Code window based on the git remote.
How to configure AI agents to push commits to GitHub using a separate bot identity without modifying local git configuration.
A workflow for extracting architectural patterns and challenges from AI agent walkthroughs.
Git LFS causes fatal errors in AI agents like Jules due to proxy conflicts and hook limitations. Learn why I abandoned LFS and migrated back to standard Git.
Learn how to communicate with Model Context Protocol (MCP) servers using Apps Script and UrlFetchApp. Incorporate the MCP client into Vertex AI tool calling.
Learn how to use the new built-in Vertex AI Advanced Service in Google Apps Script to access Gemini models directly, without the need for complex UrlFetchApp calls.
Learn about the @OnlyCurrentDoc annotation and currentonly scopes in Google Apps Script. Understand why and how to use them, along with their critical limitations regarding Advanced Services and external APIs.
I'm running the Crazy Mountain 100 in 2026! It's a rugged 100 miler in Montana that serves as a Hardrock qualifier.
Securely resolve Google Chat User IDs to emails without Domain-Wide Delegation. Use Service Account Impersonation and custom Admin roles.
The unofficial documentation for the Apps Script CacheService. Learn about key/value constraints, size limits, and the undocumented FIFO batch eviction policy.
The unofficial guide to Google Apps Script UrlFetchApp. Master authentication, fetchAll for parallelism, web scraping, and debugging "Address Unavailable".
Do not hardcode secrets in Google Apps Script. Use Properties Service or Google Cloud Secret Manager.
Securing Gmail AI agents against Prompt Injection and untrusted content using Google Cloud Model Armor.
Announcing the new MCP server for Google Workspace Developer Tools, providing AI agents with access to official documentation and API snippets.
Announcing the new React component for the Google Drive Picker, wrapping usage of the web component for easier integration.
Announcing the new Google Workspace Developer Tools extension for VS Code, working with Antigravity and providing OAuth2 scope linting and MCP support.
Last week I submitted a pull request to the DefinitelyTyped repository for the Google Drive Picker API. Not a big deal in itself, but these types are generated from the same source as the Google Drive Picker reference documentation and should be more correct and consistent than the community types that were previously in the DefinitelyTyped repository.
Recently I had to clarify some confusion around the title and name of a Google Form. Here is a quick explanation of the difference between the two.
Programmatically convert, open, and edit Microsoft Word .docx files in Google Apps Script using the Drive API and DocumentApp.
Save the date for the Google Workspace Developer Summits in 2024! Boston - September 12, 2024 and Berlin - September 17, 2024.
Use the Spreadsheets v4 API to set the importFunctionsExternalUrlAccessAllowed property to true and allow access to external URLs without requiring user consent.
Link shared about: How do I get access to the chrome.sidePanel API from the latest manifest v3? - Stack Overflow
You can use WebAssembly with Google Apps Script! This post will cover how to do that and provide a comprehensive guide on how to get started.
Link shared about: Alfalfa Uses More Water Than All Cities, Industries in Colorado River Basin
A SvelteKit store that automatically converts slugs to UUIDs from the URL path parameters.
Compare google.script.run vs doGet/doPost endpoints for Apps Script web apps. Choose the best method for simple apps or complex frameworks like React/Vue.
Link shared about: Feds May Be Underestimating Broadband Woes
TDS - les Traces du Duc de Savoie - Dacia UTMB Mont Blanc
Working with binary files like PDFs or images in Google Drive with Google Apps Script can be a bit tricky due to scopes. Here is a comparison of the three main ways to get the Blob of a file in Google Drive and the scopes required.
Setting up a development environment on Debian with Docker and VSCode remote.
Comparison and benchmarks of Google Apps Script storage options. See why CacheService is slightly faster than PropertiesService and when to use Firestore.
Ping results to Google Cloud regions and short code snippet demonstrating how to measure latency from Google Apps Script.
A pattern for persisting the workspace files between parallel jobs in a GitHub Workflow.
A comparison of the WinterCG Minimum Common Web Platform API draft with the Apps Script V8 runtime.
I will be giving a talk at Google Next 2024 on how to use Rust, Python and WASM to extend Google Apps Script.
Understand async/await and Promises in Google Apps Script. Learn why most APIs remain synchronous and how WebAssembly is the exception.
Deploying Cloudflare workers to dev, staging, and prod with Wrangler and automatically promoting with GitHub actions.
Cleanup repositories on GitHUb by deleting old forks.
Google Drive broke the ability to embed images with the /uc path. Here's how to embed images from Google Drive in your website.
Firestore can be a powerful tool when using Apps Script. This post shows how to use the [Firestore REST API] in Apps Script.
Avoid downloading private service account keys by using impersonation in Apps Script to obtain access tokens.
A simple Dockerfile for a Rust project that caches dependencies and uses a minimal Debian image.
A short code snippet demonstrating how to generate text with the Gemini Pro Rest API in Apps Script.