In the before time, in the long long ago, we had tons of stuff prefixed with "e" or "i" -- how Apple managed its now near monopoly on that particular lower-case vowel prefix is anyone's guess.
That hasn't stop math departments from using Rudin's book (which is 35 years old) for intro analysis. And Dover Publications sells great textbooks for under $20 that are just reprinted from decades old classics....
Yet you quoted this part of the parents post:
(Those bodies don't care if the subject is one like freshman calc that hasn't changed in a hundred years or more.)
I guess you're new to this whole "reading" thing.
Even funnier, Rudin's Principles of Mathematical Analysis is still overpriced at $100.
I could go on but the point is... most of this stuff isn't even available on the RIM offering
Multiple yet separate email accounts? Check. GPS + Mapping? Tons of options, pick the one you like best. LocalEats? That specific app? Here you go Barcodes & QR ? Work great. Take your pick of apps.
So... when you say "most of this stuff" isn't available, you mean the exact opposite? Interesting.
I once heard a Blackberry user say he'd never get an iPhone because you couldn't even pull the battery. He got mad and walked away before I finished laughing.
Could it be he walked away because you're completely insufferable?
I've had a BB since the 7290. I've never had to pull the battery.
I can recall only twice my phone "locking up" -- which was quickly remedied by a simple alt-rshift-del
The supposed need for frequent battery-pulls seems more like ritual than a solution to a problem. That is, users do a "battery pull" because that's what they think they're supposed to do.
Without no deep understanding of AI, the project implements bad assumptions.
Speaking of bad assumptions...
how about we design an algorithm that embodies the simplest possible AI?
Computationalism has been dead for 30 years. Anyone still championing that failed philosophy either doesn't understand the problem or is clinging to it out of desperation.
My point is that in order to learn to code, you have to code.
Sure, I can't argue with that.
My point about good habits, is to know what a function is, what a list is, what a class is, and so on. [...] A bad habit is using goto's because you don't know any better.
We must have very different definitions of the word "habit".
Python gives that without much difficulty.
My point, of course, is that there are much better teaching languages than the one you suggest. (Python wouldn't even make my top 10.) I speak from experience, having taught the subject for several year to adult learners.
Forget it. It's pretty obvious that you don't WANT to understand what the other poster meant. If you can't see the difference from a beginners perspective between clicking a button and pressing the enter key, I can't help you.
Wow, that article didn't address my question even a little. Did you read it before linking it?
The closest it came was: "Do you want skills that will resonate decades from now? Do you want to learn languages that are relatable and follow common rules? If you answered YES to these questions then do the development and business community a favor and stay clear of Visual Basic."
Of course, no where in the article was that claim substantiated. The author, I suspect, is a bit of an idiot.
Anyhow, the article only mentions "visual basic" which is odd, given the date. You'd think he'd have specified VB.net. Of course, it isn't that much different than C# -- if you learned VB.net, moving to C# takes virtually no time at all.
Of course, VB.net isn't comparable to BASIC in any reasonable sense. The only thing most BASICs and VB.net have in common is the word "Basic". You might as well just say "the.net family of languages" is "poo" though I doubt you can justify that anymore than your other nonsense assertion.
So, I'll ask again. Why is BASIC "poo"?
I eagerly await an actual answer. I've asked this many times in the past when I've seen the meme repeated -- none have yet been able to justify their copy/paste opinion.
I think the language doesn't so matter so much as the time that is put into it.
The right language can determine how much time is necessary to get started, and how much time the learner is *willing* to put in to it.
In the summary basic was given as an example, and I'm sure the basic he's talking about isn't considered good code these days.
It's difficult to say if he's thinking of something like QBasic or the unstructured variants on early-80's micros. Still, the point is to learn to program, not to learn a trade.
No object orientation, plenty of gotos and so on.
No OO is a VERY good thing. You haven't seen spaghetti code until you've seen the messes created in so-called "pure OO" languages. OO is a joke. It was oversold and failed to deliver on ALL of the promises it made. Alan Kay regrets even coining the term.
Using goto in those old unstructured basics, in contrast, made the transition to assembly remarkably easy. Goto isn't inherently bad. Hell, you'll find goto's used in the linux kernel.
The thing is he spent time on it, and from that language went to others.
Yes, the trick is motivating the learning to spend time learning. A good learning language will keep out of the way and encourage discovery. It's why I recommend Small Basic -- check it out.
Python isn't for the beginner, as others have already pointed out. I know it's 'cool', but as a tool for learning, it's second-rate. I don't buy the "teaches good habits" argument any more than I believed that BASIC taught bad habits. What bad habits? What good habits?
(You've got to do better than "indenting code" as just about every beginner will start doing that on their own, without Guido's help.)
In HTML, "magic happens" amounts to the name of the function being put in the button's onclick handler.
I see you missed the point. It's still magic. "How does the computer know I pushed that button" is the issue. It's not part of their program, after all.
Really, there's tons of magic-to-the-beginner with html/javascript. Consequently, they don't get that same sense of control like young learners had with BASIC on their micro. Too much is very visibly happening "by magic" to capture that important feeling.
That, of course, and they need tons of background before they can even touch javascript. I taught exactly one beginners programming class with html/javascript and it was a huge mistake. Too much time was wasted on stuff unrelated to programming. It's absolutely horrible for beginners.
Small Basic is the best learning tool I've found so far. It's small, simple, and encourages discovery. The auto complete provides simple descriptions in addition to the word and the sidebar help automatically updates itself according to your cursor position. There are no weird syntax rules to trip you up. They've even changed things like "next" to "endfor" to keep things consistent.
It's not perfect, but it's much better than html/javascript for beginners.
Beginner programmers automatically turn to that visual cue
Oddly enough, the visual bit is why Python's controversial white space is bad for beginners. See, spaces and tabs are obviously different to *us*, but NOT to a beginner.
They could very easily slip and accidentally space a line over "making the code work visually, but still wrong in terms of syntax". Lean over and help them find that! A quick visual inspection won't tell you anything. Even worse, with the abundance of errors in typical beginner code, it may very well remain hidden and obscure other problems.
Your argument boils down to new programmers shouldn't understand scope.
Wow, you're an idiot. In no way does the parent's argument "boild down" to that. Sorry, it's just not even the least bit true.
That's dumb. That's idiotic.
It would be, if it were true. The parent in no way implies that scope isn't important.
And worst case, you can have the classic, basic-like, linear, non-nested, procedural, rats nest which coders have long associated with learning basic.
Fail again! Where did you even come up with "non-nested"? Do you even know what nesting is? Did you know that BASIC had that from the very beginning? Also, what's wrong with "procedural"? It's really out-of-place, even in your idiotic list of words you seem to think mean "bad".
Sorry, it's obvious that you're just (badly) repeating some nonsense (that you don't even understand) that you read on a forum somewhere. Way to not form your own opinions!
As for the "long associated" bit, it's a tired old meme that was Never true. Again, you're just repeating nonsense that you clearly don't understand.
The only difference is, python encourages something smarter, something saner, and something more professional on which to grow
No, it doesn't. Love or hate Python's whitespace rules, they're a HUGE barrier to a beginning programmer. Even if they "get" the whitespace thing right away, they'll need to constantly remind themselves that spaces and tabs are different, and what you see on the screen may look correct, but may in fact harbor errant spaces that'll ruin their program.
The only argument for python's white space is that it forces your code to look "nice". Absurd, as pretty printers have been around for ages. I'll bet your IDE even has one built-in. This isn't sane, "professional", smarter, or anything else. It's just another stupid barrier for new programmers to overcome.
whereas your recommendation re-enforces just about everything bad with undisciplined coding.
What on earth are you talking about? The parent gave exactly one reason why he doesn't think python makes a good beginners language. How does that "re-enforce just about everything bad with undisciplined coding"?
Did you even read his post before you started in on your incoherent rant?
Really, judging from this post, you're the LAST person I'd take advice about programming from. The incompetence you've displayed here is staggering.
Computer Science electives at my high school started us off with Java, if that says anything about the language's friendliness.
Your HS's choice of language says absolutely nothing about the "language's friendliness".
Java, and most so-called "modern" languages, have way too much "cruft" to be considered beginner friendly. Think back to that Java class -- how much code was written "because you need it" without having the background necessary to understand its meaning?
Voodoo code offers the student nothing but a constant reminder that they just don't understand. It's demoralizing.
A language like BASIC, however, offers no cruft. You can write interesting and useful programs and understand every single line of code. That's empowering.
It's why I recommend Microsoft Small Basic for beginners. It has a fantastic help system, a great PDF tutorial, and the IDE stays out of your way. It's very inviting. Check it out and let me know if you still think Java offers a friendly introduction to programming.
The iPad is a very nice product, but as a platform is tightly controlled by Apple (as is their right, it's their product).
Their right? Sorry, I didn't realize that $499 was the rental price.
No one on Slashdot cares about baseball.
In the before time, in the long long ago, we had tons of stuff prefixed with "e" or "i" -- how Apple managed its now near monopoly on that particular lower-case vowel prefix is anyone's guess.
In Old Europe, snow on roofs tends to stay almost as long as sow on lawns.
Lazy Europeans, just shoo the pigs away!
That hasn't stop math departments from using Rudin's book (which is 35 years old) for intro analysis. And Dover Publications sells great textbooks for under $20 that are just reprinted from decades old classics....
Yet you quoted this part of the parents post:
(Those bodies don't care if the subject is one like freshman calc that hasn't changed in a hundred years or more.)
I guess you're new to this whole "reading" thing.
Even funnier, Rudin's Principles of Mathematical Analysis is still overpriced at $100.
Yes, and have a 64kb ram from mouser, a Nintendo DS "replacement" touchscreen from dealextreme and an old Nokia screen from ebay.
And still sell millions 'cause Steve says that specs don't matter.
Just the N95, first available in March 2007? Accelerometers were basically unheard of when the iPhone was introduced in January 2007.
You're being purposefully misleading:
Dates announced:
N95 - September 26, 2006
iPhone - January 9, 2007
Dates released:
N95 - March 11, 2007
iPhone - June 29, 2007
there are MSN/Yahoo/Whatever IM clients that you can even talk to people without phones on!
All of those are also available for blackberry -- and have been for years before iPhone was a rumor.
BBM is something else entirely. It's much more than the typical IM client -- hence its astonishing popularity.
I could go on but the point is... most of this stuff isn't even available on the RIM offering
Multiple yet separate email accounts? Check.
GPS + Mapping? Tons of options, pick the one you like best.
LocalEats? That specific app? Here you go
Barcodes & QR ? Work great. Take your pick of apps.
So ... when you say "most of this stuff" isn't available, you mean the exact opposite? Interesting.
I once heard a Blackberry user say he'd never get an iPhone because you couldn't even pull the battery. He got mad and walked away before I finished laughing.
Could it be he walked away because you're completely insufferable?
I've had a BB since the 7290. I've never had to pull the battery.
I can recall only twice my phone "locking up" -- which was quickly remedied by a simple alt-rshift-del
The supposed need for frequent battery-pulls seems more like ritual than a solution to a problem. That is, users do a "battery pull" because that's what they think they're supposed to do.
The problem in simulating a brain is not computing power. It is software.
There is just so much wrong here I don't know where to even begin.
Without no deep understanding of AI, the project implements bad assumptions.
Speaking of bad assumptions...
how about we design an algorithm that embodies the simplest possible AI?
Computationalism has been dead for 30 years. Anyone still championing that failed philosophy either doesn't understand the problem or is clinging to it out of desperation.
Think about it, do you know anyone who has switched from an Android or Iphone to favor a Black Berry? I doubt it!
Why, yes, I do.
Doubt it all you want, but some people need their phone to do work. As it stands now, even those aging BB's are still the best option.
key word there is intend - sounds like they're able to detect/predict before a conscious decision was made.
The key word is indeed "intend" -- though that implies a conscious decision was made which was then predicted.
My point is that in order to learn to code, you have to code.
Sure, I can't argue with that.
My point about good habits, is to know what a function is, what a list is, what a class is, and so on. [...] A bad habit is using goto's because you don't know any better.
We must have very different definitions of the word "habit".
Python gives that without much difficulty.
My point, of course, is that there are much better teaching languages than the one you suggest. (Python wouldn't even make my top 10.) I speak from experience, having taught the subject for several year to adult learners.
Forget it. It's pretty obvious that you don't WANT to understand what the other poster meant. If you can't see the difference from a beginners perspective between clicking a button and pressing the enter key, I can't help you.
I don't give two shits about BASIC -- I just hate the meme, which is oft-repeated by idiots who can't think for themselves.
That STILL doesn't answer my question. Why is Basic "poo"? Which, as I predicted, you can't answer.
Wow, that article didn't address my question even a little. Did you read it before linking it?
The closest it came was: "Do you want skills that will resonate decades from now? Do you want to learn languages that are relatable and follow common rules? If you answered YES to these questions then do the development and business community a favor and stay clear of Visual Basic."
Of course, no where in the article was that claim substantiated. The author, I suspect, is a bit of an idiot.
Anyhow, the article only mentions "visual basic" which is odd, given the date. You'd think he'd have specified VB.net. Of course, it isn't that much different than C# -- if you learned VB.net, moving to C# takes virtually no time at all.
Of course, VB.net isn't comparable to BASIC in any reasonable sense. The only thing most BASICs and VB.net have in common is the word "Basic". You might as well just say "the .net family of languages" is "poo" though I doubt you can justify that anymore than your other nonsense assertion.
So, I'll ask again. Why is BASIC "poo"?
I eagerly await an actual answer. I've asked this many times in the past when I've seen the meme repeated -- none have yet been able to justify their copy/paste opinion.
I think the language doesn't so matter so much as the time that is put into it.
The right language can determine how much time is necessary to get started, and how much time the learner is *willing* to put in to it.
In the summary basic was given as an example, and I'm sure the basic he's talking about isn't considered good code these days.
It's difficult to say if he's thinking of something like QBasic or the unstructured variants on early-80's micros. Still, the point is to learn to program, not to learn a trade.
No object orientation, plenty of gotos and so on.
No OO is a VERY good thing. You haven't seen spaghetti code until you've seen the messes created in so-called "pure OO" languages. OO is a joke. It was oversold and failed to deliver on ALL of the promises it made. Alan Kay regrets even coining the term.
Using goto in those old unstructured basics, in contrast, made the transition to assembly remarkably easy. Goto isn't inherently bad. Hell, you'll find goto's used in the linux kernel.
The thing is he spent time on it, and from that language went to others.
Yes, the trick is motivating the learning to spend time learning. A good learning language will keep out of the way and encourage discovery. It's why I recommend Small Basic -- check it out.
Python isn't for the beginner, as others have already pointed out. I know it's 'cool', but as a tool for learning, it's second-rate. I don't buy the "teaches good habits" argument any more than I believed that BASIC taught bad habits. What bad habits? What good habits?
(You've got to do better than "indenting code" as just about every beginner will start doing that on their own, without Guido's help.)
In HTML, "magic happens" amounts to the name of the function being put in the button's onclick handler.
I see you missed the point. It's still magic. "How does the computer know I pushed that button" is the issue. It's not part of their program, after all.
Really, there's tons of magic-to-the-beginner with html/javascript. Consequently, they don't get that same sense of control like young learners had with BASIC on their micro. Too much is very visibly happening "by magic" to capture that important feeling.
That, of course, and they need tons of background before they can even touch javascript. I taught exactly one beginners programming class with html/javascript and it was a huge mistake. Too much time was wasted on stuff unrelated to programming. It's absolutely horrible for beginners.
Small Basic is the best learning tool I've found so far. It's small, simple, and encourages discovery. The auto complete provides simple descriptions in addition to the word and the sidebar help automatically updates itself according to your cursor position. There are no weird syntax rules to trip you up. They've even changed things like "next" to "endfor" to keep things consistent.
It's not perfect, but it's much better than html/javascript for beginners.
Beginner programmers automatically turn to that visual cue
Oddly enough, the visual bit is why Python's controversial white space is bad for beginners. See, spaces and tabs are obviously different to *us*, but NOT to a beginner.
They could very easily slip and accidentally space a line over "making the code work visually, but still wrong in terms of syntax". Lean over and help them find that! A quick visual inspection won't tell you anything. Even worse, with the abundance of errors in typical beginner code, it may very well remain hidden and obscure other problems.
Your argument boils down to new programmers shouldn't understand scope.
Wow, you're an idiot. In no way does the parent's argument "boild down" to that. Sorry, it's just not even the least bit true.
That's dumb. That's idiotic.
It would be, if it were true. The parent in no way implies that scope isn't important.
And worst case, you can have the classic, basic-like, linear, non-nested, procedural, rats nest which coders have long associated with learning basic.
Fail again! Where did you even come up with "non-nested"? Do you even know what nesting is? Did you know that BASIC had that from the very beginning? Also, what's wrong with "procedural"? It's really out-of-place, even in your idiotic list of words you seem to think mean "bad".
Sorry, it's obvious that you're just (badly) repeating some nonsense (that you don't even understand) that you read on a forum somewhere. Way to not form your own opinions!
As for the "long associated" bit, it's a tired old meme that was Never true. Again, you're just repeating nonsense that you clearly don't understand.
The only difference is, python encourages something smarter, something saner, and something more professional on which to grow
No, it doesn't. Love or hate Python's whitespace rules, they're a HUGE barrier to a beginning programmer. Even if they "get" the whitespace thing right away, they'll need to constantly remind themselves that spaces and tabs are different, and what you see on the screen may look correct, but may in fact harbor errant spaces that'll ruin their program.
The only argument for python's white space is that it forces your code to look "nice". Absurd, as pretty printers have been around for ages. I'll bet your IDE even has one built-in. This isn't sane, "professional", smarter, or anything else. It's just another stupid barrier for new programmers to overcome.
whereas your recommendation re-enforces just about everything bad with undisciplined coding.
What on earth are you talking about? The parent gave exactly one reason why he doesn't think python makes a good beginners language. How does that "re-enforce just about everything bad with undisciplined coding"?
Did you even read his post before you started in on your incoherent rant?
Really, judging from this post, you're the LAST person I'd take advice about programming from. The incompetence you've displayed here is staggering.
Agreed about BASIC! It's poo.
Why is it "poo"?
Seems like an ideal learning language to me. I guarantee that you can't justify your position.
Computer Science electives at my high school started us off with Java, if that says anything about the language's friendliness.
Your HS's choice of language says absolutely nothing about the "language's friendliness".
Java, and most so-called "modern" languages, have way too much "cruft" to be considered beginner friendly. Think back to that Java class -- how much code was written "because you need it" without having the background necessary to understand its meaning?
Voodoo code offers the student nothing but a constant reminder that they just don't understand. It's demoralizing.
A language like BASIC, however, offers no cruft. You can write interesting and useful programs and understand every single line of code. That's empowering.
It's why I recommend Microsoft Small Basic for beginners. It has a fantastic help system, a great PDF tutorial, and the IDE stays out of your way. It's very inviting. Check it out and let me know if you still think Java offers a friendly introduction to programming.