I've been working on a new product at Nokia for the past few months, and we're leveraging Amazon Web Services for rapid development. This is my first AWS project, so it's a lot to take in. That process has gone well, but there are still many services I haven't even touched on. When I heard Amazon was hosting a free AWS Summit in Atlanta, I decided to attend and see what I could learn. I had to run some errands early in the day, so I only spent about 6 1/2 hours at the event. Still, I was glad to have the opportunity to check it out. Since there are more summits scheduled this year (and presumably ongoing), I'm writing to both share my experience and to help anyone considering a future Summit. If you're attending an AWS Summit near you or on the fence about it, read on to see what to expect and get some tips around planning.
The AWS Summit has several concurrent tracks, so the hard part is deciding where you most want to be at a given time. To make that easier, download AWS Americas Summits for Android and start creating your schedule a day or two in advance. Be careful NOT to download the other app that claims to be official, because it didn't have the correct event details when I tried it. Once you have the list of events, note that there are 30-minute introductory presentations as well as 1-2 hour workshops that go into more detail. I added the most tempting sessions to my schedule in the app even when there were conflicts, which made it easier to switch to a fallback when a session was full or for any other reason. Besides the app, be sure to bring a laptop if you intend to participate in workshops. They had free Wi-Fi, of course, but I prefer to tether my laptop to my cell phone. Finally, bring a snack or two so you don't have to waste time hunting down vending machines.
I started out by sitting in on 3 half-hour lecture style presentations. It could have easily been different for other sessions, but these presentations were too high level for me. To be fair, I had trouble hearing the presenter for "Cloud-Based Application Deployment with AWS CloudFormation," but it seemed like anyone with a bit of CloudFormation research under their belt could skip it. "Getting Started with IoT on AWS" had a little more depth, but it still only scratched the surface of IoT Core. Finally, "AWS Lambda: Best Practices and Common Mistakes" gave a few tips that may help the beginner but not someone who's actively using Lambda functions. I don't want to sound overly critical of these sessions: given that they're only 30 minutes long, don't expect them to be any more than introductions to help determine whether a service you're unfamiliar with is worth a deeper dive when you get home. With some previous research into both CloudFormation and IoT Core as well as several months of Lambda experience, I did still take a few notes.
Next, I joined the "Design and Implement a Serverless Media-Processing Workflow" lab that used Step Functions to extract metadata from images, save the data to DynamoDB, and generate thumbnails of the images. One great thing about the lab setup was that they gave us a URL and redemption code at the beginning giving us access to a preconfigured AWS account to work in. The instructor said it's a new approach for them, and I'm sure it sped things up tremendously to skip helping people set up IAM roles and adding credits to everyone's accounts. While I expected to get into the details of media processing during this workshop, even 2 hours wasn't enough time for that. The real focus was on how Step Functions work and configuring their pre-written Lambda functions to execute as Step Functions. Since I'm familiar with Lambda but had never used Step Functions, that was great for me. It was helpful to walk through the setup to see how to implement a basic sequence flow. For anyone interested in trying it for themselves, the entire image processing workshop is available on GitHub.
Last but not least, I made it to the "AWS DeepLens Workshop: Building Computer Vision Applications" session that was so popular it was held 3 times during the day. If you want to participate in this one, show up a half hour early or the room will fill up. My concern going in was that I'd have to plug a DeepLens into my laptop to participate, but it's a Chromebook that isn't set up for development—just to remote my home workstation. They had it covered, though: everyone worked from the DeepLens itself, which comes with Ubuntu installed. It was connected to a monitor via Micro HDMI, with a USB keyboard/mouse, and logged into an AWS account with the IAM roles preconfigured. The lab concept was very cool: we deployed a machine learning model that recognizes faces in the device's live video stream, crops them out, and uploads every face as a photo to S3. Each new image triggers a Lambda function that infers an emotion from the face and stores the result in DynamoDB. Finally, we created a CloudWatch dashboard to monitor the incoming data stream and chart the number of times each emotion had been recognized in the room. As in the previous workshop, we focused on how to push ML models and a Lambda function to the device rather than the actual code (but did skim through some at the end). Of course, with the DeepLens workshop available on GitHub, you can go home and dig through the code in as much depth as you want.
I'm not a collector of cheap swag, so I didn't even browse to see what vendors were giving away (though there appeared to be plenty available if that's your jam). I was there specifically to level-up my AWS game. If you're entirely new to AWS, it could be beneficial to attend a variety of short sessions to get an overview of many different services. For those with some prior exposure to AWS, the workshops are definitely where it's at. Especially if you're a hands-on person, I recommend pursuing a small number of in-depth workshops over many brief presentations. The few notes I have from the presentations may prove useful, but we'll almost certainly leverage Step Functions at work soon and I've been brainstorming ways to put DeepLens and its underlying tech to use. If you have the chance to attend an AWS Summit nearby, go for it. Immersing yourself in that environment for a day could be just what you need to get your creative juices flowing.