Twitter To Make Big Product Changes This Week To Combat Harassment

Key changes are coming to Twitter this week as the company attempts to solve its harassment and abuse problem.

In a tweetstorm posted late Monday, Twitter VP of Engineering Ed Ho conceded that Twitter didn&;t move fast enough to tackle harassment last year, and said that a number of product changes are coming “in the days ahead” to address it.

Among the fixes Twitter plans to implement: one that adjust mute and block controls to prevent repeat offenders from creating new accounts. Ho did not explain the solution Twitter has in mind. But some observers have recommended the company tie accounts to phone numbers, giving it a way to more easily police trolls who bypass its rules.

Twitter is expected to report its earnings for the final quarter of 2016 next week. Harassment, which was a regular issue on its calls with analysts last year, could be a theme once again.

Here&039;s Ho&039;s full tweetstorm:

Quelle: <a href="Twitter To Make Big Product Changes This Week To Combat Harassment“>BuzzFeed

Here’s What Airbnb Is Actually Doing For Refugees

When Airbnb CEO Brian Chesky tweeted Saturday night that his company would be offering free housing to immigrants displaced by President Trump’s travel ban, the move was lauded as one of the strongest in Silicon Valley.

Trump signed an executive order on Friday banning refugees and immigrants from seven Muslim-majority nations from entering the United States. Over the weekend, a string of tech companies came out against the policy with measured responses, usually saying that they didn’t support it and offering assistance to employees impacted by the ban.

But an offer of free housing made Airbnb stand out from the crowd. The company is asking its hosts around the world to volunteer their Airbnb listings as free housing for refugees and immigrants. If people need a place to stay and no hosts are willing to put them up gratis, the company says it will cover the costs.

In an email to BuzzFeed News, an Airbnb spokesperson said the company is already working with individuals who reached out about a place to stay, as well as with relief organizations that are in touch with immigrants in need of housing.

The ability to travel freely, and be accepted wherever you go, is central to Airbnb’s brand. Over the last year of the company’s public relations crises, from its apology for allowing racial discrimination on the platform to its promise to work with cities rather than suing them, it’s become clear that Airbnb is heavily invested in maintaining its reputation as the nice guy of the sharing economy. It’s an image that has slipped in recent years, as housing advocates attack the company — and Airbnb is willing to leverage both its capital and global network of homeowners in order to maintain it.

“We believe that you should be able to travel to, and live in any community around the world,” said Chesky in an email to employees on Sunday. “This is what we mean when we say anyone should be able to belong anywhere. If we want this to be more than just something we put on a plaque, we have to take action.”

Airbnb has been helping people in crisis find a place to stay since 2013. The company has activated a disaster response tool during a hurricane in the United States, an earthquake in Japan, and bombings in Europe; now, it’s doing the same thing for “refugees and those who may have unexpectedly been affected by the recent travel ban into the United States.” Hosts around the world can sign up to volunteer their homes, and Airbnb connects them with displaced people as needed.

The company didn’t say whether any immigrants have been connected with hosts yet, or the locations of people who had asked about housing.

Airbnb isn’t alone in these efforts. Other online platforms that exist specifically to offer housing to refugees have popped up over the last couple of years, including Refugees Welcome, a Danish platform used throughout Europe, and EmergencyBnb.com, built by an Egyptian immigrant living in the United States. Both of those platforms are free to the guests, and rely on the generosity of hosts.

Airbnb, meanwhile, says it has provided “over 3,000 nights” of free housing to relief workers and donated $1 million to the United Nations High Commissioner for Refugees (UNHCR). The company also invites hosts to “offer warm meals” to refugee families, an initiative it plans to expand in 2017.

Not every sharing economy company that dove into the realm of the political during protests against the immigration ban on Saturday got the same positive results as Airbnb. Uber experienced a major backlash when it offered affordable rides to and from the anti-Trump protest at JFK airport in New York. Critics said it was undercutting a concurrent strike by taxi workers, who opposed the refugee ban on the grounds that it could spark Islamophobia against Muslim drivers. That, combined with the fact that Uber CEO Travis Kalanick is signed on as a Trump economic adviser, inspired thousands of customers to vow to boycott the company, and by Saturday night, deleteuber was trending nationally on Twitter.

