I built a Virtual Assistant on an iPad — here’s how I did it.

Building Virtual Assistants is tough. The work frequently includes some form of AI environment, bespoke servers for custom logic, caching servers and databases that provide dynamic content to your VA, etc. That leads, often, to a development environment that’s quite complex — not something for an iPad, you would think.

  • Textastic — a text editor for iOS
  • Blink — an SSH and Mosh terminal for iOS
  • Secure ShellFish — integrates the file system of remote servers into your local iOS file system

🤖 Rasa

To get started, we first need to create a Rasa development environment on a computer (not our iPad). You might use your laptop for this, or you might choose to commission a server from one of the cloud providers like Amazon, Google, IBM, Digital Ocean, etc. As your Rasa model gets larger, training time can lengthen quite a bit on a simple laptop, so a cloud server is a good idea. You can even add GPUs to it, to further speed up training time, if you wish.

👨‍💻 Enabling remote login

Normally we’d log in remotely to a computer using SSH, but because we’re planning to do everything on an iPad, we’ll be using Mosh instead. SSH is great, but requires a stable network connection. Mobile devices have a habit of dropping network connections and iOS also has a habit of killing backgrounded apps (and thus the connetion). Mosh solves these problems and provides a rock-solid login that persists across network changes and our session being killed by iOS.

👋 Git-centric workflow

The git-centric workflow uses a git server (eg GitHub or GitLab) as the intermediary between your iPad and your computer.

🤝 Direct-editing workflow

The direct-edit workflow is a little different, and arguably easier, in that we don’t need an intermediary git server to move files between our computer and our iPad. Instead, we can edit files on our remote computer directly from our iPad. This is enabled through the Secure ShellFish app. Committing to git should very much still be part of our workflow — it’s just that we don’t need to use git to mediate between computer and iPad.

📺 Summary

What’s remarkable about the apps I’ve mentioned is that they transform an iPad into a surprisingly effective device for development — even for building a sophisticated Virtual Assistant.

Eclectic tastes, amateur at most things. Learning how to build a new startup. Former CTO for IBM Watson Europe.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store