Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!


Forgot your password?

Comment Re:Windows Media Encoder 9 (Score 1) 126

20% is FAR above their actual desktop market share. The figures I have from October 2011 put Macs at 6.45% (Windows is at 92.23%).

As for WMV, you can play those on OSX with VLC, Flip4Mac or Windows Media Player 9 for Mac.

Alternately, people who want to use obscure operating systems can always make use of the computer access provided by their institution. You'll find most schools offer student accessible computers in dorms, libraries, and many other places around campus.

Again, it's not the schools responsibility to make sure that you can competently operate your personal computer or to make sure that any required software will run on whatever obscure OS you want to run.

Comment Re:Windows Media Encoder 9 (Score 0) 126

How does it work for lectures with MacBooks?

Why should the university cater to them? They make up such a small portion of the personal computer market, they're not really worth taking the extra time to support. Should instructors go out of their way to accommodate Linux users? How about JNode or KolibriOS users? Get real.

It's the student's responsibility to make sure that they have access to required resources, be they text books or software, not that of the university.

Besides, it's not like students can't make use of the computer access provided by the institution if they insist on using some obscure operating system on their personal equipment.

Comment Re:self learing / online leraing needs more respec (Score 2) 126

University of Phoenix is a real University, it is well above vocational schools.

They're regionally accredited (North Central), which is far better than many vocational/trade schools. (You'll find that many small tech schools only maintain state approval.)

While I don't know if their reputation is undeserved, they did suffer from quite a bit of unwarranted criticism just for being one of the first online-only correspondence schools. Needless to say, distance education has come a long way since then, at least as far as public opinion is concerned. Today, many traditional institutions offer a wide variety of distance-only degree programs.

Reputation aside, there are many other reasons to avoid University of Phoenix, the most obvious being their outrageous tuition which is higher than many traditional private colleges and universities.

Comment Re:Why BASIC? What for? (Score 1) 783

I don't see how. My guess is you just got a bad definition -- hey, you learned it on slashdot after all :)

"Begging the question" is a very similar to the "circular argument", which the quote we're talking about superficially resembles. In this case, however, the poster is claiming that "python makes a good beginner language" because these various institutions say that it is. (Hence, it's an appeal to authority, and not a circular argument or begging the question)

You can think of "begging the question" as "begging the question to support the premise" In that for a premise to "beg the question" the truth of that premise rests on the conclusion. (That is, for the premise to be valid, it must assume the conclusion of the argument.)

Comment Re:Why BASIC? What for? (Score 1) 783

I was not talking about ON n GOTO ... I was talking about various "event handler" type routines, like ON PLAY or ON STRING. These only exist in GOTO/GOSUB versions.

Well, ON [event] really only exists in QBasic, you'll find that more modern structured BASIC variations handle events more sensibly (though you won't find ON PLAY and the like outside of QB) Of course, events aren't something that you teach to beginners unless you're teaching at a trade school. There, you likely aren't concerned about teaching a student to program as you are hoping they pick that up as you walk them through the "text book" so that they "know how to use [tool x]". Yuck. (Events come much later, long after they've written a few event loops already. Doing so otherwise is like expecting them to fully understand linked-lists because they've used the equivalent object in Java. [Madness!])

Well, why array isn't a type, then? It's a type everywhere else.

Hence my disclaimer. Arrays are collections of primitives of some type, but not really a type themselves (if that make sense) Think of them like arrays in C, where the identifier is just a pointer to some type, except that BASIC doesn't have pointers in the proper sense. (Wow, I've made this even less clear. Horray!) Anyhow, I can't speak to more modern structured BASICs where this feature may very well be present. (Even to ones I've used as this isn't something I'd be covering while still in BASIC.)

if the language cannot handle it, it's not good for much.

Well, the language can handle it, though it can be a bit messy (at least in older BASIC variations). Still, whatever limitations this puts on the users, it certainly doesn't limit the language so significantly that it's useless for the purpose that I'm proposing it be used for (as a beginners language).

Now, if the structured variation you're using supports records, making linked-lists isn't as nasty or illegible as it is in QB. Still, by the time I'm teaching about those structures, we've already moved past BASIC (to C, of course, the greatest language for teaching data structures!) Heh, if you think teaching linked-lists in BASIC would be bad, you should try doing it in Java! :)

