Disclaimer: This is a non-exahasutive list of things that catalyzed my learning experience. I guarantee some of them will help you too! 😎
Self-Taught Coding Tips & Advice
Teaching myself computer programming was easily one of the hardest things I've ever done. Not saying it wasn't worth it (because it was) but I'd be lying if I said there weren't times where I felt like giving up. The hardest part about being self-taught is the lack of direction you start off with. While a CS major has the advantage of having a cirriculum to know what to plan for, I had absolutely no clue where to begin. Luckily for me I was drawn to iOS development and realized learning Swift would be in my best interest. However I realize this is not the case for most self-taught devs. The following advice I'm about to give is what I'd give to myself if I could go back in time and talk to the Jordan who just started to figure out what programming is. I doubt past me would listen to present me, but here would be the things I'd say:
-
~ Pick a lane of development/langauge and focus on it. Get real good at one things before you get real good at a whole bunch of things.
-
~ YouTube is your friend, find informative channels and use these FREE videos to your advantage. A lot of times if you search the comment section of videos you will also find some valuable advice or resources there as well.
-
~ If YouTube is your friend then Google is your best friend. Get comfortable copying and pasting into Google and used to searching links. Some links will be useless, but a lot of them will at least point you in the right direction to find a solution to your problem(s).
-
~ Write code. It doesn't matter which language you choose to begin coding with just make sure your writing code in that language. Doesn't have to be anything complex just get used to typing it so you can feel how the language works.
-
~ In the beginning the best teachers are tutorials. I highly recommened following a tutorial from beginning to end. Pause at places where you need to catch up so you can connect the dots. Understanding plays a role in this aspect but it's not critical. The important part is you creating a project and seeing it come to life.
-
~ Learn to use StackOverflow. Most times the query you type into Google will lead you to a StackOverflow link. StackOverflow can be very helpful and contains massive amounts of information but also can be a pretty toxic place for new programmers. Their strict guidelines and policies can be harsh. I solely use it to search for solutions, I don't even take the time asking questions on there anymore because nine times out of ten my question has already been asked.
-
~ Build a project your passionate about. Make sure it's not outlandish but building something you care about is the quickest way to get heavily invovled in something. In order to be a capable programmer you need to be heavily invovled in programming. You don't have to love the process of coding but you should at least have passion about the product your actually building. For example: I'm a huge Marvel Comics fan, my first app was a Marvel Comics quiz app. It's that simple.
-
~ There will be times where you hit a roadblock. My advice is to take a break, and come back to it later with a clean state of mind. I use the frustration computers cause and channel that into curiosity. Let the computer fuel your inquisitivness to find a solution.
-
~ Join a communitity. The best thing I could've done was become part of the iOS dev community on Twitter. Give yourself a chance to meet other individuals who are on the same journey as you. Networking is always a good thing.
-
~ In the beginning there's no such thing as bad code. In my opinion as long as it's working it's good. Again, the main thing in the early stages is getting familiar with writing and reading code. You need to get used to the tools you'll be using. Later down the road you can work on better ways implement these tools.
-
~ Do not compare yourself with anybody else. The only person you should be competing with is the version of yourself you were yesterday. Get 1% better each day. Your running your own race, so as long you don't quit you are guaranteed to win as long as you don't give up!
I hope this advice can help the next apsiring developer. Feel free to check me out on Twitter. Peace!