All posts

I use LLMs on a daily basis.

I use them for quick explanations,
dinner recipes,
spelling checks,
coding,
 and more.

However, I try to decide consciously when to use LLMs and when not to.

general use

LLMs are useful for many small and often times inconsequential things.

Perhaps I might be wondering:

  • “what are different ways the wallmid can be calculated in quant trading?”
  • “how are dead bodies stored and preserved at medical institutions for study?”
  • “how can we use koopman operators to learn complex dynamical systems?”
  • or “how can I use these ingredients for an indian curry?”

If I judge the question to be within the training distribution and capabilities of the model and the answer does not impact my life or others much, then I will often use an LLM.

Assuming a worst-case scenario can help with this decision. Lets imagine the AI gives a wrong or misleading answer or is even steered by a company with an agenda. What could result from this? If this worst-case scenario is still safe, then we can continue.

LLMs are especially useful for quick overviews. When going in depth, it is probably worth checking out other resources.

coding and work

There are two main reasons I decide not to use LLMs blindly:

  • if it matters that I do the work and not someone/something else
  • if the context requires strong reliability or high quality

The main goal of many of my personal projects is to learn and understand something in the process. In these cases, an LLM is not the right tool. Here we can ask ourselves whether it would be okay for someone else to do it for you. If not, then the same is true for an LLM.

When the code will be used in a production environment, we can not simply “throw an LLM” at it. In such cases, LLMs can be used in a conscious manner and its results thoroughly reviewed. We must judge when this overhead makes using an LLM slower than doing it yourself. Sometimes, understanding the code someone else wrote isn’t as fast as writing it yourself.

There are some cases where I do semi-blindly use LLMs for coding. An example is short-term UIs and tools. Before the event of coding agents, the cost barrier for deciding to code a program was significantly higher. This means some things that we previously would not have coded may now be worth doing.

example

I’m designing a logo and already have a base design done on paper. Now I want to test out many variations and even some animations. Doing all of this in classical software like Adobe Illustrator or even on paper would be alot of work and probably lead to less surveyed options and creativity.

Instead, I can tell an LLM to code an interactive UI in 2 minutes. Now I can play around with the parameters like line width, color, size and positioning as much as I want.

Then I decide I want to try an animation. 30 seconds later I have a controllable animation.

Now I want side-by-side comparisons. 30 seconds later I can add and delete new variations to compare next to each other.

After I find something I am satisfied with, I will likely redo it and make sure I have a high quality result. I might never use that code again. The code quality and maintainability don’t matter. This was made possible by LLMs and showcases one of my favorite use-cases for them in my daily life.