I built seven apps last week in about 5 hours. Nothing fancy, but simple one page javascript apps, hosted on Replit, without ‘writing’ a line of code. Only copy/paste skills required, and some willingness to face my fears of code. Over the last 18 months I have built several apps experimenting with LLMs, but in contrast those were all much bigger development projects involving student teams, dollars, which we always have fewer of than ideas, and numerous hours.
This might seem like overnight spike in productivity, but it was a long time coming. It started with my first introduction to micro simulations (h/t to Dan McCreary) eight months back, followed by constant invocations by
to try out LLMs for class simulations, and then this call for the effectiveness of experimentation at the edges. It now made sense for me create simple apps to try out ideas. I wanted to build interactive apps to find new ways for students to interact with content, their peers or with me(or an AI version of me).While code generation and even deployment has been possible with custom GPTs for some time (Website generator, Grimoire, and more), the recent launch of artifacts by Anthropic (the firm behind the LLM “Claude”) has pushed me into the ‘app developer’ category. I built some simple one-page apps for use in class this summer and hosted them for free (static websites only) on Replit. Here are some apps that I made.
Interactive visualization from discussion forum data (anonymized) - Yellowdig is a nice platform to build learning communities in courses, and I use it in all my asynchronous online courses. It has a reasonable points, badges and leaderboards setup to motivate students, but I wanted a visual interface for students to get a sense of how they were using the tool compared to others. I am hoping that it might drive them to better engagement behaviors. (Yellowdig does expose data/visuals for a network graph, but it’s not very useful). I downloaded the stats on a particular date, had a chat with Claude and created an app (with fake names here, but real data) which allows students to get a sense of their activity at a point in time. The app allows you to search by student name or a noun, as well as a drop down. If a student looks at their own information, they see their activity mapped out against all other students, as can teachers.
Interactive app to review an article - This is inspired by Ethan Mollick again, and is to be used after reading an article, in order to reinforce concepts. The app provides an overview of main concepts, chunked together into sections along with with a quiz for each section, including feedback on incorrect answers. If you want to try it yourself, you can review the prompt. I had the the LLM synthesize the prompt template once I finished building (aka prompting Claude ) the app.
Apps to explain API’s to business students - I needed a simple way for students to get some data behind apps they might use every day(Weather, stock prices). Students can get an API key(free) and enter in the app and see the process in action. Both apps are built using a similar template, which is a way to speed up development even more. The app also explains to the user what it is doing in real time.
This process of prompt, iterate, copy/paste, publish became easier with the recent launch of the share/publish feature for artifacts. I had to give a presentation this last week on this theme, and I decided to create an app 30 minutes before the presentation, to force myself to show that a new idea could become an app within that time.
I do an icebreaker activity in the orientation module for an asynchronous online course where students introduce themselves with eight nouns and respond to peers. This forum becomes an unending scroll and the forum is forgotten after the initial week. I wanted to find a way to make it easier for me and the students to refer back to information from this forum to provide context for activities later in the course. Take a look at the app before reading further. The data in the forum is unstructured and LLMs are reasonably good at extracting information and summarizing, though it requires some trial and error. I knew ahead of time that I could extract the content from the discussion forum using the Canvas API, so here are the steps I followed
Get ChatGPT to write me some code to get a JSON dump of the discussion forum.
Since the dump was a lot of text(even though I only had 29 students), Claude could not handle that much and I had to go back to ChatGPT. Unfortunately, ChatGPT was not being very cooperative with summarizing the information (looks like OpenAI has dropped the ball, while Claude is doing well), but it was good at handling a large context. So I had ChatGPT extract the text by including just the initial post and ignored the replies from students. The extraction was not perfect, and it was not able to extract 8 nouns from all posts.
I fed the compressed information to Claude as a JSON, and asked it to create an interactive app, which could be used by me and students to get to know others at a glance. You can check out the prompts on github.
Final Step - Publish the app right within Claude. I don’t need a third party publishing platform(aka Replit ) anymore, at least for simple one pager apps. You can take a look at the app on Claude’s servers(with fake names of course)
Voila - I am an app developer now!
Perhaps the next step is to let students create such learning experiences for themselves and their peers, rather than us just creating them. Maybe they can even compete to create the best simulation to learn or explain some concepts. I wrote something similar about having students train LLM’s on the topic for a class or a module. Maybe this approach can help us develop new assessments in the post-GPT era.
We teach best what we most need to learn, so how about helping our students becoming developers to build artifacts that help them and their peers learn?