I can relate!
When I started, AWS already offered so much that I literally couldn't find an entry point.
If you still feel this way, let me give you a little guide.
🧵⏬
1️⃣ Foreword
Before we're going in, let me tell you this:
AWS is huge, and the chance that you'll ever be able to call yourself an expert in every product and service it offers is...well, low.
To be honest, I wouldn't even aim for that goal. It simply doesn't make sense. Better aim to become good at a few products and then at all the supporting ones that fit.
You'll specialize, gather deep knowledge about a few products, and be a valuable expert in that area.
This doesn't prevent you to branch out a little and add more products and services to your portfolio later on. But especially in the beginning, less is more!
2️⃣ A quick look at AWS's portfolio
You only need to open aws.amazon.com, hover over 'Products' for a glimpse, and the navigation popup opening will already throw so many products and services at you to make you dizzy for a while.
Starting with 'Featured Services' and 'Analytics', going over 'Compute' and 'Containers', and ending with 'Storage' and 'VR & AR', the categories alone seem to already cover nearly everything possible.
Totally relatable if you get lost in all that, especially when AWS is your first-ever cloud provider. And depending on your background, you might even be relatively new to the world of software development (congratulations, awesome choice, btw!), and now you ...
... have to deal with AWS because more and more employers demand cloud skills.
In conclusion: AWS's portfolio is very huge, and it's absolutely okay to get lost (really!).
Don't worry, everybody once started somewhere, and so will you.
3️⃣ The strategy
It's always a good idea to have some kind of strategy when starting an adventure. You need at least a basic idea of where you want to get to at the end (that's your goal).
And having a basic strategy can prevent you from getting distracted or even lost.
Your strategy is going to be to ask the right questions.
Instead of asking 'How can I get into AWS?' you should better ask yourself: 'How can I, as a frontend engineer (e.g.), leverage AWS?'.
Another good question might be: 'I usually build frontends with Next.js, how ...
... can I leverage AWS for deployment?'.
Or you're currently thinking about switching stacks, so an appropriate question could be: 'I want to build backend applications with Node.js. Where on AWS could I deploy them?'.
Those questions don't sound like much, but ...
... they give you more focus.
You have to narrow down your use cases first before you can find an entry point into AWS.
(We'll get into an example soon, so you understand why that focus helps a lot.)
One more advantage of such a question is: You can transform it into something you can google easier.
There are a ton of tutorials out there. And some of them will pretty surely cover your use case at least up to some degree.
That's enough to get an idea of where to start.
After that, follow that tutorial from start to end. If you found multiple tutorials/articles, even better, follow all of them until you feel pretty comfortable with the handling of AWS.
After that, maybe try to build your own projects, without guidance.
The advantage of that approach is that you might have ideas that require other AWS services to really work. You'll notice when you need something to get an idea to work. This will be the point where you can google again.
It could be something like 'How to store files on AWS with JavaScript', or 'AWS publish-subscribe messaging from Python'.
Whatever it is, branch out, and you'll automatically learn a lot about the ecosystem, simply by building projects.
4️⃣ An example
Let's say you usually work with Next.js and now want to find out whether AWS can help you there.
Googling 'aws next js' already yields some results, containing at least one tutorial that shows you how to leverage AWS Amplify Hosting to deploy your Next app.
There's your entry point! You can now follow the tutorial and deploy your first Next app to AWS, and from there on, you can learn more about AWS Amplify.
With Amplify, you'll already have used one of AWS's product's which combines other AWS services into a new product.
By using Amplify, you'll already get in touch with:
- S3 (Storage)
- DynamoDB (scalable NoSQL database)
- Lambda (Functions as a Service)
- AppSync (GraphQL)
- API Gateway
- and many more
Learn Amplify for a while, then try to branch out.
You can learn more about S3 then, take a deeper dive into DynamoDB, play around with AppSync, and maybe write Lambdas without the need for Amplify.
And before you realize, you've already covered from AWS's portfolio what's ...
... interesting for your specific use cases.
The only thing you needed was an entry point to get started. The rest often opens up to you when you're already inside and have more specific questions to ask.
5️⃣ Conclusion
Getting into AWS or the cloud, in general, can be pretty difficult. But with the right strategy and approach, you can find your entry-point. And from that, you can branch out at some point.
A project-based approach is never wrong. And the more the project ...
... resembles your day-to-day workflow, the more valuable the knowledge you gain while doing it will be.
In the end, you only have to keep one last thing in mind:
Don't expect too much. Better move slowly but efficiently, instead of going too fast and missing too much.
• • •
Missing some Tweet in this thread? You can try to
force a refresh
Proof-Of-Work is the name of a cryptographic algorithm that is used for some blockchains when new blocks are to be appended to the chain.
Let's take a higher-level look at how this one works, shall we?
🧵🔽
1️⃣ The Basics
This algorithm creates a system in which one party (the prover) has to prove to one or multiple other parties (the verifiers) that they put in a certain amount of work for some purpose.
The work the prover has to put in is moderately hard to very hard, while the verifiers can pretty easily check whether the proof is correct. This creates an asymmetric system.
The original idea was to create protection against DDoS attacks and spam.
Svelte has topped the satisfaction rankings of "State of JS 2020" some time ago, and this justifies an introduction for everyone still not aware of it.
An introduction to Svelte 💛
🧵🔽
1️⃣ What is Svelte?
Svelte is a component-based frontend framework like React and Vue, that promises:
- Less code
- No virtual DOM
- True reactivity
and delivers on all of these pretty well.
It currently has 41.2k stars on GitHub and an active community, including 359 contributors.
The community is pretty active and unlike React, there is no huge corporation backing it.
But no need to worry, Svelte won't vanish anytime soon.
the architectural approach that makes your websites faster, safer, cheaper, and all that with a better developer experience.
🧵🔽
1️⃣ What Is It?
The Jamstack is an architectural approach.
The letters "J A M" are an acronym and actually stand for:
▶️ JavaScript
▶️ APIs
▶️ Markup
🟢 JavaScript
JavaScript is the universal runtime of the web. Every browser can handle JavaScript and it's the language that brings interactivity to every modern-day browser.
JavaScript can either be written directly or act as a compile target.
Here are _some_ of the most essential git operations you will need when working as a developer.
🧵🔽
1️⃣ Create A New Repository
This is the most basic command you'll need. When you start a repository locally, your start with git init.
2️⃣ Clone A Repository
You can clone a remote repository to get a local copy of it. Your local repository is connected to the remote one so you can pull in changes and push yours to the remote.
You hear some people talking about it, you might have a basic idea, but let's take a closer look because, in the end, it's not as difficult as it might seem from the outside!
🧵⏬
1️⃣ What Is It?
Test-driven development (short: TDD) is a software development technique.
Instead of writing all your code first and only then writing your tests, you start with tests, then code a little, then test again, and so on.
It is one specific form of the test-first approach and aims at making software development faster, more reliable, and safer to do. And it especially forces developers into a user role.
By writing tests first, you become a user. You are the first one to ...