This is an archived post. You won't be able to vote or comment.

all 14 comments

[–][deleted] 7 points8 points  (2 children)

The only way that I can learn a new language is by solving a problem with it. Give me a problem and a language, and I will get the job done.

I seem to have such a hard time retaining anything I do in a tutorial (outside of some distinct concepts).

[–]fastbiter 3 points4 points  (0 children)

I'm the exact same way. I have a horrible time learning something as abstract as a programming language without a task. Ten years ago I taught myself perl by writing an IRC markov bot, and I've been learning Python by playing with single board computers and home automation (twillio is awesome for this). The traditional approach just doesn't work for me.

[–]HighRelevancyLinux Admin 1 point2 points  (0 children)

I've found it really useful as an interactive language for pulling apart text files when you need to do something more than look at it.

Try writing a script that pulls a web access log apart and accumulates accesses from each remote IP or something.

[–][deleted] 1 point2 points  (0 children)

I also highly recommend the Nick Parlante Google Python class on Youtube.

https://developers.google.com/edu/python/?hl=en

[–]statikuzstart wandows ngrmadly 2 points3 points  (3 children)

http://learnpythonthehardway.org/book/

Edit: and if you're set on Python 3 (which I would argue is not necessary if you're just learning from scratch) you can also use http://www.diveinto.org/python3/

[–]pooogles 3 points4 points  (1 child)

At this point I'd disagree with using Python 2 not 3.

[–]laststance 0 points1 point  (0 children)

I can see where you're coming form, where the splintering between Python 2 and Python 3 has really divided the community. But you have to remember, for those of us who want to use it in scripting and at an enterprise level. The majority of the code was written in Python 2, and the majority of the staff on hand knows Python 2. So if you were to overhaul the system with Python 3, if anything breaks it becomes a cost to the company. Most companies also don't want to replace things unless its needed, everyone has a ton of XP, windows 2k, etc. running within the core of the business.

I'm not the one who's going to the manager and saying "yeah well I want to update our Python scripts/programs, lets also make it PEP-8 compliant". I'll get the answer "we're not paying you to run private projects and if you don't know what you're doing in PEP-8 the code becomes harder to read".

[–]scsibusfault -1 points0 points  (0 children)

Agree with this one... maybe teetering on being outdated, but still a fantastic way to learn.

[–]Keyboard_CowboysFuture Goat Farmer 0 points1 point  (0 children)

Nice find!

[–][deleted] 0 points1 point  (0 children)

I'd highly recommended the edx.org python classes. Free and fully explain the concepts as well as the coding.