The best way to know a subject is to share the subject. Javascript is growing so much in popularity right now, and there are so many great opportunities to learn and do more with it, everyday. Just yesterday I was listening to a podcast episode of SyntaxFM with Wes Bos and Scott Tolinski. Episode 410 is called "Everything in Web Dev is amazing!", and they cover many of the giant leaps in the industry over the past 5 years. If you are a fan of podcasts (or if you aren't) you should check them out.
But why this blog?
This blog is going to cover my journey as a front end engineer learning more about the backend, specifically as the backend relates to Amazon Web Services. I am going to start by building a website for a Pizza Restaurant using AWS Amplify. The website will have the ability to:
- Log In
- Have a profile
- Download the pdf menu
- pay
- view account history
- Make a reservation
The pizza restaurant app that will be built will use the following tech stack:
- NextJS
- TypeScript
- Formik for forms
- REST API (Not GraphQL)
- Amplify
- AWS Lambda Functions
- DynamoDB (A NOSQL DB)
- React Testing Library
- Storybook
Ok, Ok, ok, I know- this seems a little elementary right? Let me explain. I have been working as with frontend technologies for a while, and though I know how to build a frontend from nothing, the backend of a website still kinda of eludes me. The principles make sense, but the goal is to gain familiarity with the concepts of databases and queries and changing and manipulating the data over time.
After this first project is built, it will go under a few more iterations:
- Use a GraphQL API
- Use an AWS EC2 Instance, instead of AWS
- Use OAuth instead of AWS Identity
- Use the AWS APIGateway instead of the built-in Amplify console.
- Update security
- Add AWS SMS to text customers when their orders are ready.
- Explore Containers
- Build a chatbot
- Devops
- Build an HR System
- Explore IAM Roles for various permissions, such as a manager, a cook, an owner, payroll, etc.
There literally are no boundaries. And even though the horizon of options where Javascript can be applied is virtually unlimited, my goal on this blog is to explore JS as it relates to Amazon Web Services- I find that keeping this focus is the only way to not be overwhelmed.
Eventually, I hope to learn Svelte and remix.run. But, with everything listed above, I dont know how there will be enough time to fit it all in!
So buckle up, and if you have any questions in the mean time, feel free to drop me a line at luke@loganwebdev.com