Show HN: Flashcards to learn AWS skills
cloudbite.attejuvonen.fi
cloudbite.attejuvonen.fi
To scale up our reporting I thought it’s a good idea to offload report generation to a lambda function. Read from MySQL, dump into S3 and mail a link to that S3 file, make the link expire after couple of hours. Reasonably simple enough. But by God was it painful!! IAM is a rabbit hole, now later VPC restrictions on top and couple that with terribly organized document it makes no fun at all.
I get the need for all those layers of security but without well organized document everyone has to go through the ordeal. What we need now is plethora of how-tos for these common architectural patterns.
if yoyr workload isnt simple though, then its time to pay the price until a better abstraction comes along ^.^
I mean, fantastic, but what does this resource even represent, and what do I put in the string? It’s clearly an enum.
AWS can definitely be poorly documented and buggy at times.
If it's of any help, I can promise you that creating a Terraform configuration to set this up will improve your life, happiness and general well being in the future.
Yes, Terraform has a learning curve, but it's also a black magic effery for the cloud.
Yes, Terraform/HCL can sometimes feel like the instructions for the holy hand grenade.
I guess it was really so bad. Everything you have to build for yourself in the cloud is something you probably needed in your self-hosted stack -- a directory of users, permissions (and escalation), firewall rules, SSH key material, etc. I feel like no matter what production stack you choose, you're always in that "6 of one, half-dozen of another" state. Lots of stuff to interfere with getting your code out there and keeping it running.
(My real question is why the cloud providers don't offer these things for you -- they give you the tools to build solutions, not solutions. But I just want to work on my app. I wonder why things like App Engine never really caught on. I guess being opinionated drives more people away than it brings in with the promise of more simplicity, though to some extent App Engine was too simple, which is always bad. Meanwhile, what cloud providers offer certainly lets you bring your own opinion and build it out yourself. I wish there was a comfortable middle ground.)
I guess there’s probably not much demand for this kind of thing at large scales.
Feels like it is a very solvable problem, though. Only a matter of time.
Hmmm, well the first generation of a cloud providers offerings has to be the bare necessities (EC2, VPC, IAM RDS etc). Then you can start providing a second gen of services that use the first gen, like AWS's ECS, and then a third gen like Fargate.
I will never forget the story about the expert Amazon engineer that lost 80K USD.
e.g. You’ve defined a nice, fully-functional end-state, which was generated n time ago, but now you need to make a change to that state, so you run your
terraform plan
…and it wants to destroy your entire infrastructure and recreate it all from scratch just to e.g. add a new hostname to the certs generated by certmanager.That may be okay, but you should probably measure at least 3 times before you cut.
My idea is to build simpler system on top of cloud networking and IAM/permissions.
Why would I want to have networking between components that are permissioned to interact with each other, and the other way, why some app/lambda's service account have permission to interact with particular database, but be blacklisted on firewall? Have GUI on top to drag and drop "routes" between apps.
Of course, make it optional etc, but I think it would save tons of devops time for smaller organisations without audit requirements unlike fintechs, medical stuff etc.
A great example is Cloudtrail. The best practice is to send your OrgTrail (an org-wide Cloudtrail) to a separate account for security reasons. Cool. Okay, sounds easy enough. The Splunk docs are useless for AWS, so consulting with YouTube, Reddit, etc is the go-to for this.
It's so much easier to just leave the OrgTrail logging into the management account it's not even funny.
But on another side after checking few flashcards it seems you will turn into an AWS Marketing Parrot, more than really learning skills (Eg: question about AWS Shield)
Thanks for creating this.
I have forked and I am running the app locally. But, I don't see any button for creating the cards.
Edit: I had to manually change the visibility style in styles.css and then it worked.
Passing the exam does mean acting like an AWS Marketing Parrot. That is an unavoidable aspect of it. The exam is AWS certification, not "general IT skills". So I would not call this a flaw of your card content. Your cards show an awareness of this. Your card about SOAP APIs points out that the correct exam answer is technically wrong.
I would strongly suggest that you NOT take hliyan's suggestion of making a "how-to" version of the slides. "How-to" is very different than "pass exam", it would be very difficult to successfully address both needs.
I respect Hhliyan's need (and share it myself often enough); I respect it enough to suggest that it gets addressed in a way which is likely to satisfy it. "Pass the exam" flashcards have another purpose.
Sometimes, people don't even know what AWS is except that it is needed by their product. They need someone "strong in AWS." They don't know what AWS products they use or what they do.
Separately, I have had a very senior developer convey a sense of respect for candidates that know AWS things that this developer does not know. I was surprised that the developer would give a pass on any subject so easily.
There seems to be some sort of an implied belief in ability simply because the person can recite Amazon's branded solution names and have configured these things before. In part, because the interviewer doesn't know the buzzwords, they can't probe for the actual depth of experience.
It feels almost like a "no one ever got fired for buying IBM" situation. And on the candidate side a "can't beat em, join em" by being able to recite AWS jargon, regardless of how well you can build and choose solutions to fit business needs.
I have a feeling that's partly the intent of the whole certifications program. I'm someone who has no use for AWS (nor interest in any cloud stuff, really) and has never even looked at any of their services in detail, but was once challenged to try one of their practice exams, and recall getting about 75% of the questions right simply by educated guessing with a perspective of "which of these answers seems to make sense and would make the most $$$ for Amazon?"
The higher level certs are the real deal. You will work your ass off to get them, and I don’t think flash cards will help much. But there are sites out there that help you train for the test, and they can also give you sample tests to work from. If you can pass a number of those sample tests with good scores, then you’ll probably do okay on the real tests.
Acloud.guru is used internally with Amazon (and is free for anyone who has an @amazon.com e-mail address), but it’s not the only option out there. John Bonzo has some of the highest regarded AWS training videos in the AWS Training community, and Amazon SDEs have recommended to me the freecodecamp.org videos as well.
But AWS isn't meant for hobbyists any more than SalesForce is meant as a personal contacts list.
If you want to build a hobby project, use something meant for that, like a $5/mo droplet at Digital Ocean.
It's fine and good for the dev world to have an enterprise-focused part too.
And playing around with Serverless is awesome. Things can be created rapidly and very little maintenance. These days I cannot see myself building an application without at least some element of Serverless infrastructure if not the entire solution.
And think about how that applies to some student at college or boot camp on a tight budget with rent/bills to pay.
With flashcards, I can create an interconnected map in my mind, it supercharges learning, provides structure, makes digesting new content much easier. That ready cache of information has proved immensely useful.
Using just the tools of logic and reasoning is incredibly slow, error prone and exhausting. Especially in a time constrained and pressure setting e.g. a production issue, a discussion with people having differing opinions, a test or an interview.
Flashcards take out a lot of friction from knowledge retention.
You need flashcards to pass exams and interviews, when you need to learn stuff a lot quicker than you could by learning as you go. And sometimes speed is important in life.
Flashcards are orthogonal to whether something is simple and logical.
Yep. A useful debugger if you want to get started: https://ankiweb.net/shared/info/31746032
Import allowing HTML tags.
Will need a little formatting of the card template for the <ul> tags.
PS: Hey Dotan! Been a while, hope you're well
> How can you establish a secure connection from your office or on-premises datacenter to AWS?
> Connections to AWS resources are typically encrypted by default (HTTPS, SSH, etc.)
> You can establish a Site-to-Site VPN between your VPC and your on-premises network.
> If you do not want traffic to cross the internet, you may be able to establish a Direct Connect connection, which is a dedicated network connection between your on-premises network and an AWS edge location (from where traffic is routed to your AWS resources using AWS' internal networks).
I want to note that Direct Connect traffic is NOT encrypted by default and this is common misconception, both in real life and in exams. You must combine DX and S2S VPN.
https://docs.aws.amazon.com/directconnect/latest/UserGuide/e...
This is true. However, I'm not sure how to improve the card. The examples of "typically encrypted" connections on the card were HTTPS and SSH. If you SSH to an EC2 instance over a Direct Connect connection, your connection is encrypted (because you are using SSH, not because you are using Direct Connect).
BUT: I don't think any amount of flashcards can help me get my head around setting IAMRole's and such, I stay away of amazon's cloud as much as I am able to, when/if I have a choice in the matter.
Cloudtrail can now build these for you.
I like the trade that you made of not having persistent accounts. I wrestled with that idea for a portion of my site that features "pre canned" decks. Without looking at the implementation I suspect it could then be a completely client-side solution served as static files.
Nice work.
Too much of programming education / online stuff is muddled with millions of media items that cater to absolute beginners.
I rarely come across deep, insightful articles that discuss at-least one level beyond the standard stuff. Any search for any programming related question leads to articles that start from installing Node / Python.
Stackoverflow is an exception though.
And that problem only becomes worse the further you get into these topics.
When you add to that the fact that anything specialized will become outdated very quickly, incentives are not aligned for there to be a lot of deep, insightful articles about anything.
There just aren't enough people who would be interested in it to make it worth the time someone would take to create it.
edit: And of course, StackOverflow is a great place to find these types of things because it serves as a watering hole for the types of questions and discussions it sounds like you would be interested in.
The problem is that even amongst "serious" programmers people often have a patchwork of knowledge with small, unpredictable gaps in understanding; many of which will surprise you. You will find these gaps even if you've taken the time to handpick vetted experts. Once you account for this patchwork of knowledge gaps in verified experts you'll often notice that you're really close to a tutorial for relative beginners, which most people are, and just go the full distance.
The problem generalizes to a variety of subjects but is particularly pernicious in programming where small details are often of much greater significance.
You need to write a small script to transform the questions into a format that's cooypasteable to Google Sheets, though.
(By the way, the README explains that the MIT license is for the code, not the content. Your excel gives the impression that the content is MIT licensed, and it is not. To clarify: I'm happy to see people copying the content to different places, I just don't want MIT license attached to the content, because I don't want people to make money by selling my content. Distributing the content for free is fine by me.)
In any case, I'm willing to remove the wobbling effect entirely if this feedback is echoed by other people.
- Repeat soon - Repeat later - Never repeat