Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

Re: Road map woes

by crenz (Priest)
on May 29, 2003 at 01:19 UTC ( [id://261458]=note: print w/replies, xml ) Need Help??


in reply to Road map woes

I know how you feel. Sometimes, there are posts at PerlMonks that exhibit an elegance that makes me feel there is a lot to learn still... but I don't know where to start.

I like Ovid's proposal -- try to learn another language, it is really interesting. You could go for Java or C++, or for something more different: Prolog, ML, Lisp, Scheme. (I had these in school, and they helped me to think differently.)

Some people like to occupy themselves with foundational CS books like "Structure and Interpretation of Computer Programs", but I find that I really learn best when tackling projects. (Nothing against the books -- I also use them in my studies, but I belief it might not be the right approach for L~R.) I know this advice has been given on PerlMonks a number of times, but I believe it is still true for your situation. You could choose a topic that really interests you and challenges you to learn something new, rather than applying concepts you already know in new ways. Some ideas:

  • Parrot. I'm serious, if you've never done Assembler, this should be real fun. You might even end up creating a few example scripts that help others.
  • GUI apps (ie., event-driven programming)
  • CS topics like linguistics, artificial intelligence, distributed systems, graphics/sound manipulation, bioinformatics. Choose something that interests you. You'll be surprised to see how much you can do even without formal Computer Science training if your curiosity guides you.

Also, I would recommend participating in a larger open-source project. It is really quite different to do programming in a group, it would teach you a number of new skills.

Note that I don't recommend specific skills that I belief you should learn about. First of all, I don't know your skillset, and second, once you are beyond a basic stage, you really need to pick the skills you want to learn yourself according to where you want to get to. E.g. if you plan to change your career to professional software development in the large some time, you will need different skills than if you plan to spend your future time teaching Perl or building web apps. So after you think about the possible directions that are open to you, pick a goal you want to be at in maybe a years time or two, and learn whatever skills you need to attain that goal.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://261458]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others lurking in the Monastery: (1)
As of 2024-04-25 12:05 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found