1. Tutorials
In order to see what makes a good tutorial, let's look at what's already
available.
If you know of a really good tutorial (for whatever language), post a
link.
Irv
2. Re: Tutorials
irv mullins wrote:
>
>
> In order to see what makes a good tutorial, let's look at what's already
> available.
>
> If you know of a really good tutorial (for whatever language), post a
> link.
>
> Irv
>
When I was new to Pascal this tutorial was very helpful to me.
http://www.geocities.com/SiliconValley/Park/3230/
However, as I became a more experienced programmer, I started looking
for mini example programs that have been tutorialized. Like a
line-by-line account of an echo server, interprocess communication
or blitting an image in Allegro. Now that I'm passing Through what I
consider to be intermediate level programming, I tend to just look
for well commented source code.
As I transitioned between beginner to intermediate, what I found
most frustrating was the lack of good tutorials on programming
topics like :
How to create/design an application framework
How to organize multi-file projects
Creating and testing distribution packages
Writing good UI
So, what I think would be a good tutorial would be something like
this. Modify refman.htm sections 1,2,and 3 of Part 1 to include a
few more examples of working code where most programs would be about
20 lines of code. (Max 30 to 50 lines). Add some quiz-like questions
and ideas for programs they could write with their current skill
level. This could be the "Beginner Tutorial".
The next tutorial could be the "Beginner/Intermediate Tutorial". In
that tutorial, some interesting programs could be ripped right out of
the archives and described in detail. Here we could map whats going
on in the code back to part 2 of the refman.htm so that the student
starts developing the habit of looking there for Euphoria
understanding. Popular tasks that might be examined include:
String manipulation and parsing (maybe via an XML project)
XOR encryption
CGI
Using Sockets
Using/Wrapping dll/so
Introduction to GUI programming (Irv has a good tut on his web site
that could be used for this)
Finally, in an Intermediate/Advanced tutorial, someone could write
about project management. A case study would be of great assistance
here. One example case study could be a PIM/Calendar/E-mail client.
Preferably using GTK as that is the best cross-platform GUI lib
available for Euphoria. Or alternatively, it could be written as a
CGI/euSQL program with E-mail functions. Finally this tutorial
could conclude with an introduction to writing an small interpreter.
Ron_W
3. Re: Tutorials
Basic HTML is the only programming language I ever learned without
much difficulty. No offense, Rob, but if Euphoria had the simplicity
of HTML instead of BASIC, we'd have a lot less newbies saying they
don't understand it. Of course, it would probably be less powerful
& have fewer options, so why try to fix a working tool?
http://www.tutorialfind.com/tutorials/webdevelopment/html/
This page has quite a few decent tutorials. They also have info on
Flash and JavaScript options.
This one offers 3 day crash course to teach you most of what you
need to know.
http://www.webthang.co.uk/tuts/tuts_html/ghtml1/ghtml1_1.asp
This one teaches the basics in 9 steps.
http://www.clickfire.com/viewpoints/tutorials/html/basic.php
Hope these help.
4. Re: Tutorials
david <studmeow at hotmail.com> wrote:
> Basic HTML is the only programming language I ever learned without
> much difficulty. No offense, Rob, but if Euphoria had the simplicity
> of HTML instead of BASIC, we'd have a lot less newbies saying they
> don't understand it.
<snip>
This is comparing apples to oranges, because HTML is not a programming
language, but a language for describing documents.
HTH, Juergen
PS: When you reply to a post, please quote the text that
you are referring to. For details e.g. see here:
http://www.netmeister.org/news/learn2quote.html
5. Re: Tutorials
david wrote:
>
> Basic HTML is the only programming language
Hmmm... HTML stands for Hyper Text Markup Language. Its not a programming
language.
> I ever learned without much difficulty.
That's good. You should have a go at its forebear SGML. Now that's a
markup language that gets your head spinning. It's language for defining
markup languages! XML is a subset of SGML, and HTML will eventually
evolve into a form of XML, or at least will be able to be described by XML.
>No offense, Rob, but if Euphoria had the simplicity
> of HTML instead of BASIC,
Simplier than BASIC? That's hard to do. Maybe Logo, LISP, Forth, ...?
> we'd have a lot less newbies saying they
> don't understand it.
I don't recall any newbie saying that they don't understand Euphoria.
I vaguely remember someone saying that they were having trouble with the
'programming' concept. And some others that attempted Euphoria but
went away, seemed to understand Euphoria, but it just didn't meet
their needs or expectations.
The main issue of misunderstanding that Lobelia had seemed to have was
with the operating system environment. She was used to just clicking on a
Windows icon and expecting to see a user-friendly environment in which
she could work. RDS's Euphoria, as with all command-line intepreters
and compilers, requires one to understand a bit about how the DOS/Unix
command processor and underlying operating system works.
--
Derek Parnell
Melbourne, Australia
6. Re: Tutorials
Source - http://www.listfilter.com/EUforum/m4883.html
'Hmmm... HTML stands for Hyper Text Markup Language. Its not a programming
language.'
Semantics...
'Simplier than BASIC? That's hard to do. Maybe Logo, LISP, Forth, ...?'
Matter of opinion...
'I don't recall any newbie saying that they don't understand Euphoria.
I vaguely remember someone saying that they were having trouble with the
'programming' concept.'
First, let me clairify my position regarding my view when trying to learn
Euphoria. If you have a programming language with its own web site & an
archive with @ 1200 programs, & a message board where thousands of people
are exchanging ideas & communicating with mutual understanding about the
code, then the problem is definitely not with the language. Nor with the
documentation, because apparently most of the people who have read them
understand enough to have progressed this far. The problem is either
laziness by itself, in which case they don't deserve any help, or by
prolonged exposure to Windoze, in which case they need to learn or relearn
command line operations. Or there may be a legitimate problem, like
dyslexia or mild schizophrenia, when the student may be intelligent enough
to understand the information, but processing it is another matter.
7. Tutorials
While Nate complainted about David Gay's Tutorial, I want to mention, the
tutorial for me was perfect, small and complet. Offcourse I wasnt an
absolute beginner, but are there tutorials for absolute beginners ? You need
to learn some bases by trail-and-error. "Just press a button and see what it
does" - type of attitude is usually considered bad, however trust me, that
with nowadays systems an absolute beginner can not harm the PC, because they
lack the knowledge.
Nate, I say, your friend needs a little bit *experience* .. and during such
an experience with programming (you could be sitting next to him, giving him
hints) he will be making a number of conclusions rapidly. Like to begin
with: "a program is a list of commands, read from top to bottom." ... is not
true for every language, but for Euphoria it is.
If are interested enough in programming and have some time, you learn it
yourself.
You cant learn everything from books, you have to learn to analyze the
proces of what is happening when you do something. Books never write about
that. And they shouldnt, it would be like putting the answers of some
exercizes just above the exersize question itself.
Nate, you will prolly still give it a go, but you really really cant make a
tutorial for the first experience with programming and the pc in general.
Only direct a few crucial points so they can get on, and not get stuck in
something they cant understand or know yet.
Ralf N
nieuwen at xs4all.nl
UIN: 9389920