Eric,

It seems that you want to hike the Appalachain Trail
<http://www.appalachiantrail.org/site/c.mqLTIYOwGlF/b.4805859/k.BFA3/Home.htm>at
marathon speeds.  I'm not sure it can be done.  It took me 18 months with
Scala before I felt comfortable with it and my learning curve with new
languages is pretty good (it took 2 weeks to get comfortable with Ruby and 3
months before I felt that I had mastered it.)  I do not yet consider myself
a Scala guru, although I consider myself very skilled with it.

All of us have different learning styles, but I'm not sure that your goal of
understanding object hierarchies before sitting down to code is one that I'd
recommend.

I'd suggest playing with small pieces and getting them to work for you.
Perhaps the following order might be a starting place:

   - Install Scala 2.7.5 and just play with the REPL (the interactive
   interpreter.)  This will give you a good feeling of what can be done with
   Scala.  See how data can be manipulated. (3 or 4 days... perhaps assisted by
   *Beginning Scala*.)
   - Install Maven on your machine and create the Lift hello world app:
   http://wiki.liftweb.net/index.php/HowTo_start_a_new_liftwebapp (1 to 2
   days... also use a normal text editor, not an IDE... installing IDEs can be
   a rats nest of problems... TextMate for the Mac is the best choice, but vi
   or emacs are also good if you already know them.)
   - Run through the ToDo example in Lift (5 or 6 days)

By this point, you should have a bucket full of questions.  Ask them.  Ask
them as your going.  Ask them when you get to breaking points.

As you're spending your two weeks touring through Scala and Lift, start
thinking about what you want to build.  Think from the UI back (that tends
to be the easiest for most people... then think about how to interact with
something and then go backward from it.)  Scala allows for better
"composition" of application (using smaller parts to make bigger
functionality rather than thinking about gross level object abstractions).
So, draw your UI on a piece of paper and then start writing down what pieces
each UI component needs.  You should be able to build a simple, piece by
piece screen that does what you want it to.  Once you've got it working,
think about how to combine and normalize pieces of functionality.

As always, we're here for you.  The Lift community will help you, but we ask
that you document your learning (perhaps via blog or wiki or Twitter) so
others have the benefit of the work you've done.

Thanks,

David

On Mon, Jul 6, 2009 at 6:14 AM, eric cs <[email protected]> wrote:

>
> Guys,
> Thank you very much for all your answers.
> Having a community like that, I know is half way there for anyone.
> I am very very very eager to learn, that's my number one priorite
> right now and the e-commerce is an example to work with some real
> application and apply logic and a database to learn how put the
> classes together.
> It's not a hobbie I found another passion in my life besides my wife,
> my dog, my music and it's web programming.
> I like it all since css,ajax to actionscript to back side languages
> and the logic behind it.That's why I quit Civil Engineering and move
> to Computer Science years ago, but some stuff happens yada,yada.yada,
> here I am several years later trying to learn again.
> I feel better and more prepared than before and without distractions.
> I said a month but I have all the time in my hands right now so it
> could be until 2010 if necessary, full time. I wish I could work doing
> something like this sometime.
> Before I even learn scala, I have to get the logic how to create an
> app first in my head, like which items would an object and they will
> related to each other then to a database,it's not about create a
> simple program only,abstract,it's about how to put all little
> programns together to create something, in this case could be an e-
> commerce.Then I could learn the advanced concepts of Scala, functional
> programming and stuff like that.
> Maybe an e-commerce has a lot of logic involved is a good start to get
> my head around programming web apps with that example.
> I don't know if you guys understand what I meant,what I need to learn
> first, but even a book that explains that would be good, I read some
> books about design patterns and stuff but none of them applied in a
> real application.
> It's not even regular regular programming logic, I need to learn like
> how a put a app in a modular way, one thing on top of eachother, I
> don't know it that's the way to think about that, how classes will
> interact with eachother,Interfaces.
> Anyway, keep your advices coming and in case you know a book that
> explains that would be awesome.
> Thanks again.
>
>
>
> wat
> On Jul 6, 6:01 am, Eric Bowman <[email protected]> wrote:
> > To this I would add:
> >
> > The way to learn to program, is to program.  It takes a lot of time, and
> > a lot of hard work.  Reading books is good, and necessary, but it's not
> > enough.
> >
> > Also, Lift really uses Scala to the max, so if you only have 30 days, I
> > would plan to spend the first half just becoming good at Scala.  Which
> > will take longer than 15 days!
> >
> > Anyhow, being a "guru" is a life ambition.  It takes time, time, time
> > and more time.  All your time.  A history of "unfinished" is going to
> > work against you -- this will take serious dedication and
> stick-to-it-ness.
> >
> > An insightful view from Google's Director of Research:
> http://norvig.com/21-days.html
> >
> >
> >
> >
> >
> > Naftoli Gugenhem wrote:
> > > I would say that the main advantage knowledge of Java over a similar
> language gives you is knowledge of the Java environment and system, but you
> can pick that up via scala too.
> > > As far as turning theory into actual programming, my personal advice is
> to take one small sample, get it running, and then ask yourself questions
> like "Why does it do this?" and "What if I change this." Once you have a
> thorough understanding of how the sample accomplishes what it was supposed
> to accomplish, and how all the parts contribute to that, repeat with another
> one. Along the way ask yourself, "What if I want the computer to do xyz
> (similar to sample x)?" Also, play around in the interpreter trying
> different permutations.
> > > Of course, it goes without saying to read the books and articles, not
> to mention to ask all your questions on the scala-user list.
> > > Enjoy!
> >
> > > -------------------------------------
> > > eric cs<[email protected]> wrote:
> >
> > > Hi guys,
> >
> > > I saw some posts on Scala website about helping newcomers and I was
> > > wondering if some of you would be kind enough to help me out to start
> > > with Scala/Lift.
> > > My main problem is I am not a programmer yet but I really really want
> > > to be, I've been studying Ruby/Rails, Php/Zend/Symfony,Mvc,Design
> > > Patterns,Uml,Sql and some Java. I read some books but I don't get my
> > > head to think like a programer.
> > > I really like OO,Design Patterns, Uml but I don't know how to apply
> > > that to a full application, how to link everything together,
> > > classes,objects(books about that?Not about those items but how to put
> > > everything together)...I know a lot of the theory and concepts but no
> > > practice.
> > > I have all july available to learn that 12 hours a day or more if
> > > necessary I just need a push, someone to teach/help me out.
> > > What's more, I saw a post saying that I could learn Scala from scratch
> > > without learning Java, it's possible, not so much with Groovy. If it's
> > > not what parts of Java do I need to know, in case some of you tell me
> > > learn Java first(the easy answer).Do I need a lot of experience in
> > > Java to jump in in Scala? I know it helps but I would like to finish
> > > my first e-commerce in august, 100% opensource in Scala if possible.
> >
> > > P.s:I did 2 years of Computer Science C++ and 2 years of Civil
> > > Engineering over 12 years ago both unfinished.
> >
> > --
> > Eric Bowman
> > Boboco Ltd
> > [email protected]http://www.boboco.ie/ebowman/pubkey.pgp
> > +35318394189/+353872801532- Hide quoted text -
> >
> > - Show quoted text -
>
> >
>


-- 
Lift, the simply functional web framework http://liftweb.net
Beginning Scala http://www.apress.com/book/view/1430219890
Follow me: http://twitter.com/dpp
Git some: http://github.com/dpp

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Lift" 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/liftweb?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to