I don't know that I can do @iancoldwater's response justice, but I'm going to assume that @peterskillman's question was sincere and answer it in good faith in this thread. What would I change about @awscloud's UX design?
A "v2" series of APIs for everything that is standardized between services. v1 will work forever (I know, you never turn off anything) but v2 will remove huge customer friction.
Hurl money at @iann0036 to implement Console Recorder as a first party service. The fact that someone else had to do this and got it done in a month or two of their own spare time? Bad look.
Me: "You can have multiple AWS Organizations in your account."
Peter: "I am aware of that."
Me: "Are you though?"
The only place I can see every resource in my account is the bill. This is absurd.
Let me express intents about accounts. "This is dev, don't ever let it cost me more than $200." "This is prod, when the money in the bank account runs out start in the credit cards."
Imagine a future in which every single @awscloud resource in my application lives in its own distinct AWS account. It needs to work when run in that way.
Let me set an advanced mode that removes the "type 'delete me'" safeties and stops pushing me towards wizards.
Assume with that mode enabled that I am an actual wizard.
"To make this thing run on a schedule, invoke it with a scheduled CloudWatch event." How about you stop exposing your implementation details and just give me a "schedule" field?
Every time you ask me to use a Lambda function to wire two services together, what you're really saying is "we will charge you tiny fractions of a penny to let us kick a backlog item down the road a ways."
Fire up something paginated--like a large DynamoDB table.
Click the "download CSV" button and note that the file is ~15kb.
Ask yourself if any customer in the entire history of your company has ever wanted THIS to be the behavior.
Include pricing for various things I'm about to spin up. "This managed NAT Gateway will cost roughly $72 a month plus data processing" will ensure free tier users are at least aware of what they're about to unleash.
"Freaking out because ports 22, 80, and 443 are exposed to the entire internet in this security group" doesn't exactly convey a sense of competence.
I'm not suggesting you redo Microsoft Clippy here or anything, but gentle suggestions of "you're running a whole hell of a lot of EC2 and nothing else, everything okay over there buddy" to surface relevant services (occasionally and once!) would be welcome.
If you know that I'm usually logging in to the console during business hours and suddenly I'm logging in at 3AM on a Sunday morning, perhaps this isn't the time to have a bunch of spurious announcements for new features taking up screen real estate?
Considering that I'm probably the only person who's never worked at AWS who can tell you what every one of your 200-and-change services do, it may be time to consider "user personas" and stop pitching Aurora databases to the poor Finance schmoo logging into Cost Explorer.
"I'm at 80% of a service limit" is the kind of thing the console needs to surface proactively and now. Don't expect me to set up a monitor for it explicitly, and don't let me find it via careening into it.
"Am I in the right AWS account" is an eerie feeling. What's way worse is having to combine that with "am I in the right region?" Toggling the region turns the screen from "ghost town" to "you can have that many instances in a single VPC?!" Please surface this better.
I get that you don't know who the hell I am between different accounts, but the next time I spin a new one and then get an email of "Welcome newbie! Let me teach you about S3" I swear I will teach you all something about S3 instead.
There's a special place in hell for services that have a big options page, and 3/4 of the way down there's a "select X (certificate, S3 bucket, etc) from a drop-down list" and you have to redo the whole form again once you create X.
The fact that the console for Account A and the console for Account B look visually *identical* to one another has been the source of oceans of builder tears. Please let me "theme" the console with a custom color.
Give me eye-searing colors for production. It shouldn't be comfy.
If I log in via SSO or other federation, it's disconcerting to see that my "account ID and user" looks like a dump of something's firmware instead of something human readable.
"If I set an EC2 instance's name to banhammer.twitterforpets.com, I want that to be both its hostname and a valid DNS entry if the relevant zone exists."
"Route 53" is for some godforsaken reason in the "Networking and Content Delivery" section. Put it where it belongs, over in Databases.
Either you or my ad blocker are going to block the Marketplace results the new console search bar surfaces for every query. I prefer it be you, but I'm willing to go with the other option and extract my pound of flesh for it.
Note some shops actually prohibit Marketplace software acquisition!
I'm not brave enough to test the Buy button, but the Savings Plan purchase page field limits will cheerfully let me add a $26 million purchase to my free tier test account's shopping cart.
There's a lot to complain about with respect to Oracle Cloud starting with every last one of their business practices, but "here's how to do that thing you just did in the console via Terraform" is inspired.
A service configuration dialogue cheerfully asking me to enter another resource's full ARN and offering no suggestions is an awfully wordy way of telling the customer to go fuck themselves. There's probably a compression algorithm for that particular experience.
"I spun up a test thing, ran it for a day, then deleted the thing" should not interpreted as the customer saying "please charge me 27¢ a month forever until I die."
When I sign in to the dashboard, why not tell me what my current projected spend is, and by top 5 services? If I want to finally find that 27¢ it should not be eight clicks and 15 minutes of scrolling / reading to find out that it's an old EBS snapshot.
Things that aren't emergencies that the console thinks are:
IAM credentials older than 3 months
A static website hosted in an S3 bucket
Anything Trusted Advisor has to say
An IAM user without MFA enabled
Things that are emergencies that the console doesn't think are:
An admin user logged in from Russia 20 minutes after logging in from San Francisco.
My normally $200 bill just crossed $65K for the month and it's a week in.
The fact that you can charge me 4.5¢ per gig to shove data into S3 from a private subnet for years without ever once deigning to mention that S3 gateway endpoints are *free* and remove this charge entirely makes me question the whole "Customer Obsession" thing.
"Amazon DevOps Guru" my ass. I want a big shiny button in the console labeled "It is goddamned 3AM and something just went fucky; tell me exactly what is aberrant in my account that I should start with."
Since your status page is the purest expression imaginable of the term "static web page," offer a new service in the console: "AWS Global Observer" that tells me if there are issues with you folks or if it's my code.
Under the hood it's just a twitter search for "aws down."
In my Account Detail view, add a line: my Account Manager's name and email.
"You should have set up (arcane feature X) to prevent this from happening" is another one of those "there are easier ways to tell the customer to go fuck themselves" compression algorithms we talked about earlier.
I think that does it for a first pass.
My favorite part of this thread was that @peterskillman doesn't actually follow me on Twitter, so I'm imagining him opening up Twitter at some point and going "Corey who?" just before the thread hits.
• • •
Missing some Tweet in this thread? You can try to
force a refresh
So there's a lot of confusion about what Parler being kicked off of Amazon Web Services (@awscloud) means. Let me do a quick thread to explain it to folks who aren't deep in the technical weeds...
You use an app (in this case, Parler). There's a web site you can use, and apps you can download onto your phone via Apple and Google. Those three versions of the app all talk to servers (big computers) behind the scenes.
In the Olden Days, getting those servers took months. Then you had to sign deals with companies to host those servers--they take massive amounts of power, they run hot so air conditioning is a big deal, and they need a *lot* of bandwidth.
So! New Relic sponsors my stuff. (Thanks! You help keep the Duckbill Group's Spite Budget topped up, and that's profoundly appreciated.)
"You say mean things about New Relic but take their money, isn't that disingenuous?"
It would be if I wasn't exceedingly clear about this up front with all of my sponsors. Specifically "if I only say nice things about you because you pay me, nobody will listen to me."
"X" is a cool letter. Be sure that all of your EC2 instances start with it. #techtipsforParler
S3 buckets are finite resources, so be sure to use one bucket for your Lambda jobs. Make sure that the source and destination are in the same place, and automatically triggered. #techtipsforParler
What does it mean to work at IBM? A bunch of things that absolutely don't apply to a corporate comms role. Get any thoughts of being valued right the hell out of your non-coding head immediately.