[Tutor] Real world experience
Martin A. Brown
martin at linux-ip.net
Tue May 13 02:25:29 CEST 2014
Hello,
10 Pick one favorite specific topic, any topic (XML parsing; Unix
process handling; databases). The topic matters for you.
Learn it deeply. Keep learning it. The topic matters less for
others (unless it is specifically within the computer science
discipline). You have just begun. [0]
20 Pick a toolkit (minidom, etree; os, multiprocessing, threading,
subprocess; sqlite, psycopg, sqlalchemy, mysql). Learn why
people solved the problem differently each time. Ask.
30 Write a program that does something interesting with this.
Try a different toolkit. What was hard? What was easy?
What could you simply not accomplish? Look at the source code
for the tool you used? Why couldn't you accomplish what you
wanted?
40 Read all of the documentation. Read it again. Read papers and
books listed in the documentation footnotes. Read the
documentation again. Realize that all of this is a (fallible)
human endeavor.
45 Find other, related mailing lists. Subscribe. Listen. Post.
46 Talk to somebody who has solved the problem. How? What tools
did that person use [1]?
48 If reference to something that was new or you did not
understand, GOTO 40.
50 Write a brand new program to solve the same problem. Examine
what you did differently. Ask somebody to review your code.
52 Read your old code.
53 Talk to somebody who has solved the problem in his/her own
way, potentially with different tools. [2]
59 If MASTERY and BORED, GOTO 10.
60 GOTO 20 [3]
This discipline can be approached in depth-first or breadth-first
traversal pattern. Most people on more technical mailing lists
appreciate the depth-first traversal.
Time waits for nobody (Oh! I need to go eat!),
-Martin
[0] For these purposes, mine was IP networking.
[1] What!?! Not Python?! Why? There are reasons to choose
something else. Do not be blind to those resaons.
[2] Find people who are motivated as you are and are working on
similar problems. Work for them. Keep reading. Hire them.
Keep writing. Keep reading.
[3] Oops. I learned on BASIC. I hope I do not get banned from
the list.
--
Martin A. Brown
http://linux-ip.net/
More information about the Tutor
mailing list