noNet <[EMAIL PROTECTED]> writes:

I am trying to chart my learning path from not knowing anything except how to
run a computer to using TurboGears in building my own database based
eCommerce Site on the web.

It's a huge path.  If it was a toy application it would be much easier.

You'll need to learn:

      - Some good editor

               Forget about word processors.  You won't be writing reports
               but you'll be writing code.  Choose a good one.  Mastering a
               good expansible editor might take you years so don't worry
               learning everything about it.  With some editors you never
               will learn everything that it is capable of.  Since you're on
               Linux I recommend Emacs or VIM....  I use the first, and
               thought it fitted my brain better.  Both are the most common
               editors and exists for dozens of OSs, including Windows, so
               if you know one of them (or both) you'll be OK in, I dare
               saying, each and every OS that you might use.

      - Programming Logic and Terminology

               You'll need to learn how to code.  There's no way to scape
               from it.

      - Some RDBMS (relational database management server) -- I suggest
        PostgreSQL due to eCommerce's requirements, but you'll find hosting
        easier if you use MySQL (please, see the details on each type if you
        choose the last one and take a good look at it's gotchas)

               Without that you won't be able to correctly plan and implement
               a model with all of its relationships.  You can have something
               that won't handle heavy load or will break in one or more of
               several ways if you don't know what you're doing.

               Of course, refactoring is possible, but when you have
               thousands or millions of records guaranteeing their integrity
               while manually altering their underlying structure is
               something you really don't want to worry with...

      - HTML / XHTML / XML

               Forget about templating systems if you don't understand the
               basics of how the web works and where it is going to (it is
               mostly HTML but is going towards XML and is starting a
               transition state where it is more XML like with XHTML).

      - Python

               Your code will mature with time.  You'll never code the best
               code at first attempt -- maybe never... -- but you'll see how
               to optimize things and how to make your work easier with
               time.  Python is easy to start with, in one afternoon you'll
               be able to learn the basics with one of the several tutorials
               and books linked from the Python website...

      - Some templating system

               I suggest you start with Genshi.  You'll learn what TG will be
               using as default "soon" and will benefit a lot from your
               studies in the XML area.  Together with what you learnt from
               Python you'll be able to replace the code you wrote to learn
               HTML / XHTML with a template and insert dynamic information
               there.  Here you'll already be able to create websites on your
               own.  Resist the temptation for a while.

      - More Python

               You didn't thought you'd have to learn everything, right?
               Take a look at more advanced stuff: decorators and generators,
               mainly.  Studying some design patterns would also be
interesting.
      - Learn TG

               That's your goal.


Of course, you'll have to learn several things as well: modeling a database
with some ER drawing tool, modeling your program using UML (use cases,
classes, etc.) and more.  If you have a small application it isn't all
needed, but it helps a lot growing and fixing bugs after a while without
touching that code.

However in trying to figure out the shortest and logical path to my goal, I
keep running into the Chicken and the Egg problem. I start to look at one
thing, and then it seems I should study something else first and around the
table I go. I am looking for the logical learning path so that what I am
learning builds upon itself as I go.

If you really can't go on with what you're learning then you're missing some
requisites for that or are trying to give a big jump. ;-)  Learn, try it out,
learn more, try it out, learn more...  If you don't write code you won't learn
how to code.

So, I am going to tell you specifically where I am at, and ask you to tell
me what I need to learn, and in what logical order I should do it, to get to
the point of being able to accomplish my goal from here?

If you're a complete newbie it will take you a long time to start with an
eCommerce website and have a good solution.  If you're willing to play with
your family and friends it will be easier...

--
Jorge Godoy      <[EMAIL PROTECTED]>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"TurboGears" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/turbogears?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to