Ask Slashdot: Best Strategies For Teaching Kids CS Skills With Basic?
beaverdownunder writes We're currently working on developing a teaching platform based around our BASIC interpreter DiscoRunner, and we would love to hear from Slashdot readers as to what methods they've used in the past to teach kids computer science concepts — which worked, what didn't, and why? This will obviously be invaluable to us when it comes to working out the lessons that will be taught in our fight-to-save-the-world-from-evil learning environment, and we would be eternally grateful for any scraps of wisdom you could toss our way.
Slide problems under door. If solved correctly, they get fed. Few years of this and you have a BASIC pro.
While your saving the world idea sounds exciting, it won't appeal to a large segment of your audience. Give them a choice of some other options, maybe something more social.
const int one = 65536; (Silvermoon, Texture.cs)
SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
By the time these kids grow up, "programming skills" will be obsolete, same as slide rules became obsolete a generation ago. Let the kids be kids, and concentrate on the basics. There are too many supposedly intelligent adults here on slashdot who still can't tell the difference between "brake" and "break", "rain", "reign", and "rein", etc.
For once, don't "think of the children." There are already too many people trying to make money for themselves by pushing the next generation into being low-paid code monkeys.
"Transparent" is a shit show that trades on every stereotype going. A man in drag is NOT a transsexual.
Why do these questions keep coming up, repeatedly on /.? Can't people use the search box and find the answers they need?
10 PRINT "Child needs to want to code"
20 PRINT "Child needs to be old enough to have critical thinking skills"
30 PRINT "Child needs to WANT to code!"
40 PRINT "Teacher needs to set proper expectations (no, you're not going to create a WoW type game in six weeks)"
50 PRINT "Child needs to WANT TO CODE!!!"
60 PRINT "Coding as part of a larger problem is a good approach as to a pure, all coding approach"
70 PRINT "CHILD NEEDS TO WANT TO CODE!!!"
80 GOTO 70
GOTO is well-known as a beneficial logical statement. I suppose in this day and age, we're going to need something like this:
Thanks to the War on Drugs, it's easier to buy meth than it is to buy cold medicine!
My daughter took a programming class using Basic during her freshman year. I encouraged her to take it, so she could see that there are multiple ways of solving problems. Unfortunately the teacher was having none of this. He dictated to his students exactly how he wanted them to write the programs. This was very disappointing and incredibly discouraging for my daughter. Let the students struggle a little bit, and let them find ways to complete their assignments. When they're done present some of the students' solutions to the class, and talk about how they solved the assignment and discuss alternatives. You'll need to be respectful. People that are new to programming can be pretty sensitive about their code, so make sure you take that into account. You don't want to make somebody feel stupid, especially when they probably worked very hard on completing the assignment.
Lastly, maybe you should consider a different language. Maybe you should consider Python or even C++.
My daughter took a programming class using Basic during her freshman year. I encouraged her to take it, so she could see that there are multiple ways of solving problems. Unfortunately the teacher was having none of this. He dictated to his students exactly how he wanted them to write the programs. This was very disappointing and incredibly discouraging for my daughter. Let the students struggle a little bit, and let them find ways to complete their assignments. When they're done present some of the students' solutions to the class, and talk about how they solved the assignment and discuss alternatives. You'll need to be respectful. People that are new to programming can be pretty sensitive about their code, so make sure you take that into account. You don't want to make somebody feel stupid, especially when they probably worked very hard on completing the assignment. Lastly, maybe you should consider a different language. Maybe you should consider Python or even C++.
Not trying to troll here but honestly these "someone is not coding and it's a problem" questions are so repetitive. How to teach so in so how to code, why isn't the whole world coding, get your pet dog into coding.... again and again. Stick them in a room with an old computer with BASIC. If they like it, the rest was meant to be. Otherwise it's their fucking life, I don't care what they want to do. The repetition is honestly getting insane.
"It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
Firstly, don't confuse the students by telling them it's Computer Science, if it's only simple programming.
Enough said.
I don't see what is so special about BASIC. Why not use C/C++ or python? Hell even Turbo Pascal would be more "fun" and as a side effect much more effective for teaching kids.
I think I owe everything to this book:
http://www.amazon.com/Brain-ga...
26 short (1-2K) games/puzzles - you have the source, can you solve the puzzles?
the changing semantics of languages and APIs will change — best way to teach the sort of mental discipline is to abstract it to the level of chess —
then using something like SDLTRS to run an old version of TRS80 or Apple II Basic, and have them solve simple problems (like Towers of Hannoi, generating Prime Numbers, Loop and Display their name 1000x on the screen).
keep it simple.
2cents
jp
Implement a turtle-based drawing API and build a curriculum that introduces programming concepts with turtle graphics.
I am becoming gerund, destroyer of verbs.
yes I get it. You have a child and have the urge to tell the world about it. .... How about you come back in 2 years and ask the following.
This is Slashdot. It used to be news for nerds, shit that MATTERS
"How do I get my child to be a kernel hacker since he/she already outgrew fucking basic !?!?!?"
Look he/she made potty on the toilet .... twitter that shit!
Everyone who buys Wild Hunt will receive 16 specially prepared DLCs absolutely for free, regardless of platform.
beaverdownunder isn't really trying to ask a question at all. He just wants to hype his own Basic called Discocrapper (no point in giving him the satisfaction of repeating the actual name). This entire thread isn't about any valid ask Slashdot question, it is just a spammy link.
I'm an American. I love this country and the freedoms that we used to have.
I cut my teeth on BASIC on an Apple ][+, and wrote my first professional-grade program (a math tutor) on it when I was 12. I have a lot of fondness for BASIC. These days, if I were to teach a kid any language, it would be Python. It has the easy syntax of BASIC with the added advantages of (a) a rich enough API set for everything from web development through machine learning (b) being an actual marketable skill in places like Silicon Valley.
I'm not saying BASIC is a bad choice, just that I think there are much better ones.
Finding God in a Dog
I taught 10-18 year olds with little to no computer skills small basic. Just follow the curriculum: www.smallbasic.com
Help them do the content in the lessons. Then make up "tests" for them to do on their own for rewards (candy is a good motivator) after each lesson.
From what I find you'll likely get half of the kids not understanding a damn thing or are too lazy/anti-nerd to do the work. 40% will be able to do it, and they'll like it. But they're never going to use it outside of class and candy. And then you'll get 1 or 2 kids per class that will love it. They'll even do it at home. Focus extra attention on these kids. Give them extra work and praise. And never lose contact with these kids. Because they'll look to you for help in college! ;)
Good luck. It can be tough, but it's really rewarding when a few of them actually use the stuff you taught them in the real world! :)
Problem One: Got to teach kids to program.
Teach them basic...
now you have two problems.
Problem One: Got to teach kids to program.
Problem Two: They know basic.
The first things anybody needs to learn about programming are generic in terms of language. They're concepts. Branches, loops, function calls, and maybe even classes and delegates are all within range of exercises off of the machine. This approach can go well beyond basic. I'll describe it generally but apply as needed.
Here's a template: Split students into groups of three. One person must come up with non-ambiguous instructions to complete a task, such as taking balled up sheets of paper out of a box one by one and putting them in another box. One person executes the instructions exactly as they are written. One person catches mistakes in the execution where something is ambiguous that shouldn't be. They can rotate roles twice, so between each time there's a chance to stop the activity and have a quick class discussion about things that went wrong in different groups. Next iteration, they should each improve upon their instructions according to mistakes made by the whole class last iteration. By the third iteration, if there's not a perfect algorithm out there then the best will still be a short instructor's change away from the goal.
Design exercises like this carefully. For example, the above exercise focuses on loops and branches, but those concepts can be further divided. Function calls can be taught by having different groups perform different tasks, but they have to "call out" to each other to complete a more complicated task together. Classes can be demonstrated literally, whereas one class has one role it develops for in its exercises and another class of students develops another. Then, they have to find a way to work together with simple messages like notes.
Before they ever touch a development environment, they can already have the conceptual foundation to understand what they will be taught. Instead of introducing functions to the sound of, "I don't get it!" you can have students asking about the concept ahead of time. For example, "This assignment would be so much easier with loops! But we have to finish it with branches."
Let's not get fixated on BASIC. I actually teach my kids to code in other languages but the question remains - what cool problems have you solved, or what challenges have you suggested, that let kids take on small, manageable and interesting programming projects? I, for one, would really prefer if the discussion went in this direction...
Define 'kids'.
There's a hell of a lot of difference between a kid asking, "What's a vary able?" and a kid asking, "The fuck is up with pointers?"
You don't want C for the former. You don't want BASIC for the latter.
And in either case, you're going to have to deal with the fact that a large number of kids simply won't get it, no matter what fancy technology pig you dress up.
This is what I leaned on when I was 10 - and I can't think of anything better to teach kids basic programming skills. This was a operating system that had basic built in, and you just programmed right into the OS, and ran right from the OS. I can't think of anything simpler. The simplicity of it also allowed for the learner to just focus on logic and programming. I truly think it's the best possible learning tool. Even graphics were simple - nothing fancy - just lines and set/reset statements, paint statements... All this stuff was on a single page - the same one that the text was written on. I loved it - and I still do, perhaps for nostalgic purposes. But I swear by it. You can run it in an emulator, you just need the ROM, which is pretty easy to find. Get the "Extended Basic one". The real key here would be to find those original books - those things were gold and they taught in a step by step manner. Those - I have no idea how to find. I'm gonna look though, and if I find it, I'll put a link to it up here. I might even have the original books in my old bedroom at my parents' house. If I can find them, I'll scan them page by page and post a link to those as well... Anyone else think this is the ultimate tool for leaning programming or is it just me?
Step 1: Show them the BASIC interpreter
Step 2: PRINT, INPUT, IF, GOTO, END
Step 3: Show them Python, C++, or even JavaScript, if you hate them
I know it's not really what a platform-builder wants to hear, but please use BASIC only for purposes for which it's the best tool. It's ideal for highlighting the often-missed initial concepts, such as the facts that statements are executed in order, variables can store information and change, and that certain statements can change the program flow. Those core ideas are so internalized by experienced programmers that they often won't understand how students could be missing them. From the student's perspective, it's perfectly reasonable that once statements are made anywhere in a program, the computer should pick which one to run based on what would make sense. It's also reasonable that a variable should be set once and never change, or should be usable before being set because "it's set right there!"
BASIC has one major advantage over every other language out there: absolutely no boilerplate, and absolutely no hidden intelligence in the interpreter. Everything that makes the program run is visible in the code, and everything in the code does something lesson-related in the most minimal programs. Contrast with C, which requires defining a main() function before the student knows what a function is. This simplicity and obviousness makes BASIC the perfect tool for demonstrating simple and obvious programs, but it's inelegant for learning any actual computer science concepts like memory management, design patterns, or data structures.
Those concepts are best covered in another language, which also highlights another important CS concept: The functional equivalence of all Turing-complete languages, but the effects of language choice on the difficulty of the project.
You do not have a moral or legal right to do absolutely anything you want.
BASIC is a really, really bad language to teach anything about computing. If you want to equip them for the world of work, go for Java or C# (which are more or less the same, from a learner's point of view, and neither is hard). If you want to teach a deep understanding of algorithms and how computers work, Clojure or Scheme would be good choices.
I'm old enough to remember when discussions on Slashdot were well informed.
Are you actively trying to make them future TERRIBLE programmers?
Who logs in to gdm? Not I, said the duck.
I first learned to program in BASIC in 1980 on a Sinclair ZX80 computer. I learned very fast because on any given line it would not let you enter an unexpected character nor would it let you do a newline-carriage return on a malformed statement. Granted, in 1980 I had been programming in Fortran for almost 20 years, but the immediate feedback offered by the ZX80 made learning BASIC a breeze. I still have my ZX 80 although it no longer boots up. I think its approach to teaching BASIC was clever and sound.
The main reason I learned BASIC is that I could program/ enter/ debug/ and PLAY games that were cutting edge at the time. If your kids have even seen the latest consoles they will not be motivated by that aspect of it.
I don't think your kids or any kids in this day and age will be interested in anything that isn't just given to them. They will be on social media and playing canned games and they won't care about creating anything themselves.
They will just be consumers. Let it go, the golden age of BASIC is long gone.
Let your kids be the lemmings they are destined to be.
This Ask SlashDot is clearly a troll.
http://gvr.sourceforge.net/
Why reinvent the wheel. Check out Guido van Robot, a programming language that teaches all the basics of programming (problem solving, sequence, iteration and decision making).
Best yet, it already has fun progressive lessons that are perfect for teaching in the classroom.
http://gvr.sourceforge.net/les...
Whatever you do, remember, start with sequence, then iteration, decision making and ultimately wrap it up with problem solving.
Start with the basics. Teach them the foundational mathematical principles so that they have a command over the base ideas before throwing them into a text editor with a strange new language/syntax. If you want those kids to really learn CS, you need them to understand the math first. I mean, if the goal is to show kids what computers can do with code... then just throw them into the code , but if the goal is for them to understand how they're doing those things... you should start with mathematical logic.
Eat sleep die
Check out The BASIC Book, an oldie-but-goodie by Seymour Simon. Nice-and-simple 32-page illustrated intro to BASIC!
1) Get them imagining something cool. Kids can dream better than we can, get them excited about something personal.
2) Walk them through the process of whiteboarding their idea, so they can get practice translating concepts into plans.
3) As you help them transform their plans into implementation, teach them only the barest fundamentals, and then introduce advanced concepts when they encounter the pain point that justified the creation of those concepts. For example, introduce functions when they have become frustrated with copy pasting code. This keeps them from becoming overwhelmed and paralyzed with options.
4) Give them opportunities to receive positive feedback from their peers. If they think they can become "cool" through the creative process, they'll invest more in it.
This is how I taught my kid to code. We used MIT's Scratch.
Let kids be kids. Let kids know what is available out there, in all sorts of subjects. Those who are so inclined will have the chance to take up coding. Others will do other things. Coding is a nice skill, but by no means an essential one - one can be immensely productive and happy in all sorts of technical subjects and walks of life, while ignoring coding altogether. Finally, whatever you do, do NOT do with BASIC.
1. Drop the Applesoft BASIC clone.
2. Create a programming language that natively interfaces with Facebook API, Minecraft API or whatever other software project they actually care about.
3. Show them a "Hello world" example.
4. Wait five minutes.
5. Classroom full of programmers.
Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
Don't ask computer geeks how to teach children. That's moronic. Anyone who CAN program has already internalized all the bullshit of bad pedagogy. They have a predisposition to existing styles and modes of learning and coding that are barriers to others. AND, as some boffins pontificated, they're malignant enough to just want to foster the same abuse on kids that they put up with. As someone who has worked with programmers for 25+ years, trained educators, and worked with children, you should not waste your time trying to TEACH children anything. Develop tools to help them LEARN, and if the kids don't learn it, then blame yourself for your lack of creativity and imagination for not coming up with a sufficiently flexible model that addresses the variety of interest, goals, needs, skills of the children. We don't need another lame attempt to reproduce the errors of programming culture, and inflict them on another generation. Just a thought.
https://www.tandfonline.com/doi/full/10.1080/1369118X.2013.808365
BASIC considered harmful.
-- Jeff Woods
What year is it? I loved basic in 1990, but this is not the right technology to use today.
Get them to program simple games (say hangman) or even just graphics.
Do small programs that a kid can do in one session.
Don't bother trying graphics and video games - when they realize how much time and effort it takes, they will become very discouraged.
Do something like an adventure game, magic eightball or eliza variation.
Why (just) BASIC? Mix in HTML/CSS/JavaScript. Better yet, do Arduino projects and get both programming and electronics.
Greed is the root of all evil.
Give them the C source to systemd and see if they can fix some of the problems like ignoring exit statuses, swallowing stderr, and dropping logging messages. Maybe that group of kids can fix what the group of kids that wrote systemd can't.
If the kid really wants to learn how to program, depending on how old they are, maybe Pascal or possibly Java. Younger kids maybe Logo, if you can find it. If you're going to force kids who aren't motivated or don't really want to learn it, then I suppose BASIC is okay.
There is no reason to teach BASIC anymore, in particular the obsolete forms implemented by DiscoRunner.
There are numerous programming languages you can teach kids. Python is probably a reasonable choice, but there are even simpler ones out there if you like.
When I first learned programming as a child, what I found most helpful was good documentation that explained all the different statements/functions/features of the language with examples. Make the information easy to navigate, don't make it so they have to look through a whole chapter to try to find a quick reference, have a index that is categorized with all the statements/functions/features listed, so they find the information quickly while trying to make a program.
On a semi-related note, you may want to check out Project Spark, it is free for Windows 8.1 and Xbox. It is a project commissioned by Microsoft that allows kids to make their own games. It has its own basic language but there is no typing involved so it makes it easier for kids to start out with.
Basic as a language is tedious, user unfriendly, and not problem oriented. Java is a lot better. My kids 6. and 8. grade took Stanfords CS101, and I was truly impressed with how fun it was for them, as well as what they could accomplice.
Everything is done right in the browser. Try it out for yourself. Khan academy has tried a "fun game" in java approach, but this is much less focussed and kids seem to tire of it as soon as they have made the limo break the sound barrier.
1. A lot of graphical processing, like finding traffic signs in urban environment (for automatic driving) to bluescreen manipulation.
2. Also building databases and doing datamining.
3. Networking
4. More programming; Digital media, analog, security etc
Nick Parlante is the teacher, and a great guy.
https://www.coursera.org/cours...
don't cut it off www.mgmbill.org
I see a lot of negative comments pertaining to teaching basic as a first step in understanding how to code. I respectfully disagree. I believe that basic removes all of the complexity that gets in the way of learning pure logic skills. I don't see any sense in teaching kids to program and having pointers or even compiling and linking when the best thing for them to learn is the purity of understanding how to create simple algorithms to solve problems. If they show an interest, they can figure out more complex things like compilers, and the complexities of lower level languages like C. I stated in another comment, I learned how to code on a TRS80 color computer, and I think it was invaluable to master that before moving on to more complex and real-world things...
... by trying to teach them the worst abomination of a programming language under the sun. Even a good macro-assembler is better. I also strongly advise you to stay away from Java and JavaScript. These languages are only for experts that already have serious skills, all other develop very bad habits using them. Possible candidates if you really want to teach them are Python, Ruby and maybe Lua. But seriously, CS concepts are not something you teach with a language, that would be like teaching them to use a pen of a specific color instead of teaching how to write.
Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
1. Hit yourself to regain your common sense.
2. Teach them Python.
I mean seriously. One of the strongest arguments for basic is that you don't need to teach someone functions to start a program. With the goto statement in Lua, you got that. At the very least, once the student knows lua and goes on to other things, it will be useful if he ever needs to use it as a scripting language.
You might try looking at codebymath.com...I've used it to teach intro. programming skills to pre-high school students...links programming to math the students might be seeing in school.
code.org
then
scratch.mit.edu
Http://libertybasic.com
http://libertybasic.conforums.com
I have been using it for years on the hobbyist level and to write custom software for clients.
Quite possibly BASIC is the worst possible choice if your stated intention is actually correct. A CS student has no need of BASIC. It is a polluter of clean minds. Once infected it is difficult to cleanse.
Now, if you are wanting accountants or web designers, you are spot on. Cause nobody gives a rat's ass about either of them. Web designers that know what they are doing are not included in this, but the web itself is proof that they are in the minority.
Given the damage done to past generations who learned using BASIC, you must reconsider. Yes, BASIC is a great teaching language but it also teaches many bad habits as well. Some never recover enough to be any good at programming, or the quite entirely when faced with the task of programming in a real world language. FWIW, I did recover but I'll carry the scars to my grave.
BASIC teaches concepts but really isn't a usable skill in the marketplace anymore. Try Ruby, Java or even C.
Harrison's Postulate - "For every action there is an equal and opposite criticism"
Best Strategies For Teaching Kids CS Skills With Basic?
Coming soon to a theatre near you.....
Teach modules I moved to C/C++ from BASIC (HP-BASIC) by learning BASIC modules to C ((C++) functions/routines/subroutines) by breaking down problems to fundamentals. JUST THINK!
The only thing new in this world is the history that you don't know.[Harry Truman]
These really aren't the same things. If you want to teach the computer science, the best thing you can do for them is teach them math instead of BASIC.
If you're talking about programming, the best strategy is to find something they really enjoy doing and show them how they can use programming to solve a problem that involves that something. It's a lot easier to teach someone how to use a tool if they have a practical use for the tool.
BeauHD. Worst editor since kdawson.
In the old days, the best way to teach programming with basic started and finished with LOAD "C"....
Got them moderator blues I blieve I walk out the do', With these mod-points I been gettin', I 'most never post no mo'
While we're slashvertising BASIC emulators, PC-BASIC is a GPL, Python-based emulator for GW-BASIC. </plug class="shameless">
You haven't identified the problem you're trying to solve. At least you made a huge mistake of asking here since you're asking for opinions from an extremely opinionated community without taking the time to actually identify what it is that you're actually having problems with. It seems you just haven't even bothered thinking about it.
1) Are you trying to teach CS to children? Is this the goal? Have you considered asking whether people with legitimate pedagogical sciences experience and studies have identified methods of teaching children topics of this type?
2) Are you asking if there are other tested methods of teaching children computer science which have proven effective that can be adapted to the tool you want to use?
3) Are you in love with a certain tool and while it has almost no practical value to anyone else, you considered it might be a great way to teach kids and now you want to see how you can justify the existence of such a tool (which should simple be, it was fun to make) by trying to use it in CS education of children because "Hey back in the 80's I used AppleSoft Basic and learned from that!"
4) Have you stopped for a minute to decide whether you're narrowing your scope so much by choosing a specific tool and language that your first goal should have been "How do I teach kids CS?" and then "Are there any learning platforms already available for this?" and then "What are the benefits of making a new learning platform using a language like BASIC when the rest of the world, using well funded pedagogical studies have chosen alternative approaches?"
5) Why are you trying to choose a language as a tool. You want to teach principles and things like linked lists and design patterns just are damn near impossible to implement in your language. Any form of real math is also shit in BASIC. Yes, we managed to do these things back when a PASCAL compiler cost $400 and a cheese burger cost $2 and BASIC was free. We have moved on.
6) What are you actually hoping to teach with BASIC? Are you trying to teach them how to draw a line on a screen? Are you trying to teach them to do math? Teach them to do something more applied? What kind of tasks do you actually plan on teaching them? Did you honestly put any thought into this at all.
I know I'm tearing you up here, but I hope you'll consider it tough love. You're trying to mess with children's minds. This is more than just a fun toy... you need to consider the implications of things like "If I teach them BASIC today, will it actually assist in building interest in kids that otherwise would have never programmed or will it chase off the kids who thought it might be fun but were scared to try and now will never try again because it was too nerdy."
There are people who spend decades researching how to introduce topics like this into schools. They don't just say "Hey wouldn't it be great if we made them play with this for a bit!". These people instead are educated not only as engineers but as school teachers. Most of them have at least one masters and one bachelors and they think in terms of "How can we most productively introduce a topic like programming and CS to children" and then they research it with teachers, parents and children.
I think you are very cool for being interested in getting involved.... I hope I gave you some food for thought and I really hope you take your ambitions further and accomplish your goals... once you figure out what they are.
Don't teach their kids C Sharp
As my friend Edsger Dijkstra once said "It is practically impossible to teach good programming style to students that have had prior exposure to BASIC; as potential programmers they are mentally mutilated beyond hope of regeneration."
Of all the languages, why?
For reference, I spent many a year bashing the keyboard playing with Apple II basic. I was *so* psyched to get a disk drive., and when AppleDOS 3.3 came out, I thought it was really cool beans. In the 80's. I still remember typing "pr#3", "pr#6", and call -151 to break into monitor, so I could enter hand-assembled code.
I also remember running out of line numbers, then hand-typing in a machine-language renumbering routine to renumber the code, and trying to decipher spaghetti code when looking at someone else's BASIC programs, etc.
Good times...but times have moved on.
Back then the machines were only slightly more complex than a toaster. Now there's GUI's, evented interfaces, multi-threading, networking, the internet in general, VMs, god only knows how many APIs to learn, etc.
Also, that particular BASIC has a *lot* of programming sins to answer for. Spaghetti code, using 'GOSUB' to call a function, all variables are global because there's no local storage, all lines must have line numbers, not real possibility of libraries, very limited memory, etc.
There are things like scratch, GameMaker, etc that give kids a running start these days. You could use lua or python, and use a language that you might actually run across in the real world.
Heck, I'd even say get Microsoft's Small Basic if you're on Windows.
If you wanted a cross-platform language, I'd suggest something completely out there like http://livecode.com, as it would allow someone to write code for pretty much any platform they'd like, and has a community version now.
Seems a waste of what is obviously decent talent.
Well, Call me paranoid or cheap or whatever, but here's the only thing I see about licensing on their site: Please do not re-distribute this preview version of DiscoRunner. and despite seeing some stuff on Git about Disco and Runner, but no mention of BASIC there, I'm starting to think that this ain't GPL. Not that it has to be, but I like to know that up front. I'm not an idiot, but I'm often busy and distracted, and when I have to search their site and then the web for 10 minutes or so, and I still don't have a clear answer, then I'm not that stupid, probably, or they're trying to downplay this at least. I wish them the best, and commercial software is cool, but I'm one of those that imagines GPL in schools and instantly available to anyone that wants it. It has served me well and I'm very grateful.
Take away their smart phones and give them a 486 with a DOS install floppy...
DIAF? What? I figure it's "Do I-something a Favor", but who/what is I-something? I tried looking up DIAF and I found out that the acronym means "Die In A Fire".