I’ll be teaching some basic Swift and Java coding in my 300-level ENGL intro to web design class tomorrow. The students have already been learning to build websites all term. After weeks with HTML, CSS, JavaScript, and frameworks such as Bootstrap, they’re understandably tired of the all coding they’ve already learned. And Swift and Java aren’t front-end web standards, as everything else we’ve studied this term is.
But. It’s worth showing them, at least.
Because this will allow my students to make the documents they’ve been writing and designing all semester (and in the future) into ‘apps’ for phones and tablets. The apps, when launched, load the students’ web documents or websites full-screen on mobile devices.
So it’s useful—if they can handle it. But I’m concerned about overwhelming them. I do get the clear sense that students in 2022 are especially scared of coding. Probably from the bizarrely neurotic ways coding are figured in popular culture.
But will this be too much for college juniors who haven’t ever studied code? They really only have to edit line 24 in each file, to put in their own website URL addresses, and probably want to replace the ‘Geoff’ icon with an icon of their own design. Then they’ll have to compile this code, using one or both of two (free) compiler applications they’ll have to install on their computers and learn to use. But if they can learn to use these templates, then they’ll be able to make a kind of mobile app called a ‘WebView’ app — basically a first entry into coding. And post those into the Apple, Google, and Amazon App Stores.
Here’s the code in Swift, in the XCode compiler (which only runs on MacOS):
With the code above (written in the language Swift), they’ll be able to create an iOS app which could be submitted to the Apple App Store (it only takes about a minute), which would load their personal portfolio websites (or final class projects) on iPhones or iPads. Line 24 is the important line, which contains the website URL which should be loaded, full-screen, when the app is launched.
Here’s the corresponding code in the language Java, in Android Studio (which runs on Windows, Linux, and MacOS):
With the second example, they’ll be able to compile an Android app which loads the web address they provide in a full-screen app on Android phones and tablets. Again, line 24 is the crucial one in this code. And basically, this is just what Twitter, Facebook, Instagram, and many social media apps do.
You can see this example ‘Geoff Sauer’ app now running in the images below:
This project would let each of us in the class make a “Geoff Sauer” app (or one with a student’s own name, or their service learning clients’ names). Clicking the “Geoff Sauer” icon opens this website, my personal site, as an app. It makes reading this blog something you could do daily (if you want).
While everything above may seem technical and complex and new, I quite believe this is a skill worth learning. Especially for students who work on service learning projects for deserving nonprofit clients, being able to deliver a complimentary and complementary app to the websites they’re already building can be very useful. (Even if students are hesitant to venture much into learning coding?)
These screen shots, by the way, are emulated (virtual) iPhones (an iPhone 8) and Android phones (a Samsung Nexus). Did you know that computers can do that?
My students are always amazed when I show them their computers have virtual cellphones inside of them. (Especially when I get the computers to emulate newer and better cellphones than any of us actually own.) Doubly so when I point out the MacBook Air I teach with is from 2015, so they can certainly do it with their computers. Both XCode and Android Studio are completely free of charge, so the only thing stopping students from exploring this over the summer is their own time. Fun.
As you know, sometimes I’m asked why this is taught in an English class. I’ve written about this in the past. English departments in the U.S. have always taught students to produce culture: in the past, this has been poetry, novels, short fiction and creative nonfiction, of course. As well as the venerable persuasive essay. And all of those still exist. But I strongly believe that apps and websites are now a vital part of contemporary culture, and English students should be able to create 2022 culture, as well. Students often nod thoughtfully when I tell them that; no one’s ever been able to argue otherwise. But this is a duty of sorts, a responsibility—we shouldn’t leave cultural production solely to programmers. Those of us who call ourselves ‘creatives’ can code, too; coding just isn’t really very scary.
Or it shouldn’t be.
Being able to publish our own content in apps that can be circulated on the Apple or Google App Stores should help students in English departments, whom I strongly believe have amazing material to share with the world, feel more confident about the value of their work. It should, right? Is the needed coding worth the effort? Some of my students have picked up from someone—not their professors, I hope—a startlingly fierce resistance to learning applied technologies. Which I hope to overcome, at least a bit, in my classes. We’ll see.
(By the way, the XCode with Swift is a joy to work in, every time. The Android Studio using either Java or Kotlin is a nightmare, every time. Should I tell them that?)
I welcome your advice.
Context, I think, might come from a bit of history.
In the 20th century, English departments introduced publishing courses as useful adjuncts to writing courses, as well as pathways to employment. Today, publishing takes place almost entirely on the internet–and the end of the print medium’s dominance is in sight. Cultural publication, the traditional domain of the English Department, is increasingly influenced by the the internet, making available a non-linear approach to culture which clearly is alternative to the linear medium of print.
And as the great guru of the English Department Marshall McLuhan once declared, “The Medium is the Message.” For that reason the medium must not be abandoned to technological disciplines, but rather to those with sensitivity to the Message–so we must learn the Medium.