Live data from Hacker News

Teach Programming to become a better programmer

zeroequalsfalse.press

11–20 of 60 posts

Re: Teach Programming to become a better programmer

#11
let me add few things...

- keep telling pupils the goods (of becoming a pro-gram-mer), AND telling them the bads. One at a time, some needs repeating often. Like the sky moments when u see someone using your stuff and liking it. Or the multi-shizophrenia that backs that achievement :/ They should know the whole truth, and decide - would they sustain all the pluses and the minuses, or such a vocation/devotion is not for them.

- teaching/mentoring, esp. around my place, isn't much $$$ rewarding.. if at all. More, you can be considered a nuisanse/"wtf" - when the common thinking is "give me monie/solutions, dont give me brains".. Sadly.

- i do teach people, quite a few years, but by working with them. Not by lecturing.. Lecturing works en masse but is veeery short-term/shallow. (example: from 50+ ppl i taught python-courses in last 2-3 years, various levels, ~6 became programmers and/or went using it.. half of them with further mentoring. From ~20-25 ppl i have worked-with and mentored in last ~15 years, all became pros... some better than me.)

- It is a very deep investment.. maybe as more for the teacher/mentor as for the pupil/mentee.

have fun www.svilendobrev.com

Re: Teach Programming to become a better programmer

#12
post #5

I'd advise people to not teach if they don't understand the source material very well, it can lead to spread of misconceptions which can make the concepts more confusing for the students rather than less. I feel this is often left out of these discussions. You can always pretend to teach yourself to navigate the concepts though, when learning the first time yourself.

Teaching others, even if you don't know the material too well, pays because your students will come up with bugs, problems, and questions stemming from misunderstandings that you can't even conceive of. So it forces you to go away and find out and explain more clearly next time around. Pretending to teach won't come close.

So long as you approach it honestly; "you know, that's a damn good question. I'm not sure so I'll have to come back to you tomorrow." Then make sure you do come back to them. Or walk through the language reference with them. It will move you massively ahead in knowledge and soon kill off any misconceptions. It's OK to admit you got something wrong earlier in the week. Just don't do it daily. :)

Re: Teach Programming to become a better programmer

#13

An even better way is to program, program and program some more. Doing ( creating software ) > teaching/explaining > doing nothing. Nothing beats solving problems yourself.

Doing is not strictly better than teaching. You can do a lot without understanding what's really happening. You can't get away with that when you teach.

Re: Teach Programming to become a better programmer

#14

An even better way is to program, program and program some more. Doing ( creating software ) > teaching/explaining > doing nothing. Nothing beats solving problems yourself.

I'd say I learn different things from each.

I work for Pivotal. Our default mode is fulltime pair programming.

Pairing has forced me to explain myself above a gut feeling level. I can't just say "it's better, my gut says so, trust me" to a pair. I have to explain my reasoning. Which requires me to try and discover what that reasoning is.

I learned a lot from stopping my pair any time I was lost and I've learned a lot from being stopped when my pair was lost. There's no real "teacher" or "learner" roles. You're in it together.

Re: Teach Programming to become a better programmer

#15
post #6

This has been so true for myself and many of our instructors at Fullstack Academy. There are so many cool ideas in programming that you can get by without - but once you start teaching it forces you to truly wrestle with those ideas. Definitely makes you a stronger programmer on the other side.

What are some of those cool ideas?

Re: Teach Programming to become a better programmer

#16
Thanks for the article -- especially agree with the "Lead and take the charge." I feel that's very important if you expect to learn from mentoring.

Shameless plug but I wrote a Medium article about what I learned from mentoring an intern last summer and what people can get out of it. I'm mentoring another intern this summer and it's really great working with different people and how they learn in different ways.

https://medium.com/@augburto/the-menternship-why-mentoring-i...

Re: Teach Programming to become a better programmer

#17
The easiest way to "teach" programming right now is to watch beginners programming on twitch and offer advice when you can. Trying to pair remotely through chat also imrpoves your pair programming skills.

Of course you could just write blog posts instead Kappa

Re: Teach Programming to become a better programmer

#18

An even better way is to program, program and program some more. Doing ( creating software ) > teaching/explaining > doing nothing. Nothing beats solving problems yourself.

> Nothing beats solving problems yourself.

Assuming you understand why you solved a problem, and you solved it well. This is where teaching helps. You have to prove that you understand it, and because you are putting it out there, it will get judged and corrected. Often programmers can solve problems without understanding why their solution works, or whether it actually works and they are just missing something critical.

In fact, I'd go so far as to say that teaching well requires doing, but doing doesn't require teaching well, so one could make the argument that Teaching Well > Doing.

Re: Teach Programming to become a better programmer

#19

An even better way is to program, program and program some more. Doing ( creating software ) > teaching/explaining > doing nothing. Nothing beats solving problems yourself.

Doing is not strictly better than teaching. You can do a lot without understanding what's really happening. You can't get away with that when you teach.

I agree, having another question your assumptions and explanations forces you to learn it deeper.
Post reply on HN