So I wanted to become a programmer and found out the software developer job would be one I am interested in. My friend suggested Codecademy and it was teaching me the basics which is great, but a lot of people say that it will not help on your resume/job seeking because it won’t teach you how to create your own programs or edit other programs.
I’ve been using computers since my first IBM back in the 1990’s, so I am very familiar with how they work, etc. But after starting this coding journey, it seems like I am starting all over again. I am so lost when I hear things like React and functions, etc. It seems like every other word is foreign to me. Which I understand, since it’s all new. The main issue is I just don’t know where to start. I’ve built my own physical projects before, like an Amplifier, and I’ve messed around with a Raspberry Pi before…but that doesn’t help me here.
I’ve come here because many internet people said that FreeCodeCamp is better than the other website I was using because it will teach you to make your own projects.
Can someone just give me some advice on starting this journey and how I can succeed with it and create a nice portfolio/skillset in the end? Thank you.
The good things you have heard about FCC are right. I can’t thank this community enough because I pretty much learned all my basics of HTML/ CSS on this website.
Getting confused when starting in web development or any other flavor of software development is not out of the ordinary. We have all been there.
This trade is best learned in practice: Start building and learn on the fly what you need to know.
My progression in the first year was in short:
Simple HTML homepages like for one of my favorite bands.
Same page, now upgraded with CSS.
a.s.o, you get the drill.
Your learning will take the shape more of a cluster, less of a line: Jump in the middle, grab the basics and expand your knowledge based on what you need during the project.
If you don’t have it already, make a GitHub account and put all of your projects into repositories. There’s no better way to document your progress and get experience with version control.
Thank you for the reply! That is generally what I am hearing as well! The only issue there is, with FCC , I was trying the HTML course and it had me doing things I hadn’t even learned yet. Should I just google everything it asks and do it that way? CC did actually explain things very well in this regard.
I don’t even know how to use GitHub really, but I learned that Git is different and that’s how you store your files. Only problem now is what files! There is a huge learning curve to all of this and it seems I am being thrown in a whirlwind of information.
I just started a Udemy course in Java that was recommended as my first programming language, so I will take that and build from there I guess.
It is important to learn how to goolge for things and ask questions in the forum.
Learning how to ask questions and search for answers is an important skill that you will need to become a professional developer. It is important that you start practicing that now.
Git is a popular form of version control used to track your changes for files.
GitHub is a service where you can host your own projects. There are other services like bitbucket and gitlab but GitHub is one of the more popular ones.
freeCodeCamp has a great 2 hr video course on Git and GitHub to help you get started
One of the reasons why learning to code is hard is because there is so much to learn and it is a lot of new information to learn all at once.
It is important to break up your learning into small steps and learn a little bit each day.
With enough time and practice, a lot of these concepts will start to make sense.
Everyone will have their own opinions on what makes a good first language for beginners.
Whatever language you go with, use it as a tool to learn the basics of programming and build a lot of stuff with it. The only way you will learn how to program is to build tons of stuff with and learn what works and what doesn’t.
Most of your earlier projects, will be rough around the edges and not very polished.
But that ok because that is where the real learning comes in.
All of us professional developers have made countless mistakes and haven’t been lost when learning something new.
But we learn by breaking things, getting feedback, applying those changes, and building again.
That is how we are able to grow and truly understand these concepts.
the nice thing about FCC is that it has a discrete pathway that will track your progress for you. FCC started out as a curated list of coursework to learn in order, and “outsouced” the actual teaching to other sites like Codecademy. As it grew, the challenges and projects here were born and now everything is hosted here.
“Software Developer” is a really broad term…do you know what kinds of things you’d like to do? Programming for the web? For business development? Other things?
Learning programming is often a bit circular in that you are asked to do things you havn’t learned yet so it’s basically copy & paste, but then you build little things even if it’s just a numbers based algorithm like finding square numbers of an array.
it can be frustrating because it’s hard to see how that relates to making bigger projects.
I’m working on a personal project right now that I started over 6 years ago, and just picked it up again. I got stuck. Toook a LOOONG break, then came back a few months ago to renew my interest and picked up this React project again.
But React has changed a lot in those years, it was in version 15 then, and now it’s in version 18. “modern react” is actually easier when building projects so what I was stuck on back then, is now not even really an issue.
Also…this may be controversial…but chatGPT can be a great teacher because it can synthesize many different topics more quickly than you can and instead of googling 3 different reference sites when learning to build a React/Mongo/express app (you don’t have to know those things now), it can check all the reference documentation and retrieve info that would take you an hour to look up just due to task switching.
It’s common to not feel like you “know” the material after you got hrough because you need to practice on your own. So take what you learn in FCC, then try to recreate a similar scope project on your own. Don’t be afraid to refer back to FCC often as you go along.
Additionally, i wouldn’t worry about GIT for awhile. it’s for managing your code, developing new features without breaking it, a place to store your projects, a way to collaborate, and some more stuff.
If you go through the FCC curriculum you’ll eventually come across a really nice git tutorial in the relational database projects. You can do JUST that project if you want, and I think it’s a really nice way to learn it because its’ a bit like a game.
I want to get into software development because I enjoy coding and building something that makes businesses or tasks easier and quicker.
I’ve only decided on software development because it has more coding than front end development I’ve read. I am open to other careers, I just don’t know much. I know I want to code that’s why I chose software.
I can be very creative if I’m given a task to do, but it’s hard to come up with one on my own from scratch.
hello there, welcome to the journey. There is a ton of places you can learn different choices of the field you want. It will take longer than you want. If I feel this way, I start to do the same. I have to accept the truth of this. You have more past knowledge then most. Just a little motivation to consider. Computer tech just keeps adding more and more. Our country use to be the industrial era. Today the society has become the tech era. Do not give up and keep going.
This is a great response, thank you!
I’ve been enjoying FCC and I think it will teach me a lot and give me confidence to go create some programs for my own. I’m actually excited to be able to do that one day. I think if I take it all in steps I will understand most of it. I just have to remember to keep going and take breaks if I get frustrated. I did that with one of the lessons and came back the next day and figured it out almost right away!
I always love to inspire others in life. These days is not like dos, lol. Backend is not like frontend. If backend is what you are into, checkout google search for other sites too. Research is the number one for this field. I made an example to someone a while ago. It goes like this. They said I do not know if I have time to do this. I just finished my degree in criminal justice and work a ton. My reply proceeded with this suggestion of thought to ponder. When a lawyer finish college, they keep learning. Just because you graduated does not mean your good to go. Lwayers have to learn and learn. They have to keep researching forever through their whole career. So now as a computer coder, or some call developer. Boom baby, congrats now comes the fun life lol.