Artificially Intelligent

07 May 2024

I. Introduction

Artificial Intelligence. These headlines are something else. And I was a complete skeptic before trying it myself. Shames me to confess that I’ve finally become a luddite. My perception of AI was similar to that of Apple’s Siri. A pocket assistant, a know-it-all operator at the front desk of the world wide web. Therefore, if I’m assured in my ability to Google something, it’s useless!

But how capable am I of Googling everything?

Using ChatGPT, I felt as if I could bounce back from anything. After a nigh semester of using AI, I can almost say with utmost confidence that it becomes better and more widely-applicable the more that you use it.

II. Personal Experience with AI:

I have used AI in class this semester in the following areas:

  1. Experience WODs e.g. E18 No. For the WODs given to us online, most of my problems came from misunderstanding syntax. I was lucky to have enough time to really fiddle with our templates to the point where I’d been able to create notes that would help me speed through the WOD, at least, eventually.

  2. In-class Practice WODs Yes. Well, half and half. With my limited time, I used AI (ChatGPT 3.5) to debug my code. If an error came up that was likely to be the fault of a minor oversight, I immediately pasted the code block responsible into ChatGPT to get a snap diagnosis. Admittedly, this may have been a harmful practice that could later blind me of common sense..

  3. In-class WODs Yes. Especially for a WOD that involved formatting elements e.g., centering a container or adjusting its margins. The first couple In-class WODs felt like a matter of syntax. The later WODs, and in particular, the ones tasking us to rebuild an existing website, would result in me scurrying over to ChatGPT in search of answers as to why certain elements wrapped in other elements weren’t lining up properly with the latter.

  4. Essays No. I’ve yet to refer to an AI for writing an essay, even if it’s to my detriment. I enjoy writing them from the ground up.

  5. Final project Far too much. My requests were centered around, “How do I achieve this thing?” Realistically, the same outcome would’ve taken place had I been searching the web, but, I was able to shortcut my path with ChatGPT. Instead of having to dig through documents upon documents of resources that might be of help, I could ask AI what I was looking for, and if answered incorrectly, again.

  6. Learning a concept / tutorial Absolutely. As an example, I thought for my final project, it’d be nice to have one of those “sliding image galleries”. The thought of implementing one from scratch was a nightmare, so I asked ChatGPT if any existing templates were available from React-Bootstrap.

Carousels. Then, “what about those popup windows?” Modals. And soon after, “what if I had a sliding image gallery that took place in a popup window?” It was an incremental process that mimicked a classroom, the difference being, I was able to walk into class and personally request a subject to learn.

..And consequently, the building blocks that lead up to it.

  1. Answering a question in class or in Discord No. Though I’ve asked questions to AI that might’ve been traditionally asked on a community forum. For in-class questions, I’ve only asked the Professor.

  2. Asking or answering a smart-question In a way, yes. I’ve done back-and-forth bugfixing with ChatGPT using a trial-and-error process to find the source of error.

  3. Coding example e.g. “give an example of using Underscore .pluck” Yes. I’d do this to get an example of syntax so I could use said code correctly (presumably). Sometimes I’d use this to “translate” a block of code into another format, like switching over from filtering a collection object to filtering an array.

  4. Explaining code I’ve done so with syntax I haven’t seen before to get a step-by-step grasp of it. Especially for some of our templates used in the WODs.

  5. Writing code Sparingly. The bulk of my code is written by me, with all its flaws. But I do ask AI sometimes to see if there’s an easier way to write something, then I show it my rough draft, functional or not.

I’ve been lucky so far to have only been required to make slight changes, though very, very important changes.

  1. Documenting code Rarely. I do so to see if the jargon that I’m using is correct.

  2. Quality assurance No. My judgement of quality, in regards to this class, is very flawed. I’ve been going on with a “if it works, it works” sort of mindset, but I know this won’t last. Over time I’ll incorporate more quality checks into my code that reflects that my current level of knowledge.

  3. Other uses in ICS 314 not listed above N/A. The above is conclusive.

III. Impact on Learning and Understanding:

The people who toted AI as being a personal tutor are mostly correct. Part of me is feeling a childlike giddiness at the prospect of being able to learn anything, but I’m also terrified of being absorbed into an echo chamber due to the current level of interactive AI’s relegating them to a “yes man” status.

Because of this, I’m more inclined to ask critically about my own code instead of assuming everything is, not only functional, but efficient. It also ensures that I don’t feel completely helpless when encountering an issue that I’ve no idea how to solve. And I think this increased sense of agency is essential in wanting to learn.

IV. Practical Applications:

Bugfixing comes to mind. Especially syntactic bugfixing. My opinion of AI’s practicality is that it most efficiently plows through the digital equivalent of manual labor. I wouldn’t trust it with a larger-scale project right now as I wouldn’t be able to accurately gauge its legitimacy. For me, I’ve used it in more day-to-day applications like in writing emails. I’ve noticed more schools picking up AI assistance in their online courses, which is also a fantastic way to ensure no student ever feels truly lost.

V. Challenges and Opportunities:

I’d like to claim that inquiring an AI has an unexpectedly steep curve. But on the other hand, perhaps I’m yet to be familiar with the questions that I should be asking. I feel like this technology is a goldmine, that if I work in tandem with it, it’ll make my life far easier.

Likewise to STEM courses such as Chemistry and Physics adopting AI tutors, I think that if Software Engineering, or, more broadly, CS departments use the same technology (as in, paid AI services tailored to the course contents), more students will experience less of a hurdle when coming in to the program.

VI. Comparative Analysis:

What I felt was that a major part of this semester’s curicullum was built by repetition. In fact, a major theme of this course’s lesson plan was repetition. In that sense, what I did with AI was no different. Asking the same questions again and again until their answers became second nature to me, such practices are in line with how we’re expected to digest our teachings. However, what remains key is active engagement. AI can’t make you engage with something hands-on. That’s for you to decide. And without hands-on experience, it really is difficult to tell if you truly understand some concept.

VII. Future Considerations:

If Software Engineering courses, and again, CS courses follow suit in integrating AI assistance services into their course material, this may be a great benefit to the majority of students in developing an early grasp of the foundations required to progress naturally in future courses. However, this always carries the downside that a subset of students, perhaps even the majority, will end up using the said service to “cheat” on all their submissions. Despite so, I believe this integration can be of positive gain.

VIII. Conclusion:

An AI service that’s pre-emptively made familiar with the course material so that it may act as a secondary instructor does away with the learning curve required to ask fulfilling questions using an AI service without said familiarity. And on top of this, it’ll be of assistance to students in general. I really do believe AI has a future in this curicullum, as plenty of students already use AI for courses such as these. Personally, the usage of AI has given me a sense of security knowing that I’ll never be truly lost. But, maybe that feeling is also a good thing. Maybe there can exist a balance, so that students like me can find their own path.