Skip to main content

Welcome

Welcome to the 100 Days Of Full Stack App challenge.

πŸ’‘ Bring your own idea(s) for a product or service.
πŸ‘¨β€πŸ’» Learn and build a modern full stack app to realize in the cloud.
βŒ› In 100 days or less.

This challenge is designed to help you learn everything you need to know to build a modern, cloud native full stack application to realize a product or service idea. If you are a newbie to full stack development or a seasoned developer that would like to go full stack, this challenge will help you to become a great full stack developer.πŸ’―

What is full stack?​

Full stack refers to everything you need to build a product or service and operate. A full stack solution typically includes user interface(s), service(s) that provide the business interactions and storage layer(s) to persist data. And also include necessary infrastructure to host the solution and operate it.

Full stack development in that sense requires knowledge of multiple technologies and skills to build and operate a solution and emphasizes the importance of understanding the whole solution and how it all fits together.

A full stack developer then is expected to be capable of working on everything that matters to build an application (full application life cycle). Even if a developer may not focus on every aspect of building solution in a team environment, a full stack developer will have thorough understanding of concepts of every aspect and how they work together. Some loosely refer full stack developer to as someone that is capable of working on both front-end and back-end, however in this age of Micro-services and cloud native distributed architectures those ends or boundaries do not mean much.

If you choose, You may bring an additional one or two (not more than two) friends and/or colleagues to work together.

Isn't this then should be called Product Development?​

To an extent yes, but we are not going to focus on the product and business development aspects in this challenge. We are going to focus instead on the architecture and technical aspects of building a full stack solution.

If you would like to pursue building an actual product or service itself as part of this challenge, you are welcome to do so. You will need to do some additional work to build a business case and a product roadmap for your idea. And during each sprint, you will continue to build MVP to validate your business and market fit assumptions and refine your product roadmap.

I suggest you to read https://basecamp.com/gettingreal if you haven't already. You may find it invaluable. This challenge and how its structured is pretty well aligned with the concepts and strategies in the book, to build a commercial product or service.

In fact, I will be building a commercial Software as a Service (SaaS) product as part of this challenge. More on this later.

Weekly sprints​

The challenge is divided into 14 weekly sprints. Each sprint is designed to help you learn a specific set of skills. And in each sprint, we will build a slice of functionality end to end, of a full stack application. Based on amount of time you can dedicate to the challenge, you can choose to complete one or more sprints in a week or take two weeks to complete a sprint.

Walk πŸšΆβ€β™‚οΈ or sprint πŸƒβ€β™‚οΈ the choice is yours.

One feature or slice at a time​

tip

✨ It is important to build a slice of an application end to end in each sprint. This will help you to understand how all the pieces fit together and how they work together to deliver a feature that your users will rely on. And most importantly, this will help us to put the application in front of users and get feedback early and often.

Why 100 days?​

First of all, its totally arbitrary. I chose 100 days because it is a nice round number and it is a good number of days for most people to learn a lot of things. You can choose any number of days and you can start the challenge at any time and go at your own pace.

If you start this week of September 19th, 2022, you may be able to finish the challenge by the end of the year and celebrate the new year as a full stack developer. πŸ₯³

info

If you start the challenge on Friday 23rd September 2022, you have exactly 100 days to hit the New Year 2023. πŸŽ‰

Becoming a great full stack developer is a journey and not a destination. So, even after you finish the challenge, you will find lots of things to explore, learn and master. Learning must go on.

How to get started​

The first step is to join the community and introduce yourself. Tell us about yourself and your background. Tell us what you are looking to learn and what you are hoping to get out of this challenge.

Content for this challenge will be added iteratively and you can expect to see new content every week.

What problem you would like to solve?​

After you join the community, begin exploring about a problem you are going to solve by creating a cloud based full stack application. If you choose a real world problem, you can explore real needs, users and constraints of a solution that will help you choose right architecture and solution. You will also be able to get feedback from users early and often to iteratively build a solution.

And of course, by solving a real world problem, you will be able to build a solution that will help others. It could be your first product or service or just a side project that you can brag about πŸ˜„.

Its perfectly fine to choose a problem that you are passionate about and you would like to solve for yourself. Often times, you will find that you are not the only one with that problem and you will be able to help others.

No Full Working Source Code

To help you work fully hands-on, actually think through and build the solution yourself, I will not be sharing full working source code. We do not learn by watching or just running somebody else's code. We learn by doing. So, I will be sharing only snippets of code and walk you through to illustrate various concepts and you must choose a problem of your own and build a solution on your own.

This may sound bit difficult or different from all other courses and bootcamps. But, you will actually learn a lot. 😎 You will learn that coding is just one aspect of building a solution. You will also train your muscle memory to identify patterns, workflows, tools, frameworks, approaches and connect the dots to bring everything together. πŸ’ͺ And I bet, you will be able to build a solution that you can be proud of. πŸ™Œ πŸ™Œ

Questions or feedback ?​

Please use Github Discussions to ask questions, discuss about the challenge, share your thoughts and ideas.

Welcome to the challenge! πŸŽ‰ πŸŽ‰ πŸŽ‰ Come back and get started once you identify a problem you would like to solve. And continue to visit back here every week to see new content and updates.