Back to basics in 2026

Learning to code in the age of AI
Learning
Author
Published

January 26, 2026

A solution arrives for a long-standing challenge

Data science professionals have always been in a challenging position when it comes to programming knowledge. Some knowledge is, of course, required to accomplish tasks like querying data from a database, cleaning and re-coding datasets, and building statistical models. Even more is required for things like visualization or publishing findings to the web with interactive features that have come to be expected.

However, people (like myself) in this field generally do not have a formal computer science or programming background. We typically learn skills on an ad hoc basis, piecing things together with the most minimal implementation required to get the job done. The data and the findings almost always take precedence over the programming.

For some in this field, AI has been a god-send. It fills in programming knowledge gaps and allows us to produce things that were never possible before. At times, it seems to be a cure-all for things like tedious data cleaning processes or producing more professional-looking data visualizations.

Problem solved. Right?

Here’s the catch

This solution creates another core problem. When you ask an LLM to do something for you with little knowledge of what even the building-blocks of the output mean, you have a few options:

  1. Take it at face value, plug it into your code, and see if it gives you what you wanted
  2. Spend time learning about each piece of the proposed solution and test things before using it in your code
  3. Some combination of those two

As someone who both A) generally likes to know how things work and B) is paranoid about faulty code producing an inaccurate result, I spend a lot of time with Option #2.

Option #2 has its positives. I think it facilitates more actual learning than just brute-forcing your way through prompts to get what you want. My hope with this approach is that it makes the next task faster because I won’t have to ask as many questions.

But it can be mentally and emotionally draining. This quote from a Kelly Vaughn Substack piece really resonated with me and matched my experience:

If an AI tool saves you 30 minutes but leaves you mentally drained and second-guessing everything, that’s not productivity—that’s cognitive debt. And if you’re just filling those saved 30 minutes with another 30 minutes of less valuable work, you’re going to eventually resent your work.

I’ve heard a lot about how people who used to write code have now “outsourced” almost all of that to an LLM. Now they simply “manage” these machines as if they are managing junior team members.

I do think that’s possible if you are an expert in the languages that your LLMs are producing, but what if you aren’t?

An alternative path

In my experience, the absolute best use case for LLMs in programming is to ask the tool to do something that you already know how to do but it would simply take a lot of tedious effort to accomplish. I think this is because you are able to quickly verify the output and get the satisfaction of realizing how long it would have taken you to do it manually.

But asking it to do something that you don’t already know how to do is an entirely different experience. It can be overwhelming and somewhat anxiety-inducing to review every little piece of code filled with keywords, functions, and design patterns that you have no clue why they are being used.

So, I’ve decided that in order to increase my ability to use AI effectively (because I do believe it’s here to stay) I’ve committed to deeply learning the fundamentals of the languages that I typically ask an LLM to use in solving problems for me. In order to produce a well-engineered prompt for a model, you need to know the proper terminology. In short, if you don’t even know what you are asking, how can you be confident in the result?

My 2026 learning list

Below are the languages and techniques I have committed to learning in 2026. These are the things I find myself constantly wishing I was an expert in based on the work I do daily. I will use a project-based learning approach and will update this post throughout the year with links to my output for each.

While I don’t think it’s realistic to become an expert in all of them, I do think I can master the fundamentals and then let an LLM augment my skills to produce expert-level work.

That’s the goal at least; time will tell.

Front End

A huge blind spot in data science are basic front end web design skills that prove incredibly useful when it comes time to present your findings.

  1. HTML

It’s the basis of every web-based. In my experience, just knowing a little HTML goes a long way in being able to quickly solve website rendering problems.

Projects:

  1. CSS

Just being able to quickly center an iframe-embedded dashboard on a website has made me look like a wizard before to someone who doesn’t know what CSS stands for. That being said, I’d really like to level up here and go beyond the basics.

Projects:

  • TBD
  1. JavaScript

My team at work uses a JavaScript-based charting library (Observable) alongside an R-based publishing platform (Quarto) to generate interactive visualizations and dashboards. Just knowing the basics of the language (beyond Observable) would help immensely in debugging or quickly coming up with solutions to common problems.

Projects:

  • TBD

Database management

  1. SQL

While I use SQL every day to pull and re-shaping data, I have never spent the time to formally learn the fundamentals. It’s been an exercise in the “just get it done” mentality and my learning has been piecemeal. Learning that things like the SQL order of operations are not immediately intuitive from just writing a query made me realize I need to know more.

Projects:

  • TBD

Statistical Languages

  1. R

While R is the language I know best, I learned it almost exclusively on the back of the tidyverse package. Because of that, Base R’s syntax has always seemed strange to me. Now that I a working with team members who prefer it to tidyverse, I’ve decided I need to just buckle down and learn it.

Projects:

  • TBD
  1. Python

The challenge with learning Python when you already know R is that R can do basically everything you need as a data science professional. Sure, Python can do more but you hardly ever need to do the more part.

Since LLMs seem to prefer Python in language-agnostic applications, I have encountered numerous situations where knowing the fundamentals would have been helpful. I am also curious if Python can do any of my common R tasks more effeciently.

Projects:

  • TBD

Conclusion

This is a starting point and I will add more as the year goes on. I am curious to see how this approach works alongside continuing to use LLMs in my daily work.

In my view, it’s not an either-or, it’s a both-and.

Back to top