Abstract
Tools have always been used to aid human capabilities and efficiency, and with each advancement they are beginning to redefine what it means to be skilled in the first place. My capstone project, Poptionary, is a pop-up dictionary browser extension that assists learners by providing seamless on-demand Chinese definitions for terms and idioms. This tool was created to support active learning and comprehension, in contrast to alternatives like translating entire texts. In a similar vein, the focus for my STS research was to understand how AI coding tools reshaped the meaning of software development expertise. While these AI based tools provide strong capabilities for both learning and efficiency, they have different implications from traditional tools (like Poptionary) that necessitated investigation into understanding their potential impacts. While seemingly unrelated, my capstone project and STS research both explore how computer developed tools impact human skill development. Together, they reflect the overarching goal of understanding how technology assists people while also shifting the meaning of proficiency.
As people across the world become increasingly interconnected, communication stands at the forefront of important skills that people must cultivate for tasks such as cultural exchange and diplomacy. At the same time, information has become increasingly digitized due to the widespread adoption of the internet. The problem with this is that the increased availability of information does not mean greater equitable access, since languages with more native speakers naturally benefit from sheer numbers. Poptionary aims to help bridge this gap by providing an easy-to-use application that provides term-by-term information for the Chinese language. We identified our primary stakeholder group to be learners of varying skill levels and reading capabilities as they would benefit the most from this dictionary-based approach. Further, it was designed as a pop-up dictionary specifically to delicately balance comprehensiveness with interruption-free lookup. The methodology for creating Poptionary consisted of iterative development with stakeholder input via usability testing to identify needs and friction points of the extension. Poptionary was developed while providing functionality and features that were identified as important to empower learners.
From developing the application and gaining stakeholder feedback, we gained a few insights into strengths and weaknesses for our approach to assisting learning. Stakeholders validated that our displayed information (such as definitions, Simplified and Traditional Chinese support, pronunciation with the Pinyin and Zhuyin systems, word bookmarking, etc.) was helpful to see and expressed that they perceived the application as a strong means of being able to seamlessly understand terms. One of the largest shortcomings of Poptionary we observed was the absence of contextual relevance of definitions. This reflects the limitation of our approach to the problem, as dictionary-based solutions require an existing level of contextual reading comprehension. Without time and scope limitations, future improvements to Poptionary would include things like examples and context-based entry sorting/translation. Likewise, Poptionary would expand the scope of languages from just Traditional and Simplified Chinese to more languages to be a more all-purpose solution. Still, Poptionary proves to be a strong tool that aids users in improving their linguistic skills and serves to create more equitable access and thereby make proficiency more accessible.
AI coding tools have a similar effect by naturally lowering the barrier to entry for coding by simplifying code generation to human readable prompts. On top of this feat, they show extreme promise in streamlining task completion and at some levels, outperforming individual programmers. This begs the question – what are the tradeoffs to using these tools and how do they impact their users? To understand this, my STS research is centered around analyzing how the addition of AI coding tools as an actor affects what it means to be a software developer and how expertise is redefined because of this new tool. This must be analyzed to have a more informed understanding of any potential latent and manifest dysfunctions that arise from adopting these tools as a part of the software development arsenal. To study this, literature review of sources referencing AI coding tool usage, the psychology surrounding skill development, existing practices in classifying software expertise, as well as cases for usage in academic and professional contexts were analyzed. Actor Network Theory (ANT) was used as a framework lens to view the potential impacts and changes these coding tools had on the overarching software development network.
Through the ANT lens, it can be observed that AI coding tools reshape software development expertise by shifting agency and expectations of human actors in the system. With respect to academia, learning developers that have an overreliance on these tools end up cognitively shifting basic tasks which ends up harming critical thinking development capabilities in the long term and causes skill decay. In learning developers that use these tools responsibly, there continues to be a debate about whether expertise has reached a point where the capability to use it is a more important skill than general code generation. While a similar decaying effect could also apply to industry professionals, the larger shifts observed in the workforce included changes in task focus (from code generation to code review and validation) and moving away from inter-team communication. As a result, rather than a pattern for potential hindrance of skill improvement, industry highlights the fact that expertise is becoming less about a developer’s generative capabilities and more about their high-level skill set and ability to understand code. AI coding tools need to be closely monitored to understand how the network changes/should change in accordance to the shift in agency from human actors to create a good balance in maintaining the competitive capabilities of AI.