Home
JAQForum Ver 20.06
Log In or Join  
Active Topics
Local Time 04:57 06 May 2024 Privacy Policy
Jump to

Notice. New forum software under development. It's going to miss a few functions and look a bit ugly for a while, but I'm working on it full time now as the old forum was too unstable. Couple days, all good. If you notice any issues, please contact me.

Forum Index : Microcontroller and PC projects : Free microcomputer to every yr7 child UK.

     Page 2 of 2    
Author Message
G8JCF

Guru

Joined: 15/05/2014
Location: United Kingdom
Posts: 676
Posted: 02:08pm 27 Jul 2015
Copy link to clipboard 
Print this post

@Hitsware

Sadly you are correct, I have 3 grown-up children, and "coding" is "so un-cool" to them, although they acknowledge that someone (but not them) has to do the "coding" for their "digital" world to work !

In some senses they view "coders" as the "working/under class" of today - the miners, the labourers of the digital age :(-:

A very sad "Coder"

Peter
The only Konstant is Change
 
hitsware
Guru

Joined: 23/11/2012
Location: United States
Posts: 535
Posted: 02:24pm 27 Jul 2015
Copy link to clipboard 
Print this post

I feel your pain ...........

What I mean is that the kids that DO go into
programming will probably never experience
Basic. More likely start with a form of C if
continuing in school or Arduino if on their own.
 
Grogster

Admin Group

Joined: 31/12/2012
Location: New Zealand
Posts: 9066
Posted: 03:03pm 27 Jul 2015
Copy link to clipboard 
Print this post

I might be going out on a bit of a limb here, but a modern BASIC such as we have on the MM and now the MM+(with all it's LCD and GUI commands!) are nothing at all like the relatively primative BASIC's we grew up with. The modern BASIC keeps the easy-to-follow language syntax, but hides all the complicated stuff behind the scenes - not to prarphrase anyone here....

People may snare at BASIC as being a kiddies language, stupid and old and useless for serious things, and talking about the BASIC's of old, they would be quite right.

But then lets compare the likes of my old fav - Atari 8-bit BASIC, and MMBASIC: No comparrision, really - MMBASIC wins on all fronts, and about the only similarity between the BASIC's of old, and MMBASIC, is that SOME of the keywords are the same such as PRINT. A modern, well-thought-out BASIC can be just as powerful as something like C, from what I can "C"(small pun - forgive me) in terms of what it can actually do and interface to. Cfunctions on MMBASIC make it exteremly flexible indeed, combining the best of both worlds to some extent.

I guess the only real downside to any BASIC, is the native speed. For raw speed, you can't seem to beat C or any of it's flavours. However, something like MMBASIC is still incredibly fast, and suitable for all but the most demanding and speed-intensive of tasks, IMHO, even with the interpreter overhead thrown into the mix.
Smoke makes things work. When the smoke gets out, it stops!
 
G8JCF

Guru

Joined: 15/05/2014
Location: United Kingdom
Posts: 676
Posted: 03:10pm 27 Jul 2015
Copy link to clipboard 
Print this post

My Daughter has this year just finished her Physics Degree at Kings College London, and she had to learn Fortran ! Boy did she resent that she had to do some programming !

Funny thing was that back in 1974 I went to KCL and the very first thing we undergrads had to do was learn to program in Fortran using Daniel D McCracken's "Brown Book". Nights spent sleeping on the floor of the computing centre waiting for our Hollerith decks to be accepted by the operators!

It's all so much easier these days, I use FTN95 from http://www.silverfrost.com/32/ftn95/ftn95_personal_edition.aspx.

I do think that starting with C is a really bad idea unless it's an Elec. Eng. course or a Computer Science course - vital for writing OSes. Most everybody else would be better off learning a modern form of BASIC, eg MMBasic, Visual Basic.net IMHO.

From a dying breed

Peter
The only Konstant is Change
 
G8JCF

Guru

Joined: 15/05/2014
Location: United Kingdom
Posts: 676
Posted: 03:25pm 27 Jul 2015
Copy link to clipboard 
Print this post

Hi Graeme

Your analysis is right on the money.

Speed is more a matter of Compiled vs. Interpreted, and has very little to do with the language semantics, although some language constructs lend themselves to being natively executed by the MCU than others, eg i++; C is the universal Assembly language, (IMHO), in the sense that C lets one get at the bare metal without being (too) MCU specific.

BASIC, even MMBasic and VB.NET don't even come close to C when it comes to what can be achieved, which is why I worked so hard with Geoff to add CFunctions to MMBasic. MMBasic+CFunctions is - IMHO - the ultimate in friendliness, usability, approachability, functionality, cost effectiveness, coupled with speed/performance and flexibility of ANY embedded environment available today.

It's 02:25 here, so I'm off to bed.

Tale care, have a really great Tuesday

Peter

The only Konstant is Change
 
robert.rozee
Guru

Joined: 31/12/2012
Location: New Zealand
Posts: 2290
Posted: 07:19pm 27 Jul 2015
Copy link to clipboard 
Print this post

a small point that has seem to be skipped - if you were to write a C interpreter is would be unlikely to run code significantly faster than a BASIC interpreter.

the big speed gain is going from interpreted to compiled. on the whole, languages that are traditionally compiled like C and pascal are (within a stones throw) 10x faster than languages that are traditionally interpreted like BASIC and python.

so the 'fault' is not in the BASIC language, but in the implementation.

the thing i like about BASIC is that it allows the user to create code quickly in order to test out ideas and algorithms. there is no need to create a structure before you start even coding (in C you need to install a compiler, create a make file, place standard incantations surrounding the { } of your main routine). MMBASIC goes one step further - all you do is plug in a terminal and a battery. and the simplest BASIC program is just:

PRINT "hello world"

this is as close to zero effort as one can reasonably get.

in a classroom environment, where each lesson is 50 minutes long at the most, an interpreted BASIC coding environment allows the teacher to get straight into the essential functions of teaching programming: showing how to design algorithms, apply logic, and create structure.


cheers,
rob :-)
 
WhiteWizzard
Guru

Joined: 05/04/2013
Location: United Kingdom
Posts: 2794
Posted: 09:08pm 27 Jul 2015
Copy link to clipboard 
Print this post

  robert.rozee said  in a classroom environment, where each lesson is 50 minutes long at the most, an interpreted BASIC coding environment allows the teacher to get straight into the essential functions of teaching programming: showing how to design algorithms, apply logic, and create structure.


This is so true; and for those that don't know, I have spent the last ten months researching how to implement a coding 'solution' into Schools.

Any debate should not be which language is better than others (usually fueled by systems people!!) but you should take a step back and see what is trying to be achieved.

The UK government has just implemented Computer Science into the school curriculum meaning that all 5 to 18 year old school kiddies now have to learn 'programming'. Hence the MicroBit being given away free.
Part of 'programming' is defined as two languages of which one is textual based.

In a lesson of 45-50 minutes (between start and end) the teacher and up to 30 pupils have to discuss a topic, set up any equipment, 'program' whatever devices, fix any issues, discuss what they've done, write up notes, and then put things away.
For anyone having done any actual work-study on this then it is a 'big ask' to teach something 'complex'.

Remember that the teacher has to 'survive' the lesson as well (i.e. answer any questions, fix any set-up issues, deal with unruly kids, etc, etc). It is easy to say 'send them on a training course' or even 'let them read a user guide / start-up guide' but the teachers really do not have the 'spare' time in their day to do this.

What is required is a 'simple' tool that people (teachers & pupils) can pick up straight away and see results. I have been busy researching MMBasic in a school environment and have been overwhelmed with the positive response of it. One of the main things is (as mentioned in Geoff's manual) is that the code, run, edit, re-run cycle is so VERY quick and easy.

However, it is not just the 'language' that is important - it is also the 'boring topic' aspect that has to be 'smashed'. Again, after many months of research and evaluation of something we have created, we feel this barrier has been overcome too.

I very much like the analogy I use of comparing coding to cooking. You can have a complex recipe using terms that any beginner (and many non-beginners) simply won't understand (i.e. C coding) OR you can 'mix eggs, flour and water' which everyone understands (i.e. BASIC). And once you know the 'basics' of cooking, you can go on to be a chef if you so wish.

So the BBC MicroBit is a great concept, and will be successful, however, a MMBasic product implemented properly will be much more 'usable' in a classroom environment.

I will be announcing our MMBasic product very soon that we will be launching into UK schools for next year. I would welcome feedback (however harsh) but do not want to debate the language (unless you are aged between 5 and 18!)

WW




For everything Micromite visit micromite.org

Direct Email: whitewizzard@micromite.o
 
     Page 2 of 2    
Print this page


To reply to this topic, you need to log in.

© JAQ Software 2024