Shop OBEX P1 Docs P2 Docs Learn Events
Why...O...why...in this day and age... - Page 7 — Parallax Forums

Why...O...why...in this day and age...

123457

Comments

  • Heater.Heater. Posts: 21,230
    David Betz,
    You say you like self-hosting systems and Espruino but have you ever done anything with one other than type in simple programs?
    No. Not with Espruino etc.

    As I said above "These things are not suitable for hard-core, real-time developments, but they are programming of MCUs for the masses in the same spirit as the C64 and such."

    Clearly if you want to be more serious and complex you have to apply more serious and complex tools.
    Have you developed a complex system with a self-hosted system?
    Not since the CP/M days. When we could edit and compile everything in 64K of RAM. Far less that the P2 will have. Or things like STM32F4 do have today.






  • Heater. wrote: »
    David Betz,
    You say you like self-hosting systems and Espruino but have you ever done anything with one other than type in simple programs?
    No. Not with Espruino etc.

    As I said above "These things are not suitable for hard-core, real-time developments, but they are programming of MCUs for the masses in the same spirit as the C64 and such."

    Clearly if you want to be more serious and complex you have to apply more serious and complex tools.
    Have you developed a complex system with a self-hosted system?
    Not since the CP/M days. When we could edit and compile everything in 64K of RAM. Far less that the P2 will have. Or things like STM32F4 do have today.





    I asked because I find it hard to believe that most programmers or even beginners would be happy with the development environment of the C64 these days. Yes, we could be productive using simple text-based interfaces back then but I wonder if anyone would be satisfied with them today. If you say you're going to create a full-blown GUI with a standards-compliant web browser, programmer editors, etc for the P2 then I think the complexity will rapidly begin to approach that of the systems we all complain about today.
  • DavidBetz wrote:
    If you say you're going to create a full-blown GUI with a standards-compliant web browser, programmer editors, etc for the P2 then I think the complexity will rapidly begin to approach that of the systems we all complain about today.
    Exactly! And since those systems are already ubiquitous, why reinvent them on the Prop?

    -Phil
  • Heater.Heater. Posts: 21,230
    msrobots,
    why does the self hosting ability excludes external development
    I don't think it does.
    Self hosting in the 8-bit time was easy, just plug in your TV. Not so easy now and for the next 20+ years.
    Yeah, still just as easy. Except today instead of a TV we have a WEB browser running on whatever machine.

    But Phil is right. Parallax cannot do everything.

    As far as I understand, for some years now Parallax's customers have been demanding C/C++ support for the Propeller and that is where a lot of effort has gone in recent times.

    If the P2 is aimed at those same customers in educational circles then C/C++ it is.

    Which is perhaps still true if the P2 has aspirations outside of that educational market. Industry is still entrenched in C/C++.








  • Peter JakackiPeter Jakacki Posts: 10,193
    edited 2017-01-09 00:36
    You guys can debate all you like and of course we are all entitled to our own opinions plus we can do what we like or do what we need to do. A self-hosted system is easy enough for me to do and I know that it requires very little extra on a P2 system. I see some sense in it and most of my P2 systems I envisaged would have some form of SD so it makes sense to develop some extra code to handle screen editing, either using a keyboard and monitor/lcd connected to the P2, or via a terminal emulator. I already have the "scripting" language :) although I do not consider Tachyon as a toy language, perhaps it is to those who have only "played" with it. Anyway, we do what we need to do, no need to make everyone else do the same.
  • Heater.Heater. Posts: 21,230
    David Betz,
    I asked because I find it hard to believe that most programmers or even beginners would be happy with the development environment of the C64 these days. Yes, we could be productive using simple text-based interfaces back then but I wonder if anyone would be satisfied with them today.
    Quite so.

    Point is to make the device dead simple and stand alone. All it needs is a Javascript or Python REPL. Or whatever. In the same way a C64 had a BASIC prompt.

    That makes it simple, robust and future proof.

    The rest of the, shall we say, "IDE experience" goes into the application on whatever OS or preferably the web browser where the same code will work on many platforms today and well into the future.
    If you say you're going to create a full-blown GUI with a standards-compliant web browser, programmer editors, etc for the P2 then I think the complexity will rapidly begin to approach that of the systems we all complain about today.
    Absolutely that is not the idea. As Phil says above. We just leverage what exists already.
  • Well, I certainly don't have any objections to self-hosted systems. I just have my doubts that that feature will end up being used much. I could easily be wrong though.
  • Heater.Heater. Posts: 21,230
    Self-hosted or not, I think the name of the game is "Make it dead easy to use".

    When I visited the Sensors Expo in San Jose I was given a neat little Cyprus development board. Great, I thought.

    Then I find out that to use it I have to download and install a jiggabyte IDE application. Windows only of course.

    Then when I try to use the thing I find it's huge and complicated.

    I have yet to get that sucker to flash an LED.

    Perhaps that kind of user experience is OK if you are targeting professionals who are paid to waste as lot of time getting their heads around such things.

    It's clear to me that the "Make it dead easy to use" thing was in Chip's thinking when designing the Propeller, it's instruction set, Spin, the Propeller Tool. They are a rare incarnation of such a vision. A symphony of simplicity. An integrated whole, all parts tuned to work together.

    How to do that with the P2? And to whom is it aimed?





  • Well...I am the original poster for this thread, and I had no idea that I would produce so many posts, on using PBASIC for the Propeller. I would like to thank everyone for there comments and help. Also some of the threads, I do not understand, which is my problem, and some, perhaps have gotten off topic. Anyways, I was wondering if someone could give me a link to some PROPBASIC examples, as I would like to see how that works.

    Again, to all, thank you, and thank you to the Parallax folks, that brought us the Basic Stamp, in the first place.

    Denno
  • Heater.Heater. Posts: 21,230
    Ah, denno. Sorry we did rather derail your thread.

    Sadly I cannot answer your question, having not used BASIC seriously since 1975 or so.

  • I'm sure @Mickster will be happy to find some examples for you
  • Heater. wrote: »
    Self-hosted or not, I think the name of the game is "Make it dead easy to use".

    When I visited the Sensors Expo in San Jose I was given a neat little Cyprus development board. Great, I thought.

    Then I find out that to use it I have to download and install a jiggabyte IDE application. Windows only of course.

    Then when I try to use the thing I find it's huge and complicated.

    I have yet to get that sucker to flash an LED.

    Perhaps that kind of user experience is OK if you are targeting professionals who are paid to waste as lot of time getting their heads around such things.

    It's clear to me that the "Make it dead easy to use" thing was in Chip's thinking when designing the Propeller, it's instruction set, Spin, the Propeller Tool. They are a rare incarnation of such a vision. A symphony of simplicity. An integrated whole, all parts tuned to work together.

    How to do that with the P2? And to whom is it aimed?




    It seems that the P2 architecture has already gone significantly beyond "dead simple".

  • User NameUser Name Posts: 1,451
    edited 2017-01-09 02:02
    David Betz wrote: »
    It seems that the P2 architecture has already gone significantly beyond "dead simple".

    But a first experience with the P2 can still be made dead simple. I'm a big fan of providing a newcomer with a positive experience. Gone are the days when "It was hard to make, so it should be hard to use" makes an acceptable product roll-out strategy.

  • User Name wrote: »
    David Betz wrote: »
    It seems that the P2 architecture has already gone significantly beyond "dead simple".

    But a first experience with the P2 can still be made dead simple. I'm a big fan of providing a newcomer with a positive experience. Gone are the days when "It was hard to make, so it should be hard to use" makes an acceptable product roll-out strategy.
    It seems every few weeks 10 new instructions are added. I realize you don't have to use all of these zillions of instructions but you don't have to use all of the features of the ARM either.

  • jmgjmg Posts: 15,140
    denno wrote: »
    .... Anyways, I was wondering if someone could give me a link to some PROPBASIC examples, as I would like to see how that works.

    Sure. This is my favourite PropBasic project - a real, useful instrument :

    http://forums.parallax.com/discussion/123170/propbasic-reciprocal-frequency-counter-0-5hz-to-40mhz-40mhz-now

    There is also the full source, kindly placed here
    https://github.com/parallaxinc/PropBASIC
  • Cluso99Cluso99 Posts: 18,066
    David Betz wrote: »
    Heater: You say you like self-hosting systems and Espruino but have you ever done anything with one other than type in simple programs? Have you developed a complex system with a self-hosted system?
    I will answer this one also.

    I used self-hosted systems from 1974 onwards. Originally it was an ICL mini-computer (the length of my garage!). I wrote complete user online ordering/processing/invoicing/inventory control/purchasing/ accounting/general ledger/etc.

    I used a self-hosted 6800 kit with an assembler rom. Later I hooked it to my System Ten mini so I could code on the mini and pass the source code serially to the 6800 so the rom could assemble and send back the assembled code. Then I wrote a 6800 cross-assembler on the mini. Why did I get away from self-hosting on the 6800? Mostly because the 6800 did not have any decent storage (a cassette tape was not reliable).

    Later I used self-hosted Apple /// micro-computer with a Microsoft Z80 card. Used both CPM and Apple Basic.

    Next I used self-hosted PC running MS-DOS/DR-DOS. This was the best I have had, and the P1 is certainly capable of this now.

    Then I used self-hosted PC with Windows to write custom VB programs.

    So you see, most of my life I have used self-hosted systems!!!

    BUT, and this is the problem... Windows is now a monster that fails in many ways. Each version requires another learning curve to find where all the useful things have been hidden this release. They introduce new bugs (oh sorry ms, features we all love to hate) with every release. Now we have constant updates (and phoning home) which introduce more bugs. How many times does windows become unresponsive!! LOTS!!

    PCs, laptops, tablets, phones and pdas can all run terminal software of some kind. So we can connect to our micro systems (==P1 boards) when we want, or just use a keyboard and screen/tv.

    As far as I am concerned, the only part missing for full self-hosting on my OS Propeller platform is a text editor. The storage is a microSD card, which is both removable and replacable.

  • jmgjmg Posts: 15,140
    Cluso99 wrote: »
    ..... Now we have constant updates (and phoning home) which introduce more bugs. How many times does windows become unresponsive!! LOTS!!
    We have a new Win10 Xeon pc here, and twice this week, I've seen a total freeze of Mouse and KBD (no caps LED) for quite a few seconds, then it seems to come right.... No idea what is going on there, pleased it is nowhere near anything mission critical!!
    I've not seen other Windows systems freeze the mouse like this, but plenty of times the Broswers tag not responding...

  • cgraceycgracey Posts: 14,133
    We've been playing around with the Raspberry Pi I got my son. It's neater than I realized, at first. It's a lot more reliable than a Windows machine. The built-in Python implementation seems nice and easily workable, making it a good learning tool for computer-level programming. And it's definitely in the realm of a full-blown modern computer, and not a microcontroller. To do what it does, it needs to be part of the current computer/tablet/smartphone hardware, software, and O.S. paradigm. It's kind of an all-or-nothing proposition, anymore.

    I can certainly see the value of using such a system as the front end for Prop2 development, especially if you needn't rely on it to do anything more than user interface. It has ethernet/WiFi, Web access, file saving capability, etc. To not get hung up writing compilers and tools for Chrome Book, Windows, Mac, Raspberry Pi, etc, would really be nice. Does that sound like a reasonable goal? Consider that the Prop2 hardware tool may just be a Prop2 with a HyperRAM and flash, with WiFi on one side and a few pins on the other to talk to a Prop2 target system. All the smarts are on that little PCB. It could be updated through a browser interface. Does that sound viable?


  • cgracey wrote:
    To not get hung up writing compilers and tools for Chrome Book, Windows, Mac, Raspberry Pi, etc, would really be nice. Does that sound like a reasonable goal?
    No. The demands of the real world would indicate otherwise. Besides, there are cross-platform tools aplenty, as opposed to 2004,5,6, when the P1 was being developed.
    Consider that the Prop2 hardware tool may just be a Prop2 with a HyperRAM and flash, with WiFi on one side and a few pins on the other to talk to a Prop2 target system. All the smarts are on that little PCB. It could be updated through a browser interface. Does that sound viable?
    Again, no. It might be viable from an idealistic standpoint, but it won't sell to the customers Parallax needs to reach in order to turn a profit with the P2.

    It's unfortunate, but as much as you'd like to divorce yourself from the real world of mainstream operating systems and all their glitches, economics dictates otherwise.

    Sorry, man, but that's life.
    -Phil
  • jmg wrote: »
    Cluso99 wrote: »
    ..... Now we have constant updates (and phoning home) which introduce more bugs. How many times does windows become unresponsive!! LOTS!!
    We have a new Win10 Xeon pc here, and twice this week, I've seen a total freeze of Mouse and KBD (no caps LED) for quite a few seconds, then it seems to come right.... No idea what is going on there, pleased it is nowhere near anything mission critical!!
    I've not seen other Windows systems freeze the mouse like this, but plenty of times the Broswers tag not responding...

    I have been experiencing exactly the same on my XP Panasonic Toughbook, ever since my last Firefox update. Very little gets on this machine as I have Reboot Restore installed for protection.

  • TorTor Posts: 2,010
    cgracey wrote: »
    Consider that the Prop2 hardware tool may just be a Prop2 with a HyperRAM and flash, with WiFi on one side and a few pins on the other to talk to a Prop2 target system. All the smarts are on that little PCB. It could be updated through a browser interface. Does that sound viable?
    For me personally, it does, but that is only because I expect to be able to connect to that setup from my (Linux) PC, and do the source code work there.

    As for pure stand-alone non-connected development, I believe that time is long past. I'm into retrocomputers (I even have an eighties mini in my basement), but I can't work the way we did back then. Not anymore. So I connect the old systems to wifi, via various interfaces, and I do the actual work on the (Linux) PC, where the whole Internet is at my fingertips (with tools, code and docu) and just transfer the end result to the target. A setup which, to be honest, would be a fantastic dream back in the day.

    No way I would sit down, as I did back then, entering source code in that crude standalone environment. I need to use the editor I'm using for everything else, among other things.

    Phil described the situation very well for the education market. Even back in the day it was a headache to manage all the stand-alone computers, and people tried to get away from that. Consider this system from 1980: http://www.classic-computers.org.nz/collection/poly1.htm
    It looks like a typical stand-alone computer. It was designed for education though, and all the machines in the classroom were connected to a network and the students' work was stored on a single central 8" floppy disk.
    Phil wrote:
    And where would a student store his work in progress? Where I taught, each student stored his programs on the school's server under his own account. With a self-hosted system, this would have to be done with multiple SD cards, unless you also had to have either Ethernet or Wifi connected to each one. But then, the schools IT staff would have to learn Propeller stuff to manage a situation like that. They simply won't buy it -- a total non-starter.
    As he said. And this was recognized as a problem even before the C64.


  • Heater.Heater. Posts: 21,230
    @cgracey,

    The Pi is great isn't it? For sure it's a full blown computer. With some neat hardware interfacing possibilities as well.

    Get SimpleIDE and PropellerIDE installed on there and hook up a Propeller board to the UART on the GPIO header.
    To do what it does, it needs to be part of the current computer/tablet/smartphone hardware, software, and O.S. paradigm.
    Not quite sure I get what you mean there. The Pi runs Linux, which is basically Unix. Basically what I have been using almost exclusively for nearly two decades. All be it greatly improved along the way. Whatever paradigm that is it predates the current computer/tablet/smartphone thing we have today by a long way.
    To not get hung up writing compilers and tools for Chrome Book, Windows, Mac, Raspberry Pi, etc, would really be nice. Does that sound like a reasonable goal?
    Certainly does. One does not want to have to maintain a pile of different tools, or even just builds of the same tools, for dozens of different platforms. Creating the tools in a cross-platform way, like OpenSpin, SimpleIDE, PropellerIDE is a good start but that still leaves the multiple builds problem and all those niggly issuses that crop up on different platforms. And after all that it's not usable on Chromebooks or whatever comes down the pipe next.

    My take on all this is that all the dev tools should run in the browser. msrobots and I demonstrated that it is quite feasible to run OpenSpin in the browser. Complete with syntax highlighting editor. Our "proof of concept" was never completed and polished but take a look at the Espruino IDE http://www.espruino.com/Web+IDE or Microsofts Visual Studio Code https://code.visualstudio.com/ to see what can be done.

    The magic part about this is that what can be done in the browser can be made into a regular application using Electron. http://electron.atom.io/

    I know this all sounds totally contrary to the desire to get away from the horrendously complex and unreliable systems we have today. Full of termites as you say. But adopting the browser as the platform frees one from having to worry about the myriad of platforms out there.
    Consider that the Prop2 hardware tool may just be a Prop2 with a HyperRAM and flash, with WiFi on one side and a few pins on the other to talk to a Prop2 target system. All the smarts are on that little PCB
    I love the idea. Perhaps Bluetooth instead of WIFI.

    However I don't think it would fly very well. It's going to be a lot bigger and more expensive that making a serial connection from whatever computer I have to the P2 target. It implies I can't really develop anything for the P2 with out that hardware to do the builds. It actually adding complexity for the user. It would be like those ARM dev systems at the bottom of my junk pile that never got used much because of the hassle of needing some proprietary dongle to program them.
  • What would the retail version of the P2 look like?

    When I bought my first P1 QS off the rack at RS, packaging caught my eye. Neat little board, couldn't wait to get home and plug it in. Was kinda disappointing, the package insert vaguely mentioned being pre-programmed, for touch buttons and LEDs. Though I don't remember if it specified that exactly. Anyway it wasn't till I downloaded and installed the USB driver's and Propeller Tool, when the real fun started.

    Not like my BS2 experience, which was bought the same way. A breadboard, parts, software CD and a real book was included. I didn't need the internet right off the bat.

    Price dictates how the product is offered, but it has to be appealing to the newcomers, but not intimidating. That's a fine line to walk with just one version of the product, to have a choice of.

    Is RS still the place for such a product? Sorry Jim, but I don't think of it for thing's like that anymore.

    PS: Sorry to the OP for helping keep this thread off track.
  • TorTor Posts: 2,010
    edited 2017-01-09 17:04
    >Not like my BS2 experience, which was bought the same way. A breadboard, parts,
    >software CD and a real book was included. I didn't need the internet right off the bat.

    But, you know, even a CD is trouble these days.. the last time I got a CD with the documentation etc. I became quite frustrated. I had just soldered all the components to the PCB, but then it was full stop. It turned out I didn't have a single computer anywhere in the house with a CD reader. I had to look high and low to find a stand-alone USB reader I had bought off ebay some years before. It would have been so much easier if there had been just a URL to where I could download what I needed.

    Book is good, though. But too expensive, at least for shipping.
  • cgracey wrote: »
    Consider that the Prop2 hardware tool may just be a Prop2 with a HyperRAM and flash, with WiFi on one side and a few pins on the other to talk to a Prop2 target system. All the smarts are on that little PCB. It could be updated through a browser interface. Does that sound viable?
    If you use an ESP32 you might be able to dispense with the P2 entirely. The ESP32 will give you both wi-fi and bluetooth and I think it has a hefty enough processor to handle a Spin compiler. You might need an external flash chip or SD card though.
  • Please continue your P2 posts in the Propeller 2 section, in a separate thread. They do not belong here.

    The OP already pointed out how off-topic his thread had gotten, and any further replies should stick to his original topic, and his latest question.

    Any further P2 posts will be moved, or removed.
  • denno wrote: »
    Well...I am the original poster for this thread, and I had no idea that I would produce so many posts, on using PBASIC for the Propeller. I would like to thank everyone for there comments and help. Also some of the threads, I do not understand, which is my problem, and some, perhaps have gotten off topic. Anyways, I was wondering if someone could give me a link to some PROPBASIC examples, as I would like to see how that works.

    Again, to all, thank you, and thank you to the Parallax folks, that brought us the Basic Stamp, in the first place.

    Denno

    Here are a few examples....might be some duplicates.

  • Wouldn't take everything in one post.
  • Mickster wrote: »
    Wouldn't take everything in one post.

    Thanks, Mickster for keeping on topic. :)

  • MikeDYurMikeDYur Posts: 2,176
    edited 2017-01-09 17:42
    2,300 views, 209 comments later, the OP has an answer. We can talk, sorry for my part.


    Maybe a the thread can be gutted, and the content can be moved to the P2 forum.
Sign In or Register to comment.