Since Amazon offers smart speakers with screen such as the Echo Spot and Echo Show, it needed a way to allow developers to offer a better visual experience to their users. Enter the Alexa Presentation Language (or APL). APL allows Alexa Skill Developers the ability to create rich interactive Multimodal experiences. Multimodal means the user is able to interact with an interface in more than one way. In the case of an Echo Show for example, the user can interact with voice, sight, and touch.
Alexa Skills still need to be developed with Voice First in mind, with the assumption that there is no screen available. The reality is that most Echo enabled devices have no screen, and even if there is a screen it is usually used passively, unlike a television or iPad. The screen should enhance the experience and the user should not be penalized for not having access to a screen.
Because of my extensive history developing for the screen, much of developing with APL came pretty easily. Unlike developing a voice interface, screen interface practices are pretty well defined and vetted. Although the layout and the design was relatively direct, because APL is a new platform it did take me some time to get familiar with the code. With some trial, and a lot of error, it did come together pretty well.
For my first foray into the Alexa Presentation Language, I developed the game Never Always. I had already created a number of Alexa based games and I was looking to make a more fully formed solid experience, building on what I have learned up until now. I was hoping to create a game reminiscent of an old television game show, with humor and attitude. I focused more on including more sound effects and music bumpers than I have on previous games. I spent a lot of time with the dialog, trying to avoid the user from hearing repetitive responses. Through the use of Polly voices, I created two personas, an announcer and a host.
I am quite pleased with the final results as well as the opportunity to experiment with the new Alexa Presentation Language.