Shop OBEX P1 Docs P2 Docs Learn Events
Choosing to learn with the Propeller vs Basic Stamp — Parallax Forums

Choosing to learn with the Propeller vs Basic Stamp

W9GFOW9GFO Posts: 4,010
edited 2007-08-11 18:50 in Propeller 1
I think the Propeller is going to be attracting more and more beginners. It is not uncommon to read a post where someone describes what they want to do then asks if the Basic Stamp is appropriate. Much of the time the response is that the Propeller is the way to go. I have moved away from the Basic Stamp because my goal is something that it cannot do. However, I certainly have not mastered PBasic. Never the less I have made a commitment to learning the Propeller. I chose the Propeller because I am impressed by and supportive of Parallax's educational philosophy. When researching microcontrollers I have found no one that even comes close to their level of dedication to making the world of programming and robotics accessible to the common person.

Everything that I have learned about computers, programming and robotics is self taught. That means zero time spent in computer science classes and zero time earning a living with anything to do with programming. This is not the case with many (most?) of you on the Propeller forum. I am happy to post my newbie questions here, but I wonder how the more experienced of you will feel about your forum being filled with beginner questions. At times it feels to me that there is an attitude of 'if you have to ask maybe you shouldn't be here'. Which is probably true in some cases, maybe my case. A Forum for people new to programming who chose the Propeller to learn on would be great in my opinion.

I predict that there will be a steady increase of Propeller newbie questions, largely because of people like myself.

Comments

  • rjo_rjo_ Posts: 1,825
    edited 2007-08-09 17:39
    The ideal bundle would be a demo board, Prop manual and Tracy Allen's "What is a Microprocessor."

    Radioshack has a new full-bore CEO. Christmas is just around the corner.
  • Mike GreenMike Green Posts: 23,101
    edited 2007-08-09 17:45
    W9GFO,
    You're right, there will be more "newbie" questions. One of the things that happens a lot in all the forums (fora?) is that beginners ask the "how do I do?" question before they work through the examples and the tutorials, etc. It's really hard to slow down, slog through what seems to be watered down stuff that's too simple in what it does, then go back to whatever excited you in the first place. Doing just that makes a big difference and many of the "newbie" questions become answered. As we get more Education Kit tutorials and the first introductory texts are published, we'll be able to refer people to those. Perhaps we need a "sticky thread" with the title "IF YOU'RE NEW TO THE PROPELLER ... READ THIS FIRST!" and it discusses and links to what's already available for beginners. For the Stamps, there's already the Stamps in Class tutorials.
    Mike
  • deSilvadeSilva Posts: 2,967
    edited 2007-08-09 17:53
    W9GFO said...
    At times it feels to me that there is an attitude of 'if you have to ask maybe you shouldn't be here'.
    Should I feel guilty smile.gif No, I do not! I think it very interesting and compelling to answer newbies questions, when asked in the spirit of "I want to know".

    Too often however I have the impression that something is asked out of lazyness or an unmendable depth of ignorance. RTFM is the first thing that often comes to mind.

    But I am aware that not everyone is able to buy e.g. And
  • rjo_rjo_ Posts: 1,825
    edited 2007-08-09 17:56
    Mike

    When Pythagorus left Greece and started his community in Italy... the community had a rule... you couldn't speak for 5 years.

    The problem with this approach is that by the time you construct your understanding you have already forgotten what is wrong with it.

    I would agree... with "If you are new to the Propellr... try reading this first."

    But what happens when they do that ... and just give up, because that isn't how their brains handle information?

    Then we never hear from them.

    Rich
  • rjo_rjo_ Posts: 1,825
    edited 2007-08-09 18:00
    Another approach would be to be able to be able attach a "dufus" to a question...which could block the question for those that aren't interested in simple questions. We have pioneers here... looking to push the boundaries and people just looking for the right door. It's a tough thing to construct an environment for both of them... but Parallax does lots of things that would seem impossible.
  • Mike GreenMike Green Posts: 23,101
    edited 2007-08-09 18:09
    rjo_,
    The idea is for newcomers to "read this first". I would expect that the first message would generally describe what many people go through in learning a new thing like the Propeller (or Stamp or SX or ...) and how methodically learning the basics is very useful and, often in the long term, much more productive of time and energy than they might think ... followed by some suggested basics and where to find them. One of the statements in the "read this first" section would need to be some guidelines for using the forums like:

    We're mostly volunteers here and this is done in our "spare time".
    Be polite.
    Say what you think you know and what you're trying to do.
    Be sure to tell us what you've tried so far.
    Don't expect much if you ask someone to do your work for you.
    Our "job" is to help explain and clarify things, maybe give another way of looking at a problem.
    Don't whine if you can possibly help it. It isn't seemly and most of us have no control over how things work.
    Those that seem to have control over "things" often have much less control than you think they have.
    Don't include long, complicated programs in your messages if you can possibly help it. My eyes cross just thinking about it.
    ... Either put them as an attachment or try to pare them down to their essentials.
    The subject line is for a capsule summary of what the thread is about, use it appropriately ... pleas for help are counterproductive
    ... Most of us do this because we think we might be of some use to people here
    ... We've all struggled through learning at some point or another.

    Post Edited (Mike Green) : 8/9/2007 6:16:41 PM GMT
  • rjo_rjo_ Posts: 1,825
    edited 2007-08-09 18:12
    Looks great to me!

    And... I think what stops some from asking questions is that they feel like they don't know how... simple guidelines would encourage PROPer exchanges.
  • W9GFOW9GFO Posts: 4,010
    edited 2007-08-09 18:18
    Sure, a prerequisite should be to go through the tutorials, but as you say they aren't that interesting and after going through them, and then time passes because of life and you finally get started on your original project, the finer points of the tutorials may be lost. A decision then has to be made on how much time do you feel is required in researching and troubleshooting before firing off a question to the forum. I try to ask good questions but I am sure that there will be times when the answer is right in front of me but I just don't see it for some reason. I could then resign myself to reading through the manual until I get to the part I need, hoping that my eyes don't glaze over in the mean time, or I could just ask the forum for some help. The idea that someone may reply with RTFM is a significant deterrent. Many beginner questions just aren't going to be that stimulating for those with more experience.

    I know nothing about the Hydra book. I do know that the Hydra is of little interest to me because what I want to do with the Propeller is completely different.
  • Graham StablerGraham Stabler Posts: 2,510
    edited 2007-08-09 18:21
    Mike I started writing a word document along those lines but it was hard to decide what to put in it. Then I'm sure many would still not read it.

    A fear of reading and learning new things holds back many, myself included.

    I'll have another look.

    Graham
  • Tracy AllenTracy Allen Posts: 6,662
    edited 2007-08-09 18:35
    rjo_, a small correction. While I'd like to take credit for "What's a Microcontroller", I can't. That credit I believe is due to Andy Lindsay, and doubtless also to Stephanie and maybe other collaborators at Parallax. I wrote the "Earth Measurements" unit, then with the help of Aristides Alverez, updated it to "Applied Sensors".

    Collective memory can sometimes recall where the newby question in question has been answered specifically that is more helpful than reference to the manual or a FAQ in general and a lot easier than starting over. But I agree, it is a pleasure to help people who are genuinely interested in becoming self oriented but it is painful when, what did deSilva say, "something is asked out of lazyness or an unmendable depth of ignorance".

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Tracy Allen
    www.emesystems.com
  • W9GFOW9GFO Posts: 4,010
    edited 2007-08-09 18:40
    Another thought. People learning at the same level can often answer each others questions. A separate forum would be the ideal place for this. I like answering such questions because it helps me to learn it myself. If the beginners can't help each other they can turn to the experts here. The experts can also look in on the beginners at any time they so desire, they are most appreciated.
  • rjo_rjo_ Posts: 1,825
    edited 2007-08-09 18:41
    I can put the oops back into Oops.
  • rjo_rjo_ Posts: 1,825
    edited 2007-08-09 18:43
    For eveyone else... everyone that Tracy mentioned is a hero...I know all the names... keeping them straight seems to be a problem[noparse]:)[/noparse]
  • Paul BakerPaul Baker Posts: 6,351
    edited 2007-08-09 18:47
    Dont be afraid to ask noobish questions, there is an overwhelming amount of information on the Propeller and it isn't as of yet coalesced into a single place as the Basic Stamp material. Everyone on here (including myself) went through an intitial "how do I" phase (I was fortunate enough to be part of the beta testing so my questions aren't in the public forum). Most of us "experts" are going to provide a certain amount of lattitude to newcomers, it is when it becomes apparent the person is actually lazy and not just the initial sense of being overwhelmed that the willingness to help starts to dry up.

    We are not going to start a new forum, no bunny slopes·here, you have to learn to ski the double black diamond with the rest of us, and if you fall down we'll pick you back up.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Paul Baker
    Propeller Applications Engineer

    Parallax, Inc.

    Post Edited (Paul Baker (Parallax)) : 8/9/2007 8:21:14 PM GMT
  • rjo_rjo_ Posts: 1,825
    edited 2007-08-09 19:17
    When I get tired... I go all the way to the end of the Forum and read it backwards.
  • Fred HawkinsFred Hawkins Posts: 997
    edited 2007-08-09 19:40
    Paul Baker (Parallax) said...
    Dont be afraid to ask noobish questions, there is an overwhelming amount of information on the Propeller and it isn't as of yet coalesced into a single place as the Basic Stamp material. Everyone on here (including myself) went through an intitial "how do I" phase (I was fortunate enough to be part of the beta testing so my questions aren't in the public forum). Most of us "experts" are going to provide a certain amount of lattitude to newcomers, it is when it becomes apparent the person is actually lazy and not just the initial sense of being overwhelmed that the willingness to help starts to dry up.

    We are not going to start a new forum, no bunny slopes·here, you have to learn to learn to ski the double black diamond with the rest of us, and if you fall down we'll pick you back up.

    "It looked to Sacharissa that the only tools a dwarf needed were his ax and some means of making fire. That'd eventually get him a forge, and with that he could make simple tools, and with those he could make complex tools, and with complex tools a dwarf could more or less make anything."

    Terry Pratchett, The Truth

    back here to fix spelling, but adding this is irresistable tip:·Categorizing the forum's·questions/answers·can be this easy:
    • Looking·for an ax or fire
    • building a forge
    • simple tools
    • complex tools
    • almost anything

    Pick and engage in the appropriate levels for you.


    Post Edited (Fred Hawkins) : 8/11/2007 2:31:26 AM GMT
  • rjo_rjo_ Posts: 1,825
    edited 2007-08-09 19:52
    Ahhhhhhhhhhhhhhhhhhhhhh
  • rjo_rjo_ Posts: 1,825
    edited 2007-08-09 19:54
    point, set, game, match to the dwarf.
  • Martin HebelMartin Hebel Posts: 1,239
    edited 2007-08-10 00:21
    I was teaching some educator's the WAM and Robotics curriculum and I spent some time showing off the Propeller. Along the way I made the statement that the Prop was actually easier to learn to program than the BASIC Stamp. On the drive home I had to wonder why I felt that way. In consideration, with the BASIC Stamp, when I have a group of kids or inexperienced adults, we go through the material and they see how to blink LEDs and make sounds and drive the bots, but eventually the question comes up of how do we drive AND blink lights AND make tones all at once? And I struggle through trying to explain the issues involved and come up with clever tricks to try to make it like they would like it (with little hope of them ever doing it themselves). And even with higher level processors it would be a burden to discuss timers and interrupts and such to try to make it happen.

    With the Prop we'd simply write the routines to do each and startup a new cog! 3 things at once, all done!

    So much simplier,
    Martin

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    StampPlot - GUI and Plotting, and XBee Wireless Adapters- Close out on Adapters!
    Southern Illinois University Carbondale, Electronic Systems Technologies
  • Mike GreenMike Green Posts: 23,101
    edited 2007-08-10 00:50
    Martin,
    That's a good point. With Stamps and SXs (and PICs and AVRs, etc.) we spend so much time and effort trying to make seemingly simple things happen and have to sometimes go through fits to make it work on a processor without enough memory or registers or where several things have to happen at the same time and we have to use interrupts or intersperse two functions (like reading sensors and outputting servo pulses every 20ms). With the Prop, there's enough memory for more things (never enough for everything) and different things can each have their own processor to do them (and the code can look like they're separate functions. There's also Spin which is high enough level to not worry about the idiosyncracies of the machine instructions, yet allows you to do almost anything you can do with assembly.
    Mike
  • deSilvadeSilva Posts: 2,967
    edited 2007-08-10 04:47
    I think one of Martin's points was to NOT use Spin for his educational purposes smile.gif

    I feel similar wrt explaining computers. To the mases computers are just witchcraft! Convincing them it is not witchcraft is difficult. It does not help to show them how to control one or the other aspect themselves. They will just think: "Ah, now I am in command of witchcraft", still stumbling in front of the simplest issues.

    But there are people understanding how a transistor works (a FET at least), and TTL gates. Alas, there is no direct road from transistors to the behavior of modern operating systems and high level script languages any longer. The Manchester MARK-1 would be the most perfect machine for education, despite its idiosyncratic code (it used self modifying code for sure smile.gif )

    The Propeller comes next!

    Of course you have to leave out counters and video support for the elementary part, but all other features - including the instruction pipe (or what I think how it works at least) - can be expained and understood very close to basic electronics and logic!

    For educational purposes even the Propeller's size restrictions are a good thing. There are always size restrictions. The earlier you learn to live with them , the better.
  • Martin HebelMartin Hebel Posts: 1,239
    edited 2007-08-10 13:36
    deSilva said...
    I think one of Martin's points was to NOT use Spin for his educational purposes smile.gif

    No, I was simply making a generalization why my gut tells me Sping is easier. I'd have no problem with people starting out in Spin if it makes things easier to understand the basics and do interesting things. In programming, the main concepts to get down are I/O, variables, conditionals along with the particular languages syntax and commands. Higher order concepts, such as arrays and such can come later. Starting simple but with excitement will surely draw more into the field and increase their confidence and minimizing frustration.

    -Martin

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    StampPlot - GUI and Plotting, and XBee Wireless Adapters- Close out on Adapters!
    Southern Illinois University Carbondale, Electronic Systems Technologies
  • Kevin WoodKevin Wood Posts: 1,266
    edited 2007-08-10 18:53
    This is from "The Structure and Interpretation of Computer Programs":
    Somebody said...

    A powerful programming language is more than just a means for instructing a computer to perform tasks. The language also serves as a framework within which we organize our ideas about processes. Thus, when we describe a language, we should pay particular attention to the means that the language provides for combining simple ideas to form more complex ideas. Every powerful language has three mechanisms for accomplishing this:

    *primitive expressions, which represent the simplest entities the language is concerned with,

    *means of combination, by which compound elements are built from simpler ones, and

    *means of abstraction, by which compound elements can be named and manipulated as units.


    In programming, we deal with two kinds of elements: procedures and data. (Later we will discover that they are really not so distinct.) Informally, data is ``stuff'' that we want to manipulate, and procedures are descriptions of the rules for manipulating the data. Thus, any powerful programming language should be able to describe primitive data and primitive procedures and should have methods for combining and abstracting procedures and data.

    Anybody interested in developing a good foundation in programming concepts should check it out. If you can approach your programming along the lines outlined above, you'll see a big move away from focusing on the low-level details to a much higher-level system-based approach.
  • deSilvadeSilva Posts: 2,967
    edited 2007-08-10 19:02
    This is true and generally accepted wisdom, but has only marginally to do with SPIN (which is a pity!).

    The question is, what you want to learn.
    When it is to create "good" programs, primarily concerned with algorithms, using microcontrollers certainly is not the first choice..
  • RinksCustomsRinksCustoms Posts: 531
    edited 2007-08-10 22:32
    Back to the thread,

    The only stupid question is usually the one you don't ask... i noticed about half the majority doesn't have a formal edu with respects to EE... and most that are EE's (even novice like myself) have some difficulty in one are or another with parallel proccesing, for me, the learning curve with the prop i believe is less than one with the BS2. I find it less difficult to make an object to do something of lower level, and have a higher level program control it, rather than what Mike was saying some posts ago about worrying about interupting your code to refresh a pulse to a servo. Stick with the prop! i'm about to begin tooling with prop ASM, i just may be able to understand that easier, who knows. But the whole parallel proccessing/object oriented programming seems alot less of a learning curve than serial programming. It's just alot less bug-riddled with the prop.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    E3 = Thought

    http://folding.stanford.edu/·- Donating some CPU/GPU downtime just might lead to a cure for cancer! My team stats.
  • Mike GreenMike Green Posts: 23,101
    edited 2007-08-10 23:23
    deSilva,

    Be careful about generalizing about algorithms.· The Propeller is a microcontroller and is used for very different things than the typical mid-range controller (like those used in a router for example) or a laptop or desktop.· Timing is very important and fine control of bit-level I/O is often vital where these are often of little importance in non-controller applications.· In programming, the language should mirror the hardware·tools available and the types of applications, but add a level of abstraction that helps in implementing reliable, understandable software.· Spin is not an ideal tool nor is C or some Pascal variants, but they're better than Lisp or Smalltalk for this type of platform even though there have been implementations of both for small platforms like the PalmOS.
  • deSilvadeSilva Posts: 2,967
    edited 2007-08-11 10:24
    Mike, I absolutely agree with what you say, however I do not see what it has to do with my posting:
    deSilva said...
    The question is, what you want to learn.
    When it is to create "good" programs, primarily concerned with algorithms, using microcontrollers certainly is not the first choice..


    Edit:
    The background for my remark was: You should not expect to enter the "king's road" to computer science by using a Propeller! It has advantages and drawbacks.

    In education it is most important to ask "How can we catch the attention of the students and keep up their interest?" So "hands-on electronics" is fine! However it will leave the too co-operating teacher with playing children!

    In the long run, you have to learn calculus, configuration management, "sorting and searching", computing worst case timing behaviour, consider temperature, longevity, and power consumption....

    You can stay playing of course...

    Post Edited (deSilva) : 8/11/2007 10:39:06 AM GMT
  • RinksCustomsRinksCustoms Posts: 531
    edited 2007-08-11 17:17
    I really do love the challenges of learning electronics, and programing with the prop. I must agree that hands on learning would be the better way, you can do all the calculus and calculating you want, but for some it'll never sink in, but making the same circuit, using a cheap scope to get a visual and for measurement, and to get the whole mental picture of how something works and interacts with it's envoronment.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    E3 = Thought

    http://folding.stanford.edu/·- Donating some CPU/GPU downtime just might lead to a cure for cancer! My team stats.
  • Kevin WoodKevin Wood Posts: 1,266
    edited 2007-08-11 18:50
    I posted the snippet from SICP after reading this statement:
    Martin Hebel said...

    In programming, the main concepts to get down are I/O, variables, conditionals along with the particular languages syntax and commands. Higher order concepts, such as arrays and such can come later.

    While I agree that these are programming concepts that need to be learned, I think that many times they are taught in the wrong context. In other words, they are taught in such a way that people consider them to be the end goal in learning to program, but they aren't.

    I guess the best analogy that I can think of is that of block diagrams vs. schematics. Block diagrams are simply higher level abstractions of the same system represented by the schematics. However, each gives a different view of the system, and if you could "peer" into a block (say power supply), you would see the lower-level interctions of the individual components.

    So how does this fit in with Spin? Basically, Spin objects are the equivalent of the diagram block. When you are designing a Spin-based software "system" (aka "program"), you can think of it in terms of object interactions. When you peer into (or create) the individual objects, you can think of them in terms of the loops and syntax contained therein.

    The same applies to any language that allows you create such abstractions - even PBasic provides subroutines. Not every language allows the same richness of abstractability, but my main point is that the overall concepts here are applicable to the smallest or largest system. And while a microcontroller won't prepare somebody to be a Windows/Unix/Mainframe software developer, it's still the same concepts. I'm fairly certain that the Propeller can do stuff that the pioneers of computer science couldn't come close to doing on the platforms they were using.
Sign In or Register to comment.