Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News AWS re:Invent Day 2 Keynote Announcements: Alexa for Business, Cloud9 IDE & AWS Lambda Enhancements

AWS re:Invent Day 2 Keynote Announcements: Alexa for Business, Cloud9 IDE & AWS Lambda Enhancements


At the second keynote of the AWS re:invent 2017 conference, running in Las Vegas, Werner Vogels, CTO of Amazon, took to the stage to announce several new product releases: Alexa for Business; AWS Cloud9 - a fully-feature cloud-based IDE with extensive integration into the AWS ecosystem, particularly focusing around AWS Lambda; and multiple enhancements to the AWS Lambda service, including traffic shifting, the doubling of available RAM, and a pre-announcement of .NET Core 2 and Golang language support.

The first product announcement of the day was Alexa for Business, a new service that enables businesses and organisations to bring Alexa -- the cloud-based voice service popularised by Amazon's Echo device -- into the workplace "at scale". Alexa for Business will allow employees to join meetings in conference rooms by simply saying "Alexa, start the meeting" to a nearby Echo, and the Alexa service will then turn on the video conferencing equipment, dial into the conference call, and start the meeting. Vogels also presented the vision of Alexa helping around the office, for example, accessing custom skills to help with directions around the office, reporting a building equipment problem, or ordering office supplies.

Voice represents the next major disruption

Alexa for Business allows customers to provision and manage Alexa devices in an organisation from a centralised console, specifying the device locations, enabling the set of skills that can be used, and preventing users from tampering with them. Alexa for Business is an open service, and the Alexa for Business APIs allow customers to build skills so that Alexa can work with additional equipment or perform specific tasks.

The second announcement of the day was AWS Cloud9, a fully-featured Integrated Development Environment (IDE) for writing, running, and debugging code from a web browser (in much the same fashion as the existing Eclipse Che). AWS Cloud9 is based on the popular open source Ace Editor and IDE that Amazon acquired last year. The service is provided at no additional charge, and the only cost is the underlying compute (EC2) and storage resources (EBS) that the IDE runs on. Cloud9 integrates terminal access from the underlying host, and includes a pre-installed and pre-configured AWS CLI for access to the user's account resources.

Cloud9 comes prepackaged with tooling for JavaScript, Python, PHP, Ruby, Go, and C++, and has full support for working with AWS Lambda-based applications, including the generation of a Serverless Application Model (SAM) template, local execution on the underlying EC2 host with SAM local, and full interactive local and remote debugging of Lambda functions. Clare Liguori, senior software engineer at Amazon Web Services, took to the stage to demonstrate that Cloud 9 also provides remote pair-programming features, and access to shared sessions can be configured via AWS IAM policies. Users can share IDE sessions, viewing in real-time what other users are doing in the editor and terminal, and collaborating via an embedded text-based chat feature.

AWS Cloud 9

A number of enhancements to the AWS Lambda Function-as-a-Service (FaaS) serverless offering were announced:

  • It is now possible to set a concurrency limit on individual AWS Lambda functions. This will reserve a portion of account level concurrency limit for a given function, and allows the throttling of a given function if it reaches a maximum number of concurrent executions allowed. This can prevent a single function from exhausting an entire account capacity limit allowance, and allows traffic rates to resource-constrained downstream services called by Lambda, such as DynamoDB, to be limited.
  • AWS Lambda now supports traffic shifting, and phased deployments with AWS CodeDeploy. This allows incoming traffic to be shifted between two AWS Lambda function versions (aliases) based on pre-assigned weights, helping to reduce the risk and limit the blast radius of new Lambda deployments. It is also possible to use AWS CodeDeploy to automatically manage the rollout of new function versions.
  • It is now possible to log the execution activity of AWS Lambda functions with AWS CloudTrail Lambda data events. Previously, only Lambda management events could be logged.
  • A private preview of the AWS Serverless Application Repository was launched. This service is designed to allow producers and consumers of serverless applications to publish, discover, and deploy pre-packaged app bundles. Applications must be in AWS SAM format, accompanied by a SPDX license identifier. This new service is similar to the pre-existing stdlib service function repository.
  • The maximum memory capacity for AWS Lambda functions has been doubled, allowing engineers to allocate 3008MB of memory to functions.
  • A pre-announcement of upcoming .NET Core 2 and Golang language support for AWS Lambda was made, but no additional details have been provided at this time.
  • Amazon API Gateway now supports endpoint integrations with Private VPCs, allowing access to HTTP(S) resources within a VPC without exposing them directly to the public Internet.
  • Amazon API Gateway now supports canary release deployments, making it possible to gradually roll out new APIs and limit the blast radius of new deployments.

Additional information on AWS re:invent can be found on the conference website, and full details of all produces launched can be found on the AWS news blog.

Rate this Article


Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Community comments

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p