Programing is what I’ve been starting to dedicate some serious time to in recent months and I wanted to share some feels about it. It’s been an ambition of mine to learn Swift and one day be an iOS developer. I’m currently teaching myself Swift on Treehouse.com working through the iOS beginner course. I’m also working on the 100 days of code challenge.
I wanted to write something based on my experiences so far. As well as for others just starting out coding. The first step in my opinion is to find out what kind of developer you want to be. It doesn’t make sense to learn Swift an iOS language if you want to be an Android developer or vice versa. After you have a good idea of what kind of developer you want to be see what programing language or languages they use. Once you have that determined look at what resources you will use to learn that language and it must be tailored to you. If you learn with textbooks buy programing books on that language. If you are like me and need something different try websites like Treehouse or Codecademy. Make sure you find a resource that appeals to you. And don’t be afraid to change what resources you use to learn if somethings not working.
Stop research. Start coding!
More research can actually stop you from coding. In my experience its very easy to get into the idea of learning programing and never get out of the research stage. Or start to look into developer interviews on podcasts, blogs, and other mediums. There is an endless number of these and its easy to get lost in doing nothing but research. There is plenty of amazing stories to be told but everyone’s experience is personal. Chances are you can’t become a developer the same exact way as someone else. For me its been the idea of focus and what kind of developer do I want to be that has helped me to get started. Instead of asking how did they do this, have a mental state of mind(im going to figure out how to do this).
Set topics and concepts you want to get familiar with, but put rough deadlines on them. Dont rush through something just to hit a deadline you set only to look back and feel like you only got half of the knowledge. I think putting deadlines on learning programing concepts is a bad idea. Often times I can work on something for hours but I always ask myself did I feel like I learned something today? If you realize you put in 3 hours of practice and still don’t get it that’s OKAY! The quickest way to stop learning is to get discouraged because you put in tons of effort and don’t get it the first time. If that happens try doing another activity and coming back to it or taking the rest of the day off.
Consistency is essential, for me what I’ve done to keep myself consistently coding is to take the 100 days of code challenge. Take a portion of your day and set aside time to coding and working on your projects. Try to work on them for at least an hour but consistently working on your code and learning is what matters. With 100 days of code you code everyday no exceptions. I am on the second round of trying this and previously I made it to a little over 50 days coding consistently. I didn’t stop coding though I had dedicated at least an hour and a half to coding for at least 5 days a week.
Coding is kind of like math(you don’t need to be a mathematician). Its something that you need to be actively doing to understand and learn it. Treehouse has lots of great videos and code challenges. But I wouldn’t learn anything if I just watched the videos and didn’t write the code at the same time. That is why finding time to practice is so essential.
Plan your coding sessions. Everyone has different circumstances and not everyone even has their own computer but that’s okay. So make sure you can have a schedule of when you will code. If you can fit multiple coding sessions into one day that’s great. If you have to wake up early before work to code then make sure to wake up early and get some coffee to help you out. You got to just find some time that works for your schedule. After every coding session ask yourself did I feel like I learned today?
If you do these things I think it will be easier for you to get into programing. Introspection on how you learn is very important when learning anything not just programing.