Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

iOS

I been studying iOS for a year now. First time I ever studied programming and struggling with confidence as an iOS dev..

...as an iOS developer even though, I feel like I know a lot about the subject but not everything. What would be some advice or tips to become that competent programmer. Is this a normal feeling? What steps can I take to get me over the "hump" and job-ready?

I don't hold a dev title (yet) at my current job, but do work on an iOS dev team doing QA. I've spoken to many devs at my job that have all given me the same answers about this topic. First of all, you need a willingness to always learn. You never stop learning as a dev and will never know all the answers. The most important skill you have as a developer and even just as an individual is knowing how to find the answers you're looking for. Be proficient in solving problems. There's nothing wrong with not knowing the answer. All that matters is you have a drive to solve the problems you face, and won't stop until you do. Second, practice what you learn. Keep making things and learning how to solve problem outside of whatever book or site you are studying with. This will give you so much more confidence in your abilities. Another thing that is very helpful is to contribute to forums and communities. The confidence you feel when you help other people solve their own problems is something you can't find just by completing code challenges online or in a book. Doing this also surfaces problems you might not have faced on your own. Based on your score here at Treehouse, I'm sure you're doing better than you might feel. Be sure to have a solid understanding of computer science, because that is gonna transfer across everything you do in any programming environment you end up choosing. Just get out there, meet and talk to other devs, and don't stop learning. Best of wishes for you on this journey!

Nehemiah,

I have been a software dev for 4 years now(as a full stack web dev and wanting to transition to iOS) and I can promise the feeling of not knowing enough never goes away. It's kind of the reason programming is fun and frustrating at times, it's a craft, something you can always be better at.

In my experience there are a few ways you can help your confidence and competence:

  1. Build apps, all different kinds as they will bring up different challenges and allow you explore parts of the Cocoa Framework you haven't touched before.
  2. Work on your problem solving and algorithm skills you can practice that kind of thing at a site like Hacker Rank - https://www.hackerrank.com
  3. Teach someone and yes you are competent enough to teach someone. There is always someone that doesn't know as much as you. Nothing will test how well you know something then when you have to teach it to someone. Answering questions here on Treehouse and at meetups(more on that in the getting the job section) are a good
  4. Find a mentor. I know that is not an easy task, but it's helpful in growing as an engineer.
  5. Be ok and admit when you don't know something. None of us know everything even when it seems like some people do, trust me they don't

Getting the job

The way you get over the hump is to just take the leap and start applying. Another good idea if you aren't doing this already is to go to a local Swift/iOS/Mac/Apple Dev meetup. You will meet tons of people that have the same interest and have a broad knowledge base that you can tap into. Also, there are many times at meetups people will let you know about positions at their company or companies they know of. Once you are comfortable enough you can give a lighting talk(quick 5 min) about a subject that interest you and maybe eventually be the main speaker at a meeting.

Based off your score I think you know way more than you give yourself credit for. Trust in your knowledge, take the leap, and keep learning.

Happy Coding!

Man appreciate the great response and advice Addison and Paul, getting different perspective on things really helps clear my view of things up! Thanks you guys!