blog.iankulin.com

Llm

Using LLMs programmatically

A minimal JavaScript demo of calling an LLM from your own code using the OpenAI-compatible chat completions endpoint via OpenRouter, covering API keys, model selection, and request structure. It walks through the JSON response, pointing out finish reasons, reasoning tokens, cost fields, and provider routing...

Good AI Questions

Prompted by Manuel Schipper’s piece on technical leaders and AI, I document my current workflow for using LLMs in web development. This approach keeps context small and explicit — frequent clearing, markdown summaries passed between stages, no background agents or MCPs — supported by a personal library of prompt playbooks that encode my stack and conventions. Work proceeds in discrete stages (exploration, plan, AI and human plan review, implement, checking) so problems surface at the document level before code gets written...

State of AI tooling (for me)

A follow-up to my earlier article on AI-assisted coding, describing my move from autocomplete tools to agentic coding with Cline, Claude Code, and Gemini CLI. I cover token costs, comparisons between Claude, OpenAI, DeepSeek, and Gemini models, and practical tips such as plan-then-act workflows, guardrails, and keeping context lean...

Where I'm up to with AI for coding

I reflect on my use of LLMs for coding, weighing concerns about training data, accuracy, energy use, and data leakage against the practical benefits. I describe trying GitHub Copilot, Codeium, and local models via Ollama, and settling on Codeium for code completion alongside web chatbots for code discussions. I also cover how AI has changed my practice, including writing clearer code, favoring well-established technologies, and adopting new libraries more readily...

LLM coding question comparison using Ollama

Having downloaded a pile of large language models to run locally with Ollama on my M1 MacBook, I compare how several of them (codeqwen, deepseek-coder, phi3, dolphin-mistral, and llama3 at different quantisation levels) answer a Docker question about CMD versus ENTRYPOINT. I time each response and judge it subjectively, with caveats that the test is unscientific and benchmark charts usually reflect full-size models on expensive hardware. My writeup includes a layman’s explanation of quantisation, brief notes on each model’s character, and I conclude that llama3 and most others gave usable answers while phi3 fell short...

Using LLMs for coding

I survey the rise of AI coding tools, from ChatGPT and GitHub Copilot to open source ecosystems, alongside skeptic concerns about training data, code quality, model collapse, and code exfiltration. I explain why these assistants suit my situation as an experienced developer new to modern languages, and trace my journey from paid Copilot to the free Codium and finally to running local models via Ollama and the Continue VSCode extension to keep client code private...