Airbnb, meanwhile, continues to be lauded for its offer of free housing to immigrants, regardless of whether it ends up costing the company anything. As Uber attempts damage control by targeting a pro-immigration message from Kalanick to “people interested in American Civil Liberties Union” on Facebook, Airbnb’s Instagram account has been underscoring its message of openness and acceptance by sharing glossy photographs of happy travelers and landmarks in Iran, one of the countries on Trump’s ban list.

Via instagram.com

Quelle: <a href="Here’s What Airbnb Is Actually Doing For Refugees“>BuzzFeed

Jeff Bezos Says Amazon Is Exploring "Legislative Options" Against Trump's Refugee Ban

Amazon founder and CEO Jeff Bezos gets on an elevator for a meeting between President-elect Donald Trump and technology industry leaders at Trump Tower in New York, Wednesday, Dec. 14, 2016. (AP Photo/Evan Vucci)

Evan Vucci / AP

Amazon CEO Jeff Bezos on Monday issued one of the strongest corporate statements of opposition to President Trump&;s refugee ban yet.

In an email to all employees (full text below), Bezos said Amazon does not support the order and is exploring “legislative options” for opposing it. He also noted that Amazon will submit a declaration in support of Washington State Attorney General Bob Ferguson, who is filing a lawsuit in federal court to stop the order.

Bezos, who was among tech executives who met with the president at Trump Tower in December, said Amazon&039;s legal team has filed a declaration of support of the Washington State Attorney General&039;s lawsuit against Trump.

When Bezos announced that Amazon would be creating over 100,000 new jobs in the next year and a half, Trump was quick to take credit for the move; at the time, Amazon did not respond to request for comment as to whether Bezos&039; meeting with Trump had played a role in the announcement.

Other tech executives, including those from Google, Apple Uber and Tesla, have been responding to Trump&039;s executive order with varying degrees of severity since Saturday; BuzzFeed News is keeping track of their responses here.

Here&039;s the full text of the email from Bezos:

RE: Advisory—New Executive Order’s Potential Impact on Amazon Employees

A quick update on where we are. This executive order is one we do not support. Our public policy team in D.C. has reached out to senior administration officials to make our opposition clear. We’ve also reached out to congressional leaders on both sides of the aisle to explore legislative options. Our legal team has prepared a declaration of support for the Washington State Attorney General who will be filing suit against the order. We are working other legal options as well.

We’re a nation of immigrants whose diverse backgrounds, ideas, and points of view have helped us build and invent as a nation for over 240 years. No nation is better at harnessing the energies and talents of immigrants. It’s a distinctive competitive advantage for our country—one we should not weaken.

To our employees in the U.S. and around the world who may be directly affected by this order, I want you to know that the full extent of Amazon’s resources are behind you.

Thank you,

Jeff

Quelle: <a href="Jeff Bezos Says Amazon Is Exploring "Legislative Options" Against Trump&039;s Refugee Ban“>BuzzFeed

Soon You'll Be Able To Talk To Your Starbucks App

Starbucks

Starting this summer, you won&;t have to watch a barista roll their eyes when you order a double upside down macchiato half-decaf with room and a splash of cream in a grande cup. You&039;ll have the option to talk to a non-judgmental chatbot.

Starbucks plans to add a virtual assistant, which you can talk to or text with, to its already-popular mobile ordering app this summer. The bot is called My Starbucks Barista, and it&039;s available to about 1,000 people to beta test right now.

The chatbot will allow you to order via talk or text and add modifications, if for example, you specify that you want your “banana bread warmed.” Just like a regular barista, it will respond with questions like, “What size?”

Starbucks has made a video of someone making the kind of detailed orders only a human might understand.

Voice-activated AI bots have become increasingly popular in the US, sparked in part by the success of Amazon&039;s Echo speaker and AI assistant Alexa, which you can use to order items off Amazon, dim the lights in your room, or queue up streaming music. Siri, the voice-activated assistant Apple debuted back in 2011, hasn&039;t quite pleased customers in the same way that Alexa has.

Starbucks has also given Alexa the ability to order Starbucks for you. It allows customers “to order their &039;usual&039; Starbucks food and beverage items as they move throughout their day,” according to the company. But if your usual order is complicated, you won&039;t be able to change that order while you&039;re talking to Alexa.

The same day as Starbucks announced the feature, the company was embroiled in controversy.

