On 03/05/2016 17:50, Rob Gaddi wrote:
Cai Gengyang wrote:

So I have completed up to CodeAcademy's Python Unit 2 , now moving on to Unit3 
: Conditionals and Control Flow.

But I feel my motivation wavering , at times I get stuck and frustrated when 
trying to learn a new programming language ?

This might not be a technical question per say, but it is a Python programming 
related one. How do you motivate a person (either yourself or your child) to 
become more interested in programming and stick with it ? Is determination in 
learning (especially in a tough field like software) partly genetic ?

Related , This is a very well written essay on determination by Paul Graham 
----------------------------------------http://www.paulgraham.com/determination.html

Gengyang

You don't.  Learning programming is dull and sloggy and inherently
unmotiving.

Now, solving a problem, on the other hand.  Solving a problem is fun.  A
real problem, an actual task that you actually need to do, not
FizzBang.  The thorny, nasty, horrible problems are great fun, and when
you beat them into submission and mount their heads on your wall, but
even the little ones like "I've got an 8GB USB stick, I want to put a
random selection of all my MP3 files onto it." are entertaining.

The Python's not the point.  It can never be the point.  Have a thing
you want to do, and not just "Get a high paying job." If the tool for
doing that thing is Python, so be it. If you need a soldering iron, or a
hammer and chisel, or a structural engineering degree instead, then go
figure out how to use one of those and Python will still be waiting when
you do need it.


+1

I learned Python because... I had a problem to solve.

First I had to recompile a Linux kernel for an oddball PPC based NAS I used a lowpower computer. Then I had to find the patches that fixed some USB issues. Then I had to make a USB GSM modem work as it was a nasty Windows Zero-CD system. Then I wrote a program in C/C++ to process data from the modem and play with the ASCII strings and then push them to a website. I used libcurl to do the web work. It was a nightmare to debug/enhance and handling raw C strings in C or C++ was a pain. And I thought there has to be a better way.

I kept seeing mention of Python so I thought I'll rewrite this in Python. But I couldn't find Python 2.7.x for PPC so I had to get the Python source and build that from scrath and check it worked OK.

It took about 7 days of deep hacking to be able to rewrite on a line by line basis the C/C++ in Python. Boy was it ugly. But it worked. Then as I enhanced the program it became more Pythonic and I starting using the language and not abusing it. And the more I used it the easier it became. That code is online on a cheap VM running 24/7 and has about 450 users worldwide growing by several a week. This group was huge source of inspiration looking at the replies people gave to questions. It also motivated me to stop faffing about and convert my Python2 code to Python3 which again was straightforward.

So I learned Python to solve a real world problem and it took a huge amount of effort along the way to realise I had to get a better way to maintain a program that was now being relied on by others. I didn't set out to learn Python but I'm sure glad I did.

In 33 years of code bashing, I found a language that let me think about the problem not the programming language.

YMMV




--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to