Progamming in UK Schools

General discussion for topics related to the FreeBASIC project or its community.
Post Reply
TESLACOIL
Posts: 1769
Joined: Jun 20, 2010 16:04
Location: UK
Contact:

Re: Progamming in UK Schools

Post by TESLACOIL »

Youtube is the best teacher / school yet devised

Fine details aside, If it ain't on you tube (or wikipedia) it probably isn't worth knowing about !

pre internet days id say that 50% of peoples knowledge came from watching TV , library books 10%, school classes, 10% , other people 10% , 10% other sources

In 2014 i find that 70% of my 'new knowledge' comes from you tube, 10% Wikipedia, 10% rest of the web and 10% all other sources

Thus the best lesson one can tech in schools is how to google AND how to decide who the real human experts are
Sigord
Posts: 153
Joined: Mar 14, 2013 9:54
Location: Hastings UK
Contact:

Re: Progamming in UK Schools

Post by Sigord »

I still maintain for anyone like a young child, the most important factor in learning ANYTHING is it is written in PLAIN ENGLISH such as form of BASIC. So if you want to print something you use the word PRINT. Pi does not appear to even use the word PRINT, likewise other languages include all sorts of gobbledegook instead. Which is why I have always thought Visual Basic has nothing whatsoever to do with BASIC.
marcov
Posts: 3462
Joined: Jun 16, 2005 9:45
Location: Netherlands
Contact:

Re: Progamming in UK Schools

Post by marcov »

anonymous1337 wrote:
Why would new programmers like ASM, C, etc. when a quick "HTML5 App" gives them instant results, network capabilities and cross-platform functionality? I liked ASM, BASIC and even C in the early 2000s because it still felt really raw, powerful and generally useful.
Because school is not about production, or saving the first employer on language and platform tutoring costs. It is about readying students for a 30-40 years career in a swiftly changing field. And you do that by teaching fundamentals, not something what is hot now.

I don't agree that that should be assembler per se. But what is taught should be selected on effect, not to slavishly follow the commercial world. 5-6 years later, everything will have changed.
As a professional web applications developer, it would just feel like a waste of my time.
As a professional, if I would have learned in school what was hot when I was there, it would have been even a larger loss.
anonymous1337
Posts: 5494
Joined: Sep 12, 2005 20:06
Location: California

Re: Progamming in UK Schools

Post by anonymous1337 »

Sigord wrote:I still maintain for anyone like a young child, the most important factor in learning ANYTHING is it is written in PLAIN ENGLISH such as form of BASIC. So if you want to print something you use the word PRINT. Pi does not appear to even use the word PRINT, likewise other languages include all sorts of gobbledegook instead. Which is why I have always thought Visual Basic has nothing whatsoever to do with BASIC.
That's not true. You've associated the word PRINT with "Writing to the Console" because of your familiarity with older BASIC languages, which is counter-intuitive to most people who are used to PRINT meaning "PRINT TO PAPER". You're not actually "printing" anything. VB.NET uses Console.Write, which is what it's actually doing.

I agree that VB.NET and Python are definitely less BASIC, but I think they have a healthy balance, too. The practical benefits of VB.NET, Python, Ruby and JavaScript are so substantial that I think they outweigh the sincerely trivial barriers of having to overcome learning different keywords than you, someone who's already been programming for some time, is used to.
marcov wrote:
anonymous1337 wrote:
Why would new programmers like ASM, C, etc. when a quick "HTML5 App" gives them instant results, network capabilities and cross-platform functionality? I liked ASM, BASIC and even C in the early 2000s because it still felt really raw, powerful and generally useful.
Because school is not about production, or saving the first employer on language and platform tutoring costs. It is about readying students for a 30-40 years career in a swiftly changing field. And you do that by teaching fundamentals, not something what is hot now.

I don't agree that that should be assembler per se. But what is taught should be selected on effect, not to slavishly follow the commercial world. 5-6 years later, everything will have changed.
As a professional web applications developer, it would just feel like a waste of my time.
As a professional, if I would have learned in school what was hot when I was there, it would have been even a larger loss.
True. The market's always changing, though. If you can give people market relevancy while at the same time teaching them those fundamental concepts, all the better.
MichaelW
Posts: 3500
Joined: May 16, 2006 22:34
Location: USA

Re: Progamming in UK Schools

Post by MichaelW »

marcov wrote: 5-6 years later, everything will have changed.
Not everything, the fundamentals will still (probably) be the same.
marcov
Posts: 3462
Joined: Jun 16, 2005 9:45
Location: Netherlands
Contact:

Re: Progamming in UK Schools

Post by marcov »

MichaelW wrote:
marcov wrote: 5-6 years later, everything will have changed.
Not everything, the fundamentals will still (probably) be the same.
If you have two focusses(teaching fundamentals, and using current production tools), one will suffer, it is as simple as that.

And on top of that, there will be never any rest in the curriculum, since the darling tool might change every year.
anonymous1337
Posts: 5494
Joined: Sep 12, 2005 20:06
Location: California

Re: Progamming in UK Schools

Post by anonymous1337 »

Curriculum shouldn't rest in a constantly changing field. Not entirely, at least.

I get the whole fundamentals thing, and I'd hate to learn a language or tool that became obsolete the next year. But if you are teaching students ASM, C and LISP, you better have a good reason. Same if you are avoiding teaching them JavaScript. If it's been around 3 - 5 years and is currently succeeding in tech, it's penetrated the market and won't be going away for a while.

I think curricula has spoken up already. Some are willing to change languages (ex: Ruby instead of Java), but I still find what I learned in school far less important than what I was made to do. I'm not sure how I would even define fundamentals. Web fundamentals are vastly different from oldschool computer science fundamentals, less in-depth and numerical than security fundamentals, less technical than compiler and systems fundamentals, and that still leaves out application design, databases and other things!

It also leaves out tool chains, processes and systems integration, which is what I see comes easy for the smartest developers I currently know.

It really is a difficult problem. What is fundamental? Computation? Okay, but lambda calculus is not a beginner's subject. Uhm, for loops, sequences, lists, functions. I mean, those are fundamental. I just think you very quickly hit a point where the fundamentals are not so beginner-ish any more and you have to start making choices.

I think that these days, I could very well see programs broken into much more than just the "Computer Science" and the (grudgingly accepted, but not by all universities) "Software Engineering" programs available today. Just like Computer Science continues to be treated as either just a math, physics or electrical engineering curricula by some hopelessly outdated curricula, all of the different aspects of actually building applications are being loaded into the software engineering department.

But I just don't think that works.
Sigord
Posts: 153
Joined: Mar 14, 2013 9:54
Location: Hastings UK
Contact:

Re: Progamming in UK Schools

Post by Sigord »

In my limited way I have managed to write a couple of htm pages with help from others in JavaScript. The idea being to persuade visitors to my site to run them online when would never risk running or even download an EXE file.

But no one seemed to know even how to persuade JavaScript to like FB store a list of the files present in the same folder into an Array. That is not online but on the hard drive.
anonymous1337
Posts: 5494
Joined: Sep 12, 2005 20:06
Location: California

Re: Progamming in UK Schools

Post by anonymous1337 »

@Sigord: Node.js.

Runs on servers. Compiled by Google's V8 engine. Powers a lot of servers/applications. Even used to write native desktop/mobile apps now...
TESLACOIL
Posts: 1769
Joined: Jun 20, 2010 16:04
Location: UK
Contact:

Re: Progamming in UK Schools

Post by TESLACOIL »

Human beings have the wrong kind of mind to write computer programs.

Thus it does help if you have simple 'common sense' words like print at least when you are learning.. But you have to be careful as words and meanings have fuzzy boundaries. Print to screen vs write to screen vs ? vs something else ???

Print and Write are similar kinds of 'real world' activities. These words have been co opted for 'Virtual worlds' aka computers

At least the word print is in the 'common sense ball park' . As people get more familiar with an activity they tend to truncate communication. U instead of you, etc

Give it another 50 years and much of the current hardware and software diversity will be culled. The world eventually agrees on a single solution.


Thought experiment

Imagine and an alien race but still like us, but 1000s of years more advanced. A civilization that took the time to reboot itself in pursuit of perfection aka convince and utility. The language they use, written , spoken and otherwise would be geared for speed learning, unambiguity, and work rate. The system designed to fit their physiology and psychology. Chinese style characters or colored hieroglyphics are probably the way forward. Once the world agrees on 'the need' for a particular word or symbol and 'then agree's' on what it should looks like, then it can be added into the universal alphabet. (which may need a few tweeks (reboots) on route to communication perfection.
jevans4949
Posts: 1186
Joined: May 08, 2006 21:58
Location: Crewe, England

Re: Progamming in UK Schools

Post by jevans4949 »

PRINT in Basic actually goes back to its earliest days, when people were using teleprinters attached to mainframes. So it did literally print.

I was there!
Sigord
Posts: 153
Joined: Mar 14, 2013 9:54
Location: Hastings UK
Contact:

Re: Progamming in UK Schools

Post by Sigord »

At the risk of boring anyone. When I joined the Registrars Dept of the former ICI, in the City of London in 1962 they were converting all the info on several hundred million shareholders in heavy ledgers onto the IBM Mainframe used by Dulux Paints at Slough. But needless to say because our Dept was a no profit burden to the company governed by the London Stock, all our work was done overnight.

In the early days all data and was sent to and from Slough by Taxis, such as big tapes, printouts, Dividends, certificates, and punch cards. It was of course several years before data was transferred by landline. Only when many of us opted to become redundant in 1984 rather than relocate to Slough, were staff taught to use terminals instead of leaving all such input to the ' Punch card ladies '. But other Depts were using Terminals earlier, though often they had to wait several minute to gain access to their mainframe in the north of England.
marcov
Posts: 3462
Joined: Jun 16, 2005 9:45
Location: Netherlands
Contact:

Re: Progamming in UK Schools

Post by marcov »

anonymous1337 wrote:Curriculum shouldn't rest in a constantly changing field. Not entirely, at least.

I get the whole fundamentals thing, and I'd hate to learn a language or tool that became obsolete the next year. But if you are teaching students ASM, C and LISP, you better have a good reason.
I never proposed those languages. And I disagree with all of them for initial programming courses. I got into thinking about it because (1) I helped teaching some courses, (2) I was on a fair (Systems in Muenchen) for several years, often talking to teachers.

That discussion was always similar, the teachers loved pascal, but were forced to abandon it ("old", use relevant tools in the marketplace, but also because the Turbo Pascal that they used was console based, and an increasing percentage of new students had to be taught to use a console), but had doubts about what to substitute it with. Generally, it became Java, but this is all 7-8 years ago.

However from what I hear, initial programming is still mostly given in Java, though not all teachers are perfectly happy with it. It is a compromise.

I could agree with C for the embedded parts at the end of the (CS) curriculum, and in that same tract only a teaser of asm. And then explaining/reading compiler output is then more important than writing assembler.
Same if you are avoiding teaching them JavaScript. If it's been around 3 - 5 years and is currently succeeding in tech, it's penetrated the market and won't be going away for a while.
Avoiding? The question is why you should teach them javascript in the first place?
I think curricula has spoken up already. Some are willing to change languages (ex: Ruby instead of Java), but I still find what I learned in school far less important than what I was made to do.
Exactly. And tool choice is secondary to that. Make the tool choice a primary one, and you simply lose teaching time while students get acquainted by overly complex but commercial tools. Specially the weaker students without an IT background are overwhelmed here.