On January 29, Starbucks CEO Howard Schulz responded to Trump&039;s immigration order from last Friday by saying that human rights in the USA were “under attack.” He pledged to hire 10,000 refugees over the next five years at Starbucks locations around the globe. Some Trump supporters were livid.

Even still, the controversy probably won&039;t hurt the popularity of Starbucks&039; ordering app.

People use the apps so often that Starbucks has had to redesign some stores in response. At an investor conference presentation in December 2016, Starbucks said that 8 million people had downloaded the app, with one third of them using Mobile Order and Pay. Mobile transactions accounted for 21% of Starbucks&039; US transactions in 2015, the same year it rolled out the Mobile Order and Pay throughout the US, according to Wired. That figure grew to 27% in 2016, the company said in a statement.

Quelle: <a href="Soon You&039;ll Be Able To Talk To Your Starbucks App“>BuzzFeed

Facebook Promises Improvements After Removing Conservative Post

Getty Images / Alt National Parks Service

On Thursday evening, Cyrus Massoumi published a post on his conservative news website, Mr. Conservative, that he knew could cause trouble for his business. The post, written as an open letter to his readers, warned that Facebook could censor conservative-leaning news as a result of its efforts to remove misinformation from the platform.

Massoumi shared it with the more than 2 million fans of his Facebook page, and within minutes his worst fears seemed to come true. Traffic began plummeting as the number of people being referred from his Facebook page fell off sharply. He believed Facebook was taking action against his page.

“This is an algorithmic execution,” he wrote in a Skype message to BuzzFeed News at the time.

Then he saw that three earlier posts on his Facebook page had disappeared without warning or explanation.

“The way to censor that article if you specifically wanted to without deleting it would be to delete the previous posts,” he said.

Cyrus Massoumi

Massoumi’s experience is one of a series of recent content takedowns and bans imposed by Facebook and Google that have sparked concerns from publishers and activists about how these dominant platforms are applying their policies, and about the level of transparency they offer in explaining their decisions.

In response to a BuzzFeed News inquiry, a Facebook spokesperson said the company will aim “to do better.” They also emphasized that censorship played no role in the actions, and said the bans were in fact a result of automated systems meant to thwart spammers and other bad actors.

In Massoumi’s case, he did not receive a message from Facebook about the removed posts. At the time he assumed he was being censored, especially given the timing of the removals. Similarly, the Russian-government-funded broadcaster RT accused Facebook of taking politically motivated action when its largest Facebook page was given a temporary posting ban as a result of what the social network said was a copyright violation. Over the weekend, the Alt National Parks Service Facebook page, which sprung up in opposition to Trump’s policies, was handed a temporary ban on new likes. That also caused some to accuse Facebook of censorship.

A Facebook spokesperson told BuzzFeed News all of the above actions were taken by automated systems rather than by the community standards team that evaluates content for hate speech, graphic violence, and other violations.

“Facebook is a platform for all ideas,” said the spokesperson, who spoke on the condition that they not be named. “Our mission, and business, relies on giving people of all different voices and opinions a place to share. We&;re continuously working to improve how we serve everyone in our community — from better communication to more effective and accurate systems — and will learn from these experiences to do better.”

In the case of Google, last week it announced that it took action against 340 websites on its AdSense platform after reviewing a total of 550 sites “suspected of misrepresenting content to users.” When asked to disclose the list of sites and/or publishers, a Google spokesperson said they don&039;t comment on individual cases.

“We communicate with the publisher or the site directly for warnings or violations,” they said, noting that it could violate the privacy policy to disclose information about AdSense publishers publicly or to third parties.

However, after BuzzFeed News exposed a network of more than 40 sites that published hundreds of fake news articles in 2016, a Google representative emailed to say they had removed those specific sites from AdSense. When asked why they commented on that instance but not others, the spokesperson said they reached out to correct the impression that the sites were still in AdSense.

Getty Images

Facebook has close to 2 billion global users, and Google powers an ad network that earns revenue for close to 2 million websites. Performance on one or both of their platforms will make or break a content business — which means each ban or removal is treated as a life-or-death scenario by publishers.

Scrutiny of Facebook&039;s and Google’s actions is even more intense now that both companies have initiatives aimed at stopping the spread of online misinformation and deceptive content. American conservatives in particular have expressed concerns about the possibility of censorship. Massoumi raised the possibility of his site being targeted in a November interview with BuzzFeed News.

