The world’s leading publication for data science, AI, and ML professionals.

How GenAI Tools Have Changed My Work as a Data Scientist

An overview of the 4 use cases and 6 GenAI tools I use

(Image by the author)
(Image by the author)

It has been slightly more than two years since ChatGPT came out and started the hype around GenAI. Since then many things have happened. GenAI tools came and went. The ones that stayed became better and better, extending to more use cases.

Over the last year, I began to integrate some GenAI tools more and more into my daily work. I tried different GenAI tools and different use cases.

In this article, I will share how GenAI tools help me in my daily work. I will share what GenAI tools I use, and how they have changed my work as a Data Scientist. I will talk about how they have increased my productivity and also some words of warning.

Generally, I use GenAI tools for many things as they allow me to

  • increase my productivity in some areas
  • focus on the important and hard stuff that adds value
  • increase the quality of my work
  • learn faster and easier

I am more productive as I can iterate faster and try more things as I do not need to write all the code myself. As GenAI tools take over some of the easy but time-consuming parts of my work, I have more time to spend on strategic thinking, complex problem-solving, and being creative. Moreover, they help me to increase the quality of my work in many areas, not only when it comes to writing code. Finally, GenAI tools help me learn new things faster as I can create a learning path that suits me best.

But how does this look in detail?

Let’s jump right into it.


My (current) use cases for GenAI tools

I have four use cases for which I use GenAI tools daily:

  • learning
  • coding
  • documentation
  • writing

Learning

When it comes to learning, GenAI tools help me in different ways

  • brainstorm ideas, refine ideas, and get new input
  • get an overview of a new topic
  • explain concepts and research papers
  • learn new programming languages

The main benefit of using GenAI tools for learning is that I can ask many questions. This allows me to approach a topic that is new to me from different angles. I do not need to search hundreds of websites to find an explanation that suits me. The GenAI tools can generate many examples on the spot.

This has greatly sped up my learning and improved my learning experience. For all these tasks, the GenAI tools helped me get a good overview. However, it is often not enough when it comes to details or complex concepts described in research papers. Hence, I use the GenAI tools as a first go-to source but then dive into the details the old-school way. Read the research paper or go through a few websites. But since I already have some good basis thanks to the GenAI tools, understanding research papers has become a lot easier and faster as well.

For my learning tasks, I mostly use ChatGPT, Claude, and Perplexity AI, depending on the exact task.

Perplexity AI has partly replaced my Google search. It is much faster than clicking through many links on Google, trying to find a good answer. Moreover, it gives a better-organized answer. However, the biggest benefit for me compared to other tools is that it adds sources to the statements. This makes it easy to verify the answer and tell how trustworthy the information is. Moreover, I already have a starting point to dig deeper if needed.

The quality of the results strongly depends on the prompt. The better your prompt, the more helpful the result. I usually try to be as detailed as possible and give some context and keywords the answer should focus on. Often it also helps when specifying a role, for example, "act as an expert in …" or let the AI tool give you alternatives. However, I am not a great prompt writer and there is room for improvement.

Coding

GenAI tools have greatly improved my coding experience and skills. In general, GenAI tools have changed what I spend most time on when coding. The tools help me be quicker in solving small and easy tasks as well as building prototypes. Thus, I have more time to focus on complex problems or try more approaches.

I use the tools mainly for

  • code generation
  • code improvements/refactoring
  • error investigation
  • understanding third-party libraries and their documentation

Using AI tools has become a natural part of my coding. This is mostly because of GitHub Copilot’s auto-complete / suggestion function. I can easily accept or decline suggestions and do not have to think about "asking" for help.

When it comes to code generation I use GenAI tools in two ways.

If I know how to implement an idea and already have the steps in mind, I go step by step and use GitHub Copilot’s auto-complete function. This is usually a good enough start. However, as the output does not always work or does what I want I pay special attention to the desired behavior.

If I know what the result should look like but have no idea how to get there, I use ChatGPT or Claude to show me different approaches. This has greatly improved my work. Before, I had to tediously search the internet to get ideas for my specific problem. This search usually took a lot of time before finding the right thing (if I found it at all). Now I write a few prompts until I have what I want. I use ChatGPT or Claude as they give different suggestions and it is hard to know which one works better for a specific problem.

For example, I often use ChatGPT or Claude to generate plots for data analysis as it is much faster. Without the tools, it took me a lot of time to get a matplotlib plot to look like I wanted. Especially when I wanted to deviate from the easy and standard plots.

In some use cases, I also use GenAI tools to help me generate unit tests. I am not using the tools to create entire unit tests but to give me a starting point and a basis to build on. Building this basis is usually tedious and takes a lot of time. For this, I use GitHub Copilot as the tool is aware of the code base and can give me better suggestions. However, as the unit tests ensure the robustness of the code, I rely as little as possible on the GenAI tools.

