3 ms·
These days, a basic programming course would likely involve TI calculators or office software automation. Those are the only common usages of basic. Office sui
by burfog 8y ago
These days, a basic programming course would likely involve TI calculators or office software automation. Those are the only common usages of basic.
Office suite automation is actually important for business, particularly involving spreadsheets.
I give the next priority to octave (Matlab), bash shell scripting, and possibly a statistics-oriented language like R or Julia.
Most schools seem to start with java, python, or javascript. I'm not loving these choices. The stuff mentioned above is probably more useful for people who won't become professional programmers. For those few who will, rust and plain old C make some sense, but there are unlikely to be enough suitable students to make this a reasonable thing to teach.
- analog31 8y agoAha, I meant "basic" as an adjective. Oops. ;-) You're quite right. Adding to the irony, my first programming course was actually in BASIC. I'd go with Python. I'm seeing it displace Matlab in the scientific world, and it has "something for everybody," making it potentially attractive to students who have odd interests such as music and art.
- burfog 8y agoThe trouble with Python is that it is an unfixably slow language that is too tempting to use for serious projects. Little prototype projects tend to turn into production code, and by that time there is no hope for a rewrite. Almost nobody makes that mistake with something like bash, so the slowness isn't such a hazard. Python also suffers from runtime syntax errors. Again, this is no big deal for little programs. Python has just enough syntactic capability to lul people into using it for projects that really need a language with compile-time type checking and code generation. Much of the business world runs on spreadsheets, so scripting those is actually useful for students who will mostly not become professional programmers. It so happens that spreadsheets still use basic.
- analog31 8y agoInteresting points indeed. And I'm certainly not an authority on languages. My background is that I'm a scientist who happens to use programming as a problem solving tool. My feeling is that you can be somewhat relaxed about language choice at the K-12 level. People are too concerned about "useful" and "career" skills, but a college bound 8th grader is almost a decade out from the start of their career. That's enough time to go through several languages, computing platforms, and career plans. In that time period, I went from wanting to be a professional musician, to starting grad school in physics. ;-)