A Dart learning course for newbies!

190 views
Skip to first unread message

Mayuresh Kathe

unread,
May 11, 2015, 4:27:40 PM5/11/15
to mi...@dartlang.org
Hi,

It just occurred to me that it would be nice if we, as a community, could pool our resources to build a course for learning Dart efficiently.

Such a document could be very useful for an autodidact attempting to learn Dart using the existing material.

For example, there's no book or document which takes the reader gently from the basics of Dart to the most complicated stuff.

For one thing, an autodidact would probably be required to know about the fundamentals of Discrete Mathematics, Computer Science theory, Object Oriented theory and Functional Programming methods.

Perhaps, a list of books with the sequence in which they are to be assimilated!

I volunteer with the names of three books;
1. Computer Science fundamentals  - "CODE" by Charles Petzold,
2. Discrete Math fundamentals - "Fundamentals of Discrete Math for Computer Science" by Jenkyns and Stephenson,
3. Object Oriented foundations - "The Object Oriented Thought Process" by Matt Weisfeld.

Would be cool to see others chipping in with their suggestions and recommendations.

~Mayuresh

Seth Ladd

unread,
May 11, 2015, 4:29:59 PM5/11/15
to General Dart Discussion
FWIW, there's the book "Dart for Absolute Beginners": http://www.amazon.com/Dart-Absolute-Beginners-David-Kopec/dp/1430264810

If you're interested in building something interactive, might we suggest taking a look at the components of https://github.com/dart-lang/dart-pad (which uses https://github.com/dart-lang/dart-services)

--
For other discussions, see https://groups.google.com/a/dartlang.org/
 
For HOWTO questions, visit http://stackoverflow.com/tags/dart
 
To file a bug report or feature request, go to http://www.dartbug.com/new

To unsubscribe from this group and stop receiving emails from it, send an email to misc+uns...@dartlang.org.

Mayuresh Kathe

unread,
May 11, 2015, 8:52:06 PM5/11/15
to mi...@dartlang.org
Yes, I have known about David's book, have even interacted with David about it.
Looks like it focuses too much on the fundamentals only.
It would have been nice to have a book along the lines of SICP's methodology, but using Dart, something which "Eloquent JavaScript 2e" accomplishes.
I think Marco Jakob has built the "Hello Dart" interactive tutorial which might get support under DartPad soon enough.

Ron Gonzalez Lobo

unread,
May 11, 2015, 9:19:56 PM5/11/15
to mi...@dartlang.org
Hey @Mayuresh,

I strongly recommend CodinGame to get the hang of Dart.

Have fun :)

Randal L. Schwartz

unread,
May 17, 2015, 1:46:55 PM5/17/15
to mi...@dartlang.org
>>>>> "Mayuresh" == Mayuresh Kathe <mayu...@kathe.in> writes:

Mayuresh> Looks like it focuses too much on the fundamentals only.

The problem is one of focus. There's only so much that can be learned
in a week of classroom time or 250 pages of a tutorial book. (I have
plenty of experience with this {grin}.)

The key to success is to rigidly define a starting and ending point,
and then determine the simplest number of substeps to get from the start
to end. Thus, a tutorial ends up laying a good framework for further
research, without bogging down in the details of every possible
branching of that list of steps. That's usually the failure of most
tutorials I've read.

--
Randal L. Schwartz - Stonehenge Consulting Services, Inc. - +1 503 777 0095
<mer...@stonehenge.com> <URL:http://www.stonehenge.com/merlyn/>
Perl/Unix consulting, Technical writing, Comedy, etc. etc.
Still trying to think of something clever for the fourth line of this .sig

Marco Jakob

unread,
May 18, 2015, 1:11:07 PM5/18/15
to mi...@dartlang.org, mayu...@kathe.in
I you're looking for a basic introduction to programming with Dart you can take a look at my "Hello Dart" tutorial: http://code.makery.ch/library/hello-dart/

I would be glad to receive feedback on this.

There is another tutorial about basic HTML/CSS knowledge here: http://code.makery.ch/library/html-css/

A tutorial that builds on top of those two tutorials is the "Dart Kanban Tutorial" (currently in German only): http://code.makery.ch/library/dart-kanban/de/

Since Dart Editor will not be supported in the future, I plan to update the tutorials as soon as Dart Pad can support something like this or we have another good IDE alternative for beginners.  

Metronome

unread,
May 23, 2015, 10:22:33 PM5/23/15
to mi...@dartlang.org, mayu...@kathe.in
I think that a set of community resources would be awesome.  My only real suggestion is that anything directed at beginners should focus more on how to build a system correctly using Dart idioms.  I'm getting tired of tutorials that show people the broken way to write programs.  A blog tutorial for example could easily be used to demonstrate how to actually structure an api without hitting readers over the head, or annoying them with "Surprise remember chapter X, guess what the way we wrote that is fundamentally broken." type sections.  We can show things like how to use generics, demonstrate what it actually means to program to an interface (This will become better as the overall power of generics improves in Dart.), etc.  

The self taught programmer could certainly use the theory, but the information that actually instructs people on how to actually put things together so that they, or some other poor fool who has to maintain their code doesn't want to claw out their eyes is very important as well. 

Marco Jakob

unread,
May 24, 2015, 7:39:19 AM5/24/15
to mi...@dartlang.org, mayu...@kathe.in
@Metronome: Do you have an example of such learning resources, maybe in other programming languages?

Metronome

unread,
May 26, 2015, 2:26:32 PM5/26/15
to mi...@dartlang.org, mayu...@kathe.in
Sadly no I don't.  I usually see the kinds of things I talked about scattered all over the web in various talks or blog posts like these:


I also see this kind of thing hiding out in books like Functional Programming in Scala which happens to provide a great way of thinking about API design irrespective of the book's focus on FP.  I have found that alot of the design lessons in this book are applicable even if the implementation approach is not.

Trailblazer for Ruby on Rails is a layer that tries to implement some of these things as well.

Angularjs is basically this from a purely architectural standpoint.  Though I doubt people will talk about this kind of architectural thing in that world because it is just how things are done. (Which is great.  Pretty much right after hello world you start seeing proper architectural setup.) 
Reply all
Reply to author
Forward
0 new messages