Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.forth > #15684 > unrolled thread
| Started by | "Paul E. Bennett" <Paul_E.Bennett@topmail.co.uk> |
|---|---|
| First post | 2012-09-15 22:28 +0100 |
| Last post | 2012-10-15 18:00 -0400 |
| Articles | 20 on this page of 143 — 26 participants |
Back to article view | Back to comp.lang.forth
Olympic Spririt for Forth "Paul E. Bennett" <Paul_E.Bennett@topmail.co.uk> - 2012-09-15 22:28 +0100
Re: Olympic Spririt for Forth Mark Wills <forthfreak@gmail.com> - 2012-09-18 02:08 -0700
Re: Olympic Spririt for Forth anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-09-18 11:58 +0000
Re: Olympic Spririt for Forth Mark Wills <forthfreak@gmail.com> - 2012-09-18 05:55 -0700
Re: Olympic Spririt for Forth anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-09-19 12:50 +0000
Re: Olympic Spririt for Forth theoriginalsnial@gmail.com - 2012-10-06 01:40 -0700
Re: Olympic Spririt for Forth "A. K." <akk@nospam.org> - 2012-10-06 11:18 +0200
Re: Olympic Spririt for Forth Spam@ControlQ.com - 2012-09-18 11:13 -0400
Re: Olympic Spririt for Forth Hugh Aguilar <hughaguilar96@yahoo.com> - 2012-09-19 15:56 -0700
Re: Olympic Spririt for Forth theoriginalsnial@gmail.com - 2012-09-29 00:56 -0700
Re: Olympic Spririt for Forth rickman <gnuarm@gmail.com> - 2012-09-30 12:31 -0400
Re: Olympic Spririt for Forth Paul Rubin <no.email@nospam.invalid> - 2012-09-30 11:53 -0700
Re: Olympic Spririt for Forth rickman <gnuarm@gmail.com> - 2012-09-30 17:38 -0400
Re: Olympic Spririt for Forth theoriginalsnial@gmail.com - 2012-10-02 04:16 -0700
Re: Olympic Spririt for Forth Paul Rubin <no.email@nospam.invalid> - 2012-10-02 10:52 -0700
Re: Olympic Spririt for Forth Bernd Paysan <bernd.paysan@gmx.de> - 2012-10-02 20:20 +0200
Re: Olympic Spririt for Forth Spam@ControlQ.com - 2012-10-02 15:58 -0400
Re: Olympic Spririt for Forth Paul Rubin <no.email@nospam.invalid> - 2012-10-02 13:31 -0700
Re: Olympic Spririt for Forth Bernd Paysan <bernd.paysan@gmx.de> - 2012-10-03 02:59 +0200
Re: Olympic Spririt for Forth Paul Rubin <no.email@nospam.invalid> - 2012-10-02 19:08 -0700
Re: Olympic Spririt for Forth Bernd Paysan <bernd.paysan@gmx.de> - 2012-10-03 15:50 +0200
Re: Olympic Spririt for Forth anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-10-03 14:04 +0000
Re: Olympic Spririt for Forth Paul Rubin <no.email@nospam.invalid> - 2012-10-03 10:29 -0700
Re: Olympic Spririt for Forth anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-10-04 16:07 +0000
Re: Olympic Spririt for Forth Bernd Paysan <bernd.paysan@gmx.de> - 2012-10-03 20:27 +0200
Re: Olympic Spririt for Forth anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-10-04 16:11 +0000
Re: Olympic Spririt for Forth Bernd Paysan <bernd.paysan@gmx.de> - 2012-10-04 20:12 +0200
Re: Olympic Spririt for Forth anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-10-05 13:08 +0000
Re: Olympic Spririt for Forth Bernd Paysan <bernd.paysan@gmx.de> - 2012-10-05 17:48 +0200
Re: Olympic Spririt for Forth Pablo Hugo Reda <pabloreda@gmail.com> - 2012-10-03 07:39 -0700
Re: Olympic Spririt for Forth Bernd Paysan <bernd.paysan@gmx.de> - 2012-10-03 20:24 +0200
Re: Olympic Spririt for Forth Hugh Aguilar <hughaguilar96@yahoo.com> - 2012-10-03 18:13 -0700
Re: Olympic Spririt for Forth Paul Rubin <no.email@nospam.invalid> - 2012-10-03 12:05 -0700
Re: Olympic Spririt for Forth Bernd Paysan <bernd.paysan@gmx.de> - 2012-10-03 22:20 +0200
Re: Olympic Spririt for Forth Paul Rubin <no.email@nospam.invalid> - 2012-10-04 12:41 -0700
Re: Olympic Spririt for Forth Bernd Paysan <bernd.paysan@gmx.de> - 2012-10-04 22:40 +0200
Re: Olympic Spririt for Forth Paul Rubin <no.email@nospam.invalid> - 2012-10-04 18:11 -0700
Re: Olympic Spririt for Forth "Elizabeth D. Rather" <erather@forth.com> - 2012-10-04 15:26 -1000
Re: Olympic Spririt for Forth Paul Rubin <no.email@nospam.invalid> - 2012-10-04 18:54 -0700
Re: Olympic Spririt for Forth "A. K." <akk@nospam.org> - 2012-10-05 08:19 +0200
Re: Olympic Spririt for Forth "Elizabeth D. Rather" <erather@forth.com> - 2012-10-04 22:18 -1000
Re: Olympic Spririt for Forth Gerry Jackson <gerry@jackson9000.fsnet.co.uk> - 2012-10-05 08:20 +0100
Re: Olympic Spririt for Forth anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-10-05 11:08 +0000
Re: Olympic Spririt for Forth Paul Rubin <no.email@nospam.invalid> - 2012-10-07 08:32 -0700
Re: Olympic Spririt for Forth Bernd Paysan <bernd.paysan@gmx.de> - 2012-10-07 21:39 +0200
Re: Olympic Spririt for Forth Paul Rubin <no.email@nospam.invalid> - 2012-10-07 21:03 -0700
Re: Olympic Spririt for Forth Bernd Paysan <bernd.paysan@gmx.de> - 2012-10-08 19:09 +0200
Re: Olympic Spririt for Forth Paul Rubin <no.email@nospam.invalid> - 2012-10-08 21:57 -0700
Re: Olympic Spririt for Forth Mark Wills <forthfreak@gmail.com> - 2012-10-09 01:10 -0700
Re: Olympic Spririt for Forth rickman <gnuarm@gmail.com> - 2012-10-09 14:12 -0400
Re: Olympic Spririt for Forth "Paul E. Bennett" <Paul_E.Bennett@topmail.co.uk> - 2012-10-10 09:29 +0100
Re: Olympic Spririt for Forth rickman <gnuarm@gmail.com> - 2012-10-10 21:13 -0400
Re: Olympic Spririt for Forth Mark Wills <forthfreak@gmail.com> - 2012-10-10 02:02 -0700
Re: Olympic Spririt for Forth rickman <gnuarm@gmail.com> - 2012-10-10 21:23 -0400
Re: Olympic Spririt for Forth Paul Rubin <no.email@nospam.invalid> - 2012-10-10 18:24 -0700
Re: Olympic Spririt for Forth anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-10-11 17:21 +0000
Re: Olympic Spririt for Forth Mark Wills <markrobertwills@yahoo.co.uk> - 2012-10-11 12:33 -0700
Re: Olympic Spririt for Forth Mark Wills <forthfreak@gmail.com> - 2012-10-11 13:42 -0700
Re: Olympic Spririt for Forth rickman <gnuarm@gmail.com> - 2012-10-11 18:59 -0400
Re: Olympic Spririt for Forth "Elizabeth D. Rather" <erather@forth.com> - 2012-10-11 13:49 -1000
Re: Olympic Spririt for Forth Bernd Paysan <bernd.paysan@gmx.de> - 2012-10-12 03:27 +0200
Re: Olympic Spririt for Forth Paul Rubin <no.email@nospam.invalid> - 2012-10-12 19:18 -0700
Re: Olympic Spririt for Forth Elizabeth D Rather <erather@forth.com> - 2012-10-12 18:53 -1000
Re: Olympic Spririt for Forth Paul Rubin <no.email@nospam.invalid> - 2012-10-12 22:55 -0700
Re: Olympic Spririt for Forth Bernd Paysan <bernd.paysan@gmx.de> - 2012-10-13 22:07 +0200
Re: Olympic Spririt for Forth rickman <gnuarm@gmail.com> - 2012-10-13 00:56 -0400
Re: Olympic Spririt for Forth Doug Hoffman <glidedog@gmail.com> - 2012-10-13 18:41 -0400
Re: Olympic Spririt for Forth Paul Rubin <no.email@nospam.invalid> - 2012-10-13 16:05 -0700
Re: Olympic Spririt for Forth Bernd Paysan <bernd.paysan@gmx.de> - 2012-10-14 02:57 +0200
Re: Olympic Spririt for Forth Paul Rubin <no.email@nospam.invalid> - 2012-10-14 00:26 -0700
Re: Olympic Spririt for Forth Bernd Paysan <bernd.paysan@gmx.de> - 2012-10-14 19:28 +0200
Re: Olympic Spririt for Forth kenney@cix.compulink.co.uk - 2012-10-15 04:21 -0500
Re: Olympic Spririt for Forth Mark Wills <markrobertwills@yahoo.co.uk> - 2012-10-14 03:17 -0700
Re: Olympic Spririt for Forth Alex McDonald <blog@rivadpm.com> - 2012-10-14 15:43 -0700
Re: Olympic Spririt for Forth rickman <gnuarm@gmail.com> - 2012-10-14 21:18 -0400
Re: Olympic Spririt for Forth kenney@cix.compulink.co.uk - 2012-10-15 04:21 -0500
Re: Olympic Spririt for Forth anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2012-10-15 10:03 +0000
Re: Olympic Spririt for Forth visualforth@rocketmail.com - 2012-10-15 04:04 -0700
Re: Olympic Spririt for Forth "Paul E. Bennett" <Paul_E.Bennett@topmail.co.uk> - 2012-10-15 21:34 +0100
Re: Olympic Spririt for Forth rickman <gnuarm@gmail.com> - 2012-10-15 17:51 -0400
Re: Olympic Spririt for Forth Mark Wills <forthfreak@gmail.com> - 2012-10-16 01:09 -0700
Re: Olympic Spririt for Forth visualforth@rocketmail.com - 2012-10-16 02:15 -0700
Re: Olympic Spririt for Forth visualforth@rocketmail.com - 2012-10-16 02:30 -0700
Re: Olympic Spririt for Forth rickman <gnuarm@gmail.com> - 2012-10-16 15:18 -0400
Re: Olympic Spririt for Forth rickman <gnuarm@gmail.com> - 2012-10-14 21:05 -0400
Re: Olympic Spririt for Forth Paul Rubin <no.email@nospam.invalid> - 2012-10-14 18:19 -0700
Re: Olympic Spririt for Forth rickman <gnuarm@gmail.com> - 2012-10-15 17:58 -0400
Re: Olympic Spririt for Forth Paul Rubin <no.email@nospam.invalid> - 2012-10-15 15:21 -0700
Re: Olympic Spririt for Forth rickman <gnuarm@gmail.com> - 2012-10-15 18:51 -0400
Re: Olympic Spririt for Forth Paul Rubin <no.email@nospam.invalid> - 2012-10-15 17:20 -0700
Re: Olympic Spririt for Forth "Paul E. Bennett" <Paul_E.Bennett@topmail.co.uk> - 2012-10-12 22:41 +0100
Re: Olympic Spririt for Forth "Paul E. Bennett" <Paul_E.Bennett@topmail.co.uk> - 2012-10-12 22:24 +0100
Re: Olympic Spririt for Forth Mark Wills <forthfreak@gmail.com> - 2012-10-09 01:20 -0700
Re: Olympic Spririt for Forth Paul Rubin <no.email@nospam.invalid> - 2012-10-09 08:56 -0700
Re: Olympic Spririt for Forth Andrew Haley <andrew29@littlepinkcloud.invalid> - 2012-10-09 11:14 -0500
Re: Olympic Spririt for Forth Bernd Paysan <bernd.paysan@gmx.de> - 2012-10-09 22:47 +0200
Re: Olympic Spririt for Forth Paul Rubin <no.email@nospam.invalid> - 2012-10-09 18:31 -0700
Re: Olympic Spririt for Forth Andrew Haley <andrew29@littlepinkcloud.invalid> - 2012-10-09 22:55 -0500
Re: Olympic Spririt for Forth Mark Wills <forthfreak@gmail.com> - 2012-10-09 01:04 -0700
Re: Olympic Spririt for Forth Bernd Paysan <bernd.paysan@gmx.de> - 2012-10-09 17:30 +0200
Re: Olympic Spririt for Forth "Elizabeth D. Rather" <erather@forth.com> - 2012-10-04 11:31 -1000
Re: Olympic Spririt for Forth kenney@cix.compulink.co.uk - 2012-10-03 16:53 -0500
Re: Olympic Spririt for Forth Paul Rubin <no.email@nospam.invalid> - 2012-10-03 16:50 -0700
Re: Olympic Spririt for Forth Hugh Aguilar <hughaguilar96@yahoo.com> - 2012-10-03 18:06 -0700
Re: Olympic Spririt for Forth kenney@cix.compulink.co.uk - 2012-10-03 16:53 -0500
Re: Olympic Spririt for Forth theoriginalsnial@gmail.com - 2012-10-03 00:38 -0700
Re: Olympic Spririt for Forth Paul Rubin <no.email@nospam.invalid> - 2012-10-03 02:06 -0700
Re: Olympic Spririt for Forth theoriginalsnial@gmail.com - 2012-10-03 03:38 -0700
Re: Olympic Spririt for Forth Paul Rubin <no.email@nospam.invalid> - 2012-10-03 13:40 -0700
Re: Olympic Spririt for Forth theoriginalsnial@gmail.com - 2012-10-04 01:00 -0700
Re: Olympic Spririt for Forth "Elizabeth D. Rather" <erather@forth.com> - 2012-10-03 22:32 -1000
Re: Olympic Spririt for Forth theoriginalsnial@gmail.com - 2012-10-04 04:49 -0700
Re: Olympic Spririt for Forth Mark Wills <forthfreak@gmail.com> - 2012-10-04 01:35 -0700
Re: Olympic Spririt for Forth Howerd <howerdo@yahoo.co.uk> - 2012-10-06 06:17 -0700
Re: Olympic Spririt for Forth arc <arc.deletethis@vorsicht-bissig.de> - 2012-10-07 23:45 +1300
Re: Olympic Spririt for Forth theoriginalsnial@gmail.com - 2012-10-10 09:34 -0700
Re: Olympic Spririt for Forth Mark Wills <forthfreak@gmail.com> - 2012-10-10 12:16 -0700
Re: Olympic Spririt for Forth Andrew Haley <andrew29@littlepinkcloud.invalid> - 2012-10-10 20:04 -0500
Re: Olympic Spririt for Forth Paul Rubin <no.email@nospam.invalid> - 2012-10-04 11:41 -0700
Re: Olympic Spririt for Forth theoriginalsnial@gmail.com - 2012-10-05 12:29 -0700
Re: Olympic Spririt for Forth Paul Rubin <no.email@nospam.invalid> - 2012-10-06 19:26 -0700
Re: Olympic Spririt for Forth albert@spenarnc.xs4all.nl (Albert van der Horst) - 2012-10-05 19:09 +0000
Re: Olympic Spririt for Forth "Paul E. Bennett" <Paul_E.Bennett@topmail.co.uk> - 2012-10-02 22:03 +0100
Re: Olympic Spririt for Forth Ilya Tarasov <ilya74.tarasov@gmail.com> - 2012-10-06 08:30 -0700
Re: Olympic Spririt for Forth ilya74.tarasov@gmail.com - 2012-09-29 07:09 -0700
Re: Olympic Spririt for Forth visualforth@rocketmail.com - 2012-10-09 14:30 -0700
Re: Olympic Spririt for Forth rickman <gnuarm@gmail.com> - 2012-10-09 18:27 -0400
Re: Olympic Spririt for Forth "Paul E. Bennett" <Paul_E.Bennett@topmail.co.uk> - 2012-10-10 09:46 +0100
Re: Olympic Spririt for Forth visualforth@rocketmail.com - 2012-10-10 03:52 -0700
Re: Olympic Spririt for Forth Paul Rubin <no.email@nospam.invalid> - 2012-10-10 06:01 -0700
Re: Olympic Spririt for Forth visualforth@rocketmail.com - 2012-10-10 07:42 -0700
Re: Olympic Spririt for Forth theoriginalsnial@gmail.com - 2012-10-10 09:10 -0700
Re: Olympic Spririt for Forth Paul Rubin <no.email@nospam.invalid> - 2012-10-10 10:34 -0700
Re: Olympic Spririt for Forth visualforth@rocketmail.com - 2012-10-11 17:17 -0700
Re: Olympic Spririt for Forth rickman <gnuarm@gmail.com> - 2012-10-13 01:03 -0400
Re: Olympic Spririt for Forth rickman <gnuarm@gmail.com> - 2012-10-10 21:59 -0400
Re: Olympic Spririt for Forth Paul Rubin <no.email@nospam.invalid> - 2012-10-10 20:57 -0700
Re: Olympic Spririt for Forth visualforth@rocketmail.com - 2012-10-11 02:05 -0700
Re: Olympic Spririt for Forth Matthias Koch <koch@pci.uni-hannover.de> - 2012-10-15 11:20 +0200
Re: Olympic Spririt for Forth albert@spenarnc.xs4all.nl (Albert van der Horst) - 2012-10-15 11:53 +0000
Re: Olympic Spririt for Forth Paul Rubin <no.email@nospam.invalid> - 2012-10-15 08:52 -0700
Re: Olympic Spririt for Forth visualforth@rocketmail.com - 2012-10-15 11:53 -0700
Re: Olympic Spririt for Forth rickman <gnuarm@gmail.com> - 2012-10-15 18:00 -0400
Page 6 of 8 — ← Prev page 1 2 3 4 5 [6] 7 8 Next page →
| From | "Elizabeth D. Rather" <erather@forth.com> |
|---|---|
| Date | 2012-10-04 11:31 -1000 |
| Message-ID | <mf2dnaVgFe3XnfPNnZ2dnUVZ_sSdnZ2d@supernews.com> |
| In reply to | #15924 |
On 10/4/12 9:41 AM, Paul Rubin wrote: > Bernd Paysan <bernd.paysan@gmx.de> writes: >> In Forth, you write a program which draws the robot, you don't write an >> interpreter for complex nested robot data structures. The program is >> nested. > > So what do you do if you want to describe a few different robots in the > program? Write separate programs for each? Having built one robot, you should have a bunch of high-level robot tools that you can use for the next. You'll probably add a few and refine the existing ones; so with every robot you build your toolkit becomes more powerful and more efficient. >>> compare its sophistication to something like Unity3D. >> You know that we don't do the "breakfast machine" in Forth. We try to >> write to the point, not to all possible future extensions. We can >> extend our systems as we go. > > But all the features in Unity3D are there because somebody wanted them. > And if you're making a toolkit for other people to use, I think you > really do have to anticipate their requirements. It should be possible to design your toolkit at the outset with some known requirements. But before it can be released, you had better use it to build a bunch of robots, and get a few other "test users" to build some, in order to verify that you have the right tools and they work in the way you intended. In this process you'll almost certainly find that a lot of your initial expectations weren't quite right. What does *not* work is to look at other products and design something to complete, implement that design, and then release it without actually using it (and having some other folks use it). >> The homepage of Glforth (Gerald Wodni's game engine) is here: >> http://www.complang.tuwien.ac.at/anton/lvas/stack-abgaben/07w/glforth/ > > This looks nice. > >>> Forth though has no machine-checked types at all... spend a lot of time >>> tediously debugging. >> No, you just write your program piecemeal, and debug a few additional >> word at a time. > > But then you end up modifying the code and that usually introduces > errors, so you're back to debugging. Sure, all software development is an iterative process. You build some tools, test them, and then when you use them you find you wish they work slightly differently. So you make the mods and use them to take the next steps. Fortunately, the change/test cycle is so short and so easy in Forth it's far from tedious. >> Furthermore, we don't really have that many types in >> Forth, so the most likely confusion is between integers and floats. > > Don't forget addresses and xt's, which are easy to get confused with > data. And I don't think Forth's lack of strings, arrays, associative > tables, closures, etc. help its attractiveness to programmers used to > such newfangled conveniences. I have worked on a bunch of robotics projects in past years. I've never found confusion of data types to be a problem. As we've discussed elsewhere, it's trivial to define exactly the kinds of arrays you need. As for strings, the main thing you encounter in robotics is sequences of command codes, which are easily defined using the words we already have. Cheers, Elizabeth -- ================================================== Elizabeth D. Rather (US & Canada) 800-55-FORTH FORTH Inc. +1 310.999.6784 5959 West Century Blvd. Suite 700 Los Angeles, CA 90045 http://www.forth.com "Forth-based products and Services for real-time applications since 1973." ==================================================
[toc] | [prev] | [next] | [standalone]
| From | kenney@cix.compulink.co.uk |
|---|---|
| Date | 2012-10-03 16:53 -0500 |
| Message-ID | <58WdnVyyI_V6LvHNnZ2dnUVZ8nydnZ2d@giganews.com> |
| In reply to | #15873 |
In article <7xbogk71fc.fsf@ruckus.brouhaha.com>, no.email@nospam.invalid (Paul Rubin) wrote: > They want rendered, shaded robots > walking around on the screen, that they can replicate, vaporize, etc. I very much doubt that those are written from scratch there will be some sort of of object editor. I have used Delphi and you do not need to to program to design a user interface. You will need to code to various bits like what to do with the input but the basic layout is drag and drop and possibly altering properties with the property editor. The IDE generates the code needed to actually display the form or forms. WinForth also comes with a forms editor to simplify things. Ken Young
[toc] | [prev] | [next] | [standalone]
| From | Paul Rubin <no.email@nospam.invalid> |
|---|---|
| Date | 2012-10-03 16:50 -0700 |
| Message-ID | <7x626r5d4a.fsf@ruckus.brouhaha.com> |
| In reply to | #15896 |
kenney@cix.compulink.co.uk writes: >> They want rendered, shaded robots > I very much doubt that those are written from scratch there will be > some sort of of object editor. Yes, Unity3D. But there is a lot of programming possible in the game, including low level programming. I last talked to the developers about a year ago so I don't know how much of what they were considering actually made it in. But there were some very audacious concepts on the boards.
[toc] | [prev] | [next] | [standalone]
| From | Hugh Aguilar <hughaguilar96@yahoo.com> |
|---|---|
| Date | 2012-10-03 18:06 -0700 |
| Message-ID | <14f32650-641c-4003-a222-ab487d066965@lo4g2000pbb.googlegroups.com> |
| In reply to | #15872 |
On Oct 2, 5:59 pm, Bernd Paysan <bernd.pay...@gmx.de> wrote: > Paul Rubin wrote: > > Bernd Paysan <bernd.pay...@gmx.de> writes: > >>> I don't think it > >>> would be feasible to implement anything like Code Hero with Forth. > >>> Forth has its own applicable areas that are somewhat different. > > >> What part of Code Hero would be impossible? > > > The teaching part, if the idea is for kids to implement animated games > > with 3d graphics. They can't reasonably be expected to do that by > > writing low level Forth code. > > What about writing high level 3d-turtle graphics code? Forth is not > about writing "dup swap + over !", it is about creating domain specific > programming languages. I found OpenGL to be "way too low-level" for me, > and therefore, I added a 3D turtle graphics in MINOS. It's an awful lot > easier to use than OpenGL. One of my first programs for the C64 was a 4D turtle graphics program. The turtle could move in W, X, Y and Z axis. The program showed a 3D image with the parallel lines going to a vanishing point in the background. It was possible however to rotate the perspective to see the underlying 4D object from various angles. I did that when I was 18 years old, so it should be possible for the youths described in this Olympic Spirit project.
[toc] | [prev] | [next] | [standalone]
| From | kenney@cix.compulink.co.uk |
|---|---|
| Date | 2012-10-03 16:53 -0500 |
| Message-ID | <M7OdnYE774B7LvHNnZ2dnUVZ7o-dnZ2d@giganews.com> |
| In reply to | #15866 |
In article <7x391wsjjp.fsf@ruckus.brouhaha.com>, no.email@nospam.invalid (Paul Rubin) wrote: > They can't reasonably be expected to do that by > writing low level Forth code. Well HiSoft Forth came with turtle graphics and I remember versions of Basic which included sprites and collision detection even IIRC one which used 3D objects. There was also one or two MMRPG which used Forth as the scripting language. I can remember when children were expected to program in Logo. Ken Young
[toc] | [prev] | [next] | [standalone]
| From | theoriginalsnial@gmail.com |
|---|---|
| Date | 2012-10-03 00:38 -0700 |
| Message-ID | <67089f61-2f1c-4106-9475-18cf5c6eb707@googlegroups.com> |
| In reply to | #15863 |
Hi Paul, > > It's documented on the build-it page: > > > http://www.fignition.co.uk/documentation/build-it-rev-e > > > It's an AtMega168. > > I didn't see anything on that page identifying the part From the page, 5th bullet point after the first image: "• A plastic tube containing 3 chips: An AtMega168, a Microchip 23K640 8Kb SRAM and an AMIC A25L040-F 4Mbit Flash Chip..." User's programs run Forth from Serial RAM, at speeds comparable with machine code on an 8-bit micro (60 to 300 KIPs). Paul E Bennett wrote: > > I think we need things to be on several different levels. Indeed, I did qualify the previous paragraph in my post by saying "And how is it inspirational if every computer.." > > There are quite a number of cheap kits out there but which ones are most > > suitable. There are quite a number of cheap kits out there but which ones > > are most suitable. The question really is why don't kids program today and the key message with all the kits its that you need a multi-Giga everything to learn to program, because the microcontroller kits need a modern host computer and a Ras-Pi is a modern computer (albeit built from mobile phone components). It's that assumption I think needs challenging. Whereas my generation could start programming within a second of powering on their computer this generation won't touch any code without having an incomprehensible underlying system behind it. It's true an MSP430 kit itself is simple, but the host/target environment isn't. Or rather, imagine if it was back in the early 80s and the ZX81 was becoming available, but instead of being able to turn it on and program it directly you needed to hook it up to a micro-VAX II supermini computer; learn its job control language and a DEC VAX Pascal to Z80 cross compiler before squirting your programs across serially to the Sinclair. Would my generation have seen that setup as a hurdle? Yes, it's a massive hurdle at the system level, language level, development environment level and host-target level. And if the alternative was a pocket-VAX computer which worked the same way it'd still be pretty much the same challenge. But this is what we're planning to deliver to today's kids; hardly anyone seriously questions whether its the sheer complexity of modern systems: the end-to-end environments we're offering that makes them a hindrance. So, although simple doesn't always mean small-scale, in practice our large-scale systems and their associated environments are incomprehensibly complex... and we know that (a) whereas a high proportion possibly at the high point, up to 25% of kids were learning to program to some degree in the 80s, less than 1% do today. and (b) If I / we were faced with the VAX scenario I described above, it would count as a serious hurdle to learning to program. Yet we still believe complex, modern systems are the only way. > The computer game "Code Hero" > teaches kids how to program 3D graphics games in Javascript (using those > gigabytes and gigahertz) and is doing pretty well. I've heard of MIT's Scratch; MS's Kodu and another Java-based (essentially a library) for teaching kids to code games. I hadn't heard of "Code Hero", so I'll have a look. Nevertheless, I'm scratching my head on why javascript would be a good intro for children's programming (it involves pretty complex syntax and semantics to begin with, wrapped inside another language and kids do have hurdles to get over when learning the syntax for arduino sketches, i.e. hurdles compared with learning Basic on an early 80s computer) and intuitively I'd guess it's mostly about plugging pre-written blocks of code together; because there must be a lot of work going on behind the scenes to mask the complexity of 3D graphic games. But I will have a look. -cheers from julz
[toc] | [prev] | [next] | [standalone]
| From | Paul Rubin <no.email@nospam.invalid> |
|---|---|
| Date | 2012-10-03 02:06 -0700 |
| Message-ID | <7xfw5vx6uy.fsf@ruckus.brouhaha.com> |
| In reply to | #15875 |
theoriginalsnial@gmail.com writes: > From the page, 5th bullet point after the first image: > "• A plastic tube containing 3 chips: An AtMega168, Aha, thanks, I was looking for the string "AVR". > User's programs run Forth from Serial RAM, I think you mean static ram (SRAM). > this generation won't touch any code without having an > incomprehensible underlying system behind it. They now how to launch a browser. All the infrastructure under it is buttoned up so it doesn't have to be comprehensible. Do you know how the chips inside the Fignition work? It's the same thing. > It's true an MSP430 kit itself is simple, but the host/target > environment isn't.... DEC VAX Pascal to Z80 cross compiler before > squirting your programs across serially to the Sinclair. That presumes your goal is to program a remote embedded computer, which I'd say is a fairly advanced topic. Beginning programmers are better off programming their PC directly, in friendly coding environments with good error reporting and so on. > But this is what we're planning to deliver to today's kids; hardly > anyone seriously questions whether its the sheer complexity of modern > systems: the end-to-end environments we're offering that makes them a > hindrance. It's those kids who usually end up explaining computers to their parents, so it can't be too much of a hindrance to them. > So, although simple doesn't always mean small-scale, in practice our > large-scale systems and their associated environments are > incomprehensibly complex... and we know that Surely a much more natural way would be allowing just talking to the computer, like on Star Trek. That involves computers with speech recognition, natural language understanding, etc. In other words, stuff even more powerful and complex than the stuff you're complaining about, so we don't have it yet. > I hadn't heard of "Code Hero", so I'll have a look. www.primerlabs.com/codehero . > I'd guess it's mostly about plugging pre-written blocks of code > together; because there must be a lot of work going on behind the > scenes to mask the complexity of 3D graphic games. It starts out that way. As you get deeper and deeper into it, you get to see and modify what's making it actually work. The technical implementation is very clever in how it lets you do that.
[toc] | [prev] | [next] | [standalone]
| From | theoriginalsnial@gmail.com |
|---|---|
| Date | 2012-10-03 03:38 -0700 |
| Message-ID | <e538a1df-8ea1-470c-a756-f89b4f16eae9@googlegroups.com> |
| In reply to | #15876 |
Hi Paul, > Aha, thanks, I was looking for the string "AVR". > > User's programs run Forth from Serial RAM, > I think you mean static ram (SRAM). The Microchip 23K640 is an 8-pin SPI Serial RAM chip which is run at 10MHz giving 0.9µs/byte read speeds and is pipelined with Forth instruction execution. > > this generation won't touch any code without having an > > incomprehensible underlying system behind it. > They know how to launch a browser. All the infrastructure under it is > buttoned up so it doesn't have to be comprehensible. Do you know how > the chips inside the Fignition work? It's the same thing. Yes, I actually do know how the chips work. I have a research degree in Computer Architecture from Manchester University and I do understand the purpose abstraction and encapsulation, nevertheless we make gross oversimplifications when we assume that because we've made computers easier to use then the abstractions somehow work for learning to code. If they were, we'd expect more kids to be coding than ever (because Javascript is only a click away), but in practice we find progressively fewer kids learn; and of those who do and go onto enter University to study Computer Science have a poorer grasp of coding and when they graduate, are on average just not as good. It's easy to see why when you look. We think that wrapping the abstraction issue up with "launch a browser" deals with the question of user complexity, but it doesn't. When I launch Firefox I'm presented with a user environment that's actually pretty complex (compared with an early 80s machine). At that level, it's not, in truth, all hidden. If I then start to learn to code using Firefox and Javascript I'd head to the Tools menu which gives me 8 sub-options from "Web Developer" all of which present me with a development environment more complex than an early 80s micro on top of a language that's more complex. It's only a 'click' away and the tools are more 'powerful', but it's far more of a hurdle overall. I could of course go to a link where I'm presented with a wrapper for Javascript and learn it that way and again that's another layer I'd be going through in order to code. All of this, in every form, is more complex than for this generation of kids' forbears. They literally switched on a BBC micro and typed: 10 PRINT "I'm Fab!" <return> RUN which, by any measure is less of a hurdle. > > It's true an MSP430 kit itself is simple, but the host/target > > environment isn't.... DEC VAX Pascal to Z80 cross compiler before > That presumes your goal is to program a remote embedded computer, which Posters were comparing FIGnition with an MSP430 or Arduino in the previous post on the basis that they too were simple, I was arguing that they aren't, because the end-to-end environment is complex. FIGnition isn't a remote embedded machine and is as simple to code to, because you can use it and program it just like an early 80s computer. > Beginning programmers are better > off programming their PC directly, in friendly coding environments with > good error reporting and so on. The question is what constitutes a 'friendly coding environment'. Even modern kids oriented environments look friendly and glossy, but really they are sophisticated environments that present more practical end-to-end hurdles to learning programming than computers from previous generations. > the end-to-end environments we're offering that makes them a > > hindrance. > It's those kids who usually end up explaining computers to their > parents, so it can't be too much of a hindrance to them. Again, this isn't actually true. Firstly, children are often able to explain how to *use* modern computers to their parents (though I think this is less the case than 20 years ago), but they aren't explaining computers themselves. Again it's the fallacy of conflating usability with comprehensibility, which is borne out because in fact 10x fewer kids today learn to code, compared with their parents. They're far more in love with tech, but far less able to code it, and this points to the opposite: modern tech is a hinderence in that respect. > > So, although simple doesn't always mean small-scale, in practice our > > large-scale systems and their associated environments are > > incomprehensibly complex... and we know that > Surely a much more natural way would be allowing just talking to the > computer, like on Star Trek. That involves computers with speech > recognition, natural language understanding, etc. In other words, stuff > even more powerful and complex than the stuff you're complaining about, > so we don't have it yet. I'm not convinced. Modern systems are very usable, but importantly, unambiguous. Natural language processing for computers would make programming an ambiguous activity; it would involve the same problems as when customers specify systems to programmers. Besides, NLP is always a bit more complex than current tech ;-) > It starts out that way. As you get deeper and deeper into it, you get > to see and modify what's making it actually work. The technical > implementation is very clever in how it lets you do that. Well, I said I'd have a look, I'll do that at some point. -cheers from julz
[toc] | [prev] | [next] | [standalone]
| From | Paul Rubin <no.email@nospam.invalid> |
|---|---|
| Date | 2012-10-03 13:40 -0700 |
| Message-ID | <7xhaqb2ssq.fsf@ruckus.brouhaha.com> |
| In reply to | #15877 |
theoriginalsnial@gmail.com writes: > The Microchip 23K640 is an 8-pin SPI Serial RAM chip Oh, interesting, SRAM (term used in the web page) usually means "static". > which is run at 10MHz giving 0.9µs/byte read speeds Do you mean cycles per byte? > If I then start to learn to code using Firefox and > Javascript I'd head to the Tools menu which gives me 8 sub-options Sure, that's a terrible way to code. Try something like Geany with Python, or maybe Logo or something like that. I just mean it's easier to program with something that manages low-level details for you (such as memory allocation) more than Forth does. > They literally switched on a BBC micro and typed: 10 PRINT "I'm Fab!" > <return> RUN which, by any measure is less of a hurdle. You're complaining about the boot-up delay of modern pc's? Yes it's annoying, but people including kids are used to it. I just leave mine running all the time (its idle power consumption is maybe 10W), partly because it keeps my network connections open. If I want to start a python environment (I use IDLE sometimes, a fairly primitive IDE) I just click a toolbar icon and I bet it launches faster than the BBC micro powers up. The startup delay is barely noticable, maybe 1/4 of a second on my laptop (I'm sure the SSD helps). > Posters were comparing FIGnition with an MSP430 or Arduino in the > previous post on the basis that they too were simple, I was arguing > that they aren't, because the end-to-end environment is > complex. FIGnition isn't a remote embedded machine and is as simple to > code to, because you can use it and program it just like an early 80s > computer. There are Forth environments like 4e4th that you can flash onto the Launchpad or Arduino, and then just point a terminal at them. How is Fignition different? And don't you have to boot your PC in order to start the terminal program before you can type to the Fignition board? Anyway, the professional Forth systems like Swift also operate as cross-compilers to tethered targets, so that method still has virtues. I still don't understand the notion that embedded boards are good for learning programming as a raw beginner. They're good at the next level, if you want to write low level code or control actual hardware. > Even modern kids oriented environments look friendly and glossy, but > really they are sophisticated environments that present more practical > end-to-end hurdles to learning programming than computers from > previous generations. Have you ever seen Minecraft? It's a scriptable game, and kids get fanatical about programming it. Code Hero is partly inspired by it.
[toc] | [prev] | [next] | [standalone]
| From | theoriginalsnial@gmail.com |
|---|---|
| Date | 2012-10-04 01:00 -0700 |
| Message-ID | <6cd04453-c73a-4587-a160-0603784ef445@googlegroups.com> |
| In reply to | #15893 |
Hi Paul, > > The Microchip 23K640 is an 8-pin SPI Serial RAM chip > Oh, interesting, SRAM (term used in the web page) usually means "static". They're usually referred to as Serial SRAM chips. > > which is run at 10MHz giving 0.9µs/byte read speeds > Do you mean cycles per byte? 9 cycles at 10MHz is 0.9µs. (9/10MHz = 0.9µs). > > If I then start to learn to code using Firefox and > > Javascript I'd head to the Tools menu which gives me 8 sub-options > Sure, that's a terrible way to code. Try something like Geany with > Python, or maybe Logo or something like that. I just mean it's easier > to program with something that manages low-level details for you (such > as memory allocation) more than Forth does. Actually, you were claiming the complexity was hidden behind all the abstractions so coding is as easy as launching a browser. It's true that features like automatic memory allocation will help when coding, but the reality is that the end-to-end complexity is still the biggest hurdle the kids have to face. For example your alternative suggestions: Geany with Python / Logo etc illustrate my point. If all this complexity was truly hidden why would I want 'Geany' with Python? Surely Python would have hidden *all* the complexity and Geany would be unnecessary? Surely Python, given its size and level of abstraction, would be a better Logo than Logo? The thing is that it must be our modern, complex systems that are the hurdle. Javascript used to be literally a menu-option away (View->Page Source, but now it's a sub-option), but kids just don't click it. I guess it's too much effort, but if they did, they'd be faced with a pretty hairy mass of script that'd put over 95% of them off. They don't then do a search for programming languages, find Python's already on their computer and drop down to a command line and then do another search to find tools to make its hostile interactive environment friendlier and then come across Geany or Logo or whatever. > > They literally switched on a BBC micro and typed: 10 PRINT "I'm Fab!" > > <return> RUN which, by any measure is less of a hurdle. > You're complaining about the boot-up delay of modern pc's? I think it's possible to see, given the context and the fact I didn't mention PC boot-up times, I'm talking about the overall, end-to-end level of complexity. Long boot up times are just symptomatic and keeping systems on sleep allieviate this somewhat, but the hurdles are still there, compared with early 80s systems. And early 80s systems were brilliant at getting kids to code; at least 10 to 20 x more effective than any combination of languages and environments on modern systems. One would think that given the 'friendliness' and level of programmer help (e.g. code completion, syntax highlighting, abstraction, managed memory etc) and wads of resources, languages and IDEs that every kid would be a coder today, (if that was the key factor) because all these things are much better than they were. But, the one major thing that's different is the complexity. Machines today are 10,000 times more complex and this complexity does leak into every aspect of computing from modern browsers to development environments and languages. Is it possible that this is the primary reason they don't code? > If I want to start a python environment (I use IDLE sometimes, a fairly > primitive IDE) Wasn't it Geany a few seconds ago? > There are Forth environments like 4e4th that you can flash onto the > Launchpad or Arduino, Or AmForth. > .. And don't you have to boot your PC in order to > start the terminal program before you can type to the Fignition board? FIGnition, unlike embedded MCU boards like Launchpad or Arduino, is a whole, self-contained computer with a keypad for programming and video output and boots straight into its programming environment. I thought it was obvious from the introductory paragraph on the FIGnition home page that with FIGnition you can code on its keypad, directly into the machine as you would with an early 80s micro. However, on reflection, perhaps it's not obvious enough for some people. > Have you ever seen Minecraft? It's a scriptable game, and kids get > fanatical about programming it. Code Hero is partly inspired by it. Minecraft can also emulate a 6502 using only a million times the resources of the original processor ;-) -cheers from julz
[toc] | [prev] | [next] | [standalone]
| From | "Elizabeth D. Rather" <erather@forth.com> |
|---|---|
| Date | 2012-10-03 22:32 -1000 |
| Message-ID | <gsOdnTsiHaYL1PDNnZ2dnUVZ_qSdnZ2d@supernews.com> |
| In reply to | #15906 |
On 10/3/12 10:00 PM, theoriginalsnial@gmail.com wrote: > Hi Paul, > >>> The Microchip 23K640 is an 8-pin SPI Serial RAM chip >> Oh, interesting, SRAM (term used in the web page) usually means "static". > > They're usually referred to as Serial SRAM chips. By whom? What could be "serial" about SRAM? Cheers, Elizabeth -- ================================================== Elizabeth D. Rather (US & Canada) 800-55-FORTH FORTH Inc. +1 310.999.6784 5959 West Century Blvd. Suite 700 Los Angeles, CA 90045 http://www.forth.com "Forth-based products and Services for real-time applications since 1973." ==================================================
[toc] | [prev] | [next] | [standalone]
| From | theoriginalsnial@gmail.com |
|---|---|
| Date | 2012-10-04 04:49 -0700 |
| Message-ID | <2cd27c99-645a-492e-b8ee-b0278a6c06aa@googlegroups.com> |
| In reply to | #15907 |
Hi Elizabeth, > >>> The Microchip 23K640 is an 8-pin SPI Serial RAM chip > >> Oh, interesting, SRAM (term used in the web page) usually means "static". > > They're usually referred to as Serial SRAM chips. > By whom? What could be "serial" about SRAM? The protocol used to access them. Microchip Serial SRAM chips use an SPI protocol, e.g. you'd select the chip (by asserting the /SS pin low), then clock in a command to read from a particular address, then the address, then start reading data - it'd get clocked out of the chip one bit at a time, incrementing to the next address after 8-bits until you send a new command. Thus it's Random Access, but serial. -cheers from julz > ==================================================
[toc] | [prev] | [next] | [standalone]
| From | Mark Wills <forthfreak@gmail.com> |
|---|---|
| Date | 2012-10-04 01:35 -0700 |
| Message-ID | <a5807c98-a4c3-4c0b-ac3d-7cc33dda5877@w3g2000yqe.googlegroups.com> |
| In reply to | #15906 |
On Oct 4, 9:00 am, theoriginalsn...@gmail.com wrote:
> Hi Paul,
>
> > > The Microchip 23K640 is an 8-pin SPI Serial RAM chip
> > Oh, interesting, SRAM (term used in the web page) usually means "static".
>
> They're usually referred to as Serial SRAM chips.
>
> > > which is run at 10MHz giving 0.9µs/byte read speeds
> > Do you mean cycles per byte?
>
> 9 cycles at 10MHz is 0.9µs. (9/10MHz = 0.9µs).
>
> > > If I then start to learn to code using Firefox and
> > > Javascript I'd head to the Tools menu which gives me 8 sub-options
> > Sure, that's a terrible way to code. Try something like Geany with
> > Python, or maybe Logo or something like that. I just mean it's easier
> > to program with something that manages low-level details for you (such
> > as memory allocation) more than Forth does.
>
> Actually, you were claiming the complexity was hidden behind all the abstractions so coding is as easy as launching a browser. It's true that features like automatic memory allocation will help when coding, but the reality is that the end-to-end complexity is still the biggest hurdle the kids have to face. For example your alternative suggestions: Geany with Python / Logo etc illustrate my point. If all this complexity was truly hidden why would I want 'Geany' with Python? Surely Python would have hidden *all* the complexity and Geany would be unnecessary? Surely Python, given its size and level of abstraction, would be a better Logo than Logo?
>
> The thing is that it must be our modern, complex systems that are the hurdle. Javascript used to be literally a menu-option away (View->Page Source, but now it's a sub-option), but kids just don't click it. I guess it's too much effort, but if they did, they'd be faced with a pretty hairy mass of script that'd put over 95% of them off. They don't then do a search for programming languages, find Python's already on their computer and drop down to a command line and then do another search to find tools to make its hostile interactive environment friendlier and then come across Geany or Logo or whatever.
>
> > > They literally switched on a BBC micro and typed: 10 PRINT "I'm Fab!"
> > > <return> RUN which, by any measure is less of a hurdle.
> > You're complaining about the boot-up delay of modern pc's?
>
> I think it's possible to see, given the context and the fact I didn't mention PC boot-up times, I'm talking about the overall, end-to-end level of complexity. Long boot up times are just symptomatic and keeping systems on sleep allieviate this somewhat, but the hurdles are still there, compared with early 80s systems. And early 80s systems were brilliant at getting kids to code; at least 10 to 20 x more effective than any combination of languages and environments on modern systems.
>
> One would think that given the 'friendliness' and level of programmer help (e.g. code completion, syntax highlighting, abstraction, managed memory etc) and wads of resources, languages and IDEs that every kid would be a coder today, (if that was the key factor) because all these things are much better than they were.
>
> But, the one major thing that's different is the complexity. Machines today are 10,000 times more complex and this complexity does leak into every aspect of computing from modern browsers to development environments and languages. Is it possible that this is the primary reason they don't code?
>
> > If I want to start a python environment (I use IDLE sometimes, a fairly
> > primitive IDE)
>
> Wasn't it Geany a few seconds ago?
>
> > There are Forth environments like 4e4th that you can flash onto the
> > Launchpad or Arduino,
>
> Or AmForth.
>
> > .. And don't you have to boot your PC in order to
> > start the terminal program before you can type to the Fignition board?
>
> FIGnition, unlike embedded MCU boards like Launchpad or Arduino, is a whole, self-contained computer with a keypad for programming and video output and boots straight into its programming environment.
>
> I thought it was obvious from the introductory paragraph on the FIGnition home page that with FIGnition you can code on its keypad, directly into the machine as you would with an early 80s micro.
>
> However, on reflection, perhaps it's not obvious enough for some people.
>
> > Have you ever seen Minecraft? It's a scriptable game, and kids get
> > fanatical about programming it. Code Hero is partly inspired by it.
>
> Minecraft can also emulate a 6502 using only a million times the resources of the original processor ;-)
>
> -cheers from julz
In the 80's I was lucky enough to be surrounded by home computers in
my home. We first got a TI-99/4A, then a ZX spectrum, then a Commodore
64. Then an Amiga. At one point, we had a Spectrum, a C64, and an
Amiga 500 all at the same time.
With the execption of the Amiga, you could turn them on and be
programming in BASIC in around 1 second. I trudge to the newsagents
once a month and pick up Computer and Video Games (C&VG) and type in
the listings that always promised to be awesome, but were actually
kind of crap. Of course, they would be full of bugs, most type-setting
errors, so much of that month would be spent trying fix the program
that you spent 5 hours typing in. You learned to program. Okay, it was
"just" BASIC, but you learned to program. It was completely
fascinating - getting the computer to do what you wanted it to do.
I contrast that with my own son. He has been surrounded by PC's,
Laptops, Mobile 'phones, Playstations, Wii's and Xbox's. We've had
them all over the years.
He's never once shown even the slightest interest in programming. He
never once asked me how these games worked. I find it a little
strange. When I saw games like Manic Miner on the spectrum, I was
desperate to know *how* they worked. Sure, I enjoyed playing them, but
*I* want to do that too!
Last year, I showed him Forth. I was pretty jazzed that he understood
it. He understood the stack, he understood why + comes after two
numbers, and he 'got' colon definitions the first time I showed him. I
thought I had him. But no. He's not bothered with it since.
I've concluded it's down to paradigm shifts, and when they enter your
life: Perhaps a generation behind me, TV and Radio was the big
paradigm shift. My parents remember when they got their first TV in
the house. I *always* had a TV in my house, so TV and radio is very
"meh" to me. TV and Radio was a big thing to them. A significant
portion of the generation behind me are into HAM radio. My theory is
this is because it became big just when they were at the right age to
grab a hold of it. HAM radio is *their* 80's computers.
A gneration behind them, radio in general was their "80's computers".
They'd build crystal radio sets and it would often foster a life-long
association with radio, many of them progressing to building their own
valve radio sets, and perhaps having a career in electronics, just
like we tinkered with 80's computers and had a career in computers.
What is sad is, that I feel my children haven't really experienced any
big paradigm shift that shape their lives. There's the internet, but
they treat the internet like I treat TV: They grew up with it. It's
nothing special. It's always been there.
I worry for the graduate generation. WHen I worked at Serck Controls,
we'd get graduates who didn't really know what went on inside a
computer. They could program a little in Java. Maybe they wrote a Java
applet (remember those) once. They didn't know much about processors,
registers, assembly language.
THat's okay. You can teach people this stuff. But the really worrying
part is, they're just not that interested, thanks. I would ask them
about "do you wonder how the Java compiler that you're using works? Or
that C compiler?"
"Nah. Fuck that. Someone else's problem".
Someone else's *problem*. Sad.
Who going to write the next generation of compilers? Will it become a
more and more specialist 'art'/science?
Another worrying thing: In my school in the 80's ('85/'86) we actually
had a computer studies class. It was mandatory; part of the
curriculum. We learned BBC basic and wrote simple little programs.
That's all gone. My son recently studied how to make a CD label in his
computer class. Whoop de fucking doo.
[toc] | [prev] | [next] | [standalone]
| From | Howerd <howerdo@yahoo.co.uk> |
|---|---|
| Date | 2012-10-06 06:17 -0700 |
| Message-ID | <6db3fcab-739e-4bef-a584-60fe5d05eb5d@googlegroups.com> |
| In reply to | #15908 |
On Thursday, October 4, 2012 10:35:00 AM UTC+2, M.R.W Wills wrote:
> On Oct 4, 9:00 am, theoriginalsn...@gmail.com wrote:
>
> > Hi Paul,
>
> >
>
> > > > The Microchip 23K640 is an 8-pin SPI Serial RAM chip
>
> > > Oh, interesting, SRAM (term used in the web page) usually means "static".
>
> >
>
> > They're usually referred to as Serial SRAM chips.
>
> >
>
> > > > which is run at 10MHz giving 0.9µs/byte read speeds
>
> > > Do you mean cycles per byte?
>
> >
>
> > 9 cycles at 10MHz is 0.9µs. (9/10MHz = 0.9µs).
>
> >
>
> > > > If I then start to learn to code using Firefox and
>
> > > > Javascript I'd head to the Tools menu which gives me 8 sub-options
>
> > > Sure, that's a terrible way to code. Try something like Geany with
>
> > > Python, or maybe Logo or something like that. I just mean it's easier
>
> > > to program with something that manages low-level details for you (such
>
> > > as memory allocation) more than Forth does.
>
> >
>
> > Actually, you were claiming the complexity was hidden behind all the abstractions so coding is as easy as launching a browser. It's true that features like automatic memory allocation will help when coding, but the reality is that the end-to-end complexity is still the biggest hurdle the kids have to face. For example your alternative suggestions: Geany with Python / Logo etc illustrate my point. If all this complexity was truly hidden why would I want 'Geany' with Python? Surely Python would have hidden *all* the complexity and Geany would be unnecessary? Surely Python, given its size and level of abstraction, would be a better Logo than Logo?
>
> >
>
> > The thing is that it must be our modern, complex systems that are the hurdle. Javascript used to be literally a menu-option away (View->Page Source, but now it's a sub-option), but kids just don't click it. I guess it's too much effort, but if they did, they'd be faced with a pretty hairy mass of script that'd put over 95% of them off. They don't then do a search for programming languages, find Python's already on their computer and drop down to a command line and then do another search to find tools to make its hostile interactive environment friendlier and then come across Geany or Logo or whatever.
>
> >
>
> > > > They literally switched on a BBC micro and typed: 10 PRINT "I'm Fab!"
>
> > > > <return> RUN which, by any measure is less of a hurdle.
>
> > > You're complaining about the boot-up delay of modern pc's?
>
> >
>
> > I think it's possible to see, given the context and the fact I didn't mention PC boot-up times, I'm talking about the overall, end-to-end level of complexity. Long boot up times are just symptomatic and keeping systems on sleep allieviate this somewhat, but the hurdles are still there, compared with early 80s systems. And early 80s systems were brilliant at getting kids to code; at least 10 to 20 x more effective than any combination of languages and environments on modern systems.
>
> >
>
> > One would think that given the 'friendliness' and level of programmer help (e.g. code completion, syntax highlighting, abstraction, managed memory etc) and wads of resources, languages and IDEs that every kid would be a coder today, (if that was the key factor) because all these things are much better than they were.
>
> >
>
> > But, the one major thing that's different is the complexity. Machines today are 10,000 times more complex and this complexity does leak into every aspect of computing from modern browsers to development environments and languages. Is it possible that this is the primary reason they don't code?
>
> >
>
> > > If I want to start a python environment (I use IDLE sometimes, a fairly
>
> > > primitive IDE)
>
> >
>
> > Wasn't it Geany a few seconds ago?
>
> >
>
> > > There are Forth environments like 4e4th that you can flash onto the
>
> > > Launchpad or Arduino,
>
> >
>
> > Or AmForth.
>
> >
>
> > > .. And don't you have to boot your PC in order to
>
> > > start the terminal program before you can type to the Fignition board?
>
> >
>
> > FIGnition, unlike embedded MCU boards like Launchpad or Arduino, is a whole, self-contained computer with a keypad for programming and video output and boots straight into its programming environment.
>
> >
>
> > I thought it was obvious from the introductory paragraph on the FIGnition home page that with FIGnition you can code on its keypad, directly into the machine as you would with an early 80s micro.
>
> >
>
> > However, on reflection, perhaps it's not obvious enough for some people.
>
> >
>
> > > Have you ever seen Minecraft? It's a scriptable game, and kids get
>
> > > fanatical about programming it. Code Hero is partly inspired by it.
>
> >
>
> > Minecraft can also emulate a 6502 using only a million times the resources of the original processor ;-)
>
> >
>
> > -cheers from julz
>
>
>
> In the 80's I was lucky enough to be surrounded by home computers in
>
> my home. We first got a TI-99/4A, then a ZX spectrum, then a Commodore
>
> 64. Then an Amiga. At one point, we had a Spectrum, a C64, and an
>
> Amiga 500 all at the same time.
>
>
>
> With the execption of the Amiga, you could turn them on and be
>
> programming in BASIC in around 1 second. I trudge to the newsagents
>
> once a month and pick up Computer and Video Games (C&VG) and type in
>
> the listings that always promised to be awesome, but were actually
>
> kind of crap. Of course, they would be full of bugs, most type-setting
>
> errors, so much of that month would be spent trying fix the program
>
> that you spent 5 hours typing in. You learned to program. Okay, it was
>
> "just" BASIC, but you learned to program. It was completely
>
> fascinating - getting the computer to do what you wanted it to do.
>
>
>
> I contrast that with my own son. He has been surrounded by PC's,
>
> Laptops, Mobile 'phones, Playstations, Wii's and Xbox's. We've had
>
> them all over the years.
>
>
>
> He's never once shown even the slightest interest in programming. He
>
> never once asked me how these games worked. I find it a little
>
> strange. When I saw games like Manic Miner on the spectrum, I was
>
> desperate to know *how* they worked. Sure, I enjoyed playing them, but
>
> *I* want to do that too!
>
>
>
> Last year, I showed him Forth. I was pretty jazzed that he understood
>
> it. He understood the stack, he understood why + comes after two
>
> numbers, and he 'got' colon definitions the first time I showed him. I
>
> thought I had him. But no. He's not bothered with it since.
>
>
>
> I've concluded it's down to paradigm shifts, and when they enter your
>
> life: Perhaps a generation behind me, TV and Radio was the big
>
> paradigm shift. My parents remember when they got their first TV in
>
> the house. I *always* had a TV in my house, so TV and radio is very
>
> "meh" to me. TV and Radio was a big thing to them. A significant
>
> portion of the generation behind me are into HAM radio. My theory is
>
> this is because it became big just when they were at the right age to
>
> grab a hold of it. HAM radio is *their* 80's computers.
>
>
>
> A gneration behind them, radio in general was their "80's computers".
>
> They'd build crystal radio sets and it would often foster a life-long
>
> association with radio, many of them progressing to building their own
>
> valve radio sets, and perhaps having a career in electronics, just
>
> like we tinkered with 80's computers and had a career in computers.
>
>
>
> What is sad is, that I feel my children haven't really experienced any
>
> big paradigm shift that shape their lives. There's the internet, but
>
> they treat the internet like I treat TV: They grew up with it. It's
>
> nothing special. It's always been there.
>
>
>
> I worry for the graduate generation. WHen I worked at Serck Controls,
>
> we'd get graduates who didn't really know what went on inside a
>
> computer. They could program a little in Java. Maybe they wrote a Java
>
> applet (remember those) once. They didn't know much about processors,
>
> registers, assembly language.
>
>
>
> THat's okay. You can teach people this stuff. But the really worrying
>
> part is, they're just not that interested, thanks. I would ask them
>
> about "do you wonder how the Java compiler that you're using works? Or
>
> that C compiler?"
>
>
>
> "Nah. Fuck that. Someone else's problem".
>
>
>
> Someone else's *problem*. Sad.
>
>
>
> Who going to write the next generation of compilers? Will it become a
>
> more and more specialist 'art'/science?
>
>
>
> Another worrying thing: In my school in the 80's ('85/'86) we actually
>
> had a computer studies class. It was mandatory; part of the
>
> curriculum. We learned BBC basic and wrote simple little programs.
>
> That's all gone. My son recently studied how to make a CD label in his
>
> computer class. Whoop de fucking doo.
Hi Mark,
When I was 15 I asked my school if they could by me some bits to make a computer, but they had no idea what I was talking about. That was 1969 - I bought my first computer around 1982 - an Amstrad CPC64.
I do worry about young people these days being so gullible - the power of advertising seems to be strong - and I don't see much judgement or discretion being used, or curiosity about how things really work.
Two questions : do you write a Word document, or do you program it? Do you program in C# or write in C#?
"Programming" in the sense that it is used in the sorts of companies where I work, is less about problem solving and more about fighting the IDE. It follows the corporate structure - interfacing is everything - fit in at all costs.
And of course, what is taught in schools tends to be what is required to get a job later, so its all about using programs, not writing them.
That is why I love Chucks's work - Forth, colorForth and the GA144 to name but three.
Best regards,
Howerd
[toc] | [prev] | [next] | [standalone]
| From | arc <arc.deletethis@vorsicht-bissig.de> |
|---|---|
| Date | 2012-10-07 23:45 +1300 |
| Message-ID | <87ipamwoey.fsf@vorsicht-bissig.de> |
| In reply to | #15908 |
We all seem to be assuming that kids don't program these days, unlike the halcyon days of yore when computers had 8 bits, we made our own fun and used the power of our imagination, we didn't have remote controls, and there was this thing called discipline. Are we really sure about this? (Julz, how do you know that 80s computers were '10-20x more effective at getting kids to code' ?) I mean, it seems to me thinking back on it that in my experience it was uncommon for kids to program in any way whatsoever, and very rare for them to get beyond simple BASIC or LOGO programs. I never really got beyond very rudimentary programs, and I'm fairly certain there was no-one in my year at school who did much more than that, and moderately sure there was no-one in the years either side of me. Later on I met people my age who had gotten into programming in a big way as kids or teenagers, so sure they existed, but I'd put the number at well shy of 1%. (I see your ancedotes, and i raise you mine) Maybe rather than something being wrong with either computers or kids these days, it's just the case that programming is something that doesn't really interest most kids, never has, probably never will, and people with the inclination to be real hackers are pretty rare, and, unsprisingly, well over-represented in this newsgroup. That's not to say I don't think it couldn't be presented in a way that would make it more approachable or fun for kids, or whatever, but I don't think it was really all that approachable or fun (for most kids) back in the day. Those that did anything beyond the rudimentary were those few that found it innately interesting and natural. The one thing I think maybe made it more attractive to program back then was the fact that the games and even applications available to you were not actually all that sophisticated, so it was easier to see yourself as footing it with commercial programs. -arc.
[toc] | [prev] | [next] | [standalone]
| From | theoriginalsnial@gmail.com |
|---|---|
| Date | 2012-10-10 09:34 -0700 |
| Message-ID | <321eec4a-814a-4b34-8bc0-f0d6a4419cae@googlegroups.com> |
| In reply to | #16004 |
Hi Arc, Thanks for your comment. > We all seem to be assuming that kids don't program these days, unlike > the halcyon days of yore when computers had 8 bits.. > Are we really sure about this? > (Julz, how do you know that 80s computers were '10-20x more effective at > getting kids to code' ?) Of course, there's a tendency to idealise the past, but here I'm basing it on real, but anecdoatal evidence. Firstly for all the flaws that it implies I take my school in the 80s as a representative example. We were in a non-selective LEA (no grammar schools) and I went to a comprehensive school which was certainly not the highest achieving, but was probably in the top 30% (though I don't really know) for the LEA. We had an 8 form intake and during the mid-80s Computer Studies was popular enough to run two classes, which represents 25% of that year. Obviously some of those taking the subject never learned to program (though the course was pretty programming-oriented) but I know there were others who didn't take the course who did know how to program, so I figure it balances. I assume that my school wasn't terribly exceptional in that respect, so I guess the average across schools then was unlikely to be < half ours, i.e. < 12.5%, and then I'm pessimistic about it being much better than our 25%. So I deduce 10% to 25% of pupils would do computer studies. Note (McKinsey.pdf): in 1984-1985 there were 13.4 computers / school (on average) enough to run at least two Computer Science classes (because at the time the biggest use for school computers was to teach Computer Studies, because the apps weren't available and since our school had about that number and ran 2 classes, spread out over each week, obviously). So, yes, I think my earlier figures aren't crazy. But it's also the demography of people who know how to program at least a little from that era, e.g. my sister (who actually trained to do nursery nursing) and her husband (who is a plumber) are both able to do some simple programming involving loops, conditionals, input/output and variables. Yet whenever you talk to today's kids about programming you really, really just get blank looks (and I've asked quite a number of children over the past 5 or so years). Sometimes this is because kids don't realise you can program computers. Jason Fitzpatrick from the Computer History Museum has a great little anecdote about one of their CHM open days where there was a BBC micro at the entrance allowing you to select a whole bunch of games from a Compact Flash card. And as one dad went past he hit Ctrl-Break and then typed in the classic 10 PRINT "I am Fab ";: GOTO 10 ego program and his son was utterly amazed: not merely because his dad could program, but because it was possible to program a computer at all! But mostly, it's because they don't know anyone who can, because literally no-one in their school does. But the thing is, this position makes sense. Technology is both far more commonplace today, yet far less accessible and at a gut level, it provides a sense that technology is pre-packaged and therefore you don't and can't mess with it and moreover one becomes blind to the question of programming our devices, because they're a given, it's just magic. And although the disciplines that makes large-scale software possible are crucial for the industry; they're counter-productive to education and understanding. It's like, we don't teach maths by gluing fancy graphs in Mathematica together and then getting kids to glue even more complex functions; even though Mathematica 'buttons-up' the complexity so you don't have to understand it all. You'd have to be crazy to think you'd teach Maths like that, or to think that only the brightest of kids should delve into concepts like rudimentary arithmetic or numbers themselves. Similarly, with literature. We don't start kids off with War and Peace.. we could 'button-up' the book by reading it to them or let them peruse the graphic novel version; or just help them identify the easy words; or just get them to express NEW War and Peace novels by gluing chapters together with episodes of Pokemon or something. We start them off (in the UK) usually with Phonics... it's all terribly low-level. Neither do we assume the best way to teach music is to just hand them a copy of Garageband and get them to stitch samples together. We don't argue that samples and modelled instruments 'button-up' the expertise of virtuoso musicians making learning to play a flute or piano a waste of time: we want children to learn real instruments because it conveys much more valuable skills. We don't argue that no-one needs to know those skills any more, because of all the sampled instrumentation we have. Instead we get kids to fumble with keys, strings and valves and begin generating barely tolerable rasps, squeeks and plonks. We start by getting young children to master the low-level, dare I say, implementation details, of music and then build it up. We don't give them an iPod for 20 years and then say, "A-ha perhaps now you'd like to have a go with a real instrument" - would we produce ANY decent musicians that way? Nor do we discount people who favour low-level learning in Maths, language, music, art, science, design, cooking etc. We don't say (with a little smirk): "A-ha, but a flute is still packaged innit? Why aren't you getting them to smelt their own flute or teach them about vibrations / air-pressure, harmonics etc... see, playing the flute is the same as a spin on Ableton live after all!" When it comes to teaching programming though we suspend those principles and decide they'll learn best using complex systems, systems that cannot be understood. We'll teach them using some kind of Duplo code (special fake, kiddy programming tools), where they're nicely insulated from the machine or force them grind through the complex tools, syntax and concepts we've built up over 30+ years. But the real problem *is* all the insulation: the many layers of magic that cuts us off one way or another. > I mean, it seems to me thinking back on it that in my experience it was > uncommon for kids to program in any way whatsoever > Later on I met > people my age who had gotten into programming in a big way as kids or > teenagers, so sure they existed, but I'd put the number at well shy of > 1%. So, anecdotally you do have a different experience - was this from the mid-80s too? > Maybe rather than something being wrong with either computers or kids > these days, it's just the case that programming is something that > doesn't really interest most kids, never has, probably never will.. Maybe, but empirical data says that both the number of students taking Computer Science at University has been seriously dropping and the quality of those who do take it, is getting worse. This is the jumping-off point for all the Raspberry PI motivation, because Eben Upton was motivated by noticing the changes at Cambridge; and you can easily find a video by Steve Furber about the same issue. Eben was saying (BBC Micro@30 event) that they were even getting more and more CS students who had NO prior programming experience. A number of Universities have also dropped Computer Science courses, Suffolk Uni being one of them. Interestingly, the quality of those who graduate in Computer Science is dropping too, relative to the intake. i.e. modern CS courses do a worse job of teaching computing than they did 20 years ago. Why? Could it be because the systems used to teach them are 10,000 times more complex than 30 years ago. Just maybe, maybe? > don't think it was really all that approachable or fun (for most kids) > back in the day. I'm not sure how to respond to this question. Computer programming was certainly more approachable in the 80s, because the UI involved typing lines of code just to get it to even load other people's programs. That is, you couldn't avoid it and it was easy to make (though easy to fix) mistakes on early machines, so you had to understand something of what you were doing. But programming environments lacked 'niceties' you find in modern environments and coding would be scruffy and unmaintainable spaghetti. But that's OK if you're learning: the 'niceties' we have now are there to help manage large-scale development. But it was certainly fun. Look up the video on kids learning with the Ras-PI, and a version of Snake. Now the interesting thing is that the Python program is just pure text and it runs a text version of Snake, but the (not especially geeky) kids found it exciting. It tells you that getting joy out of programming is about discovery and understanding, it isn't related to the power of the machine you're learning on or the sophistication of the output, the same program could have been done on a 2Kb ZX81 and with better graphics! And it didn't matter that Snake had been written a thousand times for every platform under the sun to these kids, what mattered was the discovery - and we know, kids actually do love discovering things; given the chance they get the same joy as the previous generation learning the same things! So, I don't think you need to compete with commercial apps to experience that. -cheers from julz
[toc] | [prev] | [next] | [standalone]
| From | Mark Wills <forthfreak@gmail.com> |
|---|---|
| Date | 2012-10-10 12:16 -0700 |
| Message-ID | <2bc51e76-1683-4955-9b4a-0f8ef5814f11@q4g2000vbg.googlegroups.com> |
| In reply to | #16166 |
On Oct 10, 5:34 pm, theoriginalsn...@gmail.com wrote: > Hi Arc, > > Thanks for your comment. > > > We all seem to be assuming that kids don't program these days, unlike > > the halcyon days of yore when computers had 8 bits.. > > Are we really sure about this? > > (Julz, how do you know that 80s computers were '10-20x more effective at > > getting kids to code' ?) > > Of course, there's a tendency to idealise the past, but here I'm basing it on real, but anecdoatal evidence. Firstly for all the flaws that it implies I take my school in the 80s as a representative example. We were in a non-selective LEA (no grammar schools) and I went to a comprehensive school which was certainly not the highest achieving, but was probably in the top 30% (though I don't really know) for the LEA. We had an 8 form intake and during the mid-80s Computer Studies was popular enough to run two classes, which represents 25% of that year. > > Obviously some of those taking the subject never learned to program (though the course was pretty programming-oriented) but I know there were others who didn't take the course who did know how to program, so I figure it balances. > > I assume that my school wasn't terribly exceptional in that respect, so I guess the average across schools then was unlikely to be < half ours, i.e. < 12.5%, and then I'm pessimistic about it being much better than our 25%. So I deduce 10% to 25% of pupils would do computer studies. Note (McKinsey.pdf): in 1984-1985 there were 13.4 computers / school (on average) enough to run at least two Computer Science classes (because at the time the biggest use for school computers was to teach Computer Studies, because the apps weren't available and since our school had about that number and ran 2 classes, spread out over each week, obviously). So, yes, I think my earlier figures aren't crazy. > > But it's also the demography of people who know how to program at least a little from that era, e.g. my sister (who actually trained to do nursery nursing) and her husband (who is a plumber) are both able to do some simple programming involving loops, conditionals, input/output and variables. > > Yet whenever you talk to today's kids about programming you really, really just get blank looks (and I've asked quite a number of children over the past 5 or so years). Sometimes this is because kids don't realise you can program computers. Jason Fitzpatrick from the Computer History Museum has a great little anecdote about one of their CHM open days where there was a BBC micro at the entrance allowing you to select a whole bunch of games from a Compact Flash card. And as one dad went past he hit Ctrl-Break and then typed in the classic 10 PRINT "I am Fab ";: GOTO 10 ego program and his son was utterly amazed: not merely because his dad could program, but because it was possible to program a computer at all! > > But mostly, it's because they don't know anyone who can, because literally no-one in their school does. But the thing is, this position makes sense. Technology is both far more commonplace today, yet far less accessible and at a gut level, it provides a sense that technology is pre-packaged and therefore you don't and can't mess with it and moreover one becomes blind to the question of programming our devices, because they're a given, it's just magic. > > And although the disciplines that makes large-scale software possible are crucial for the industry; they're counter-productive to education and understanding. It's like, we don't teach maths by gluing fancy graphs in Mathematica together and then getting kids to glue even more complex functions; even though Mathematica 'buttons-up' the complexity so you don't have to understand it all. You'd have to be crazy to think you'd teach Maths like that, or to think that only the brightest of kids should delve into concepts like rudimentary arithmetic or numbers themselves. > > Similarly, with literature. We don't start kids off with War and Peace.. we could 'button-up' the book by reading it to them or let them peruse the graphic novel version; or just help them identify the easy words; or just get them to express NEW War and Peace novels by gluing chapters together with episodes of Pokemon or something. We start them off (in the UK) usually with Phonics... it's all terribly low-level. > > Neither do we assume the best way to teach music is to just hand them a copy of Garageband and get them to stitch samples together. We don't argue that samples and modelled instruments 'button-up' the expertise of virtuoso musicians making learning to play a flute or piano a waste of time: we want children to learn real instruments because it conveys much more valuable skills. We don't argue that no-one needs to know those skills any more, because of all the sampled instrumentation we have. Instead we get kids to fumble with keys, strings and valves and begin generating barely tolerable rasps, squeeks and plonks. > > We start by getting young children to master the low-level, dare I say, implementation details, of music and then build it up. We don't give them an iPod for 20 years and then say, "A-ha perhaps now you'd like to have a go with a real instrument" - would we produce ANY decent musicians that way? > > Nor do we discount people who favour low-level learning in Maths, language, music, art, science, design, cooking etc. We don't say (with a little smirk): "A-ha, but a flute is still packaged innit? Why aren't you getting them to smelt their own flute or teach them about vibrations / air-pressure, harmonics etc... see, playing the flute is the same as a spin on Ableton live after all!" > > When it comes to teaching programming though we suspend those principles and decide they'll learn best using complex systems, systems that cannot be understood. We'll teach them using some kind of Duplo code (special fake, kiddy programming tools), where they're nicely insulated from the machine or force them grind through the complex tools, syntax and concepts we've built up over 30+ years. But the real problem *is* all the insulation: the many layers of magic that cuts us off one way or another. > > > I mean, it seems to me thinking back on it that in my experience it was > > uncommon for kids to program in any way whatsoever > > Later on I met > > people my age who had gotten into programming in a big way as kids or > > teenagers, so sure they existed, but I'd put the number at well shy of > > 1%. > > So, anecdotally you do have a different experience - was this from the mid-80s too? > > > Maybe rather than something being wrong with either computers or kids > > these days, it's just the case that programming is something that > > doesn't really interest most kids, never has, probably never will.. > > Maybe, but empirical data says that both the number of students taking Computer Science at University has been seriously dropping and the quality of those who do take it, is getting worse. This is the jumping-off point for all the Raspberry PI motivation, because Eben Upton was motivated by noticing the changes at Cambridge; and you can easily find a video by Steve Furber about the same issue. Eben was saying (BBC Micro@30 event) that they were even getting more and more CS students who had NO prior programming experience. A number of Universities have also dropped Computer Science courses, Suffolk Uni being one of them. > > Interestingly, the quality of those who graduate in Computer Science is dropping too, relative to the intake. i.e. modern CS courses do a worse job of teaching computing than they did 20 years ago. Why? Could it be because the systems used to teach them are 10,000 times more complex than 30 years ago. Just maybe, maybe? > > > don't think it was really all that approachable or fun (for most kids) > > back in the day. > > I'm not sure how to respond to this question. Computer programming was certainly more approachable in the 80s, because the UI involved typing lines of code just to get it to even load other people's programs. That is, you couldn't avoid it and it was easy to make (though easy to fix) mistakes on early machines, so you had to understand something of what you were doing. But programming environments lacked 'niceties' you find in modern environments and coding would be scruffy and unmaintainable spaghetti. But that's OK if you're learning: the 'niceties' we have now are there to help manage large-scale development. > > But it was certainly fun. Look up the video on kids learning with the Ras-PI, and a version of Snake. Now the interesting thing is that the Python program is just pure text and it runs a text version of Snake, but the (not especially geeky) kids found it exciting. It tells you that getting joy out of programming is about discovery and understanding, it isn't related to the power of the machine you're learning on or the sophistication of the output, the same program could have been done on a 2Kb ZX81 and with better graphics! > > And it didn't matter that Snake had been written a thousand times for every platform under the sun to these kids, what mattered was the discovery - and we know, kids actually do love discovering things; given the chance they get the same joy as the previous generation learning the same things! So, I don't think you need to compete with commercial apps to experience that. > > -cheers from julz Brilliant post, Julian. Truly inspiring. Thank you! Mark
[toc] | [prev] | [next] | [standalone]
| From | Andrew Haley <andrew29@littlepinkcloud.invalid> |
|---|---|
| Date | 2012-10-10 20:04 -0500 |
| Message-ID | <JbidnbjHKpG6huvNnZ2dnUVZ8qidnZ2d@supernews.com> |
| In reply to | #16169 |
Mark Wills <forthfreak@gmail.com> wrote: > On Oct 10, 5:34?pm, theoriginalsn...@gmail.com wrote: > [ 176 lines deleted ] > Brilliant post, Julian. Truly inspiring. Thank you! Mark, a gentle message: plese trim when replying. Thanks, Andrew.
[toc] | [prev] | [next] | [standalone]
| From | Paul Rubin <no.email@nospam.invalid> |
|---|---|
| Date | 2012-10-04 11:41 -0700 |
| Message-ID | <7xmx02xeow.fsf@ruckus.brouhaha.com> |
| In reply to | #15906 |
theoriginalsnial@gmail.com writes: > 9 cycles at 10MHz is 0.9µs. (9/10MHz = 0.9µs). Aha, somehow I didn't notice the "micro" symbol earlier. > Actually, you were claiming the complexity was hidden behind all the > abstractions so coding is as easy as launching a browser. The browser launching example just meant that a lot of complex stuff can be happening behind the scenes, without the complexity bothering the user as long as they don't have to deal it directly. > the reality is that the end-to-end complexity is still the biggest > hurdle the kids have to face. Maybe you could say exactly what you mean by "end-to-end complexity". I'm interpreting it to mean all the complexity that exists in the entire path from one end to the other, since you're advocating dealing with it through a very simple implementation. I instead believe that the complexity exposed at the endpoints matters, but the complexity buttoned up in the middle doesn't matter as long as it works reliably. As other examples, consider navigating to some location with map and compass, compared to using a GPS. Or compare travelling someplace to deliver a message, compared to emailing the person or using your cell phone. Do you see what I'm getting at? The buttoned-away complexity of the GPS system and internet/phone networks is enormous, but they really do make the exposed part of the task simpler. > For example your alternative suggestions: Geany with Python / Logo etc > illustrate my point. If all this complexity was truly hidden why would > I want 'Geany' with Python? Geany is a fancy IDE sort of like Eclipse, that handles multiple languages. I've seen it and it looks nice. I don't personally use it because the stuff I'm used to (Emacs and IDLE) work well enough that I'm content to keep using them from familiarity and inertia, but people just getting started should probably consider alternatives, so I mentioned Geany. > Surely Python would have hidden *all* the complexity and Geany would > be unnecessary? Python is a language, not a complete environment. The CPython distribution does come with an IDE written in Python, namely IDLE, but it's less powerful than fancier ones like Geany. I prefer to use Emacs for complex development but I know that some programmers like fancy IDE's. I do sometimes use IDLE for quick experiments and such. > Surely Python, given its size and level of abstraction, would be a > better Logo than Logo? I've never personally used LOGO but I know it's gotten some traction for teaching little kids. Python might be a bit too complicated. > And early 80s systems were brilliant at getting kids to code; at > least 10 to 20 x more effective than any combination of languages and > environments on modern systems. How many kids today do you think are coding in Minecraft, compared with "early 80s systems"? How many do you think are using computers now compared with the early 80s? Another theory is that both now and then, kids liked using computers, but in the early 80's the only thing they could really do with them was code, and today there's far more possibilities. So that may explain the difference in coding interest, rather than coding having somehow become more complex. >> (I use IDLE sometimes, a fairly primitive IDE) > Wasn't it Geany a few seconds ago? No, I mentioned Geany but I don't personally use it, as explained above. > I thought it was obvious from the introductory paragraph on the > FIGnition home page that with FIGnition you can code on its keypad, > directly into the machine as you would with an early 80s micro. No, that's not mentioned. It says there is an 8-key keypad and I see 8 tiny pushbuttons on the PC board pictured, but the idea of entering code that way wouldn't have occurred to me. It frankly sounds nuts: 80's micros (Commodore 64 say) at least had real keyboards. I also don't know about the composite video port--I don't know if modern TV sets still have composite video input. > Minecraft can also emulate a 6502 using only a million times the > resources of the original processor ;-) You know, that Atmega part in the Fignition purports to be an 8-bit micro that's sort of a modernized 6502, but how do you know it's not really a much faster x86 core, running firmware that emulates the AVR instruction set, eh? ;-)
[toc] | [prev] | [next] | [standalone]
| From | theoriginalsnial@gmail.com |
|---|---|
| Date | 2012-10-05 12:29 -0700 |
| Message-ID | <e9b9fa41-4091-41fe-9a40-48e5dea684d8@googlegroups.com> |
| In reply to | #15922 |
Hi Paul, > > the reality is that the end-to-end complexity is still the biggest > > hurdle the kids have to face. > Maybe you could say exactly what you mean by "end-to-end complexity". > you're advocating dealing with it through a very simple > implementation. Abstraction is great for usability, but not so helpful for understanding. For example, a light switch 'buttons-up' the complexity of the national grid, and it's known they're very easy to operate. But it doesn't mean that we teach electronics using a slightly more detailed version of the national grid. Instead we start with simple, but real, circuits that can be understood. The problem is that this buttoning up never really works perfectly for two reasons: firstly there's an inevitable conflict between requirements, resources and their implementation. For example, the user-interface for a GPS system is more complex than for traditional map navigation and future needs to support, e.g. congestion re-routing or inter-car collaboration. Secondly, it's not practical to wait for systems to be completely abstracted before we build on them - in reality there's a continual mix of technologies that expose their heritage at various levels. But end-to-end complexity can be understood fairly easily. In the early 80s we'd turn on a computer and start coding within seconds. By the mid-80s simple compilers were in vogue so we coded using a edit-compile-run cycle with monolithic programs. Here, conventional tools exposed underlying requirements for performance at the expense of ease-of-development. By the late 80s OS's were becoming more complex and GUIs were being introduced; so there was a need for simple IDEs which supported the libraries and multi-file applications. Here, multi-file projects expose the implementation trade-off between compilation performance and project size requirements. Project development again became more complex. In the 90s raw APIs were 'buttoned-up' behind OO-frameworks, but today development environments such as Eclipse expect even newbies to handle multiple targets, sdks, simulators, mixed-language project implementations across objective-C/Javascript boundaries; mandatory source control and a plethora of cloud-hosted client-server scripting paradigms. We can button-up this complexity for users, they just click on an Appstore and suddenly Augmented Reality is at their fingertips. But in the same way we don't teach electronics by diving into the national grid (or a simplified virtual national grid), it doesn't mean the best way is to teach using either fake programming paradigms (e.g. KODU or Scratch) or full-on environments where they just stitch stuff they don't understand together in ways they don't really understand. You see this in practice, e.g. the previous poster who was shocked that GRADUATES don't understand how computers actually work as it's someone else's problem. But also in the way you don't really want to deceive kids with fake programming. A good example was Young Rewired State in Birmingham a month or so ago. One of the finalists (a reasonably bright student) had created a Scratch-based app, but you could see that as he stood up he was basically embarrassed about it. > Geany is a fancy IDE sort of like Eclipse.. handles multiple languages > .. people just > getting started should probably consider alternatives, so I mentioned > Geany. Indeed, it doesn't get much simpler than Eclipse ;-) > Python is a language, not a complete environment. True, it's hard to cram anything better than a crude CLI into 860Kb. > The CPython distribution does come with an IDE Hmmm, yes at 23Mb it might just be possible! > it's less powerful than fancier ones like Geany. Understandable, it's only 23Mb. > I've never personally used LOGO but I know it's gotten some traction for > teaching little kids. Logo's smart; about as powerful as Lisp, but with a friendlier syntax. It's not totally general purpose, which is probably why it didn't replace Basic, but it is pretty good. > How many kids today do you think are coding in Minecraft, compared with > "early 80s systems"? I really don't know. I do know that about 10 to 20x fewer kids can code at all compared with the mid-80s, despite the far greater numbers of available computers so I guess either it isn't that transferable or Minecraft 'coding' is more like HTML or something. > Another theory ..in the early 80's the only thing [kids] > could really do with them was code, and today there's far more > possibilities. I think there's some truth in that, though there were plenty of non-programming electronic toys in the day. It's certainly true there's far more distractions on modern systems - it's always far easier to not code than to code for all of us, but the complexity of modern systems (including modern coding systems) plays a huge part from personal experience. > > I thought it was obvious.. with FIGnition you can code on its keypad > No, that's not mentioned. I meant, I now realise it's not obvious, it'll get changed. > ..It frankly sounds nuts Surprisingly, it's not though, it's faster than texting and as fast as typing on a touch-screen :-) > I don't know if modern TV sets.. still have composite video input. Pretty much all of them still have composite (sometimes multiple inputs) and/or SCART. > You know, that Atmega part in the Fignition purports to be an 8-bit > micro that's sort of a modernized 6502, but how do you know it's not > really a much faster x86 core, running firmware that emulates the AVR > instruction set, eh? ;-) Because people have decapsulated AtMega168s and the functional units can be easily seen. But you'd be able to figure it out anyway from the outrageous power consumption; ns-level timing inaccuracies; parts cost (Atmel would probably go bust if they took that approach) etc. Like I'm arguing, almost nothing can be perfectly abstracted ;-) -cheers from julz
[toc] | [prev] | [next] | [standalone]
Page 6 of 8 — ← Prev page 1 2 3 4 5 [6] 7 8 Next page →
Back to top | Article view | comp.lang.forth
csiph-web