I’ve taught an undergraduate introductory database course for many years. Typical undergraduate database courses include topics like Entity-Relationship design, SQL, normalization, and some database application programming. For database applications, I usually introduce the students to Microsoft Access, because it solves certain problems really well. However, Access is very much a desktop technology, and these days we’re all looking for good database front-end solutions for mobile devices and the web.
Every year I teach the class I go looking for a web application builder that minimizes the amount of effort required to build a front end app for a database. Something like a Microsoft Access for the web. Usually I end up showing the students how to write a simple web app in Python using Flask, which works, but requires more knowledge of HTML than I want to spend time covering in a database class (and we have other courses where that material is a better fit). This year, I came across Anvil. It’s a great fit for my students because one of the prerequisites for my class is an introductory course in Python, so they are already familiar with basic Python programming techniques. I assigned my students a small programming project with Anvil using only free-tier features, and they had good success with it. Later in the semester, I assigned a larger programming project, but didn’t suggest Anvil because I had limited experience with it and wasn’t sure how well I could support the students if they ran into difficulty. But one of the teams asked if they could use Anvil because they had really liked their experience with it. They were successful in building a front-end app for a MySQL database using the pymysql library to connect to it from Anvil.
I’m grateful to Meredydd for arranging an educational license for us so quickly that enabled us to build the MySQL app, and am looking forward to making use of Anvil again the next time I teach the class.
Stephen Schaub
Department of Computer Science
Bob Jones University
Greenville, SC USA