Once I have a first version of the code I often use GitHub Copilot to refactor the code, improving code readability and conciseness. This is because almost always the first version is a mess. It’s inefficient, looks messy, and is too convoluted. It reflects my thinking when developing and testing ideas. It is far away from being production-ready. Here, GitHub Copilot’s suggestions are often a good first step. They also help me to learn different ways to solve a problem.

When investigating errors, AI tools have helped me a lot. Sometimes the error message is unclear, particularly when learning a new programming language. Using GenAI tools helps me avoid googling for hours and reading through lots of Stackoverflow posts. I mostly use GitHub Copilot as it knows the context without me needing to copy the code. This works well for easy errors and bugs. Although it usually does not work well for more complex errors the answers indicate what to look for. I rarely use ChatGPT or Claude to explain error messages as they miss context.

My last use case when it comes to coding, is probably the most interesting. I use GenAI tools to find and explain the functionalities of third-party libraries. The documentation of these libraries is sometimes not very user-friendly. It is hard to find what I am looking for and/or understand. Using ChatGPT to search documentation and act as a translator helped me many times. With this, the hassle of finding and using the functionality of third-party libraries decreased.

Documentation

Documenting my code has always been a tedious and unwanted work for me. Writing docstrings and ReadMes always took a lot of time, which I wanted to spend elsewhere.

Letting GenAI tools support me in writing documentation has been one of my first use cases. My go-to tool is GitHub Copilot as it is nicely integrated with my IDE. Hence, I do not need to copy/paste code blocks between my IDE and a GenAI tool.

GitHub Copilot takes over most of the work now for writing docstrings and ReadMes. I only refine the suggestions and do smaller re-writes.

Writing

Using AI tools has greatly improved and sped up my writing process. As I am not a native English speaker I mostly use Grammarly to check my grammar and spelling. With this, I can focus on writing and editing. I do not need to spend hours fixing grammar and spelling mistakes. Moreover, I use Grammarly and Hemmingway AI to suggest where to improve my writing. Here, I mostly focus on sentences that are hard to read and understand.

However, I only use these tools to make suggestions. I do not use any GenAI tools to write entire paragraphs or re-write my articles. This has two reasons. First, by rewriting entire paragraphs, the text would lose my personality and change my writing style. The articles would become boring and less interesting to read. Second, I see writing as a big part of my learning process. Writing helps me to uncover knowledge gaps, bring order into my ideas, and connect the dots. Letting GenAI tools do the writing would take away the benefit of writing for my learning process.


Words of Warnings

Although GenAI tools can help us with many things, we should also be cautious when using them. They are a double-edged sword as they have some caveats.

Most importantly, we should not rely too much on GenAI tools. We should not blindly trust the answers but always critically reflect on the answers. This is due to the hallucination of these tools. The GenAI tool gives you a seemingly correct answer which sounds reasonable, but the answer is wrong.

When it comes to learning, GenAI tools can prevent us from learning as much as they can help us learn. A big part of learning (at least for me) is to think critically about a topic, understand the fundamentals, and make connections to other subjects I am already familiar with. This takes time and can be hard work. With GenAI tools, I can ask anything and get a well-prepared answer. This is easy in the short term. However, as I do not do the hard work I need to learn a new subject, I quickly forget what I "learned". Hence, we should be cautious that the GenAI tools enhance how we learn and we continue learning new skills and extend our knowledge.

When it comes to coding, GenAI tools can slow us down as much as they can speed us up. Often the code contains bugs or does not exactly do what it is supposed to do. I would say it is fine when there is an obvious mistake but it is a problem when these errors become very subtle. It can be hard and time-consuming to validate that the code is correct and does not introduce obvious bugs. Hence, in the end, you could have been faster without using a GenAI tool. Thus, I only let the GenAI tools generate small code pieces. This makes it easy to ensure that the code does exactly what I want. However, these simpler tasks took up most of my time before I used GenAI tools.

Lastly, we should think about what we share with such tools. I try not to share any private data because I do not know what will happen with it once I send my request. This is particularly important when it comes to company data. I usually create simplified use cases and code examples that represent my problem before asking ChatGPT or Claude. Moreover, I do not use any Analytics functionality on complete data sets.


Conclusion

Looking at my use cases for GenAI tools and how they have changed my work as a Data Scientist you might wonder if I could work without them. Yes, I could.

But do I want to? No, as they have improved my work in certain areas.

There are caveats but they are outweighed by the overall benefit. Moreover, GenAI tools are getting better and better. The development over the last two years has been amazing and jaw-dropping. New tools are coming up and existing ones improve quickly. We can use GenAI tools for more and more use cases.

There are probably many more use cases and AI tools to help us in our daily work as Data Scientists. Hence, let me know in the comments what tools you use and what use cases you have. Otherwise, see you in my next article.


Related Articles