Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

What about those of us who are insatiably curious and love to learn for learning's sake?

I'd find it more frustrating than anything to be confronted with a significant problem right out of the gate.



I don’t think a problem has to be significant to be useful to someone. I just think it’d be ideal to work towards a product (no matter how trivial) that the beginner could feel proud of and actually appreciate how it’s helping them.

Learning programming “for learning’s sake” sounds great, but it also sounds damn hard without goals.


You've got a good point! The post under discussion actually contains a slightly modified version of the email I sent to my friend. The original version had a paragraph toward the end that more specifically tried to show her a few ways that programming could be relevant to her daily life - she's got a job that would particularly benefit from some automation in the form of a few self-rolled Ruby scripts.

I've given a variation of this "how to start programming" email to someone else before, and with that person I made the mistake of not pointing out how programming could be relevant to their daily life; I think that email was significantly less useful as a result, so I'm trying to iterate a little bit.


I have seen the greatest success rates with individuals who want to scratch an itch. Someone who has an idea of something they want to build. This way they relate their problem solving and the solutions they find. For example when they decide that their program needs to write a file, they go and look for information on how to write a file, take it and implement it in their program. Conversely someone who goes through a tutorial of how to write a file does not have the situational reference to call upon to remember that accomplishment. I have found that individuals who learn programming via tutorials general do so through a good deal of repetition.

I have taught two people to program from scratch and I did so with both by finding a project that they wanted to do. One was a character creator for the pen and paper Deadlands and the other was an accounts receivable batch crediting application. Both individuals where self-sufficient in less than a month and where able to search and answer all of their own questions within three.


that's been the most difficult part for me, actually -- finding fun problems that I could work on that aren't completely impossible. I spent a lot of time reading books on Python when I should have just been playing with code.


I learned programming by hacking on other people’s code – manipulating it to fit my needs. Try to find an open source project you can mess with.

I can’t say for sure how much fun this’ll be for you: The next time you think to yourself, “I wish this thing worked like this” or “I wish this thing had this feature”, if it’s open source, just load up the code and start playing with it. Your problem might be easier to solve than you’d think.


Depends on your definition of fun, but I've used text books to give me practice exercises, instead of having to invent problems myself. (It's also a good way to learn a language's way of working, rather than learning how to implement your old thought patterns in a new language.)

Something like SICP has problems that are fairly interesting from a mathematical perspective as well as a coding one. I don't know if there's the equivalent for Python, but it might be worth checking.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: