Ubiquitous Computing Gadget To Teach Coding 107
An anonymous reader writes "A distance learning university in the UK has revamped its IT curriculum to attract more students — the biggest change is that budding coders will get a chunk of hardware which plugs into a computer via USB and can be programmed using a language called Sense — based on MIT's Scratch 'drag and drop' programming language. The university hopes this gadget-based approach will encourage fewer students to give up on their studies."
drag and drop? (Score:2)
Re: (Score:3)
Came to say basically the same thing. If the student's think 'drag and drop' programming is what they will be doing they are going to piss their pants when they have to program in a real language with real code.
Re: (Score:1)
Re: (Score:1)
ps. i have no affiliation with the project other than usin
Re: (Score:2)
It's the student's thinker...
Re: (Score:2)
That appears to be singular, which would not go with a plural verb. Fail.
Re: (Score:2)
Clearly, it was his or her think, which served as the totality of the student's actions. If you read the whole sentence, however, the student's supposition is held to prove false when faced with practical, non-academic ("real code") work.
Re: (Score:2)
Oh noes! A typo. The farking world is going to end!!!!
Re: (Score:1)
Re: (Score:2)
If it wasn't for software types your hardware would sit there like a lump of metal and do nothing. We're all in the same boat here.
And, my statement stands. Dragging and dropping components together is no where near as complex as learning programming concepts (logic, algorithms, OO, etc.) as well as language syntax in order to get the hardware to spit out the correct answer.
Re: (Score:2)
Which option helps you accomplish your goal faster, easier, safer and correctly?
Same thing with coding, simplistic if/than/else/switch type decisions based on the output of functions you developed in a data input/output or mathematical computation.
Perhaps coding in 3d is difficult if you can not "see" or perceive the output of your computatio
Re: (Score:1)
Perhaps coding in 3d is difficult if you can not "see" or perceive the output of your computation?
queue 1995 hackers epic climax scene
Re: (Score:2)
Thinking, it isnt as tough as you would think...
The thing is your brain is actually doing several billion things at once. You are only conscious of about 15-20 of those things. When you reach for a glass of water you do it slowly and gently and when you swing your arm to hit something you do it with a lot of force. You didn't "think" about how hard or soft you were going to use your arm. A good coder has to anticipate thousands of possible decisions in creating a single simple app.
Re: (Score:2)
I agree. I'm not much of a visual learner myself, so maybe I just can't appreciate it... I feel like an asshole for saying it, but Scratch looks to me as if it is quite literally child's play, and totally out of place in a university. I would be more inclined to simply teach students to draw their own diagrams when planning out their design, but maybe that's supposed to be some of what this software does.
I just don't know. Anyone can be tripped up by a new concept just because of that novelty; someone curre
Re: (Score:2)
What would you rather have them do? Start writing in assembly? :)
Scratch is a terrific ice breaker. You can build and test simple concepts without having to worry about syntax. Yet it still teaches people how code is generally structured and read. I think people who've been programming for even a short span of time can forget that to the uninitiated a page of code looks like rainbow-alphabet-puke. Scratch teaches *concepts*, like how one bit of code can nest or plug-in to another. So when people start a rea
Re: (Score:2)
You do not learn to write by cutting and pasting paragraphs from a novel.
Re: (Score:2)
I sometimes wonder if it's the bad naming that causes so much confusion with pointers. They are just memory addresses. What if they were called "addresses" instead of "pointers?" Sure you may think "what's in the name?" BUT! Programming, as a mental task, is a constant repurposing of concepts (especially when people are too lazy to give variables full names). Ie, "i is one thing, l is another, etc." So having another misdirection every time you use an address variable adds another mental task. It's
Re: (Score:2)
I sometimes wonder if it's the bad naming that causes so much confusion with pointers. They are just memory addresses. What if they were called "addresses" instead of "pointers?"
When you have a printed mailing label, is the label an "address", or is the "address" that which is printed on the label?
Re: (Score:2)
Re: (Score:2)
It's not so much how you put the code together as understanding the way the different components work together. Scratch doesn't hide the details very much - it just provides a graphical representation. Any experienced programmer knows that it doesn't really matter if you use Python, Perl, Java, or C so much as knowing how algorithms work. All that other crud is dealing with your language's syntax and limitations and how the code will be executed.
I've previously made a tool similar to Scratch for writing she
Re: (Score:1)
Very interested to see what people do with this... (Score:2)
Re: (Score:2)
However, if they ever release version 2.0 which apparently may support "user defined blocks", a.k.a. functions, that would be a great help.
Oh that is _so_ not what we need!
Contained as a "learning language" where you can go so far and then basically have to go use a real language... it's great.
Start adding stuff to make it useful on real projects though, and you'll see it used in real projects. "Easy to learn, visual" and "good for long term maintainability" tend not to belong together.
Re:Very interested to see what people do with this (Score:5, Informative)
Start adding stuff to make it useful on real projects though, and you'll see it used in real projects. "Easy to learn, visual" and "good for long term maintainability" tend not to belong together.
1990s called, they want their Visual Basic back ;-)
VB plus Access was a world class application demo tool. Fast n easy. The problem was 'ship it' was what usually came out of the demo targets mouths...
Re: (Score:2)
1983 called, they want their Turbo Pascal back. ;-)
Re: (Score:1)
Learnt that lesson the hard way... big time! Except substitute access with excel.
Now any time I'm asked to do a demo or prototype version of something.. I make it very clear that it's not production ready.
"This demo can handle one entry. The real version will handle as many as you want".
And show only the part that is novel (that is, the reason for the demo) and all the other stuff "will be implemented in the real version". Even if it is trivial to implement... don't do it!
Re: (Score:3)
YES! YES!
Someone mod this up before I have a stroke!
This is _exactly_ what happens!
Why does it need to plug into a computer? (Score:2)
Why not make it something self sufficient, something primitive and programmable!
Re: (Score:2)
Once programmed, Arduino is self-sufficient.
Re: (Score:2)
How did people get programs on their computers in the 40's?
And what's the point of using hardware if you attach it to a machine that is way more programmable than the thing itself?
What I meant was, some programmable device with a primitive way to program it would spark my interest, if just to try to get the most out of it. When having to attach it to a computer with USB... I can as well just use that computer and program stuff in C++ on it.
Re: (Score:2)
Re: (Score:2)
Good point. ARM cpus are getting so cheap and powerful you can make a desktop system for next to nothing.
What is the point of the hardware? (Score:2)
Re: (Score:2)
Looking at the article, the hardware is a collection of I/O ports
minijack
3pin servo connector
slider
speaker
button
etc....
USB is just the computer interface. Dummy programming via dope & drop, upload to board, watch your little toy do something.
Jobs? (Score:2)
The university hopes this gadget-based approach will encourage fewer students to give up on their studies.
Being able to get a job after graduation is too hard. Lets give out gadgets instead!
What I don't understand is why an IT curriculum has this "theory of programming" and "computer science-y" stuff. I understand its in the UK, but over here in the US, CS = theory and programming, and IT = working for da man in the IT department doing database design and rebooting windows machines, at most hitting a little legacy cobol. If the little gadget had a postgresql or mysql install on it, or maybe 4 or 5 virtual ro
Re: (Score:2)
It's funny because in AVR forums some people call Arduino "a crippled piece of shit made for little kids".
Re: (Score:2)
You reply also works for that "gadget to teach coding". The point of my comment is that no matter how much you know, someone else is going to be better than you.
I was expecting a reply that avr-gcc is "a crippled piece of shit made for little kids" and that real coders program directly in assembly.
Followed by another comment saying that assembly is "a crippled piece of shit made for little kids" and real coders write directly in binary.
Followed, of course, by that xkcd cartoon about how real programmers use [xkcd.com]
We have tech school that do that but apprenticeshi (Score:2)
IT needs apprenticeships not work free Internship where at some jobs you end working hard for free or doing stuff like being a Coffee boy or copy boy.
apprenticeships + class room is better then the theory loaded + filler class that most 2-4 years curriculum has. May it a 2 year mixed apprenticeships + class room setup with on going class after that as well.
Hands on is needed and books and cert tests are at times far off from the real work place. The tech schools are more hands on them the big school curricu
Re: (Score:2)
The university hopes this gadget-based approach will encourage fewer students to give up on their studies.
What I don't understand is why an IT curriculum has this "theory of programming" and "computer science-y" stuff. I understand its in the UK, but over here in the US, CS = theory and programming, and IT = working for da man in the IT department doing database design and rebooting windows machines, at most hitting a little legacy cobol.
I can answer that. They're probably referring to what many schools in the US call a degree in Information Systems. IS degrees from some places are indeed glorified IT training programs. In fact the article says:
The new computing degrees have an emphasis on vocational and work-based learning
On the other hand, I majored in IS (In the US) yet my classes weren't strictly theory or "applied computing". It was a mixture. I still had to take the core programming courses (Data Structures & Algorithms, Compiler Design, Operating Systems Programming, etc.) in addition to the IT-type courses
Re: (Score:2)
"On the other hand, I majored in IS (In the US) yet my classes weren't strictly theory or "applied computing". It was a mixture. I still had to take the core programming courses (Data Structures & Algorithms, Compiler Design, Operating Systems Programming, etc.) in addition to the IT-type courses (Database Design aka SQL, Computer Networking, "Systems Analysis & Design", etc.)"
Here, too, though I was focused on security, so less base programming and more finding security holes and forensics, plus ne
Re: (Score:2)
CIT - mostly website stuff & some UI stuff
IT - Networking (network admin)
CST - Broken up into different "options" including Client-Server, Database, Technical Writing (mostly docs), IS (websites), DataCommunications (unix, security & low level serial, IPC, etc i/o)
Re: (Score:2)
I am surprised that you assess that database design requires less knowledge, theory etc. than programming.
I guess doing BAD database design requires less knowledge, but database design is really a lot about modelling the domain in a pragmatic yet suitably abstracted and extensible way, mixing in some tricky performance considerations. That's pretty knowledge-intensive to do right.
Re: (Score:2)
Mixed feelings (Score:3)
Dunno how to feel about this really.
Personally I think if you don't have the kind of interest in computers that drives you to "figure it out" and get past the "can't do a damn thing" stage, you are probably gonna make a crumby programmer. My intro to programming was on a TRS-80 (actually a dragon32.. which is essentially a TRS-80 clone) and I spent many months messing around with it. Most of the programmers I know who have found success generally have the same story.
But then times change. Maybe this is what we need now. A different set of skills and general mindset. Maybe the things that attracted me to programming are no longer as relevant.
Probably can't hurt at least.
Re: (Score:2)
1956 called. Wants its reason for splitting up "electrical engineering" and "computer science" curricula back.
Re: (Score:1)
Re: (Score:2)
They were too busy talking about Roswell. I couldn't get it through to them that Afghanistan would one day be powerful enough to topple three skyscrapers in downtown NYC and put a hole in the Pentagon, or that we'd have a president too stupid to catch the rich monk who'd organized it. Then there was this "vorp...vorp...vorp" noise and the wormhole closed.
Re: (Score:1)
Well, we're trying to produce a facsimile of your intro to programming at ClubCompy [clubcompy.com]. The point of the site is to create a simple computer simulation coupled with a BASIC-like language that kids can pick up easily. And we are working on a monthly newsletter that will be a companion on the site. If you sign up for an account, you can even SAVE and LOAD your programs.
You can see an example of what it's capable of doing at the Real-World Benchmark [clubcompy.com], which gives some sample programs you can type in with the ki
Re: (Score:2)
Wonderful, thank you!!!
Re: (Score:2)
I taught computer science in high school. Unfortunately, we get a lot of people trying to bypass learning programming. There is this whole driver in the educational system that different people just learn differently and that you should be able to teach everyone, everything... you just need to find the right way to teach them.
That is to say... the attitude is to not say math is hard. It is only hard because math was always taught in a numerical way. You need to find a way to teach math to audible learne
Re: (Score:2)
I taught myself back in the 80s. All I had was access to a VIC-20 display unit at a K-Mart store and a library card. The demo program I typed in out of the book did not run and it took me 5 hours to figure out there was a difference between ";" and ":" as well as "0" and "O" or "1 and "I". So it has been a while since I have thought like a beginner.
I took some classes last year and "introduction to programming" was one of them. What surprised me was most peoples lack of ability to sequence anything. They w
Re: (Score:2)
Yep.
I'd say the hardest thing to teach kids is the notion of a variable. Some get it and then programming just flows naturally. Others just don't get it.
I also taught various math classes and you face the same problems there in algebra and other classes.
In math class it can be a bit easier for the kids to get by as they can just memorize the steps and the formulas. If some fantasy world of mine, most of these kids would not have passed the course. Yet we have the educational system we have... and they p
Re: (Score:2)
Scratch and Sense programming? Seriously? (Score:4, Insightful)
Programming is too hard with all that darn syntax and obscure words and stuff. We have to make this for the common man. So now, programming will all be done via Scratch and Sense.
Sure, need a loop? Drag over a loop. Need and if/then/else? it's on that toolbar over there. Need to consume a web service? Look in the Mashable toolbar.
Oh, need to parse a string of text to see if the input matches your criteria? No, that's called regex, you'll need to find a real programmer to help you with that.
Need to test your security/performance/useability? Sorry, go see that real programmer again.
Re: (Score:2)
Yeah, they really seem to be taking an ass-backwards approach here. Considering the problem they're trying to solve is that there are too many jobs and too few qualified candidates, focusing their efforts on people who think that the hardest part of programming is syntax makes absolutely no sense at all.
Re: (Score:1)
Having studied computing with the OU I must both agree and differ with you.
This "device" is just one unit of a three year degree and will be designed to guide how to control and monitor with a simple to program unit. This will be at most six months of a three year degree.
The "regex" side will have been taught in an earlier module, one specific to programming and how to write good software.
My OU degree served me well in teaching me the field of computing and having studied at a physical university proved to
Re: (Score:1)
Re: (Score:2)
Unfortunately, your entire comment is based on a straw man argument that all programming will be done this way. Since that's not what's being proposed, your entire comment is misaimed.
Why? (Score:1)
Re: (Score:2)
Why try to attract/retain kids in any major? Some jobs are just not for some people. Something tells me a different coding language/piece of hardware isn't going to retain kids that decide they don't like IT.
You can smell a top down management solution a mile away. some exec-VP has a goal of increasing enrollment in his empire, and the easiest way for his minions to help is to scavenge out of other majors at that organization. Select the "cool looking hardware" for the photo op, then figure out what to do with it, then figure out if anyone can get employed afterwards.
Bottom up solution would look a little different...
Re: (Score:2)
How does this address the problem? (Score:1)
The problem is not enough programming students so the trick up their sleeve is a ubiquitous (what exactly is meant by that?), visually programmed computing device? Makes sense if they were dropping out because they didn't have a chunk of hardware they can use in the school lab then take home, but I doubt that's it.
And I don't know about the visual programming language, I imagine they'll start programming in a text language eventually so you'd just delay them quitting if that's the cause.
This device just se
2.6 million students? (Score:2)
This year IT students make up 10 per cent of the university's student intake with some 263,000 studying the subject.
Huh? The OU has 2.6 million students? 4% of the UK's population?
the university has some 25,000 students who have "paused" their IT studies.
The OU is a huge institution, but the 263,000 is the total number of students of all disciplines. This means that there are around 25,000 total IT students, and roughly the same number of "paused" ones.
Somebody mean spirited might conclude that while distance learning might work for Psychology and even Philosophy, it's not suitable for highly technical disciplines such as CS...
-- jch
Re: (Score:2)
Huh? Ever heard of "the rest of the world"?
Somebody who isn't mean-spirited might conclude that CS ought to be ideally suited to distance learning. Please explain why it isn't.
But I am mean-spirited, so I'm going to point out that it's an IS degree, not CS, and if you
Re: (Score:2)
Huh? Ever heard of "the rest of the world"?
From About the OU [open.ac.uk]:
-- jch
credible university? (Score:2)
I'd say 16th out of 80 universities [slashdot.org] that submitted their CS to the last RAE makes the OU reasonably credible in the field of computing expertise.
What metrics do you use for measuring universities?
Wrong Help (Score:1)
Re: (Score:2)
Hmmmm I'm a grizzled old developer and I don't entirely agree with you. Grace Hopper got about 30 seconds of coverage when I was at University (but I remember her anyway because of her awesomeness), but throwing a bunch of code at us and asking us to pretend to be compilers (i.e. detecting syntax errors) didn't occur at all. Instead we learned how to actually write compilers. And operating systems. And all that other hardcore stuff that goes along with having a degree in Computer Science rather than being
Not learning Programming. (Score:1)
I introduced ~75 elementary school kids to scratch (Score:2)
after it was recommended to me on /. The results were great. The kids really enjoyed it and the presentation where I introduced it was well attended and generated a lot of enthusiasm. Many of the kids went on to download scratch and use it at home.
I hope I can get some of these boards to do a follow-on presentation. they seem to be much better than the other scratch boards that I have seen.
Re: (Score:1)
I introduced ~75 elementary school kids to scratch. ... The kids really enjoyed it...
Key word being kids. Kids don't attend the university. (Well, in theory, anyway...)
The point being, scratch may be great for kids who don't know how to type or are just learning the core principles of logic (if, while, and, or, etc.). I would think a university should be targeting a more mature student.
Plus, if someone has started an IT degree without ever having written a program or taught themselves a programming language, I believe they're there for the wrong reasons and it's just as well they was
Labview? (Score:2)
If you want to make ubiquitous computing evaluating sensor data in a way which is trivial enough for beginners in programming easy then use a dataflow language, like labview; I dont like the latter but i things like "LED on if temperature higher than" are really easy to program and modify.
Dataflow language may be not my personal favorite, but they do their job.
Why would anyone take a technical course at OU? (Score:2)
The OU -- the institution that charges non-UK residents approximately twice the tuition and then sends region 2 encoded DVDs to US residents.
Apart from the cluelessness of sending a region-2 encoded disk to the USA, there is the added question of why the disks are region-encoded at all.
I can accept the issue of double the cost for non-UK residents (it's market pricing, rather than cost-based), but they really should encourage those non-UK residents to take more courses, not put them off with incompatible DV
Re: (Score:2)
Why are you distance learning with a UK university, if you are from the UK they they would expect you to have a Region 2 player,no matter where you currently live?
A US University would almost certainly use American English and terminology and Region 1 encoded material in all cases ... so why do you expect a UK university to be different?
build a system that even a fool can use... (Score:1)
Encourage fewer students to give up (Score:2)
Re: (Score:2)
They hope the new approach "will encourage fewer students to give up on their studies". So it will still encourage students to give up, only fewer than the old method?
No, it will encourage them to continue study in a field for which they have no aptitude and no serious interest
Re: (Score:2)
My remark was about the use and meaning of the verb "to encourage" in the English language (the construction of the sentence seems to be wrong somehow), but apart from that, your statement is absolutely true.
Not enough people learning to be a dentist? Change the curriculum so they don't actually have to look into people's mouths during their training.
Its actully putting me off... (Score:2)
When they first announced this course along with computing degree revamp around a year ago there was a lot of discussion amongst people that who had been planning on doing the course it replaces. A lot of people understandably didn't like how simplistic they were making it seem at the time.
The course is required to complete any of the named computing degrees offered by the Open University, however the featured device and other course material seems to be aimed at a 'this is a computer and it has flashing l
They didn't go far enough. (Score:3)
They didn't go far enough. They could ensure even better success rates by dropping the requirements for courses, and issue B.Sc to anyone that manages to find the registration, M.Sc for all dummies that managed to spell their names correctly the first time, Ph.D for all that manage to fill out the registration form correctly on first try.
Be serious, any IT/CS degrees offered need to consist of:
1.) practical programming experience (hard to teach, so it should be more in the sense of encouraging students to do it for the fun of it. No programming course will be able to bring the student past basic literacy in environment X, but the fluency needed for professional work is practically never learned in a classroom.) And please stop telling students that enlist for CS that they don't need any pre-knowledge, e.g. yeah, our classes will even teach you how to power on a PC.
2.) Theoretical CS knowledge. While many people take this as very unsexy, the math and CS theory are the base of all that stuff we do. How can you develop/design anything if you have no basic concept of algorithms and datastructures? (O-notion, classification of algorithms, ...) Same applies to math (I'd hope that every CS at the BS level can explain what the problems are with floats, and why it's critical to sort an array of floats before adding them.) => you need it basic knowledge, or all the fun parts of our profession (designing systems, be it databases, pattern matching, clever data mining) are not really possible.
3.) Some generic classes for a certain level of professional behavior, I mean, it's really fantastic if somebody is able to write an email that is mostly grammar-correct. Depending upon your environment secondary schools might provide that generic knowledge or not. Here around, it's difficult because there is no standardized exit exam at the secondary level, so for example CS maths include more or less the complete secondary school content in 1-2 semesters. (Which leads to a situation where students that know the stuff, but still want to sit in to see if they miss some basics are nicely asked to use headphones while playing games/surfing/...)
Thumbing down education standards won't help anybody that needs to work the profession, AFAIK, drag and drop programming has not yet arrived in the work place. And it's only of limited fun if you need to teach the new VBA "developer" the concept of loops. (Not the syntax of loops in VB. The CONCEPT).