Last summer, I found myself stepping into a role that was both exciting and intimidating: a data analyst that needed to built a data pipeline. Armed with only basic Python skills and no prior coding experience, I had to figure out how to build an end-to-end data transformation pipeline, also known as ETL (Extract, Transform, Load). This involved interacting with APIs, manipulating large datasets, and uploading data to a Snowflake database. The learning curve felt steep, but due to ChatGPT’ I was able to finish the project with succes. The tool I used in this case was the “code copilot” GPT from ChatGPT.
I initially struggled with where to begin. Although I had a foundational understanding of data analysis, I wasn’t familiar with the technical intricacies of building a complete ETL pipeline. However, with the help of ChatGPT, I was able to gradually piece together the process. I would input small tasks and concepts I wanted to tackle, and the AI would provide explanations and snippets of code. This iterative back-and-forth helped me demystify many of the tasks.
By the end of the project, I had created a fully functional ETL pipeline that automated the collection and transformation of data. Without the assistance of generative AI, what seemed like a daunting and nearly impossible task turned into a fulfilling learning experience. It empowered me to stretch beyond my initial capabilities. Generative AI truly served as a valuable tool, transforming what could have been a steep learning curve into a collaborative and enjoyable project.
Pitfalls
While generative AI was incredibly helpful in building my data transformation pipeline, there were some notable limitations. Debugging, for instance, still required significant manual effort. ChatGPT struggled with complex bugs, and I often had to turn to StackOverflow for deeper insights and solutions to fix it myself.
Additionally, technical knowledge was crucial. While the AI helped structure code, I needed to understand APIs, Snowflake, and XML parsing to implement specific details. ChatGPT couldn’t generate the entire solution on its own. ChatGPT is great for creating the global parts of code but I needed to adjust the code most of the time to make it fit in my project.
Moreover, I realized the importance of asking precise questions. You can’t ask the AI to write code without providing clear technical requirements. It’s similar to how a product owner communicates with developers: even if you don’t know how to code, you need to speak their language to convey what you want. In the end, generative AI was a valuable tool, but success depended on my ability to guide it with the right queries.