I love the end of year holidays. It’s the longest holiday I take in the year and I come back with a bunch of (hopefully!) good ideas. Ideas for large and small innovation areas I want to make reality with my team who build out and operate the DevNet Sandbox platform and services.
For DevNet, the post-holiday ramp-up is fierce, as we head toward the first major Cisco event of the year – Cisco Live Europe (CLEUR) – where DevNet will have a major presence. As usual, part of the DevNet Zone will include the DevNet Sandbox booth, where you can come chat with us about everything Sandbox, DevNet, and Cisco with a developer focus.
For CLEUR, as well as a lot of new sandboxes for you guys, we’ve been putting together a new challenge for those coming along to see us.
Building the DevNet Sandbox Tablet Teaser Challenge
So, what’s the challenge? Well, because DevNet Sandbox is so easy to use (and free!), and reduces the time down to minutes for getting your hands on Cisco products and solutions for development and testing – we need to slow you down and make it more difficult! So, we’re making you build your own tablet device at the booth beforehand! We’ll be timing participants on their touch tablet building skills and logging the fastest of the day for a great prize!
This should be a ton of fun for folks. However, it did leave me needing to build the pieces of software needed for the challenge, beyond the tablet build components themselves.
Generally, keeping it simple, the requirements broke down as follows. I needed:
- A way for my team to capture participant data on the show floor – name, time taken to complete the challenge and minimal contact details (for contacting prize winners!)
- Support multiple synchronous users entering the participant data
- Present a leaderboard of times, that automatically updates with new participant data
- A small duration to a viable solution
The last requirement – small duration to viable solution – made me think about what re-use I could get from other developer tools out there that would satisfy the other requirements.
After a brief brainstorm over a litre of coffee, we landed on something that felt both clever and lazy at the same time (ahh, developer heaven :)… Creating a “GEAN” app!
What’s GEAN then?!
GEAN – A lazy MEAN stack? Replacing MongoDB for Google Sheets as a data store.
“Why?!” I hear you ask…well, because it was great for my requirements. And to be honest, I really wanted to play around with the idea.
So, my Tablet Teaser Solution would consist of Google Forms, Sheets, and a custom Leaderboard App.
I’d build a Google Form for the data input – they are really simple to build, anyone with the Form URL can use it at the same time and they are mobile friendly. Solid.
I’d link that form to a Google Sheet, with the Form data being automatically populated into that sheet upon submission.
Teaser Board – Data moves from User Form, to Sheet, to App.
Building the Form and Sheet was straight forward, but it took a little research and time to build the code I needed to integrate things from this point and to build the format of the leader board I wanted. But, a couple of nights later, I’d put together a minimal viable.
Note: Really, the main tricks are to setup and understand the client / token aspects of sheets and how your app then uses them to authenticate and drag the data out. The rest is pretty simple.
Come take the challenge at CiscoLive Europe!
If you want to see this fun app stack working and you’re thinking of heading to CiscoLive Europe, drop by the DevNet Zone and the Sandbox booth. We can answer any of your Sandbox (or GEAN!) questions and also show you all the great Cisco tech you can get your hands on fast and FREE through DevNet Sandbox. But hey, you can also do that now or anytime from the Sandbox Portal, so you don’t need to wait!
As always, I’d love to hear your feedback on (G)EAN type approaches you might have taken and of course your experiences of DevNet Sandbox, as well as any ideas you have for us to improve them in the future.
Hopefully, I’ll see you at CiscoLive. Or if not there, at other DevNet events in 2019! Wishing you a great year ahead!
* Couple of notes on the code – I’ve kept the /node_modules folder in the git repo, so that really new folk can get going as fast as possible, just by following the README and hopefully with minimal issue otherwise. I’d also gone as far as splitting the structure into an MVC approach, in case I wanted to build on this first version later. That’s probably overkill right now, but you know, good for the future…