Anyhow, if I get your meaning it's not that BASICs syntax is necessarily inconsistent -- only that it differs significantly from other structured languages? Well, I can't argue that.

Still, I haven't seen this as an impediment to learning other languages. Quite the contrary, in fact. A billion years ago when I tutored VAX assembly, I'd have students work out an assignment in unstructured BASIC first, then convert their solution to assembly. It was a remarkably effective technique which turned more than one students' grade around.

We we move to C, to keep with your examples, I've found that students find things like file handles obvious, having worked with the # thing in BASIC. The # system is great for learning -- it eliminates questions like "so if I print this to the screen, will I see what's in the file?" (#1 isn't obviously a variable, but it does clearly represent the open file, so the question never comes up. #1 is just "the first file opened" in their minds. Once we get to C, the idea of a file handle is obvious, again avoiding the question!)

Done right, most students pick-up C in a few days, once they've been introduced to the syntax. The details come as they need them, but it's not nearly the struggle it would be had we started with the language. (Why a struggle? Even in C there is too much "cruft" for the beginner -- that is, necessary code that the student has no hope of understanding for several weeks or months -- magic code, if you will. When they can understand everything they've typed, it's empowering. When they can't, it's disheartening.)

Anyhow, that's really one of the greatest advantages of BASIC as a beginners language. There isn't any "cruft" to get in the way, slow them down, or mock their understanding. They can do a lot with very little without sacrificing anything fundamental. It's in BASIC that they can most easily learn how to "think like a programmer" and gain not only the skills, but the confidence that they need.

Comment Re:Boycott in the favor of? (Score 1) 542

So long as I don't try to encrypt removable storage it is plenty secure though.

You still can, just use the stronger Device Password & Device Key option, like you should anyway.

Both iOS and Android may be a full generation or two ahead in terms of user interface

