This is long, but it answers the many beginner questions I see here routinely.
Get off this sub. Actually, other than finding the resources for where to begin (Odin, FCC, Udemy, Pluralsight, etc), get off any programming subreddit. We all learn in different ways. I myself went the bootcamp route, but that was because I needed the structure a bootcamp provides to remain disciplined. I’ve lurked this sub since the beginning of my own journey and half of the posts have always been people generically asking if they should take up web dev. This sub has awesome advice, great projects, and questions galore, but as a beginner, this sort of randomness is going to be a major distraction to your learning path. Also, there’s a lot of subjective assholes here trying to sell you their latest YouTube video for ad revenue, and their comments are unproductive. What ever resource you choose will have a discord or message board that will be much more helpful in the beginning.
Where to begin:
The next thing is not falling into the pitfalls of tutorial hell. You don’t need to memorize concepts, you just have to understand how they work and can be applied before moving on, especially in JS. Things like FreeCodeCamp or CodeAcademy can be bad with this, because it’s quite easy to just replicate what they just taught you and feel accomplished because you got past the slide. Make sure you are understanding the concept. If not, open YouTube and watch the top result for that concept or hop on that resources forum and ask questions. Could you explain and teach this concept to someone else? That’s usually when you know you’ve got it.
Learn Version Control/Github:
Once you’re feeling like you can build something, even a simple HTML page with some style, or a simple Rock, Paper, Scissor game, look into Git and using the Command Line to push your work to Github. Even if your stuff is terrible or mediocre in the beginning, building a foundation with GitHub will eventually show employers that you’re actively coding on a daily basis and can also work to show how far you’ve come when you’re eventually pushing cool shit. Most online coding schools have a section teaching Version Control.
I really hate LinkedIn, but it’s going to be key for you to use to begin building an online presence. Get as many connections as you can from people you know. If you know people in tech, add them immediately. Having connections may be one of the single most important things when you feel you’re ready to look for a job. That can be the difference between a weeks job searching, or a few months. Add your projects that you’re proud of to your page. One thing I don’t recommend doing though is putting “Full Stack Developer” as your title. I’ve come to learn many companies bristle at this if you have no job experience and are calling yourself a Full Stack Dev.
This can be a huge risk for a number of reasons. First and most obvious, bootcamps are crazy expensive, like $11k-14k expensive, and that’s for a grueling 3 months of full time or 6 months of part time. Second, bootcamps have become so consolidated in the last few years, you will end up taking the exact same curriculum as thousands of other people across the country, so by the time you finish, your profile of projects is going to look exactly like a lot of other people’s competing for the same job. With the economy shitting the bed the last year, enrollment in bootcamps has skyrocketed. Another downfall is time management. If you’re working full time, a part time boot camp is going to take up all of your free time. Have kids? Good luck. Like to play games on your free time? Unplug that shit and put it in the closet. Bootcamps offer structure, career coaching, and sometimes tutoring on the side. Take advantage of all of it. You really do get what you put in. Don’t be a jabroni and blow $11k if you can’t commit.
Apply For Jobs, even if you think you still suck
Once you have a portfolio of projects to show and you’re feeling confident (usually around 6 months to a year), start applying for jobs. Almost everyone who enters this field from somewhere else will have imposter syndrome. That’s totally normal, but know that you know more than you think. Even if you shit the bed in a dozen interviews before landing a job, that experience will be what makes you a stronger candidate in the future. codewars.com is a good resource for beginner algorithms and to see various ways people approach them. You don’t have to be a Data Structure and Algorithmic genius to get a job as a jr. web dev, you just have to be able to show an employer how you think about things and your work flow. Leetcode is also popular, but I find the problems to be a little more advanced than what a jr. dev will see in an interview.
Don’t let employers take advantage of your newb status
Unfortunately, if you are going the self taught or bootcamp route, employers may be tempted to try to low ball you or put you in a position that’s advantageous to them. Get on Glassdoor and look up the average salary for jr. web dev. jobs in your area, use that as your bargaining position. You’ll be lucky if you find a posting that provides a salary. Ask if they will provide you with a mentor. Look to see if the company is growing. Don’t put yourself in a position as a jr. dev where the company plans to dump their entire online presence (and survival) into your hands as a beginner, especially for a shit salary. It’s tempting to take any job to get your foot in the door, but if it doesn’t feel right, go with that instinct.
Once you understand the concepts, have direction, and are building stuff, then consider coming back to this sub. You’ll be amazed at that point by your ability to see just how distracting it can be for someone just starting. That’s about everything I have in terms of advice. Good luck and always be coding.
Edit: I just wanted to add one last thing that came to mind with YouTube tutorials. The best instructors on YouTube are the ones who are very frank with you that they build out a lesson plan and then use a second screen when making a video. These people aren’t geniuses, they’ve just gotten to the point where they understand the topic and can explain it thoroughly. WebDevSimplilfied made a good video once explaining this. It’s easy to feel overwhelmed and like you’re a moron if you watch someone on YouTube code out an entire app in ten minutes. It’s not because they’re a coding savant, it’s because they are copying from a second screen and then editing the video. Trust that the person you’re watching is actually interested in teaching and interacting with their followers, not just someone blasting forums and reddit with their channel for ad revenue.
Add a feature-rich and easy-to-use form plugin to your WordPress website to help you collect information that is vital to the functionality and growth of your business. These powerful form-creating plugins allow you to capture the most important information from your visitors. The flexibility and feature-rich form plugins allow you to add a wide variety…Details
Web Design in 2021 – A look at the trends that will shape the year to come. An Early Look at Full Site Editing in WordPress – Take a tour of one of the biggest new features for WordPress themes. Front-End Performance Checklist 2021 – Everything you need to know to create fast experiences on…Details
In nowadays, smartphones have completely changed the living lifestyle. People are using their smartphones for medical booking, social media engagements, online shopping, cab booking, grocery booking, and many more. The industry of android mobile app design and development is also contributing to developing various mobile apps more efficiently with new advanced features. According to Statista,…Details
A lot of feel-good life advice encourages us to say yes to new things whenever we can. This philosophy of openness can sound pretty enticing when you’re a freelancer or consultant just beginning to stand tall on your own — or riding a high of a string of good projects. And it’s true that saying…Details
People here seemed to like the last version of this: https://www.reddit.com/r/webdev/comments/kmfmjd/8_apis_for_interesting_projects_in_2021/
So I’m back with some more interesting APIs that you can either use to make a cool portfolio project or even build a profitable side project with. Only limit is your creativity with some of these tools
Shodan – You can think of Shodan as Google for every device connected to the internet. They crawl the web and catalog devices, when you hear stories about people’s IoT devices getting hacked they probably got found with Shodan. Crazy what you can find, just make sure not to get yourself arrested
RadarIO API – Provides a bunch of really cool geolocation based features. Stuff like real-time location tracking, geofencing, Google maps style directions, and a huge database of “places” where you can verify if users visit. Also a new API that uses bluetooth so you can even do location based stuff inside retail buildings with accuracy of a few meters.
People Data Labs – Can be pretty creepy if used wrong, but also can enhance your product. Not sure how they get their data but an example is if you have somebody sign up for a free trial of your app with just an email, you can use that to sometimes find out where they work and their job title. Mainly used by sales teams to prioritize high value leads.
Crawlera – Makes it easy to build scalable bots and web scrapers without getting blocked, could basically make your own Web Hose with Crawlera
SpaceX API – Pretty simple compared to the others, but still fun to play around with this data. Could make a dashboard as a frontend project
Segment – Used to connect a bunch of different data sources together with just a few lines of code, tons of use cases
If you want more detail of each and a few project ideas you can check out my video covering them:
If I missed any cool APIs you like, let me know. Also feel free to brainstorm on ideas about how you could use APIs