[comp.sys.amiga] Amiga Merit Badges

cmcmanis%pepper@Sun.COM (Chuck McManis) (11/09/88)

I sent this reply to Don, and he suggested I post it since he couldn't
repost it. I've reformatted it a bit so Don won't recognize it :-)

>* Does it help to be a certified developer?  In what way?

Yes, the Amiga Mail subscription gets you some nice code for things that are
pretty tough, the Hardware discounts get you into a "power" system faster, 
and the "$20 item" (I have the IFF docs) can be a real winner when if you 
need something they offer. (On my renewel I'll be getting the 1.3 Developers
Update).

>* Is a lot of your time spent in scavenging existing PD source code?  What?

At first, I looked through the programs on the Fish Disks but then realized
that at least in the early ones those authors had a little knowledge as I
did. So I started experimenting. 

Now after experimenting I learned that the Amiga is interesting in "chunks"
and each chunk can be learned relatively independently of the other. In
listing the chunks, I decided that they looked a lot like the merit badges
that Scouts got for mastering certain skills. So now they form the basis
of the Amiga Merit Badge System (AMBS) [believe me, if I could think of
an L word that would make them into LAMBS and thus another amiga/animal
pun I'd add it]. All I need is a competency test for each one and some
nifty artwork and we could have some real badges made up :-). Now the
point is that as a programmer, one usually doesn't know where to start
or how to get there. As we clarify these things maybe we can come up
with references for them. 

So the Merit Badges are in order of least to most difficult (actually
pretty arbitrary on my part) :

	o Graphics - This is pretty easy once you get the "feel" for the
		system layout. Everything hinges on the RastPort structure,
		doing draws and fills etc you learn about AreaMove() and
		it's kin. Generally you can use the screen RastPort and 
		use zero input from the screen.

	o DOS - This involves learning how Locks and such work, using
		the Amiga's Open() and Examine() calls. Exploring the
		device list and learning about how handlers are used 
		in the DOS world. 

	o Intuition - This is a little tougher mostly because you have to 
		figure out what all the structures signify. Reading the 
		Intuition Manual is a good help here although there is 
		probably a market for a book on Intuition. Understanding
		Menus, Gadgets, and IntuiMessages are the key, then
		you can build on your graphics knowledge to start building
		interactive applications.

	o Workbench - A short step on the road to wizardness, you learn 
		how to recognize you have started from the workbench and
		what to do about it. Next thing you know you will be 
		cursing other applications that don't have a workbench
		interface.

	o Libraries and Devices - Really one in the same, these are one
		of the key strengths of the Amiga. Learning how to build
		a shared library is difficult only because all of the 
		documentation is scattered wildly. Fortunately there are
		several examples the best being Jim Mackraz's ezlibrary
		and Matt Dillion simple library. 

	o Audio - Why is audio so late in the list ? Mainly because it
		has a very raw interface that one has to use to talk to
		it. As libraries get built on top of this things get much
		better. For now though, to use digitized sound you first
		have to know devices.

	o Interrupts and Servers - Once devices are mastered it is a
		short hop to Interrupt servers and handlers. Now you
		get into the real world response that multitasking on
		the Amiga does so well. Again the documentation is not
		as complete as it could have been but there are good
		examples in the Public domain from Matt Dillion and
		Jim Mackraz. 

	o Blitter and Copper - The holy grail of most Amiga Hackers these
		two chips can do things that the people who built them 
		won't believe. Programming them requires twisting your
		brain to mush but can yield fantastic results. They
		are well documented in the Hardware manual but programming
		them was a black art until Tom Rokicki's BlitLab program
		and Jim Mackraz's Copper Demos. 

So for ranking how about this proposal :
	0 - 1 Merit badges - Novice.
	2 - 3 Merit badges - Programmer.
	4 - 5 Merit badges - Developer.
	6 - 7 Merit badges - Expert.
	all 8 Merit Badget - Wizard.

We can probably specify "with <language> cluster" where language is 
one of <C, Assembly, BASIC, Modula-2, Fortran, Lisp, Forth, etc>

>* Any recommendations of books other than the A-W books?

	The developers conference notes. Available from CATS the 
Montery notes are available now, the Washington DC ones are available
soon. 

>* Do you use s/w dev tools like PowerWindows, InnovaTools, others?

No, I generally write my own toolkits that I am comfortable with and
stick with them.

>* Do you use BIX, or other BBS for s/w libraries?  Comments?

I like BIX, but as a moderator it is free for me. Lots of stuff in the
Amiga conferences (as much as usenet with fewer flames), but it is 
expensive. You also get a direct line to Commodore CATS in the amiga.dev
conference. That can make things like registering a FORM very easy. Other
vendors that are active on BIX are Lattice, ASDG, MicroBotics, and MicroSmiths.

>* Are there any tool kits for commonly used items (all categories)?

Rob Peck has an Audio Toolkit, Most of the other stuff is roll your own.

>* Did I forget anything?

No not really. Although by putting it down on paper I think I have the
basis for a merit badge system :-). <see above>


--Chuck McManis
uucp: {anywhere}!sun!cmcmanis   BIX: cmcmanis  ARPAnet: cmcmanis@sun.com
These opinions are my own and no one elses, but you knew that didn't you.

blgardne@esunix.UUCP (Blaine Gardner) (11/10/88)

From article <76613@sun.uucp>, by cmcmanis%pepper@Sun.COM (Chuck McManis):
> Amiga Merit Badge System (AMBS) [believe me, if I could think of
> an L word that would make them into LAMBS and thus another amiga/animal
> pun I'd add it].

Learners Amiga Merit Badge System

or

Learning the Amiga Merit Badge System ?

Poof!  LAMBS!
-- 
Blaine Gardner @ Evans & Sutherland    580 Arapeen Drive, SLC, Utah 84108
Here: utah-cs!esunix!blgardne   {ucbvax,allegra,decvax}!decwrl!esunix!blgardne
There: uunet!iconsys!caeco!pedro!worsel!blaine (under construction)
"Nobody will ever need more than 64K."    "Nobody needs multitasking on a PC."