Previous Posts
Goal
I want to create a new visualization dashboard that benefits a new demographic by uniquely presenting the data while exploring new AI tools.
Workflow
For this week, I decided to first look at Claude by Anthropic’s value in dashboard creation. I decided to test Claude next, as it seems to be comparable in popularity and power to last week’s Codex tool. However, I noticed that Claude ran out of credits much more easily than Codex and had a much shorter “thinking” period per prompt. This greatly slowed the creation process, as each prompt required ~6 hours of downtime while waiting for more credits. This is especially difficult when troubleshooting, as a single issue can require many prompts to fix.
As 6-hour downtimes were not efficient for the goal at hand, I decided to explore a new, less popular tool called Loveable. Loveable, very quickly created a dashboard design with many features. However, many of these widgets were non-functional, and it struggled to connect to Terrier services. It seemed that every time I fixed one issue, a previously debugged one would reappear, and the cycle would continue until I ran out of credits for the day.
Prompts Used
Create a dashboard that displays Air Quality data from the sources listed at the end. This dashboard, beyond displaying data, should be intentionally designed to focus on emitters’ environmental roles and the communities they impact. This should be done through the lens of environmental justice and proper regulation. I then provided the proper GitHub documentation.
What Worked
Both Claude and Loveable were effective at rapidly generating dashboard concepts and translating high-level project goals into visual designs. Claude was particularly useful for understanding the project’s environmental justice focus and for suggesting features that connect air quality data with impacted communities and emission sources. Loveable was good for quickly producing a visually complete dashboard prototype with a variety of components. Together, these tools significantly accelerated the early design process by enabling multiple ideas and layouts to be explored in a relatively short time. The ability to quickly iterate on concepts made it easier to evaluate different approaches for presenting environmental data to a new audience.
What Didn’t Work
The largest challenge was the AI tools’ reliability and limitations during implementation. Claude frequently exhausted its usage credits, resulting in long wait times that slowed development and made troubleshooting difficult. Loveable, while fast at generating interfaces, often produced widgets that appeared functional but lacked the necessary backend functionality. Integration with Terrier services was particularly problematic, as connection issues repeatedly prevented successful data retrieval and visualization. Additionally, debugging often became cyclical; fixing one issue would frequently cause a previously resolved problem to reappear. This made it difficult to build a stable, functional dashboard.
Lessons Learned
One of the biggest lessons from this week was that AI development tools often prioritize creating impressive applications over delivering reliable core functionality. Both Claude and Loveable tended to add numerous features, widgets, and interface elements that were not explicitly requested, creating dashboards that appeared highly sophisticated at first glance. However, many of these additional components were either non-functional or only partially implemented. At the same time, the tools struggled with some of the most basic requirements of the project, such as maintaining stable connections to Terrier services and ensuring that data was displayed correctly. This experience highlighted the importance of evaluating AI-generated applications based on whether they successfully accomplish their primary objective rather than how many features they contain. In future projects, I would focus on establishing a simple, functional foundation first, then gradually adding complexity, rather than allowing the AI to continuously expand the application’s scope before core functionality has been verified.