Not for long. RIM is already a generation ahead in terms of UI on their tablet. (They've been ahead of iOS on notifications and a few other things on phones basically forever :) ) The BB10 phones in 2012 should put BB phones well ahead of iOS and (current) Android phones in terms of UI sometime this coming fall. [Well, I think they're ahead now (I love the OS7 UI, the 9900 is about the best smartphone I've ever used) but I understand why they're considered "behind" here.] BB10, however, represents the future, bringing a new standard in stability, security, and multi-tasking.

Hang in there, RIM may be down, but they're certainly not out.

Comment Re:Why BASIC? What for? (Score 1) 783

Why is OPEN a statement and not a function?

Why should it be? Are there other functions that return a handle to a resource? OPEN works the same for resources other than files (in variations I'm familiar with anyhow). That's consistent, not inconsistent.

Ditto for NAME, and why isn't it RENAME?

Why isn't it MOVE? I don't see what this has to do with consistency?

Why the special syntax ... for all graphics primitives

This is the one I agree with, though it's the only place where I've found the syntax to be irregular. (This seems limited to only a few BASIC variations, however.)

What about all the ON ... GOSUB ... stuff, and why aren't there any structured programming equivalents that'd work with proper functions

You'll find that in structured BASICs, there are proper structured equivalents (CASE, in this case) that replace ON ... GOTO type statements. (You'll find that ON ... GOSUB is only included for compatibility with unstructured BASICs in older structured BASIC variations)

Why can't you have arrays of arrays

Again, I don't see anything wrong here. That is, arrays are arrays of primitives of some type. An array isn't a type, so to allow arrays of arrays would be inconsistent! (Er, that's terribly unclear and a bit misleading, but I think you can still figure out what I mean here.)

How do you organize a linked list, a tree, or any other structure where you need links between nodes?

This has absolutely nothing to do with "semantic consistency" and is instead a feature of the language that you think should be included. Anyhow, you can model those kinds of structures fairly easily with muti-dimensional arrays. Some BASICs even let you dynamically resize an array (you have to specify the largest size you'll think you need otherwise) Still, it can be done, though you may want to look elsewhere if you need those kinds of structures. (Present-day structured BASIC variations may have better support for creating these kinds of structures, but I'd need to look.)

Comment Re:Why BASIC? What for? (Score 1) 783

If by "modern structured BASIC" you mean the like of VB

What? No, by structure BASIC I mean, well, what everyone else means when they say structured BASIC. That is, the procedural variations of the language (dig up an old structured BASIC textbook and you'll see what I mean). I don't know that I'd count VB, as it's so far removed from what most people consider structured BASIC that I don't know that a meaningful comparison could be made. VB had its place (for better or worse), but it isn't what I'm talking about here at all.

What's worse is that BASIC is very irregular in its syntax

Care to give examples? I can't think of any case where this is true save one exception (The LINE and CIRCLE routines from BASICA & QBasic) Though I'd hardly call that "very irregular".

Anyway, Python is a very reasonable middle ground.

Not really. Python is a nightmare as a beginning language -- and it's not terribly good as a production language. (I think we've had this discussion before. I doubt we'll come to any agreement here.)

(why the hell should a beginner understand the difference between e.g. INTEGER and LONG?)

When I teach beginner programming I spend a good bit of time talking about data types. Of course, I stick with a few simple types (int, float, boolean, character, & string). I find it helps to have a language that will yell at them a bit if they stray too far.

Sure, they may not need to know the difference between int and long early on, but I do take types all the way down to their binary representation. If they have any hope of using bit-wise operators, they'll need to know this. It's good to expose them to these concepts early, so that it's both not magical and not a surprise when it becomes important later. The last thing they need is to stop caring about types because the language is too forgiving (see: PHP).

most of it comes from legacy syntax like type characters

Oddly enough, it's one of the reasons that I prefer BASIC as an introductory language. Those goofy characters really are helpful for beginners. It may be an extra thing to remember, but they're also still learning about types. I find that they're a helpful reminder for students. (Remember Hungarian Notation? Yeah, that turned out to be a bad idea, but I've found that the $ behind strings is a good thing for beginners.)

Still, I don't see why this makes the syntax and grammar a mess? You'll need to explain yourself a bit more here.

Comment Re:BASIC is an awful language (Score 1) 783

I agree. Though I'd also add that those unstructured BASIC's on early-80's micros did a MUCH better job at preparing young programmers for moving on to assembly than did any other language at the time. (Thinking about how you structure and organize your code in an old unstructured BASIC mirrors how you'd structure and organize your assembly program.)

Comment Re:Things I don't want to do with BASIC (Score 1) 783

So ... what is your "very good reason" (or reasons, as the case may be)

On #1, some time last year I used QBasic to write a simple program that parses an archive of email from our bounce address and creates a list of addresses to be removed from our contact list. I did it to annoy a co-worker, but it turned out to be a reasonably good choice. The code is really easy to understand, and took all of 10 minutes to put together (including hunting down a copy of qb45)

Sure, there are places where BASIC isn't well suited, but that's true of all languages. BASIC shines as a first programming language, and it's the only place where I really advocate it's use. That doesn't mean that it's not well-suited to other areas, it's that there are reasons external to the language that may inhibit its use.

Still, I want to know your "good reasons" as I've yet to see anyone articulate an actual "good reason".

Comment Re:Why BASIC? What for? (Score 1) 783

What? VB is a different animal, surely, but it's not the structured part that you're students are having trouble with -- it's that it's event-driven. (Didn't everyone stop using VB by 2001?)

Unless your students are from the past, then whatever BASIC they learned is likely a structured basic, will all the features of any procedural language.

I've found that teaching beginners using BASIC to start to be much more productive than other language if for no other reason that it "stays out of the way" and doesn't force you to include code that a beginner has no hope of understanding.

Now, you say that "Microsoft recognized that there were massive problems with BASIC" but you haven't told me what they are. Structured BASIC is just as capable as any other structured language, it just happens to be very well suited for beginners (That's what the "B" in BASIC stands for, after all.)

So, what are these supposed "massive problems"? No one seems to be able to tell me what they are! I suspect people who make these claims are just parroting nonsense, and don't actually have a reason.

Slashdot Top Deals

"The geeks shall inherit the earth." -- Karl Lehenbauer