Working on a new Propeller Book
Nick McClick
Posts: 1,003
The current Propeller books are all well written and useful, but I've always wished there was something short, simple and cheap, like 'Getting Started with Arduino' for the Prop.
So, about a month ago, I thought it was time for a 'Getting Started With the Propeller' book - I solicited OBC's help and got started. The book includes revised & updated content from the Gadget Gangster online tutorials: Step-by-step lessons and two learning projects for games and audio. It also includes bonus projects like broadcasting and ethernet, and an exclusive chapter on the Propeller's architecture and Spin. There's still more proofing and editing to complete, but it should be wrapped up and available next week for Kindle & Nook for $2.99.
I thought it would be fun to share the 1st chapter and introduction before the book is released - download it using the links below and let me know what you think!
epub (Nook, epub readers)
mobi (Kindle, mobireader)
pdf (Everything else)
So, about a month ago, I thought it was time for a 'Getting Started With the Propeller' book - I solicited OBC's help and got started. The book includes revised & updated content from the Gadget Gangster online tutorials: Step-by-step lessons and two learning projects for games and audio. It also includes bonus projects like broadcasting and ethernet, and an exclusive chapter on the Propeller's architecture and Spin. There's still more proofing and editing to complete, but it should be wrapped up and available next week for Kindle & Nook for $2.99.
I thought it would be fun to share the 1st chapter and introduction before the book is released - download it using the links below and let me know what you think!
epub (Nook, epub readers)
mobi (Kindle, mobireader)
pdf (Everything else)
Comments
Ask questions. As you read, ask,
The funny PDF characters are because the ebook uses open quotes and closed quotes, and it doesn't convert to the pdf correctly. I thought I fixed them all for the pdf preview, but I must have missed a few.
I think that this book will be a very good thing for people coming to the propeller. Though you did not mention the price for a hard copy version. If you do not have a publisher may I recommend Lulu.
I read the PDF-preview. My comment:
short down the initial part to just a bit more than:
"in 1972 the video-game pong engaged an engineer for 4 months to develop it The PCB contained more than 80 logic-chips."
the first computational machine released in 1964 was as big as a refrigerator and costs $140.000.
4 or 5 sentences about sophistcated dev-tools....,
4 or 5 sentences about Arduino.....
end of quoting mcu-history.
to re-use a message from the pre-view "I don't want to read a lot about computer-history or how complicated other MCUs are"
I just want to get started!
One sentence about setting up the propeller-dev tool.
Start FTDI-Driver-Setup then start PropTool-Setup and you are done to start programming. No complex preparation of a big development-tool or a compiler-tool-chain
Don't emphasise on multitasking as this could make newbees afraid of using it "Multi-tasking Oh my god I have to think about 3 to 8 things at the same time!"
Explain the simplicity. If you need an extra sensor, write the sensor's own code aquiring f.e. a temperature-data. Dedicate a core to do this job (just like engaging another butler just to watch a thermometer)
serving the temperature-data on a silver-tablet for all other parts of your program. So that it can be used as easy as calling the butler asking him "what temperature?" making him answer immediatly
The initial examples should include examples that are realisable with nothing more than any board. I mean you don't need a TV or VGA-monitor, LCD, an SD-card.
Just a Prop-Chip, EEPROM, chrystal, USB-connection to PC. This means these examples have to use the serial-connection and PST.EXE.
Next step using 2 to 5 LEDs. Then using a capacitor and a resistor creating audio for head-phones.(with a circuit that might limit the volume and protects teh prop-IO-pin against overcurrent/overvoltage
This puts down the hurdle of getting started as low as possible.
This leads me to a conceptual idea: Who do you want to reach with the book?
There are users that have already experience in programming in general and/or electronics and there are users who don't have any experience at all.
To encourage the (potential) users with no experience at all the introduction should use pictures from their all day experience to understand the
basic concepts. (like the bulter watching the themometer)
This will avoid thinking afraid like "Oh my god what is an interrupt??! or multi-tasking??! "
To encourage such users add - right in the introduction - a small program that f.e. shows a knight-rider-light using two constants
one for "moving speed" one for "after-glowing"
Saying "It's almost as easy as turning the knob "volume" on your stereo.
and show how easy it is to change the values re-compile it and make it move faster/slower with more or less "after-glowing".
Or may be the game pong with a constant-section
"ballspeed", "length of "hit-stick" and "width of goal". Showing how easy pre-coded pieces of programs can be adjusted to start learning programming
(by the way @Hanno: Hanno should include a chapter about 12blocks.
just brainstorming: the getting started section of the ViewPort-manual should include a tutorial
that shows mouse-click for mouse-click screenshot for screenshot how to setup ViewPort to have a knob "speed"
and as most users don't have 16 LEDs handy how to setup ViewPort showing the IO-Pins of the prop and how they perform the knight-rider-light.
And ! (cool idea) maybe you could even add a visualisation of PWM-signals through color-intensity or color-changing in the graphical representation of the IO-Pin combined with % duty-cycle as a number!)
OK I stop brainstorming here as I have to do other things too.
best regards
Stefan
The trouble with books like this is deciding if you should start with info
like basic computer concepts and math or assume the readers already
know all that. It takes a lot of extra pages to start at the actual beginning of
things.
I keep jotting stuff down in a notebook I always have in my purse...it's
my hope to publish a book geared to absolute beginners trying to use
the AVR uCs. I'd love to make it mostly about asm but have decided I
should concentrate instead on using the free WinAVR GCC compiler
and only put in a small amount of asm instruction when I reach the point
where I try to describe methods to speed up interrupt code.
I suppose when I finally get it done I will publish it as a free PDF and also
find someone that will make a hardcopy for minimal cost if anyone wants
one. I'd prefer someone that could print it up as one of those books with the
spiral bindings that fold flat so wonderfully on a tabletop.
I dabbled for a short time with a blog about AVR asm coding but got interrupted
for several months and just did not continue with it. (those darn interrupts will mess
things up every time :-) Presently I'm not even working at my programming craft,
I mostly am stuck in conference rooms with boring duties to perform.
I'm a good proofreader with a sharp eye for spelling and other defects so if you
ever want me to look over some of the material I would do that :-)
If I ever finish this AVR PDF maybe I could think about doing something for PASM
beginners....there is a shameful lack of materials available. I wonder if anyone is
working on a PASM book? I hope so as I think it would turn out to be a lot of work
and I'm just so lazy.
One cool thing about writing a technical book is you learn so much in the process!
In looking up details online for my AVR tutorial I have discovered lots of new tricks.
Good work as usual from the gadget gangster folks, let us know when it is out; I'll buy a kindle copy.
@david - initially it will just be an ebook, that way I can gauge interest before doing a print run. I can also revise the book easily and I can offer the book for a few bucks.
@holly - Where to start was a significant question - I chose a halfway approach, enough introduction to set the stage, but I'm not reviewing the flow of electricity or what a byte is. I used the Arduino book as a template, it has sold quite well and the reviews are positive. My favorite thing about doing the tutorials is how much I learn writing them! You have to understand how something works before you can explain it.
@Doc - The book won't be available as a pdf, I just generated a pdf as a bit of a hack. It looks odd on a big pdf page, but works well on a smaller kindle screen. For me, formatting of technical books is a big deal, and formatting that works well in print don't work for ebooks.
It's still going through editing, but almost done!
I managed pretty much without it and completed a couple of simple RF and data logging projects before leaving the scene and getting involved in other hobbies.
I'd heard about the prop and eventually got one and became interested again and after duplicating my old projects( on the prop) I bought the Harpit book and it had a pleasantly better balance for a beginner. Was worth the $$.
@Holly, sounds very generous you writing for nothing. I havent even looked into asm/pasm for prop. Wouldnt know where to start but Im still just on the spin learning curve with all its wonderful operators I know your talking about AVR.
Another method I have used and liked a lot to learn for both 3D apps and also programming are videos of screen recordings. There are many commercial and free screen recorders.
They can have a fun classroom feel if you can talk and type ! Or I guess add voice later.
You could move along pretty quick as there is always the pause/rewind buttons This could be a fun way for beginner prop programming lessons ?
just 2 bits worth.
ps. my ignorance but I have been confused by threads about complaints of prop to prop communication lacking documentation. When I used simple serial commands to make picaxe share data. I suppose my methods could probably be seen as like alexander g Bell style and others are more analogous to optic fibre
I skimmed through the pdf file.
The text and content are ok, but I think it's still a bit daunting for the first thing people will read. There's a lot of kind of negative "it's really hard and complicated" stuff that you read through before you get to the prop or projects. For instance, you show a picture of surface mounting but don't show a breadboard. For some of your readers. 0.1" vs. 0.0025" is not going to mean much.
There's a lot of stuff that won't mean anything to people who aren't already into this stuff (fuses and encryption, for example). The list of TI processors seems a bit out of place, too.
I think the comparison of stamp vs. picaxe vs. arduino should probably be an appendix rather than part of the introduction.
Instead of giving all the history, I'd consider jumping right in and discussing projects. Rather than telling people how hard things can be, get them excited about what they can do.
I think there is a need for a book like you are doing - the Arduino book and similar Processing book are good models as far as the concept goes.
Per Stefan's suggestion, let me know if you want me to contribute material to the book.
You could reuse material from
http://12blocks.com/tutorial.pdf
or
http://12blocks.com/cheatsheet.pdf
yes I would have to second that. I have always like the "Instructables" approach - here is a cool project, and here are the 10 steps so you too can build one. Step 1 - buy this board or breadboard these components. Step 2, download this free software. Maybe leap right in with a photo of one of the propeller boards (C3, spinneret etc) rather than an old pong board?
Don't leave the history out though. Maybe just move it to a chapter a little way into the book rather than right at the beginning?
@Drac - The Step 1, Step 2 stuff is the next chapter, it includes installation instructions for mac / linux / windows, the power supply you'll need, what development boards are out there, etc. But it sounds like I need to get there faster with a shorter introduction.
@Hanno - A 12Blocks chapter might make sense, let me go through what you already have and see how it fits.
You are getting great feedback on your sample chapter!
I'm looking forward to some excited, new Propeller users as a result of the material.
Sorry, forum guys, this book really wasn't produced for you. (Although, you are welcome to it!)
My material focuses on getting folks quickly up-to-speed enjoying the product without being initially bogged down in the spin technospeak, so take good care of my newbies gang. Be kind.. (I know you will.)
oBC
The PDF looks fine as well, not as clean as the epub format (well, duh, it's an ereader) and I saw the quotation formatting flaws previously mentioned. You may want to look into a paid version of a PDF creator so you can modify the properties text though. (see last pic)
Looking forward to checking it out and I would be glad to be the "epub format guinea pig" for you guys.