But even the liberals pushing Facebook and Google to crack down on what has often been pro-Trump fake news say they find the lack of transparency troubling. Angelo Carusone, president of the liberal watchdog group Media Matters, told BuzzFeed News it’s a struggle to get information from the companies. When his group sent Google a list of sites it considers fake news, he says the company did not follow up to say what, if any, action had been taken.

“There is a lack of transparency and unwillingness to at least identify the sites they take action against,” he said.

He said Google has been more of a challenge to deal with than Facebook.

“I think Google is doing worse in a weird way, even though they have better metrics to tout,” he said, citing its recent report of banning 340 sites. “I believe Facebook is genuinely committed [to fighting fake news] but has internal confusion and business concerns they are grappling with.”

Facebook and Google both say they are trying to balance a desire to act quickly and at a massive scale with the need to be transparent and communicate clearly with publishers and other partners.

“We’re talking about the scale of the internet here, and these bad actors move quickly,” a Google spokesperson said. “That’s what we’re trying to fight against.”

So just as automated systems like algorithms decide which content rises to the top of the News Feed and Google results, they can also remove content, ban pages and ads, and take actions that keep content and revenue out of the hands of publishers. When this is done without notice or a clear explanation, people worry about censorship and malicious intent on the part of platforms.

On Jan. 18, the broadcaster RT received a message from Facebook saying a temporary posting ban was a result of a copyright claim made by Current Time, a Russian-language broadcaster funded by the US government. But Current Time publicly denied that it registered a complaint. Within roughly 24 hours, Facebook restored RT’s posting privileges, but it did not immediately explain why RT was banned. A Facebook spokesperson now says RT was not the only publisher affected by the system error at the time.

The spokesperson also said the ban on new likes for the Alt National Parks Service page was instituted because it received a significant number of new likes in a very short period of time. That can trigger a temporary ban, since malicious pages often use automated methods that cause a spike in likes, according to Facebook.

After the ban was lifted, the Alt National Parks Service posted to say it had been put in place because of “complaints” registered with Facebook. The spokesperson said this was not the case, but commenters on the page continue to speculate about who was making the complaints.

View Video ›

Facebook: AltUSNationalParkService

The three posts Massoumi said were removed from his page included one post about Matt Damon expressing hope that Trump would be successful, another about the Mexican president canceling a meeting with Trump, and a third about recent insults directed at Melania Trump. One was restored without notice the next day.

The Facebook spokesperson said the post that was removed and later reinstated was initially taken down in error by an automated system designed to thwart spammers. (The company said it did not have any record of action being taken on the other posts Massoumi said disappeared from his page.)

It wasn&039;t the first time Massoumi had seen a post disappear and then reappear without explanation. On Jan. 20 he told BuzzFeed News via Skype that a Facebook post about the Trump inauguration was removed that day and later reinstated. He also said conservative-oriented posts about Muslims had recently been removed by Facebook’s community standards team due to what they said were hate speech violations. As a result, Massoumi, who was raised in a Muslim family, said he no longer posts about Muslims.

“I’m self-censoring, but my fans think they are getting everything authentically,” he said. “So, it’s worse than 1984, because you think you are getting real news, when in actuality I weigh everything against the risk of Facebook employees flagging it.”

In addition to concerns about humans reviewing his posts, Massoumi says he now has to worry about Facebook’s automated systems going awry and removing posts or imposing bans.

“I assumed it was much more nefarious,” he said. “In fact it’s entirely random.”

Quelle: <a href="Facebook Promises Improvements After Removing Conservative Post“>BuzzFeed

Running MongoDB on Kubernetes with StatefulSets

