41554 blogs · [ { "id": "01a08c5e-a4c6-722d-89c7-f4ff37ac3c83", "title": "The OpenAI–Hugging Face Hack: A Systems Problem More Than an Alignment Problem", "url": "http://vivekhaldar.com/articles/openai-hugging-face-hack/", "published_at": "2026-08-31T00:00:00+00:00" }, { "id": "01a08c5e-a4c7-7348-bcda-d0f076ad6d12", "title": "I Have Become a Cognitive Empty Nester", "url": "http://vivekhaldar.com/articles/cognitive-empty-nester/", "published_at": "2026-08-23T00:00:00+00:00" }, { "id": "01a08c5e-a4c7-7348-bcda-d0f07701f7b6", "title": "Continual Learning Needs More Nuance", "url": "http://vivekhaldar.com/articles/continual-learning-needs-more-nuance/", "published_at": "2026-08-09T00:00:00+00:00" }, { "id": "01a08c5e-a4c7-7348-bcda-d0f0770281d1", "title": "Beyond Human-in-the-Loop", "url": "http://vivekhaldar.com/articles/beyond-human-in-the-loop/", "published_at": "2026-07-27T00:00:00+00:00" }, { "id": "01a08c5e-a4c7-7348-bcda-d0f077f1bad1", "title": "How I Cut an AI Agent's Token Use by 94%", "url": "http://vivekhaldar.com/articles/compiling-an-ai-agent-skill/", "published_at": "2026-07-13T00:00:00+00:00" }, { "id": "01a08c5e-a4c7-7348-bcda-d0f07835956e", "title": "Cognitive Debt and the Future of Programming", "url": "http://vivekhaldar.com/articles/cognitive-debt-is-leverage/", "published_at": "2026-07-04T00:00:00+00:00" }, { "id": "01a08c5e-a4c7-7348-bcda-d0f078984a93", "title": "The tension between local and cloud agents", "url": "http://vivekhaldar.com/articles/local-vs-cloud-agents/", "published_at": "2026-05-29T00:00:00+00:00" }, { "id": "01a08c5e-a4c7-7348-bcda-d0f0797f5d50", "title": "From Emacs to Agents", "url": "http://vivekhaldar.com/articles/from-emacs-to-agents/", "published_at": "2026-05-21T00:00:00+00:00" }, { "id": "01a08c5e-a4c7-7348-bcda-d0f079e76520", "title": "The Complexity Ratchet", "url": "http://vivekhaldar.com/articles/the-complexity-ratchet/", "published_at": "2026-05-15T00:00:00+00:00" }, { "id": "01a08c5e-a4c7-7348-bcda-d0f07ab1c9e3", "title": "A Tale of Two Job Markets", "url": "http://vivekhaldar.com/articles/a-tale-of-two-job-markets/", "published_at": "2026-05-03T00:00:00+00:00" }, { "id": "01a08c5e-a4c7-7348-bcda-d0f07ba0cbd2", "title": "O Moat, Where Art Thou?", "url": "http://vivekhaldar.com/articles/o-moat-where-art-thou/", "published_at": "2026-04-23T00:00:00+00:00" }, { "id": "01a08c5e-a4c7-7348-bcda-d0f07be6234c", "title": "Skills, CLIs, and MCP: What They're Actually For", "url": "http://vivekhaldar.com/articles/skills-clis-and-mcp/", "published_at": "2026-04-17T00:00:00+00:00" }, { "id": "01a08c5e-a4c7-7348-bcda-d0f07ca8ed37", "title": "Human-Agent Interaction Is Becoming the Bottleneck", "url": "http://vivekhaldar.com/articles/human-agent-interaction-is-becoming-the-bottleneck/", "published_at": "2026-04-06T00:00:00+00:00" }, { "id": "01a08c5e-a4c7-7348-bcda-d0f07cb51da8", "title": "Meta-Harness: Automating the Benchmaxing Loop", "url": "http://vivekhaldar.com/articles/meta-harness-automating-the-benchmaxing-loop/", "published_at": "2026-04-04T00:00:00+00:00" }, { "id": "01a08c5e-a4c7-7348-bcda-d0f07cfdde3f", "title": "Surprising a model", "url": "http://vivekhaldar.com/articles/surprising-a-model/", "published_at": "2026-03-16T00:00:00+00:00" }, { "id": "01a08c5e-a4c7-7348-bcda-d0f07d7bfc2d", "title": "Your Agent Sessions Are Disappearing", "url": "http://vivekhaldar.com/articles/your-agent-sessions-are-disappearing/", "published_at": "2026-03-16T00:00:00+00:00" }, { "id": "01a08c5e-a4c7-7348-bcda-d0f07e63eb81", "title": "MCP Knife: A CLI Swiss Army Knife for MCP Servers", "url": "http://vivekhaldar.com/articles/mcp-knife-cli-swiss-army-knife-for-mcp-servers/", "published_at": "2026-02-09T00:00:00+00:00" }, { "id": "01a08c5e-a4c7-7348-bcda-d0f07ee0fdf3", "title": "mcpblox: Transform and Compose MCP Servers with Unix Pipes", "url": "http://vivekhaldar.com/articles/mcpblox-transform-compose-mcp-servers-unix-pipes/", "published_at": "2026-02-03T00:00:00+00:00" }, { "id": "01a08c5e-a4c7-7348-bcda-d0f07f0b6dbe", "title": "The Three Abstractions That Make AI Agents Real", "url": "http://vivekhaldar.com/articles/the-three-abstractions-that-make-ai-agents-real/", "published_at": "2026-01-31T00:00:00+00:00" }, { "id": "01a08c5e-a4c7-7348-bcda-d0f07fbac5d8", "title": "Confessions of an AI Hype-Bro", "url": "http://vivekhaldar.com/articles/confessions-of-an-ai-hype-bro/", "published_at": "2026-01-28T00:00:00+00:00" }, { "id": "01a08c5e-a4c7-7348-bcda-d0f0804171f3", "title": "Subagents, Commands and Skills Are Converging", "url": "http://vivekhaldar.com/articles/claude-code-subagents-commands-skills-converging/", "published_at": "2026-01-10T00:00:00+00:00" }, { "id": "01a08c5e-a4c7-7348-bcda-d0f080d4169c", "title": "The Birth of a New Platform", "url": "http://vivekhaldar.com/articles/birth-of-a-new-platform/", "published_at": "2025-12-24T00:00:00+00:00" }, { "id": "01a08c5e-a4c7-7348-bcda-d0f081026345", "title": "Unix Was a Love Letter to Agents", "url": "http://vivekhaldar.com/articles/unix-love-letter-to-agents/", "published_at": "2025-12-20T00:00:00+00:00" }, { "id": "01a08c5e-a4c7-7348-bcda-d0f0818c8c7c", "title": "Coding Agents Are Outliers", "url": "http://vivekhaldar.com/articles/coding-agents-are-outliers/", "published_at": "2025-11-02T00:00:00+00:00" }, { "id": "01a08c5e-a4c7-7348-bcda-d0f082771447", "title": "Narrate Your Work", "url": "http://vivekhaldar.com/articles/narrate-your-work/", "published_at": "2025-09-14T00:00:00+00:00" }, { "id": "01a08c5e-a4c7-7348-bcda-d0f0835c5783", "title": "The Assembly Language of Knowledge Work", "url": "http://vivekhaldar.com/articles/read-cognify-write/", "published_at": "2025-09-13T00:00:00+00:00" }, { "id": "01a08c5e-a4c7-7348-bcda-d0f083829799", "title": "My Video Production Stack (for YouTube)", "url": "http://vivekhaldar.com/articles/my-video-production-stack/", "published_at": "2025-09-07T00:00:00+00:00" }, { "id": "01a08c5e-a4c7-7348-bcda-d0f0842061f5", "title": "Natlang Code", "url": "http://vivekhaldar.com/articles/natlang-code/", "published_at": "2025-08-16T00:00:00+00:00" }, { "id": "01a08c5e-a4c7-7348-bcda-d0f084776d13", "title": "The Mac-vs-PC Story Playing out in CLI Agents", "url": "http://vivekhaldar.com/articles/cli-agent-architecture/", "published_at": "2025-08-06T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9323ee87feba", "title": "AI is a Mirror", "url": "http://vivekhaldar.com/articles/ai-is-a-mirror/", "published_at": "2025-07-28T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9323ef1f2646", "title": "Plato's Cave of AI Agent Evals", "url": "http://vivekhaldar.com/articles/platos-cave-of-ai-agent-evals/", "published_at": "2025-07-27T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9323ef8e5622", "title": "Fixing Auth for Personal AI Agents", "url": "http://vivekhaldar.com/articles/fixing-auth-for-personal-ai-agents/", "published_at": "2025-07-25T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9323ef92bdb7", "title": "Does AI Make Programming Feel Like Factory Work?", "url": "http://vivekhaldar.com/articles/ai-programming-factory-work/", "published_at": "2025-06-07T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9323f06307fe", "title": "The Personal Side of Jevons Paradox in the Age of AI", "url": "http://vivekhaldar.com/articles/personal-side-jevons-paradox/", "published_at": "2025-06-02T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9323f10f1441", "title": "The Programmer's Climb", "url": "http://vivekhaldar.com/articles/programmers-climb/", "published_at": "2025-04-26T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9323f1decd15", "title": "Dijkstra would’ve (incorrectly) HATED vibe-coding", "url": "http://vivekhaldar.com/articles/dijkstra-vibe-coding/", "published_at": "2025-04-11T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9323f2847229", "title": "The case against local LLMs", "url": "http://vivekhaldar.com/articles/the-case-against-local-llms/", "published_at": "2025-03-29T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9323f2884e80", "title": "\"But LLMs are not deterministic!\"", "url": "http://vivekhaldar.com/articles/-but-llms-are-not-deterministic--/", "published_at": "2025-03-28T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9323f2e28892", "title": "End-user Abstraction", "url": "http://vivekhaldar.com/articles/end-user-abstraction/", "published_at": "2025-03-23T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9323f3820ef3", "title": "AI coding - From Tactics to Strategy", "url": "http://vivekhaldar.com/articles/ai-coding---from-tactics-to-strategy/", "published_at": "2025-02-28T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9323f409b154", "title": "Human evals are outsourced vibe checks", "url": "http://vivekhaldar.com/articles/human-evals-are-outsourced-vibe-checks/", "published_at": "2025-02-23T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9323f4ff0b56", "title": "Writing is building, but software is now content", "url": "http://vivekhaldar.com/articles/writing-is-building--but-software-is-now-content/", "published_at": "2025-02-23T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9323f5aa5635", "title": "When Compilers Were the 'AI' That Scared Programmers", "url": "http://vivekhaldar.com/articles/when-compilers-were-the--ai--that-scared-programmers/", "published_at": "2025-02-16T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9323f60e8445", "title": "Spec-driven Vibe-coding", "url": "http://vivekhaldar.com/articles/spec-driven-vibe-coding/", "published_at": "2025-02-08T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9323f6593d08", "title": "Don't credit AI", "url": "http://vivekhaldar.com/articles/don-t-credit-ai/", "published_at": "2025-02-06T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9323f6d9fce9", "title": "Emacs in the age of AI", "url": "http://vivekhaldar.com/articles/emacs-in-the-age-of-ai/", "published_at": "2025-01-30T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9323f7a035c3", "title": "AI resistance considered harmful (for programmers)", "url": "http://vivekhaldar.com/articles/ai-resistance-considered-harmful--for-programmers-/", "published_at": "2025-01-17T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9323f855571b", "title": "How I use AI (late 2024)", "url": "http://vivekhaldar.com/articles/how-i-use-ai--late-2024-/", "published_at": "2024-11-20T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9323f9315669", "title": "Programming with LLMs: Part 1", "url": "http://vivekhaldar.com/articles/programming-with-llms--rant-1/", "published_at": "2024-09-27T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9323f9f9e87b", "title": "Programming with LLMs: Part 2", "url": "http://vivekhaldar.com/articles/programming-with-llms--part-2/", "published_at": "2024-09-27T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9323fa8dd9e0", "title": "Subject-object-verb, or– how we use AI", "url": "http://vivekhaldar.com/articles/subject-object-verb--or---how-we-use-ai/", "published_at": "2024-06-30T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9323fb27412f", "title": "Portability of LLM Prompts", "url": "http://vivekhaldar.com/articles/portability-of-llm-prompts/", "published_at": "2024-06-09T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9323fbe9e15e", "title": "The de-nerdification of programming", "url": "http://vivekhaldar.com/articles/the-de-nerdification-of-programming/", "published_at": "2024-03-29T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9323fc6573f5", "title": "LLMs eat entry-level SWEs", "url": "http://vivekhaldar.com/articles/llms-eat-entry-level-swes/", "published_at": "2024-03-15T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9323fcc086b9", "title": "GPT Monologues", "url": "http://vivekhaldar.com/articles/gpt-monologues/", "published_at": "2023-11-26T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9323fcff9749", "title": "Metaphors for thinking about LLMs", "url": "http://vivekhaldar.com/articles/metaphors-for-thinking-about-llms/", "published_at": "2023-08-20T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9323fd7e697c", "title": "Re: Why I don't use Copilot", "url": "http://vivekhaldar.com/articles/re--why-i-don-t-use-copilot/", "published_at": "2023-06-08T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9323fe4e54a9", "title": "AI doomers will doom us", "url": "http://vivekhaldar.com/articles/ai-doomers-will-doom-us/", "published_at": "2023-05-21T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9323ff187d75", "title": "IDEs and CAD", "url": "http://vivekhaldar.com/articles/ides-and-cad/", "published_at": "2023-03-19T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9323ff4b030b", "title": "LazyPost: Programming in the age of GPT and CoPilot", "url": "http://vivekhaldar.com/articles/lazypost--programming-in-the-age-of-gpt-and-copilot/", "published_at": "2023-03-15T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9323ffea0810", "title": "LLMs are compilers", "url": "http://vivekhaldar.com/articles/llms-are-compilers/", "published_at": "2023-02-26T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-93240060dda3", "title": "A spiritual successor to Emacs", "url": "http://vivekhaldar.com/articles/a-spiritual-successor-to-emacs/", "published_at": "2023-02-14T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-932400eadbea", "title": "Augmenting LLMs with APIs", "url": "http://vivekhaldar.com/articles/augmenting-llms-with-apis/", "published_at": "2023-02-12T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9324018a3531", "title": "Prompt LLMs for code, not arithmetic", "url": "http://vivekhaldar.com/articles/prompt-llms-for-code--not-arithmetic/", "published_at": "2023-01-25T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-932401f75533", "title": "Moving off Tumblr", "url": "http://vivekhaldar.com/articles/moving-off-tumblr/", "published_at": "2023-01-22T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9324029cf169", "title": "Hardware Acquisition Hacks", "url": "http://vivekhaldar.com/articles/hardware-acquisition-hacks/", "published_at": "2020-12-28T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9324034a4993", "title": "Automatically edit out silence (dead air) from videos", "url": "http://vivekhaldar.com/articles/automatically-edit-out-silence-dead-air-from-videos/", "published_at": "2020-08-21T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-932403b893b0", "title": "Remapping arbitrary keys in Mac OS X", "url": "http://vivekhaldar.com/articles/remapping-arbitrary-keys-in-mac-os-x/", "published_at": "2020-07-22T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9324044904f7", "title": "How Unix Won", "url": "http://vivekhaldar.com/articles/how-unix-won/", "published_at": "2020-05-04T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-93240496ac5c", "title": "Manifesto for my channel", "url": "http://vivekhaldar.com/articles/manifesto-for-my-channel/", "published_at": "2019-04-15T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-932404c62871", "title": "Laptops with touchscreen keyboards", "url": "http://vivekhaldar.com/articles/laptops-with-touchscreen-keyboards/", "published_at": "2018-05-16T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-932405104a3a", "title": "Review of Chaos Monkeys", "url": "http://vivekhaldar.com/articles/review-of-chaos-monkeys/", "published_at": "2017-10-07T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-93240577a171", "title": "Airspace", "url": "http://vivekhaldar.com/articles/airspace/", "published_at": "2016-08-08T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-932405c8a218", "title": "Church numerals in ES6", "url": "http://vivekhaldar.com/articles/church-numerals-in-es6/", "published_at": "2016-03-14T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-93240632620e", "title": "Treating algorithms fairly", "url": "http://vivekhaldar.com/articles/treating-algorithms-fairly/", "published_at": "2015-03-18T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-932406aba746", "title": "IDEs in the cage", "url": "http://vivekhaldar.com/articles/ides-in-the-cage/", "published_at": "2014-10-27T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-932406f9fef0", "title": "De-skilling", "url": "http://vivekhaldar.com/articles/deskilling/", "published_at": "2014-10-06T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9324071b747a", "title": "How software grows", "url": "http://vivekhaldar.com/articles/how-software-grows/", "published_at": "2014-08-17T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-932407b58e49", "title": "When to do a rewrite", "url": "http://vivekhaldar.com/articles/when-to-do-a-rewrite/", "published_at": "2014-07-22T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-932408848f77", "title": "Learning your life", "url": "http://vivekhaldar.com/articles/learning-your-life/", "published_at": "2014-07-21T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-93240915e4f1", "title": "Garland Words", "url": "http://vivekhaldar.com/articles/garland-words/", "published_at": "2014-06-24T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-93240a0e4268", "title": "Lurking Smalltalk", "url": "http://vivekhaldar.com/articles/lurking-smalltalk/", "published_at": "2014-06-23T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-93240ad8b8b6", "title": "Heartbeats", "url": "http://vivekhaldar.com/articles/heartbeats/", "published_at": "2014-06-15T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-93240b8510b5", "title": "Why technologists want to secede", "url": "http://vivekhaldar.com/articles/why-technologists-want-to-secede/", "published_at": "2014-05-17T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-93240ba817d2", "title": "Bleeding buffers", "url": "http://vivekhaldar.com/articles/bleeding-buffers/", "published_at": "2014-05-03T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-93240bc83b20", "title": "You can't run with the machines", "url": "http://vivekhaldar.com/articles/you-cant-run-with-the-machines/", "published_at": "2014-04-13T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-93240c4bd0a7", "title": "More on fat vs thin clients", "url": "http://vivekhaldar.com/articles/more-on-fat-vs-thin-clients/", "published_at": "2014-04-07T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-93240d157083", "title": "Asynchronous Learning is More Inclusive", "url": "http://vivekhaldar.com/articles/asynchronous-learning-is-more-inclusive/", "published_at": "2014-04-05T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-93240d50eb74", "title": "The Automatic Corporation", "url": "http://vivekhaldar.com/articles/the-automatic-corporation/", "published_at": "2014-03-16T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-93240e1833ee", "title": "Pebbles and Projects", "url": "http://vivekhaldar.com/articles/pebbles-and-projects/", "published_at": "2014-03-13T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-93240ea7bf69", "title": "Shedding", "url": "http://vivekhaldar.com/articles/shedding/", "published_at": "2014-03-12T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-93240f2af1df", "title": "The tool divergence", "url": "http://vivekhaldar.com/articles/the-tool-divergence/", "published_at": "2014-03-08T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-93240fe5a8c6", "title": "The Programming Language Consensus", "url": "http://vivekhaldar.com/articles/the-programming-language-consensus/", "published_at": "2014-02-23T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-932410325fa5", "title": "Technium", "url": "http://vivekhaldar.com/articles/technium/", "published_at": "2014-02-19T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-932411167ed0", "title": "Hand-drawn maps", "url": "http://vivekhaldar.com/articles/handdrawn-maps/", "published_at": "2014-02-18T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-93241163de75", "title": "Star Trek vs Babylon 5", "url": "http://vivekhaldar.com/articles/star-trek-vs-babylon-5/", "published_at": "2014-01-23T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-93241237daef", "title": "Fat Client, Thin Client", "url": "http://vivekhaldar.com/articles/fat-client-thin-client/", "published_at": "2014-01-20T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-9324127ce2fc", "title": "The Contours of My Attention", "url": "http://vivekhaldar.com/articles/the-contours-of-my-attention/", "published_at": "2014-01-19T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-932413379eb9", "title": "Go lang", "url": "http://vivekhaldar.com/articles/go-lang/", "published_at": "2014-01-11T00:00:00+00:00" }, { "id": "01a08c5e-a4c8-73e8-ab4b-932413e5564d", "title": "The Human Resolution Threshold", "url": "http://vivekhaldar.com/articles/the-human-resolution-threshold/", "published_at": "2014-01-08T00:00:00+00:00" } ] posts Claim your blog
Back to vivekhaldar.com
Blog · corpus.blog/blogs/vivekhaldar.com/posts

vivekhaldar.com

vivekhaldar.com

2026

2025

2024

2023

2020

2019

2018

2017

2016

2015

2014