
Ask HN: How to teach a friend about programming? - boogdan
I have a friend that wants to learn iOS programming in Swift and he asked for my help. He doesn&#x27;t have any basic knowledge event about the fundamentals of programming so I really don&#x27;t know how to create a roadmap for him. He want&#x27;s to do it just for the fun of it, not for pursuing a job as a programmer. Just as a hobby. He&#x27;s not young, he has a job so he can&#x27;t spend more than one hour each day for this new hobby therefore I must come up with a long term track.<p>Since he doesn&#x27;t even know the basic stuff, how to I tackle this? If I&#x27;m jumping right into teaching him about variables, functions, classes, etc then I&#x27;m afraid that he&#x27;ll get scared, overwhelmed and frustrated because he, like any other absolute beginner, lacks the &quot;programming vision&quot; (something that I like to call the &quot;I know kung fu&quot; Matrix moment).<p>So I suppose my plan must start with teaching him the why&#x27;s and then the how&#x27;s of programming, right? I must first give him some lecture about general programming knowledge?<p>I remember when I was a kid, even though I knew the syntax perfectly, I couldn&#x27;t understand why do I need a function or why do I need to use a for-loop or when do I need to use X instead of Y, because the teacher didn&#x27;t bothered to explain me these concepts. So that&#x27;s what I&#x27;m afraid it&#x27;ll happen to my buddy if I don&#x27;t come up with a more down to earth way of teaching.<p>That being said, how do I do it? What books can I recommend him? How do I schedule his learning path? Any help is welcomed and appreciated.
======
brudgers
My advice would be to start with Norvig's essay:
[http://norvig.com/21-days.html](http://norvig.com/21-days.html)

Good luck.

~~~
boogdan
Will check into that, thanks!

