Why Jonny Can't Code
-
I'm sorry. The article does appear stupid to me, but I did fly off a little bit. I'm just not having a good day. The point appears to me to be that languages with line numbers and no OO are a better starting point than any modern language. I don't really agree. You can create a simple VB.NET project and write plenty of VB code, without having line numbers, which are only useful for arbitrary goto statements, something I don't think people need to learn about.
Christian Graus Driven to the arms of OSX by Vista. Read my blog to find out how I've worked around bugs in Microsoft tools and frameworks.
What's an arbitrary GOTO statement?
Gary Kirkham Forever Forgiven and Alive in the Spirit The men said to them, "Why do you seek the living One among the dead? He is not here, but He has risen." Me blog, You read
-
Why Jonny Can't Code[^] I think this guy's got a point. Things are very, maybe too complex for simple PRINT "Hello World!" type programs today. A lot of today's technologies are not very approachable... You don't start out mountain climbing by first tackling Mt. Everest. You start out much much smaller and work up to Mt. Everest. Where's the BASIC of today. Can you even get BASIC nowadays?
If the mountain doesn't come to you, don't waste your time running after it. When you meet the mountain, you are already a good developer.
-
True, but you can ignore all that at first. One other problem we have today is people looking to do complex things, and who have not taken the time to learn simple things. C# or VB, a beginner should write one class console apps at first, in my book.
Christian Graus Driven to the arms of OSX by Vista. Read my blog to find out how I've worked around bugs in Microsoft tools and frameworks.
Christian Graus wrote:
C# or VB, a beginner should write one class console apps at first, in my book.
Yes, but why should they have too? Wouldn't something more basic be a better zero-level? Remove even the concepts of classes and namespaces (and even datatypes) from the very early learning stages.
-
What's an arbitrary GOTO statement?
Gary Kirkham Forever Forgiven and Alive in the Spirit The men said to them, "Why do you seek the living One among the dead? He is not here, but He has risen." Me blog, You read
I imagine an arbitrary goto would be one that goes to a certain line number. An explicit goto would then be one that goes to a line that has a label (or, a line that had its label explicitly declared).
Visual Studio is an excellent GUIIDE.
-
aspdotnetdev wrote:
Better watch yourself, I'm still learning how to not kill people :menacing stare:
ROTFL !!!
aspdotnetdev wrote:
Anyway, my bet is those who have experienced the downside of an experience (e.g., burning your hand on the stove) are less likely to make that mistake again.
True, but most people who have written bad code, tend to continue to write it that way, in my experience.
Christian Graus Driven to the arms of OSX by Vista. Read my blog to find out how I've worked around bugs in Microsoft tools and frameworks.
Christian Graus wrote:
most people who have written bad code, tend to continue to write it that way
Aside from just learning the bad way of doing things, they need 2 more things:
- They need to be "burned" by the bad way.
- They need to be pointed to a better way.
If they have all 3 of those and they still don't learn, they are just plain stupid.
Visual Studio is an excellent GUIIDE.
-
It's right here[^] of course. It is really really cool. SmallBasic Small Basic is a project that's aimed at bringing "fun" back to programming. By providing a small and easy to learn programming language in a friendly and inviting development environment, Small Basic makes programming a breeze. Ideal for kids and adults alike, Small Basic helps beginners take the first step into the wonderful world of programming. * Small Basic derives its inspiration from the original BASIC programming language, and is based on the Microsoft .NET platform. It is really small with just 15 keywords and uses minimal concepts to keep the barrier to entry as low as possible. * The Small Basic development environment is simple, yet provides powerful modern environment features like Intellisense⢠and instant context sensitive help. * Small Basic allows third-party libraries to be plugged in with ease, making it possible for the community to extend the experience in fun and interesting ways.
Ew. That's not the BASIC I learned. X|
-
Christian Graus wrote:
C# or VB, a beginner should write one class console apps at first, in my book.
Yes, but why should they have too? Wouldn't something more basic be a better zero-level? Remove even the concepts of classes and namespaces (and even datatypes) from the very early learning stages.
PIEBALDconsult wrote:
Remove even the concepts of classes and namespaces
That seems key. Of course all those are good practice, but to a beginner they just want to dive in without worrying about unnecessary details. Get them interested, then teach them how to write better code.
Visual Studio is an excellent GUIIDE.
-
dighn wrote:
and do "Hello World" in minutes.
Not much beats: 10 Print "Hello World" run Marc
I'm not overthinking the problem, I just felt like I needed a small, unimportant, uninteresting rant! - Martin Hart Turner
Marc Clifton wrote:
Not much beats: 10 Print "Hello World" run
C:\>echo Hello Marc
no line numbers, no special characters, no run command, file is optional, ... :)
Luc Pattyn
I only read code that is properly indented, and rendered in a non-proportional font; hint: use PRE tags in forum messages
Local announcement (Antwerp region): Lange Wapper? Neen!
-
ahmed zahmed wrote:
Where's the BASIC of today.
Perl.
ahmed zahmed wrote:
Can you even get BASIC nowadays?
I have Turbo BASIC on 5.25" floppies. P.S. Also HP BASIC on my AlphaServers, but it's a shame that DEC abandoned the BASIC environment that I first learned on the high school's PDP-11. :sigh:
JB> type test.bas
10 A=5
20 B=4
30 C=A*B
40 PRINT C
50 END
JB> basic test.bas
JB> link test
JB> run test
20
JB>modified on Tuesday, October 13, 2009 8:46 PM
PIEBALDconsult wrote:
it's a shame that DEC abandoned the BASIC environment that I first learned on the high school's PDP-11
I could do a PDP-11 simulator for you. You would have to specify the specific model, as not all anomalies were documented well; I do recall "programs" copying themselves and running backwards on a PDP 11/45, something like MOV -(PC),-(PC) or whatever the exact syntax was. Do you still have an appropriate OS around, say RSX11M or D? :)
Luc Pattyn
I only read code that is properly indented, and rendered in a non-proportional font; hint: use PRE tags in forum messages
Local announcement (Antwerp region): Lange Wapper? Neen!
-
You should ALWAYS peek before you poke.
Christian Graus Driven to the arms of OSX by Vista. Read my blog to find out how I've worked around bugs in Microsoft tools and frameworks.
If you're going to poke anyway, why bother peeking?
-
If you're going to poke anyway, why bother peeking?
I have to peek a little first in order to get excited enough for the poke to be effective.
Visual Studio is an excellent GUIIDE.
-
Christian Graus wrote:
most people who have written bad code, tend to continue to write it that way
Aside from just learning the bad way of doing things, they need 2 more things:
- They need to be "burned" by the bad way.
- They need to be pointed to a better way.
If they have all 3 of those and they still don't learn, they are just plain stupid.
Visual Studio is an excellent GUIIDE.
I prefer the more gentle way of teaching them as much as you can and then being there to catch them, without them ever knowing it's you that fucked them over. It's the Elven way. :)
-
Marc Clifton wrote:
Not much beats: 10 Print "Hello World" run
C:\>echo Hello Marc
no line numbers, no special characters, no run command, file is optional, ... :)
Luc Pattyn
I only read code that is properly indented, and rendered in a non-proportional font; hint: use PRE tags in forum messages
Local announcement (Antwerp region): Lange Wapper? Neen!
perl -e "print 'Hello, Luc!'
-
PIEBALDconsult wrote:
it's a shame that DEC abandoned the BASIC environment that I first learned on the high school's PDP-11
I could do a PDP-11 simulator for you. You would have to specify the specific model, as not all anomalies were documented well; I do recall "programs" copying themselves and running backwards on a PDP 11/45, something like MOV -(PC),-(PC) or whatever the exact syntax was. Do you still have an appropriate OS around, say RSX11M or D? :)
Luc Pattyn
I only read code that is properly indented, and rendered in a non-proportional font; hint: use PRE tags in forum messages
Local announcement (Antwerp region): Lange Wapper? Neen!
Luc Pattyn wrote:
PDP-11 simulator
Hell no! (It ran RSTS V7.0-07 anyway) One place I worked had an old PDP-11 sitting idle and my boss asked if I wanted it. I had no room and couldn't afford the electricity so I said no. I'm pleased with the AlphaServers I have, though a MicroVAX and an Itanium would make nice additions. P.S. Oh, I forgot to mention, from what I can tell, OpenVMS VAX does have the BASIC environment.
modified on Tuesday, October 13, 2009 11:37 PM
-
CaptainSeeSharp wrote:
Eugenicists don't deserve to have a good day.
ROTFL !!! How come you have started to pollute the lounge with this ignorant drivel ? I mean, I was happy to play with your retarded views in the back room, is that not enough for you anymore ?
Christian Graus Driven to the arms of OSX by Vista. Read my blog to find out how I've worked around bugs in Microsoft tools and frameworks.
Don't feed the trolls.
Simply Elegant Designs JimmyRopes Designs
Think inside the box! ProActive Secure Systems
I'm on-line therefore I am. JimmyRopes -
Luc Pattyn wrote:
PDP-11 simulator
Hell no! (It ran RSTS V7.0-07 anyway) One place I worked had an old PDP-11 sitting idle and my boss asked if I wanted it. I had no room and couldn't afford the electricity so I said no. I'm pleased with the AlphaServers I have, though a MicroVAX and an Itanium would make nice additions. P.S. Oh, I forgot to mention, from what I can tell, OpenVMS VAX does have the BASIC environment.
modified on Tuesday, October 13, 2009 11:37 PM
I studied Alpha in great detail long time ago (while selecting a RISC family for our own systems); never did a simulator for it, however I did a few other RISC ones. And I never used RSTS, in fact I completely forgot it ever existed. :)
Luc Pattyn
I only read code that is properly indented, and rendered in a non-proportional font; hint: use PRE tags in forum messages
Local announcement (Antwerp region): Lange Wapper? Neen!
-
I'm sorry. The article does appear stupid to me, but I did fly off a little bit. I'm just not having a good day. The point appears to me to be that languages with line numbers and no OO are a better starting point than any modern language. I don't really agree. You can create a simple VB.NET project and write plenty of VB code, without having line numbers, which are only useful for arbitrary goto statements, something I don't think people need to learn about.
Christian Graus Driven to the arms of OSX by Vista. Read my blog to find out how I've worked around bugs in Microsoft tools and frameworks.
It seems to me that you can't teach "structured programming" unless you've introduced the class to its opposite. Regardless of language, have the student(s) try to implement something with just if and goto for flow control. X| Then introduce patterns, like for and while loops (with if/goto), then progress to real for and while loops. On the other hand, you have to know your audience. If the class just wants to be able to write some simple programs then by all means skip all that. As far as any students who intend to be serious developers, I believe that experiencing "the olde ways" is very important. It's why we had to learn a little Assembly, Fortran, and COBOL.
-
I prefer the more gentle way of teaching them as much as you can and then being there to catch them, without them ever knowing it's you that fucked them over. It's the Elven way. :)
When I opened the email that notified me of this message, the first line of text ended with "without them knowing it's you that f***ed them". During the fraction of a second it took me to find the next line of text, I was a little freaked out ;P
Visual Studio is an excellent GUIIDE.
-
If the mountain doesn't come to you, don't waste your time running after it. When you meet the mountain, you are already a good developer.
how zen like...
-
Christian Graus wrote:
I've learned not to kill people
Better watch yourself, I'm still learning how to not kill people :menacing stare: And, actually, I'd say people who have killed probably better understand why one would not want to kill. Sure, you have a superficial understanding of it's wrong and would make you feel bad, but do you really know the depths to which you can really sink after you kill another human being? Would somebody who has killed before and regretted it be less likely to kill somebody who angered them, or would some guy who has never squashed a fly be less likely to kill somebody? Maybe killing is a bad example, because who says that's an ineffective means to achieve a goal (some may enjoy it and find it very useful)? Anyway, my bet is those who have experienced the downside of an experience (e.g., burning your hand on the stove) are less likely to make that mistake again. I certainly remember how complicated my Tony Hawk Pro Skater wiki was (written in QuickBasic with tons of goto statements) and wouldn't dare doing something like that in a program of any real complexity. But to a beginner, it might seem perfectly worthwile, even faster, than making "whole" functions "just" to control the flow of code.
Visual Studio is an excellent GUIIDE.
Actually, I think the author must be stupid. First, it took me less then 30 seconds to find qbasic.com where you can download guess what: a BASIC interpreter. But beyond that, I never learned Basic. And most of the programmers I know never learned Basic. I don't think it has a place in modern computing. I would say go download the free .NET version of Visual Studio and pick either VB.NET or C#. I was driven from programming from the attitude that you learn by suffering through things like how to get your program into the computer. After one semester of COBOL, I wrote off what is a great profession for me. Eventually I figured out there was no need to suffer with the things that made me hate that class. I will never subject my kids to Basic. They can learn from a usable language. They can go through bad phases in a way that at least will transfer to something useful.