Keep in mind that on fora like these, most people are autodidact to a certain degree. (as in they programmed before they were formally educated to do so). This group is usually not the main problem when you give a course. You only need to keep them a bit focussed, and actually do the assignment (most spend more time embellishing the result than doing the assignment)

The programming virgins are the problem. They often take half the courses the time (2 afternoons a week for 9 weeks) before they really operate the IDE and can do some work without being constantly stuck.
I'm not sure how I would even define fundamentals. Web fundamentals are vastly different from oldschool computer science fundamentals,
Is there such a thing as web fundamentals that will be still with us 5 years hence?
less in-depth and numerical than security fundamentals, less technical than compiler and systems fundamentals, and that still leaves out application design, databases and other things!
I think databases and SQL (and its associated predicate logic) is very important. It remains the core of the backend. I don't expect higher educated CS students to make webpages for a living, but to work on backends and -office, connect systems etc.

It pains me to say it (since it is a darling of mine), but the compiler part should be reduced. Yes, it has its uses (e.g. few people will write compilers, but many will design binary or textual formats and their parsers). But what the average student takes home from it is limited.
It also leaves out tool chains, processes and systems integration, which is what I see comes easy for the smartest developers I currently know.

It really is a difficult problem. What is fundamental? Computation? Okay, but lambda calculus is not a beginner's subject. Uhm, for loops, sequences, lists, functions. I mean, those are fundamental. I just think you very quickly hit a point where the fundamentals are not so beginner-ish any more and you have to start making choices.
True. Here there is also a very different approach between the educations that are focussed on bachelor as a final diploma vs the ones that are more master oriented. The master ones are much more abstract, and math centric. They use Haskell a lot.

I did the bachelor only one, but because I did that after I dropped out of Chemical Engineering master, I had quite a good picture of the master CS too.
I think that these days, I could very well see programs broken into much more than just the "Computer Science" and the (grudgingly accepted, but not by all universities) "Software Engineering" programs available today.
(here there is also one that is a cross between CS and management studies. They do parts of both curricula. There is also a masters level study that is a cross between electrical engineering and CS)

I don't think there is room for much more specialization in a way that can stand the test of time.
Just like Computer Science continues to be treated as either just a math, physics or electrical engineering curricula by some hopelessly outdated curricula, all of the different aspects of actually building applications are being loaded into the software engineering department.
The CS and math departments are combined here even. But what is your beef here exactly? I don't understand.
Last edited by marcov on Sep 12, 2014 10:36, edited 1 time in total.
Sigord
Posts: 153
Joined: Mar 14, 2013 9:54
Location: Hastings UK
Contact:

Re: Progamming in UK Schools

Post by Sigord »

Am I right in thinking the majority of UK Teachers have never been employed in anything but education, so have very little experience of the ' real world '. Hence the way as I mentioned before many are still asking the kids "what sort of job do you want ' when teenagers are now lucky to find any job.

I cite the example of a cousin of mine supposed to have been a College Lecturer for Telecommunications, yet I do not think he ever visited a telephone exchange let alone seen down a manhole. I remember he was once asked to stand in for a colleague to teach about refrigerators so he had to swot up in the subject the evening before !
anonymous1337
Posts: 5494
Joined: Sep 12, 2005 20:06
Location: California

Re: Progamming in UK Schools

Post by anonymous1337 »

marcov wrote:The CS and math departments are combined here even. But what is your beef here exactly? I don't understand.
Just that I think programs could be more specialized. I'm not sure it will stand the test of time. I guess staying "current" instead of "classic" is a job for technical/two-to-four-year schools.

Other than that, I agree with the points of your last post. Sorry to hear about Pascal. I can tell from having looked at it (interested by you and its amazing benchmarks, actually!) that is would be a great language for beginners to learn.
Post Reply