[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[amibroker] Re: The best way to help newbies, oldies, ... and AmiBroker ...



PureBytes Links

Trading Reference Links

> But there is quite a long way from the idea to actually making it 
>happen, and there are very very few who actually make it happen. 

One of the big lessons I learnt from the UKB is that there is a world 
of difference between a good idea and then making it work and then 
another big gap to maintaining it..... software always has hidden 
gliches and ongoing upgrades etc to hurdle.

It is not so easy and the reason why I still think it is a good 
effort all around, including AB's contribution.

If you ever need to close it/change it, in the overall interest, it 
is not a problem to me.

I am thinking about getting some more done there ... at least clean 
up a bit.

brian_z

--- In amibroker@xxxxxxxxxxxxxxx, "Tomasz Janeczko" <groups@xxx> 
wrote:
>
> Dennis,
> 
> Some misunderstanding .My response was not meant to discourage 
efforts to add content to UKB. 
> If it sounded like that, it wasn't my intention.  Having spent 13 
years of my life on AB development *and* writing the docs
> *and* doing support, it is not surprising and pretty normal when 
one thinks of that, that I tend to defend "my way"
> of doing things, simply because it worked. 
> 
> This does not really mean that other people ideas are not good -  
they are often very good.
> But there is quite a long way from the idea to actually making it 
happen, and there are very very few who actually make it happen. 
> 
> Kudos to all UKB authors who contributed content, especially Herman 
who contributed the most.
> 
> Best regards,
> Tomasz Janeczko
> amibroker.com
>   ----- Original Message ----- 
>   From: Dennis Brown 
>   To: amibroker@xxxxxxxxxxxxxxx 
>   Sent: Friday, August 29, 2008 3:23 AM
>   Subject: Re: [amibroker] Re: The best way to help newbies, 
oldies, ... and AmiBroker ...
> 
> 
>   Hello Tomasz,
> 
> 
>   I am surprised by your response.  I thought you would be 
supportive of efforts to provide more useful UKB content.  This 
proposal is right in line with the goals of the UKB --which has 
suffered from not enough contributers.
> 
> 
>   More below...
> 
> 
> 
>   On Aug 28, 2008, at 6:31 PM, Tomasz Janeczko wrote:
> 
> 
>     Hello,
> 
>     You guys seem to go to the extreme with saying that AFL is 
cryptic.
>     It is not.
>     Take a look at Stocks&Commodities Traders' Tips and compare
>     AmiBroker codes with codes of any other  product, and you will 
quickly find
>     out that AFL is almost everytime the shortest and easiest.
> 
>     Lots of examples here:
>     http://www.traders.com/Documentation/FEEDbk_docs/backissues.html
> 
> 
> 
>   You are making my point and I stand by my statement that AFL is 
cryptic and concise, because it is.  This is not a criticism of AFL.  
The smaller the code solution, the more concise the language.  The 
less it looks like English or some other natural language, the more 
cryptic it is.  C++ is cryptic.
> 
> 
>   However, AFL is not the most cryptic or concise language I have 
used.  APL is.  It has very concise mathematical descriptions of 
matrix operations and is very cryptic.  With APL a friend of mine in 
college wrote a checkers like board game that would play against you 
and learn from its mistakes.   I believe the entire program was 8 
lines, with 3 lines doing the logic and 5 lines was the IO.  It was 
40 years ago so I may be off by a line or two.  The biggest problem 
with APL is that you could write a wonderful program in a very few 
lines, then a week later, you could not figure out what you wrote if 
you wanted to change anything.  It was just easier to start over 
again than to figure it out.
> 
> 
>   At the other extreme, I have used Revolution a lot.  The language 
is so much like English that you can usually figure out how the 
program works without any documentation.  It reads like the pseudo-
code that would be used to define the program flow that the 
programmer would work from.
> 
> 
>     If somebody thinks that writing a "phrase book" is the solution 
to "newbie" questions problem,
>     he/she is  dreaming.
> 
>     No matter how good docs you will write you will ALWAYS have 
newbie questions.
> 
>     There are dozens kinds of "newbies". From people who don't know 
where to
>     right click to bring context menu to people who just want to 
write their first own  DLL.
>     The scope is from "can I use for <CountryHere> market?" to
>     "Why my managed C# code throws exception here ..."
> 
>     The scope of user problems is simply to large to fit 50,000 
pages book.
> 
> 
>   You are right.  There are many types of newbie questions.  I was 
only addressing the ones that slow down the learning and use of AFL 
and are asked many times.  The ones I wish I had the answers to when 
I was starting out, organized in a way that would speed my learning.
> 
> 
>     With growing number of docs, it is not easier to find exact 
info, but harder.
> 
>     Classic example is Google. There is 100000 hits for each and 
every search.
>     Unexperienced user who does not know exactly what he/she is 
looking for will
>     be lost with the result list.
> 
> 
>   This is also the point.  Gathering certain types of information 
in the same place so that searching and sorting through too much is 
not needed.  Having a dozen examples of how to do different types of 
plots in one place makes it likely that I can find something close to 
a solution for my problem quickly --as long as I know I have a plot 
problem to solve and the UKB offers a section on plotting. 
> 
> 
>      In the past, when there was no so many code examples 
available, surprisingly there were less questions.
> 
> 
>   I can think of a speculative reason for this.  With few examples, 
people might not have ventured to learn much and chose to stay 
ignorant, so had few questions.  AFL was not being used to its 
potential by most.
> 
> 
>      > You and other posters are asking for an English to AFL 
phrase book.  
> 
>     I was always saying - learn by doing. And there great, but 
often overlooked tool to learn by doing.
>     The tool is
>     AFL Code Wizard
>     (available from AmiBroker Analysis menu).
>     Using simple few clicks you can transform plain English 
sentence to AFL code.
>     http://www.amibroker.com/video/AmiWiz.html
> 
> 
>   I have played with it and I would expect new users to take 
advantage of this to help them get started with some basic system 
formulas and to learn how AFL translates from English for a few 
things.  For those who are using Amibroker in its simplest way, this 
is an excellent tool and it may be all some need.  It certainly adds 
more flexibility than not being able to program at all.  
> 
> 
>   I do not used it because it came along after I had learned the 
simple things and moved to harder problems to solve.  For my system, 
the Code Wizard could not generate 0.1% of the code I have written.  
I am a little too unconventional in my approaches.
> 
> 
>      There is no substitute to learning things step-by-step by 
doing them. It is called practice.
> 
> 
>   This is true and I do this and try to encourage others to do this 
also.  Having an example of a code snippet that is close is a good 
way to learn by taking it and changing it to see what happens.  
Experimentation is wonderful for learning.  However, you may not 
realize all the possible approaches without examples.
> 
> 
>   So now that I have gone through your points, I still don't see 
why you would discourage more involvement in generating useful 
examples for the UKB.  Do you have some other plan that you are think 
of that would get rid of the UKB?
> 
> 
>   Best regards,
>   Dennis
> 
> 
>     Best regards,
>     Tomasz Janeczko
>     amibroker.com
>       ----- Original Message -----
>       From: Dennis Brown
>       To: amibroker@xxxxxxxxxxxxxxx
>       Sent: Thursday, August 28, 2008 10:39 PM
>       Subject: Re: [amibroker] Re: The best way to help newbies, 
oldies, ... and AmiBroker ...
> 
> 
>       Ron, and other posters to this thread,
> 
> 
>       This is a good example of where some of the problems in 
understanding come from.  AFL is cryptic and concise.  It takes a 
good long while to make the connection between a natural language 
expression of the desired result and the AFL to say the same thing.  
I had ask for an AFL to English dictionary.  You and other posters 
are asking for an English to AFL phrase book.  I really like that 
idea.  There are a large number of one liners that are very useful 
and are great at teaching how things work in AFL.  How many times 
have I seen a question for "How do I plot a vertical line at x?"  
or "How do I change the background color by bar to indicate some 
indicator condition?".  Almost the kind of thing that could make up 
an AFL FAQ section.  This seems like one of the things the UKB was 
created to handle.  However, each item is too small to warrant a 
whole UKB article in itself.  The TOC structure is not set up for 
that IMO.  However, having a dozen one liners about plotting, etc., 
in one subject would be very helpful.   Just the fact that a number 
of question would be answered under one general heading makes it more 
likely that a new user would find the answer to the thing he wanted 
quickly.
> 
> 
>       I am hearing so many good ideas on this and similar threads 
in the last couple of days from new and old hands.
> 
> 
>       I am a great fan of "Cheat Sheets".  Condensation of all key 
points to a subject on one page.  There are many areas of AFL that 
could fit into this model.
> 
> 
>       Of course the problem with the UKB is that each article has 
to have an owner who is responsible to input and update its content.  
There are also some barriers to becoming a UKB author.  Not big ones, 
but just big enough to keep busy people from crossing over.  One 
suggestion was made to have AB support help out with that so there 
would be an easy as email way to make a contribution for these 
snippets.  Support already has offered to post articles for authors, 
but I think it is still a barrier to have to write a "complete" 
article to post anything.  Adding to an article that is already 
structured with a small think like people post hers would not be so 
daunting.
> 
> 
>       I think it is a great idea to have a topic related AFL phrase 
book.  Of course it would also be appropriate for any UKB author to 
put up his hand and say he will sign up to maintain a particular 
topic UKB entry for the phrase book.
> 
> 
>       Perhaps if a few of us could take a topic and get the ball 
rolling, others would join in.  The idea is that instead of writing a 
UKB article, you just email a snippet to the responsible person to 
add it to the article.
> 
> 
>       This list itself could be used to vet things first to reduce 
the editing of completed articles.  That way someone would not have 
to be an expert to maintain one topic.
> 
> 
>       If several people like this basic idea, the we could expand 
the concept and create an outline for the subjects.  
> 
> 
>       Should we start organizing the topics for a phrase book?
> 
> 
>       It is one thing to complain, another to suggest improvements, 
and still another to be willing to contribute to the suggestions.
> 
> 
>       What do people think of this idea, and contributing to it?
> 
> 
>       Best regards,
>       Dennis
> 
> 
> 
> 
>       On Aug 28, 2008, at 3:13 PM, <professor@xxx> <professor@xxx> 
wrote:
> 
> 
>         Ron,
> 
>         The examples that you used were perfect. Even I could 
understand how they worked and learn how to do things that I wanted 
to do but didn't know how to do it. I spent a lot of time using 
barssince and ref  trying accomplish this.
> 
>         Thanks,
>         Tom
>           ----- Original Message -----
>           From: Ronald Davis
>           To: amibroker@xxxxxxxxxxxxxxx
>           Sent: Thursday, August 28, 2008 11:36 AM
>           Subject: Re: [amibroker] Re: The best way to help 
newbies, oldies, ... and AmiBroker ...
> 
> 
>           In the very early days of my Amibroker learning curve, 
The best help that I 
>           received was from this board when an experienced user was 
kind enough to 
>           quickly code an example or what I was asking.
> 
>           Then, I would play with what they had given me, and I 
started to understand 
>           how to use Amibroker.
> 
>           For example, REF(c>ref(c,2),5); says that the close that 
happened five days 
>           ago has to be higher than the close that happened on the 
sixth day ago.
> 
>           Whereas, SUM(c>ref(c,2),5); only requires that any one or 
more of the 
>           closes over the last five days has to be higher than the 
previous days 
>           close.
> 
>           The above examples of simple english explanations from 
this board are how I 
>           started learning Amibroker. Ron D
> 
>           ----- Original Message ----- 
>           From: "Ken Close" <ken45140@xxx>
>           To: <amibroker@xxxxxxxxxxxxxxx>
>           Sent: Thursday, August 28, 2008 12:15 PM
>           Subject: RE: [amibroker] Re: The best way to help 
newbies, oldies, ... and 
>           AmiBroker ...
> 
>           > Amen. Amen! AMEN!
>           >
>           > While Tomasz has done so much to improve and expand the 
training/manual
>           > since the early days (he really has!), the fact there 
is continual 
>           > questions
>           > on the same stuff or "small stuff", suggests there is 
still room for and
>           > benefit from improvement.
>           >
>           > I am constantly reminded (or remind myself) that Tomasz 
has to say "Read 
>           > the
>           > Manual". Some questions are almost obvious that a quick 
trip to help 
>           > would
>           > answer the question, but other "simple" questions are 
not. Many of us do
>           > attempt to find the answers in help but cannot.
>           >
>           > For example, yesterday, I wanted to know how to make 
subscripted arrays. 
>           > I
>           > did not remember that VarGet and VarSet was set up to 
do this. So a trip 
>           > to
>           > Help and typing in "subscripted arrays" found 9 entries 
none of which led 
>           > me
>           > to VarSet or VarGet. I think one of the improvements 
would be a search
>           > system which allowed more complex search logic or 
strings, or some way to
>           > zero in on the specific request. As Tomasz says, it is 
almost always in
>           > there, it just is hard to find.
>           >
>           > Ken
>           >
>           >
>           >
>           > -----Original Message-----
>           > From: amibroker@xxxxxxxxxxxxxxx 
[mailto:amibroker@xxxxxxxxxxxxxxx] On 
>           > Behalf
>           > Of Dennis Brown
>           > Sent: Thursday, August 28, 2008 11:58 AM
>           > To: amibroker@xxxxxxxxxxxxxxx
>           > Subject: Re: [amibroker] Re: The best way to help 
newbies, oldies, ... and
>           > AmiBroker ...
>           >
>           > Brian,
>           >
>           > You are correct. I switched to AB because I wanted a 
programming language
>           > that was fundamentally tied into the realtime price 
arrays and the 
>           > charting
>           > for the same. RT quotes --> Database --> AFL -->
>           > Charts. That was all I wanted, and that is pretty much 
all I use.
>           > There is a lot of overhead associated with getting and 
maintaining the 
>           > data,
>           > interacting with the user, and outputting the the data 
in a useful form. 
>           > I
>           > only wanted to be concerned with the algorithms that 
decided to buy or 
>           > sell.
>           > Interestingly, even with all the support functions 
handled by AB, I still
>           > spend 80% of my time coding UI things! I think it is 
some kind of 
>           > computer
>           > programming law.
>           >
>           > AFL was my real destination with AmiBroker, and I had a 
hard time because 
>           > it
>           > was not well defined. A lot of assumptions were made 
about prior 
>           > knowledge
>           > of specific programming language conventions in C like 
languages. 
>           > Languages
>           > I had no experience with. These are middle level 
languages. My 
>           > experience
>           > was with machine level assembler code, and very high 
level like
>           > Revolution/SuperCard/HyperCard, and a
>           > smattering of BASIC and APL from the original versions 
40 years ago.
>           > I had no idea that I was supposed to go learn C syntax 
before I could use
>           > the AFL documentation. IMHO this is a documentation 
hole big enough to
>           > drive a truck through.
>           >
>           > Then what happens when someone has no experience with 
any programming
>           > language at all. Perhaps some Excel experience, or 
maybe experience using 
>           > a
>           > programmable calculator. I can't imagine the 
bewilderment with AFL. It
>           > takes a lot of handholding from support or this list to 
get over the first
>           > hump.
>           >
>           > I believe it would be appropriate to define the AFL 
language in the
>           > documentation as if it were the only language that 
exists on the planet.
>           >
>           > For instance "+" is defined as "Addition". Whereas, in 
reality the "+"
>           > operator is data type dependent. It will add two 
numbers, add a number to
>           > every element in an array, add two arrays element by 
element, or 
>           > concatenate
>           > two strings. It will not add a number or array to a 
string.
>           >
>           > As I have suggested before, I would have liked to see 
a "Complete"
>           > listing of all operators, functions, reserved words, 
syntax characters,
>           > directives, etc., in one live list index that points to 
a page that 
>           > explains
>           > each one in the same way that the functions are now 
described. Then
>           > additional "see also" pointers on those pages to point 
to more in depth
>           > documents when available. In fact the current functions 
list could simply
>           > be expanded to do this.
>           >
>           > This would have saved me many weeks off the learning 
curve.
>           >
>           > I don't know if Howard is planning on doing this in his 
new book, but it
>           > should be part of the on-line documentation.
>           >
>           > Best regards,
>           > Dennis
>           >
>           >
>           > On Aug 28, 2008, at 10:34 AM, brian_z111 wrote:
>           >
>           >> I didn't explain myself very well there.
>           >>
>           >> What I am saying is that I think we are making it 
harder by not
>           >> admitting that it is a programmers program and just 
getting on with
>           >> teaching AFL.
>           >>
>           >> If anyone held told me that at the start I would have 
run for it but
>           >> the fact is that the help manual is about 'AmiBroker 
the program' but
>           >> eventually I came to realise it is all about 
programming -
>           >> specifically AFL.
>           >>
>           >> So, if I do want to get on with it where do I go?
>           >>
>           >> The AFL section of the help manual is condensed.
>           >> The first few chapters of Howards Book are a basic 
intro to AB and the
>           >> rest of the book is orientated around SystemDesign & 
Evaluation?
>           >>
>           >> Where is the next stop on the AFL line?
>           >>
>           >>
>           >> brian_z
>           >>
>           >>
>           >>
>           >>
>           >> --- In amibroker@xxxxxxxxxxxxxxx, "brian_z111" 
<brian_z111@> wrote:
>           >>>
>           >>> Herman,
>           >>>
>           >>>> I always figured that sticking with AFL would have 
provided a more
>           >>>> continuous path for users to develop their 
programming expertise.
>           >>>
>           >>> This is a new point, not really discussed much 
before, I think.
>           >>>
>           >>> I really don't know how to put it in words but you 
are so right.
>           >>>
>           >>> Tomasz should be proud of me because if I am a 
programmer at all I
>           >> am
>           >>> an array programmer...... but sometimes I am left 
reaching for AFL?
>           >>>
>           >>> Perhaps there are conventions that people with 2 or 
more
>           >> programming
>           >>> languages automatically understand?
>           >>>
>           >>> Do I have to go and learn C++ as well.
>           >>>
>           >>> Should I need too?
>           >>>
>           >>> brian_z
>           >>>
>           >>
>           >>
>           >>
>           >> ------------------------------------
>           >>
>           >> Please note that this group is for discussion between 
users only.
>           >>
>           >> To get support from AmiBroker please send an e-mail 
directly to
>           >> SUPPORT {at} amibroker.com
>           >>
>           >> For NEW RELEASE ANNOUNCEMENTS and other news always 
check DEVLOG:
>           >> http://www.amibroker.com/devlog/
>           >>
>           >> For other support material please check also:
>           >> http://www.amibroker.com/support.html
>           >> Yahoo! Groups Links
>           >>
>           >>
>           >>
>           >
>           >
>           > ------------------------------------
>           >
>           > Please note that this group is for discussion between 
users only.
>           >
>           > To get support from AmiBroker please send an e-mail 
directly to SUPPORT 
>           > {at}
>           > amibroker.com
>           >
>           > For NEW RELEASE ANNOUNCEMENTS and other news always 
check DEVLOG:
>           > http://www.amibroker.com/devlog/
>           >
>           > For other support material please check also:
>           > http://www.amibroker.com/support.html
>           > Yahoo! Groups Links
>           >
>           >
>           >
>           >
>           > ------------------------------------
>           >
>           > Please note that this group is for discussion between 
users only.
>           >
>           > To get support from AmiBroker please send an e-mail 
directly to
>           > SUPPORT {at} amibroker.com
>           >
>           > For NEW RELEASE ANNOUNCEMENTS and other news always 
check DEVLOG:
>           > http://www.amibroker.com/devlog/
>           >
>           > For other support material please check also:
>           > http://www.amibroker.com/support.html
>           > Yahoo! Groups Links
>           >
>           >
>           >
>



------------------------------------

Please note that this group is for discussion between users only.

To get support from AmiBroker please send an e-mail directly to 
SUPPORT {at} amibroker.com

For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
http://www.amibroker.com/devlog/

For other support material please check also:
http://www.amibroker.com/support.html
Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/amibroker/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/amibroker/join
    (Yahoo! ID required)

<*> To change settings via email:
    mailto:amibroker-digest@xxxxxxxxxxxxxxx 
    mailto:amibroker-fullfeatured@xxxxxxxxxxxxxxx

<*> To unsubscribe from this group, send an email to:
    amibroker-unsubscribe@xxxxxxxxxxxxxxx

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/