Re: [NTLK] Have some time but don't know what I'm doing...

From: Gavin McKenzie (gavin.mckenzie_at_gmail.com)
Date: Mon Sep 20 2004 - 09:04:47 PDT


From personal experience...

I've learned Newton development over the last couple of years almost
entirely from tweaking the software of others. Thankfully, so much of
the Newton software out there is available in source form. I've been
able to take the software that I love and use regularly, and study the
source code. Then, initially with much trial and error, bravely alter
the things that bugged me about the software or add the one or two
features that I always wish the software had.

Of course, this technique of gaining a new experience in development
by first resigning yourself to a less glamourous role of "maintenance
programmer" isn't new, and it isn't particularly glamourous. But even
after many years of being a so-called "professional" in
software-development I'm still a believer in the power of learning by
standing on the shoulders of others and retracing their steps through
maintenance work.

It's a wonderful feeling when you get to the point that you'll
crawling through the code of a favourite Newton program that you use
daily and quite by accident stumble across a line or two of code that
strikes you as somehow wrong -- wonderful because you realize that by
walking through the code and serendipitously discovering a bug that
you've internalized enough skill to not only write new code, but
notice errors even when you weren't looking for them. Ironically,
that skill seems to leave you when you *are* looking for your own bugs
:-)

I started out hearing claims, repeated in this thread, that
NewtonScript was an "easy" language to learn. Well, I admit that I
first found it an odd little language -- in particular the dual
inheritance paths of proto and parent. Since then, I've decided that
I love it. And even though I've wondered what a JavaScript
development environment might be like (given that it too has a more
proto-based than class-based approach), I've concluded that
NewtonScript is, like the Newton itself, special. I hope that in some
successful future iteration of the Newton, such as Einstein, that
NewtonScript survives and flourishes.

But, regardless of how easy/hard the language is, the real challenge
in learning any new development language is learning the APIs that
make the language useful. I remember in 1996 working with Java 1.0
and its cozy little set of libraries[1]. Now, I've got to believe
that no mere mortal could claim to have knowledge of all the libraries
that accompany the Java "language". NewtonScript was no different --
just when I feel competent using a bunch of the interfaces/protos, I
find new ones that I've never even touched before.

Gavin.

[1] In 1996 it is reported that Java had 211 classes in its SDK. By
1998 there were 1520 classes. I can only imagine what the number must
be today. Stats borrowed from :
http://leepoint.net/notes-java/10background/10applications_and_applets/05intro/20history.html

-- 
This is the NewtonTalk list - http://www.newtontalk.net/ for all inquiries
Official Newton FAQ: http://www.chuma.org/newton/faq/
WikiWikiNewt for all kinds of articles: http://tools.unna.org/wikiwikinewt/


This archive was generated by hypermail 2.1.5 : Mon Sep 20 2004 - 09:30:01 PDT