On Thu, 06 Nov 2008 23:14:38 -0500, btkuhn wrote: > Hi everyone, > > I've been teaching myself python for a few months and I'm becoming > frustrated because I've kind of hit a wall in terms of learning new > information. In an effort to continue to learn I've found some material > on more intermediate/advanced topics like linked lists, nodes, trees, > etc. However, it's kind of like reading a math textbook - the tutorials > do a decent job of explaining the material but it's all kind of > theoretical, and I'm not sure how I'd apply these concepts in real world > applications, or incorporate them into my code. Does anyone have any > suggestions for learning about real world application of more advanced > concepts? > > Also, are there other concepts that I should focus on? Frankly, I'm a > bit bored because I've hit this ceiling, and I'm not really sure where > to go to next. >
There is really no ceiling in learning programming. The problem is to find a problem. If you're bored, you can do the practically-for-bored- programmers challenges like Python Challenge (http:// www.pythonchallenge.com/) or Project Euler (http://projecteuler.net/ index.php?section=view) If you're up to the challenge and responsibility, you could join an open source program teams or start one yourself. Alternatively, you could also start learning some embedded python flavors, like the one used by OpenOffice.org or Inkscape, these provides different challenge to vanilla python as you've got to learn their libraries. If you think you're bored of python, perhaps it is time to start learning another language. Having many programming language in your toolbox is certainly a life-saver, since some problems are easier to solve in certain languages than other. For example, many mathematical problems are (much) easier to express in functional language, like Haskell, compared to imperative language. Other languages might have features/paradigm that are foreign in python, like Eiffel's "Programming by Contract". You might also start seeing domain-specific languages, like SQL (database), XSLT (XML), (E)BNF (syntax parsing), etc. Alternative languages you might consider: Haskell, Prolog, Eiffel, C- family, Perl, Lisp-family, APL-family, some assembly, shell scripting (bash, bat, etc) If you're EXTREMELY bored though, you might learn some of the more esoteric languages, e.g. Shakespeare, Piet, Whitespace, etc (be ready to abandon all sanity) _______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor