I want to share some suggestions I gave an aspiring developer on self teaching themselves software development.
◾ Search for boot-camps and programs that are teaching the things you want to learn. Make a list of what concepts, projects, and specific skills they would be teaching their students.
◾ Use that list of things to create your own curriculum or “learning list”.
◾ Search job descriptions and companies you want to work for. Create a list of common skills, technologies, and tools that they use. Use this to expand or clarify your “learning list”.
◾ Spend a few days messaging people via social media that are doing what you want to do. Ask them about what tools they used, experiences that were crucial to getting a job, and paths that they took. While doing that, check out their LinkedIn profile for “everything mentioned above”. Use what you learned to expand or clarify your “learning list”.
◾ Search for FREE online resources that can teach you the fundamental skills from your “learning list”.
◾ Spend a day or two asking every community and technical person for free or paid resource recommendations to learn the skills from your “learning list”.
◾ Create a self pace guide from the list of resources (prioritizing free before paid) to get a basic understanding.
◾ Learn one thing at a time and quickly follow up with building a small focused personal project to cement that knowledge. If you can, post what you learned in whatever format that works for you as it will triple that knowledge transfer.
◾ Join communities and find people doing what you love. Then be active in those communities. Communicate with or follow those people.
◾ Consistently build medium size projects that use a combination of your growing skill set.
◾ Find a way to talk about what you have built.
◾ Last but most important, look for opportunities to work with others using the skills you have learned.
◾ Don’t travel this journey alone. Find people who share your passion and then share your wins, failures, and knowledge with them.
◾ Be consistent in how you learn. Don’t do the starting and stopping dance.
◾ Don’t jump around from one resource to another (if so, do it for the right reasons) and never really learn something. Understand what you will gain from a resource before you start.
◾ Trust the process. It will take time, effort, tears, and more. There will be more failures than wins. There are thousands of living proof of self taught developers who have accomplished what you are trying to do.
If you have suggestions for others or want to share your thoughts on what you did, please leave a comment.