Editor’s note: Today’s post is by Sandeep Dinesh, Developer Advocate, Google Cloud Platform, showing how to run a database in a container.Conventional wisdom says you can’t run a database in a container. “Containers are stateless!” they say, and “databases are pointless without state!” Of course, this is not true at all. At Google, everything runs in a container, including databases. You just need the right tools. Kubernetes 1.5 includes the new StatefulSet API object (in previous versions, StatefulSet was known as PetSet). With StatefulSets, Kubernetes makes it much easier to run stateful workloads such as databases.If you’ve followed my previous posts, you know how to create a MEAN Stack app with Docker, then migrate it to Kubernetes to provide easier management and reliability, and create a MongoDB replica set to provide redundancy and high availability.While the replica set in my previous blog post worked, there were some annoying steps that you needed to follow. You had to manually create a disk, a ReplicationController, and a service for each replica. Scaling the set up and down meant managing all of these resources manually, which is an opportunity for error, and would put your stateful application at risk In the previous example, we created a Makefile to ease the management of of these resources, but it would have been great if Kubernetes could just take care of all of this for us.With StatefulSets, these headaches finally go away. You can create and manage your MongoDB replica set natively in Kubernetes, without the need for scripts and Makefiles. Let’s take a look how.Note: StatefulSets are currently a beta resource. The sidecar container used for auto-configuration is also unsupported.Prerequisites and SetupBefore we get started, you’ll need a Kubernetes 1.5+ and the Kubernetes command line tool. If you want to follow along with this tutorial and use Google Cloud Platform, you also need the Google Cloud SDK.Once you have a Google Cloud project created and have your Google Cloud SDK setup (hint: gcloud init), we can create our cluster.To create a Kubernetes 1.5 cluster, run the following command:gcloud container clusters create “test-cluster”This will make a three node Kubernetes cluster. Feel free to customize the command as you see fit.Then, authenticate into the cluster:gcloud container clusters get-credentials test-clusterSetting up the MongoDB replica setTo set up the MongoDB replica set, you need three things: A StorageClass, a Headless Service, and a StatefulSet.I’ve created the configuration files for these already, and you can clone the example from GitHub:git clone https://github.com/thesandlord/mongo-k8s-sidecar.gitcd example/StatefulSet/To create the MongoDB replica set, run these two commands:kubectl apply -f googlecloud_ssd.yamlkubectl apply -f mongo-statefulset.yamlThat’s it! With these two commands, you have launched all the components required to run an highly available and redundant MongoDB replica set. At an high level, it looks something like this:Let’s examine each piece in more detail.StorageClassThe storage class tells Kubernetes what kind of storage to use for the database nodes. You can set up many different types of StorageClasses in a ton of different environments. For example, if you run Kubernetes in your own datacenter, you can use GlusterFS. On GCP, your storage choices are SSDs and hard disks. There are currently drivers for AWS, Azure, Google Cloud, GlusterFS, OpenStack Cinder, vSphere, Ceph RBD, and Quobyte.The configuration for the StorageClass looks like this:kind: StorageClassapiVersion: storage.k8s.io/v1beta1metadata:  name: fastprovisioner: kubernetes.io/gce-pdparameters:  type: pd-ssdThis configuration creates a new StorageClass called “fast” that is backed by SSD volumes. The StatefulSet can now request a volume, and the StorageClass will automatically create it!Deploy this StorageClass:kubectl apply -f googlecloud_ssd.yamlHeadless ServiceNow you have created the Storage Class, you need to make a Headless Service. These are just like normal Kubernetes Services, except they don’t do any load balancing for you. When combined with StatefulSets, they can give you unique DNS addresses that let you directly access the pods! This is perfect for creating MongoDB replica sets, because our app needs to connect to all of the MongoDB nodes individually.The configuration for the Headless Service looks like this:apiVersion: v1kind: Servicemetadata:  name: mongo  labels:    name: mongospec:  ports:  – port: 27017    targetPort: 27017  clusterIP: None  selector:    role: mongoYou can tell this is a Headless Service because the clusterIP is set to “None.” Other than that, it looks exactly the same as any normal Kubernetes Service.StatefulSetThe pièce de résistance. The StatefulSet actually runs MongoDB and orchestrates everything together. StatefulSets differ from Kubernetes ReplicaSets (not to be confused with MongoDB replica sets!) in certain ways that makes them more suited for stateful applications. Unlike Kubernetes ReplicaSets, pods created under a StatefulSet have a few unique attributes. The name of the pod is not random, instead each pod gets an ordinal name. Combined with the Headless Service, this allows pods to have stable identification. In addition, pods are created one at a time instead of all at once, which can help when bootstrapping a stateful system. You can read more about StatefulSets in the documentation.Just like before, this “sidecar” container will configure the MongoDB replica set automatically. A “sidecar” is a helper container which helps the main container do its work.The configuration for the StatefulSet looks like this:apiVersion: apps/v1beta1kind: StatefulSetmetadata:  name: mongospec:  serviceName: “mongo”  replicas: 3  template:    metadata:      labels:        role: mongo        environment: test    spec:      terminationGracePeriodSeconds: 10      containers:        – name: mongo          image: mongo          command:            – mongod            – “–replSet”            – rs0            – “–smallfiles”            – “–noprealloc”          ports:            – containerPort: 27017          volumeMounts:            – name: mongo-persistent-storage              mountPath: /data/db        – name: mongo-sidecar          image: cvallance/mongo-k8s-sidecar          env:            – name: MONGO_SIDECAR_POD_LABELS              value: “role=mongo,environment=test”  volumeClaimTemplates:  – metadata:      name: mongo-persistent-storage      annotations:        volume.beta.kubernetes.io/storage-class: “fast”    spec:      accessModes: [ “ReadWriteOnce” ]      resources:        requests:          storage: 100GiIt’s a little long, but fairly straightforward.The first second describes the StatefulSet object. Then, we move into the Metadata section, where you can specify labels and the number of replicas. Next comes the pod spec. The terminationGracePeriodSeconds is used to gracefully shutdown the pod when you scale down the number of replicas, which is important for databases! Then the configurations for the two containers is shown. The first one runs MongoDB with command line flags that configure the replica set name. It also mounts the persistent storage volume to /data/db, the location where MongoDB saves its data. The second container runs the sidecar.Finally, there is the volumeClaimTemplates. This is what talks to the StorageClass we created before to provision the volume. It will provision a 100 GB disk for each MongoDB replica.Using the MongoDB replica setAt this point, you should have three pods created in your cluster. These correspond to the three nodes in your MongoDB replica set. You can see them with this command:kubectl get podsNAME        READY     STATUS    RESTARTS   AGEmongo-0      2/2       Running   0          3mmongo-1      2/2       Running   0          3mmongo-2      2/2       Running   0          3mEach pod in a StatefulSet backed by a Headless Service will have a stable DNS name. The template follows this format: <pod-name>.<service-name>This means the DNS names for the MongoDB replica set are:mongo-0.mongomongo-1.mongomongo-2.mongoYou can use these names directly in the connection string URI of your app.In this case, the connection string URI would be:“mongodb://mongo-0.mongo,mongo-1.mongo,mongo-2.mongo:27017/dbname_?”That’s it!Scaling the MongoDB replica setA huge advantage of StatefulSets is that you can scale them just like Kubernetes ReplicaSets. If you want 5 MongoDB Nodes instead of 3, just run the scale command:kubectl scale –replicas=5 statefulset mongoThe sidecar container will automatically configure the new MongoDB nodes to join the replica set.Include the two new nodes (mongo-3.mongo & mongo-4.mongo) in your connection string URI and you are good to go. Too easy!Cleaning UpTo clean up the deployed resources, delete the StatefulSet, Headless Service, and the provisioned volumes.Delete the StatefulSet:kubectl delete statefulset mongoDelete the Service:kubectl delete svc mongoDelete the Volumes:kubectl delete pvc -l role=mongoFinally, you can delete the test cluster:gcloud container clusters delete “test-cluster”Happy Hacking!For more cool Kubernetes and Container blog posts, follow me on Twitter and Medium. –Sandeep Dinesh, Developer Advocate, Google Cloud Platform.
Quelle: kubernetes

AWS Elastic Beanstalk Extensions for Amazon EFS

AWS Elastic Beanstalk extends support to Amazon Elastic File System (Amazon EFS). You can now create and mount Amazon EFS file systems from within Elastic Beanstalk environments. Using the Elastic Beanstalk extensions for Amazon EFS, you can more easily deploy and scale applications that require shared, scalable, and highly available persistent storage.
Quelle: aws.amazon.com

Elasticsearch 5 now available on Amazon Elasticsearch Service

Your analytics and search applications can now benefit from Amazon Elasticsearch Service’s support for Elasticsearch 5 and Kibana 5. Elasticsearch is a popular search and analytics engine for log analytics, full text search, application monitoring, and more. Amazon Elasticsearch Service delivers Elasticsearch’s easy-to-use APIs and real-time capabilities along with the availability, scalability, and security required by production workloads.
Quelle: aws.amazon.com