Ask HN: Want to learn to program... how?

2 points by calebhicks ↗ HN
I took a basic programming class in high school about 7 years ago (C++). Our great teacher left about 3/4 through, and the new guy didn't know a lick about programming. In fact, he would take my and a friend's code to use for class demonstrations.

Anyway, the class stagnated, and we didn't learn much for the rest of the year. I tried taking a Java class the next year from the same teacher, and it turned into a 'Web Surfing' class.

I wanted to learn then, but didn't make myself do it. Years have passed, and I still want to learn. I'm interested in web development and iPhone development. So I think I want to learn PHP or Ruby and some variant of C (Objective C, C++, or C).

I'm not a great book-learner, because I don't understand enough of the basics to understand what the book is talking about. I think I would thrive in a tutoring type of atmosphere. I would love to find someone to teach me, but don't know if that's the best route. I have no hesitation from going to a tech college or community college to learn enough so I can start learning on my own.

If you were to start over, what would you recommend? Get over myself and hit the books? Try and find a small classroom environment hoping they teach what I want to learn (again, Ruby for web dev and Objective C for Mac/iPhone dev)? Are there good online courses?

Appreciate your feedback. Thanks!

1 comment

[ 3.8 ms ] story [ 21.6 ms ] thread
Find a mentor. Get an internship.

@naithemilkman posted about how he's just getting into it and he cold called startups to offer to do internships, discussion here: http://news.ycombinator.com/item?id=2280070

when you're just starting, the most important thing is persistence. You can't hit it hard for 2 weeks, take a month, then come back to it hoping to pick up where you left off. You need to keep pushing, keep making forward progress and keep it fresh in your head.

Having mentors at a startup who are invested in your success (because you being good == free/cheap work for them) will ensure that you have resources to fall back on, they'll help you past a lot of pain points, and they'll motivate you to keep going.

Don't lean on them too hard, think of them as a spot at the gym. You want to do it yourself, but when you're in a bind, they'll give you the nudge you need to keep going.

Cold call startups and ask for an internship.