Tools I Use

Informational

Overview

This is a curated list of tools I use for research, projects, learning, and other tasks. I use the latest models from these platforms as they become available.

AI 🤖

I regularly switch between different AI platforms depending on the task. Each has its own strengths and capabilities. Often I will run hard problems by multiple models or have one critique the output from another.

Coding:

  • Claude Code - My primary coding tool
  • OpenAI Codex - An incredibly capable model/harness and great for long-running and complex tasks. Also a great code reviewer.
  • Gemini CLI - For tasks requiring extensive context and sophisticated reasoning. Also excellent with multimodal and image understanding (for example, understanding screenshots of what you’re building).
  • GitHub Copilot - Not very often anymore given the above tools
  • Warp - AI-enhanced terminal that excels at complex command-line tasks and troubleshooting

API:

Chat-based interfaces:

  • Claude (Anthropic) - Excellent for thoughtful reasoning, detailed analysis, and coding assistance, but I rarely use it via chat (versus via Claude Code) anymore
  • ChatGPT (OpenAI) - Strong general-purpose assistant. I use the thinking models for complex problems.
  • Google AI Studio (Gemini) - Exceptional for long-context tasks, multimodal input, and document analysis. See my Fever and Med Tracking project for an example of multimodal capabilities in action.

Mobile:

  • Google Gemini app for multimodal live interactions (video and voice)
  • ChatGPT app for advanced voice mode with vision capabilities

Coding 💻

Less and less in the IDE. Mainly powered by the tools mentioned above like Claude Code and Codex.

  • VSCode (or other tools mentioned above) powered by the AI models mentioned earlier, but also as just another way to see the diffs for Claude Code or Gemini CLI
  • Mostly Python and TypeScript. I’ve also used a variety of libraries (like Pandas, ScikitLearn, Numpy, and PyTorch).

Other tools 🔧

I’ve gotten great use out of all of the following for creating the presentation layer for projects. The last two I use for dynamic, interactive projects.

Personal note taking and management ✍️

Spaced Repetition 📚