1. RE: Book outline

This looks pretty good to me.

If no one more competent volunteers, I'm willing to do a section or 
several.

new topic     » topic index » view message » categorize

2. RE: Book outline

Hi Mike,

I have started writing a book already and am intending to keep to
the very basics.  ie. someone that has never programmed before
should be able to read it.

I am steering away from third party libraries and am concentrating
on basic logic using only generic commands.

* The first chapter introduces the basic concepts of what is a 
language, what is a program, errors, development process etc 

* Next will be installing Euphoria, edit program, run program,
debug.

* basic variables and their uses (numbers are characters, 
strings are a sequence of numbers etc.  Here i will introduce 
basic input/output to demonstrate variable usage.

* basic program flow: if then, while, etc

* functions / procedures

 ... the rest is on my other computer which I'm not going to turn
on because i'm just off to bed.

I'd also like to "somehow" mention top down and bottom up methodolgies

The book I'm writing is not about "how to program in euphoria" ...
but how to program (and we just happen to be using Euphoria as the
language) ... if that makes sense.

My working title is:

"An Introduction to Computer Programming with Euphoria"

very original hey!

I'm hopig to have the first couple of chapters finished in about a 
week so I can post it and get some feedback.
I expect it's probably about 4-6 month part time project.

I've spent the last couple of days getting Latex working which will
allow me to produce postscript, pdf, and html versions from the
one source.

I've pretty much got the first half of the book organised and haven't
thought much past that.

anyway I better get off to bed before the sun comes up

Ray Smith



Sabal.Mike at notations.com wrote:



> Based on my experience learning and teaching programming, I propose the
> following outline for the introduction to Euphoria programming book
> whatever form it may take (print, HTML, PDF, etc.).
> 
> i. Foreward & Credits
> I. Introduction & installation
> II. Hello, Hello, Hello
>    A. puts
>    B. for loops
>    C. explanation of literal strings and variables (as used in puts and
> for)
>    D. Exercises
> III. Numbers up
>    A. constants
>    B. atoms
>    C. simple expressions
>    D. print and printf
>    E. using sprintf with & (concat) and puts
>    F. printing to a file (open / close)
>    G. Exercises
> IV. Need input....
>    A. sequences and includes
>    B. gets with puts and & (concat)
>    C. while, getc, and wait_key
>    D. object types and get
>    E. Exercises
> V. Ifs, ands, and ors
>    A. simple if
>    B. building cases with elsif
>    C. A simple menu using getc, if/elsif, and find
>    D. The guess-a-number game
>    E. Exercises
> VI. Getting fancy
>    A. Functions & procedures
>    B. Using text_color and position
>    C. Making sounds (mention sfx2.e & other DOS/Linux sound libraries)
>    D. File commands (chdir, rename, etc.)
>    E. A more complex (i.e., colorized / formatted) menu
>    F. Exercises
> Unit review: Text-based battleship game (expanding on sequences and
> indexing).
> VII. Paint me a smile (graphics.e for DOS, euengine for Linux)
>    A. Using the mouse (mention gpm for Linux)
>    B. Graphics modes and metrics
>    C. Designing a font and using the existing DOS font libraries
>    D. A simple paint program
>    E. Exercises
> VIII. A spritely step
>    A. Differences between BMP, GIF, and JPEG files
>    B. Saving and loading bitmaps (mention libraries for other file
> types)
>    C. Displaying and moving bitmaps
>    D. The concept of double-buffering
>    E. Resizing techniques (based on the recent mailing list thread)
>    F. Exercises
> IX. Other DOS-based graphics libraries
> [I'm not an expert on these, so you all will have to fill in this
> chapter]
> Unit review: A shoot-the-aliens type game
> X. Winding your way into Windows
>    A. Win32Lib (mention other libs, but this book will use Win32Lib)
>    B. Creating windows
>    C. Creating menus & menuitems
>    D. Creating pushbuttons
>    E. event handlers: onClick, onMenu -- introducing routine_id
>    F. Exercises
> XI. A little dialog
>    A. Creating sub-windows, explain the difference between Modal and
> Normal windows
>    B. Labels
>    C. EditText
>    D. MleText
>    E. getText and setText
>    F. Dropdownlists and Combo boxes
>    G. onOpen, onClose, and onChange
>    H. setEnable, setVisible
>    I. Exercises
> XII. Ah, input!
>    A. introducing database.e (and associated libraries)
>    B. db_open, db_create
>    C. tables: opening and creating
>    D. Adding, deleting, and updating records & keys
>    E. Switching between tables and finding records
>    F. Exercises
> Unit review: Making a Windows-based address book
> Appendices of terms, other resources, libraries, commands, etc.
> 
> I post this primarily for discussion purposes, but if the ultimate
> author of said book wishes to follow this outline, modified or intact, I
> wish you the best.
> 
> Michael J. Sabal
> 
> 



Ray Smith
http://www.geocities.com/ray_223

new topic     » goto parent     » topic index » view message » categorize

3. RE: Book outline

This seems to be a very useful outline.

You seem to start out by getting the user up-and-running with a program 
immediately; a lot of books save all I/O references for later. Having 
the first chapter go over the installation sounds good (although it 
almost begs for Euphoria to be immediately available... possibly as a 
pack-in disk if the book is printed?)

I like the idea of lumping together a single look at numbers, whether 
literal, constants, or in expressions. I'm surprised you didn't follow 
it up with a single unit/chapter on sequences. That would seem the 
logical progression.

I also like the idea of including exercises; I think a textbook-ish feel 
would work well for a Euphoria book. My only concern would be whether or 
not "serious" users would be put off by them, so I'd certainly keep them 
short, few in number, and unobtrusive. I'd also stay away from unit 
reviews. As a teacher, I tend to pay such sections mind only when I see 
the need (otherwise reviewing, say, unit 1 and half of unit 2 with the 
class if that's where they're at.) As a reader, I usually find the 
forced breaks (more intrusive than exercises) somewhat annoying.

There seems to be an emphasis in graphics with the DOS stuff (and 
something of a gaming emphasis at that.) This makes the book seem more 
suited for the intermediate than the beginner (which may be what you 
want. If not, I wouldn't take it that far.)

Mentioning third-party libraries doesn't seem necessary, with the sole 
exception of Windows IDEs. Kind of like an introductory C book 
mentioning a few specific graphics libraries. That also begs the 
question, is your view of the book geared more toward DOS or Windows? 
I'm not sure mixing the two would be a good idea. In fact, it seems to 
make the book bigger than it should be.


Rod Jackson

new topic     » goto parent     » topic index » view message » categorize

4. RE: Book outline

I wasn't going to reply just yet; but this is supposed to be about
discussion blink.

> This seems to be a very useful outline.
Thank you.

>...(although it 
>almost begs for Euphoria to be immediately available... possibly as a

>pack-in disk if the book is printed?)
Either that, if in printed form; or with hyperlinks if in HTML or PDF
format.

> I'm surprised you didn't follow it up with a single unit/chapter on
sequences.
True.  Lists / arrays / sequences are a pretty advanced topic.  It
would probably make a nice fit in the numbers chapter, with a grade or
price averaging routine as an example use.

> My only concern [about exercises] would be whether or 
> not "serious" users would be put off by them, so I'd certainly keep
them 
> short, few in number, and unobtrusive. I'd also stay away from unit 
> reviews.
Assuming we're focusing on a newbie of average intelligence, the
exercises would be one or two tasks that would allow the reader to make
the examples their own.  I was thinking 2 or 3 at the end of each
chapter, limited to half a page.  The unit reviews would be an
opportunity to answer the frequently asked question, "What kind of
projects can I do?"  Guided creativity often spawns full creativity.  As
to the location of these activities, an editor would probably relegate
them to an appendix at the back of the book.  There if you want them,
out of the way if you don't.

> There seems to be an emphasis in graphics with the DOS stuff (and 
> something of a gaming emphasis at that.)
Based on the mailing list discussions, it seems that there are 4
general areas most people program in Euphoria for: business (database)
apps, games, quick & dirty data crunching, and library development. 
Euphoria is such an easy language to use, there is no reason why any
newbie of average intelligence can't quickly start writing programs in
the first three areas.  

> Mentioning third-party libraries doesn't seem necessary, with the
sole 
> exception of Windows IDEs. ...is your view of the book geared more
toward DOS or > Windows? 
I personally couldn't imagine playing .WAV files in DOS without sfx.e,
using graphics in Linux without euengine.eu, or writing Windows programs
without Win32Lib.  The libraries I mentioned were all written because
some skilled programmers asked, "Why should I need 1000 lines of code to
do what an include file and 2 procedures calls could accomplish?"  My
outline was written from the point of view of the user trying to meet a
specific programming goal, with the minimum initial programming
experience (none), in the shortest time possible.

> Rod Jackson
Michael J. Sabal

Disclaimer: These are the opinions of the author alone, and may change
without notice blink.

new topic     » goto parent     » topic index » view message » categorize

5. RE: Book outline

On 15 Feb 2002, at 15:25, Sabal.Mike at notations.com wrote:

> Based on the mailing list discussions, it seems that there are 4
> general areas most people program in Euphoria for: business (database)
> apps, games, quick & dirty data crunching, and library development. 

Ok, show of hands on everyone who bought Eu so they could write libs for it!

Kat

new topic     » goto parent     » topic index » view message » categorize

Search



Quick Links

User menu

Not signed in.

Misc Menu