Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Why Jonny Can't Code

Why Jonny Can't Code

Scheduled Pinned Locked Moved The Lounge
htmldatabasecomquestion
95 Posts 48 Posters 215 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • C Christian Graus

    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.

    D Offline
    D Offline
    David Crow
    wrote on last edited by
    #66

    Christian Graus wrote:

    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.

    The guy was expressing his opinion. You have to respect that. He obviously is fond of his roots. I too started with Basic and undoubtedly would not be where I am today otherwise (thanks Commodore). The Basic language is a tool like any other. It has pros and cons like any other language.

    "Old age is like a bank account. You withdraw later in life what you have deposited along the way." - Unknown

    "Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons

    1 Reply Last reply
    0
    • T TheGreatAndPowerfulOz

      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?

      P Offline
      P Offline
      pontellen
      wrote on last edited by
      #67

      I think the reason might be something different entirely. I've noticed that the Jonnys of today have no interest, curiosity, fascination with, or drive to explore computers and how they work. Of course they use technology voraciously. This may be a generational thing. Today, they are so swamped with technology and take it all for granted, and don't even see it as a field worth pursuing. I may date myself, but having grown up when there were no PCs at schools, and getting my first introduction to them in college has left me with a life long appreciation for them, and subsequently writing code. I see the same at work (Not an IT company), those with the most interest and drive are older. Of course the same young generation doesn't read, for example books by Ray Kurzweil such as The Singularity is Near. Those few Jonnys who have that interest and drive are still there, creating the future companies and products. Think Google, Facebook, etc...

      1 Reply Last reply
      0
      • P PIEBALDconsult

        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.

        T Offline
        T Offline
        TheGreatAndPowerfulOz
        wrote on last edited by
        #68

        PIEBALDconsult wrote:

        It seems to me that you can't teach "structured programming" unless you've introduced the class to its opposite.

        that's ridiculous in the extreme. so if you want to learn math you must first learn non-math? or to learn to cook you must first learn to non-cook?

        1 Reply Last reply
        0
        • T TheGreatAndPowerfulOz

          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?

          T Offline
          T Offline
          TheMandolinMan
          wrote on last edited by
          #69

          Download a C64 or Atari simulator. Voila - BASIC. And you can do cool things like poke characters on the screen, write garbage into the keyboard buffer, and create your own 8-bit chip tunes!

          1 Reply Last reply
          0
          • T TheGreatAndPowerfulOz

            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?

            A Offline
            A Offline
            Alan Balkany
            wrote on last edited by
            #70

            The article has a point. When you first learn to program, it's overwhelming because a beginner has to learn a wide variety of "mini-skills" all at once, in order to get the simplest thing working. Miss even one of them, and the program fails, and the beginner often doesn't have a clue what's wrong. Sure there are most sophisticated platforms out there. But a sophisticated platform is counterproductive to the initial programming learning experience. BASIC is simple, which makes it ideal to learn the concepts of programming. It's interpreted so you can bypass the concepts of compiling and linking. Line numbers and gotos are intuitive. Even as simple as C is, there are still complexities (for the beginner) like main () and #include <stdio.h> that distract, must be explained, and add more unnecessary uncertainty to the initial programming experiences.

            1 Reply Last reply
            0
            • T TheGreatAndPowerfulOz

              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?

              D Offline
              D Offline
              DiscoJimmy
              wrote on last edited by
              #71

              The guys a decent writer, but he's a bit too nostalgic, or just really bad at finding things online. He's totally obsessed with a particular version of BASIC, for some reason. He even mentions QBASIC in his article as one he passed up. That's how I learned to code - after having a TRS 80 16k I was thrilled to get QBASIC on an PC. He keeps going on about how he just wants the kid to able to sit down and punch stuff in with out the hurdles, but QBASIC is actually easier AND better. You don't need line numbers, you have an actual text editor so you don't have to retype a whole line to fix a mistake, etc. He could easily have sat the kid down with QBASIC and punched in all those examples. And if he doesn't like that there's SmallBasic, or Ruby, or for that matter he knocks Python for being too high level, but you can enter BASIC examples in Ruby or Python with only trivial syntax changes. And they're interpreted just like BASIC, so no dealing with a compiler. Basically he just wanted to whine about 'how good it used to be' instead of downloading some of these things from the interwebs. But then I guess he wouldn't have an article.

              D 1 Reply Last reply
              0
              • D DiscoJimmy

                The guys a decent writer, but he's a bit too nostalgic, or just really bad at finding things online. He's totally obsessed with a particular version of BASIC, for some reason. He even mentions QBASIC in his article as one he passed up. That's how I learned to code - after having a TRS 80 16k I was thrilled to get QBASIC on an PC. He keeps going on about how he just wants the kid to able to sit down and punch stuff in with out the hurdles, but QBASIC is actually easier AND better. You don't need line numbers, you have an actual text editor so you don't have to retype a whole line to fix a mistake, etc. He could easily have sat the kid down with QBASIC and punched in all those examples. And if he doesn't like that there's SmallBasic, or Ruby, or for that matter he knocks Python for being too high level, but you can enter BASIC examples in Ruby or Python with only trivial syntax changes. And they're interpreted just like BASIC, so no dealing with a compiler. Basically he just wanted to whine about 'how good it used to be' instead of downloading some of these things from the interwebs. But then I guess he wouldn't have an article.

                D Offline
                D Offline
                DiscoJimmy
                wrote on last edited by
                #72

                ... and just to be clear, I'm not saying he doesn't have a point. I learned through punching in BASIC line by line and i think everyone should experience that. I'm just baffled that he insists that experience is so inaccessible nowadays.

                1 Reply Last reply
                0
                • R Richard Jones

                  Worst I ever got was a high-pitched squeal, like a dog-whistle. I can "hear" CRTs tube whine. I was really glad when we switched to LCD.

                  "The activity of 'debugging', or removing bugs from a program, ends when people get tired of doing it, not when the bugs are removed." - "Datamation", January 15, 1984

                  M Offline
                  M Offline
                  Marc Clifton
                  wrote on last edited by
                  #73

                  Richard Jones wrote:

                  I can "hear" CRTs tube whine. I was really glad when we switched to LCD.

                  Me too. At least, I used to. I also couldn't understand why people had these fancy CRT's and graphic cards but would keep the refresh rate at 60Hz. The flicker would drive me nuts. Marc

                  Will work for food. Interacx

                  I'm not overthinking the problem, I just felt like I needed a small, unimportant, uninteresting rant! - Martin Hart Turner

                  D F 2 Replies Last reply
                  0
                  • M Marc Clifton

                    Richard Jones wrote:

                    I can "hear" CRTs tube whine. I was really glad when we switched to LCD.

                    Me too. At least, I used to. I also couldn't understand why people had these fancy CRT's and graphic cards but would keep the refresh rate at 60Hz. The flicker would drive me nuts. Marc

                    Will work for food. Interacx

                    I'm not overthinking the problem, I just felt like I needed a small, unimportant, uninteresting rant! - Martin Hart Turner

                    D Offline
                    D Offline
                    Dan Neely
                    wrote on last edited by
                    #74

                    Not everyone is susceptible to flicker. I only ever notice 60hz flicker from 10' and a 45* angle; meanwhile higher resolution is always useful and the highest generally are where the CRT bottoms out at 60hz max. OTOH I've never met anyone who could use the 85hz interlaced (42.5 effective) mode on 90's era systems; which makes me wonder why they ever offered it.

                    The latest nation. Procrastination.

                    1 Reply Last reply
                    0
                    • M Marc Clifton

                      dighn wrote:

                      and do "Hello World" in minutes.

                      Not much beats: 10 Print "Hello World" run Marc

                      Will work for food. Interacx

                      I'm not overthinking the problem, I just felt like I needed a small, unimportant, uninteresting rant! - Martin Hart Turner

                      F Offline
                      F Offline
                      Flynn Arrowstarr Regular Schmoe
                      wrote on last edited by
                      #75

                      Beats the VB/C# equivalents: VB

                      Imports System

                      Namespace Tutorial
                      Public Class Hello
                      Public Shared Sub Main
                      Dim name As String
                      Console.WriteLine("Please enter your name.")
                      name = Console.ReadLine()
                      Console.WriteLine("Hello there, " & name & "!")
                      Console.ReadLine()
                      End Sub ' Main
                      End Class ' Hello
                      End Namespace ' Tutorial

                      C#

                      using System;

                      namespace Tutorial {
                      public class Hello {
                      public static void Main() {
                      string name;
                      Console.WriteLine("Please enter your name.");
                      name = Console.ReadLine();
                      Console.WriteLine("Hello there, " + name + "!");
                      Console.ReadLine();
                      } // end method Main
                      } // end class Hello
                      } // end namespace Tutorial

                      I'll be nice and not post the 200+ line Windows CE VC++ version... :-\ Flynn

                      D J 2 Replies Last reply
                      0
                      • F Flynn Arrowstarr Regular Schmoe

                        Beats the VB/C# equivalents: VB

                        Imports System

                        Namespace Tutorial
                        Public Class Hello
                        Public Shared Sub Main
                        Dim name As String
                        Console.WriteLine("Please enter your name.")
                        name = Console.ReadLine()
                        Console.WriteLine("Hello there, " & name & "!")
                        Console.ReadLine()
                        End Sub ' Main
                        End Class ' Hello
                        End Namespace ' Tutorial

                        C#

                        using System;

                        namespace Tutorial {
                        public class Hello {
                        public static void Main() {
                        string name;
                        Console.WriteLine("Please enter your name.");
                        name = Console.ReadLine();
                        Console.WriteLine("Hello there, " + name + "!");
                        Console.ReadLine();
                        } // end method Main
                        } // end class Hello
                        } // end namespace Tutorial

                        I'll be nice and not post the 200+ line Windows CE VC++ version... :-\ Flynn

                        D Offline
                        D Offline
                        Dan Neely
                        wrote on last edited by
                        #76

                        Flynn Arrowstarr wrote:

                        I'll be nice and not post the 200+ line Windows CE VC++ version... Shucks

                        I'll be unholy and post the Malbolge hello world program:

                        ('&%:9]!~}|z2Vxwv-,POqponl$Hjig%eB@@>}=<M:9wv6WsU2T|nm-,jcL(I&%$#"
                        `CB]V?Tx<uVtT`Rpo3NlF.Jh++FdbCBA@?]!~|4XzyTT43Qsqq(Lnmkj"Fhg${z@>

                        I'll only link to the 99 bottles of beer program due it it's length. http://www.99-bottles-of-beer.net/language-malbolge-995.html[^] Edit: fixed escaping problems.

                        The latest nation. Procrastination.

                        1 Reply Last reply
                        0
                        • C Christian Graus

                          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.

                          N Offline
                          N Offline
                          Naylun_Stig
                          wrote on last edited by
                          #77

                          I first started programming in pascal and I found it was a good starting point not too complex but not too simple either. I don't think that a line number language is needed to learn the basics because i still found a small gap jumping from procedural programming to object oriented stuff. It was like learning all over again. I mean you wouldn't want to start a beginner with something like the windows api, but a nice procedural language would be good enough. What i would say is that I think a programmer should be well "read" in a variety of languages even if they are out dated and not commonly used. PS i don't believe in non object oriented languages like how i don't believe in Santa clause :)

                          1 Reply Last reply
                          0
                          • C Christian Graus

                            Wow - do you know anything about programming at all ? Visual Basic is, along with C#, one of the most popular languages for Windows development today. The writer is an idiot. He must be looking for a specific version of BASIC. The problem with programming today, is that there's so much drag and drop, point and click, write no code stuff going on that people are taking contract work and hitting a wall the moment they find they need to write code after all, and hitting our ASP.NET forums predominantly, although I notice a real increase in the WPF forum of late. The problem is that people assume it's easier than it really is to write good code, or just plain don't care about good code, and are glad that todays GC environments allow them to write crap that won't actually crash the system, and then sell it.

                            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.

                            B Offline
                            B Offline
                            Bob Beechey
                            wrote on last edited by
                            #78

                            The point is, I think, that modern languages are all about objects and GUIs and handling datasets for, largely, business purposes. The learning curve towards doing anything actually useful is long and steep and uneven. The advantage of the old BASICs was that they were - interpreted, giving instant feed back - had a relatively short, easily assimilated set of reserved words - very small or non-existent libraries - limited graphical capability - used on computers with miniscule RAM and steam-powered CPUs So, learning curve was short but a feel for programming was necessary to do anything at all. So, by and large, people, including quite young children, learned to actually program. Is there a modern equivalent? A pseudo interpreted, multi-paridigm, dynamic language like Python fits the bill very well. It can be used as a spare, procedural language and leave the use of its object-oriented and functional aspects and extensive libraries until you are ready to use them productively. As an aside, its extensive use of lists and dictionaries makes it, in my view, even easier than the BASICs and pascal I used in the 70s.

                            1 Reply Last reply
                            0
                            • T TheGreatAndPowerfulOz

                              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?

                              T Offline
                              T Offline
                              TheDarkFreak
                              wrote on last edited by
                              #79

                              Liberty BASIC. It's a Windows BASIC, and but it can also handle advanced API calls, to introduce more complex concepts. It's what got me started on programming, and I've moved on to do VB, VB.Net, C, C++, Java, and lots of scripting languages. http://www.libertybasic.com The Community site: http://libertybasic.conforums.com He also has a completely free version, that is less functional, Just BASIC: http://www.justbasic.com

                              1 Reply Last reply
                              0
                              • M Marc Clifton

                                ahmed zahmed wrote:

                                Can you even get BASIC nowadays?

                                Maybe the next Code Project programming competition should be a BASIC interpreter, complete with a simple editor, syntax checker, and the ability to do cursor positioning in an 80x25 character grid, so basic (har har) character graphics could be done. Remember the good ol' "poke" statement? ;) Marc

                                Will work for food. Interacx

                                I'm not overthinking the problem, I just felt like I needed a small, unimportant, uninteresting rant! - Martin Hart Turner

                                R Offline
                                R Offline
                                RoboJRR
                                wrote on last edited by
                                #80

                                Something like that was already made: http://robotbasic.org/[^] :-D

                                1 Reply Last reply
                                0
                                • M Marc Clifton

                                  Richard Jones wrote:

                                  I can "hear" CRTs tube whine. I was really glad when we switched to LCD.

                                  Me too. At least, I used to. I also couldn't understand why people had these fancy CRT's and graphic cards but would keep the refresh rate at 60Hz. The flicker would drive me nuts. Marc

                                  Will work for food. Interacx

                                  I'm not overthinking the problem, I just felt like I needed a small, unimportant, uninteresting rant! - Martin Hart Turner

                                  F Offline
                                  F Offline
                                  Filip Bouljon
                                  wrote on last edited by
                                  #81

                                  If you set the refresh rate at 70 Hz, but you can't compute the next image fast enough, you only update at 35 Hz. You'll have less flicker than at 60Hz, but a less smoothly moving image as well...

                                  1 Reply Last reply
                                  0
                                  • T TheGreatAndPowerfulOz

                                    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?

                                    C Offline
                                    C Offline
                                    CurtainDog
                                    wrote on last edited by
                                    #82

                                    Why not Javascript? Easy to get into and no need to download anything (except maybe a browser that supports a canvas if you want some painting).

                                    1 Reply Last reply
                                    0
                                    • A AdamNThompson

                                      "The problem with programming today, is that there's so much drag and drop, point and click, write no code stuff going on that people are taking contract work and hitting a wall the moment they find they need to write code after all" Amen to that. If I have to explain to one more stupid f**k how to loop through an collection, or or use a base page class I'm going to go gehad on their drag n' drop a**. 5 years ago I taught myself how to programm by reading books and tutorials online. I started with VB.NET and now do mostly C#. These days I make a good living building enterprise software. So I think .NET is a great place to start. I have tried several other languages and have not been impressed after working with .NET. I feel like nothing truly compairs. If I can become the developer for a software consulting company just by reading books and make the kind of money that good developers make with no colege degree, just by reading books. .NET is a great place to start. If you cant figure it out, maybe you are fresh out of college where they didn't teach you anything practical, or maybe this industry just isn't for you.

                                      -Adam N. Thompson

                                      E Offline
                                      E Offline
                                      ECDinovo
                                      wrote on last edited by
                                      #83

                                      AdamNThompson wrote:

                                      5 years ago I taught myself how to programm by reading books and tutorials online.

                                      Hey, Adam, I think that's great! You probably got yourself a book like Beginning C# and read through it starting at page 1. I do find it odd that people trying to learn something don't try this logical approach. Although, I must dissent with the forum on one topic: coming out of college, my peers and I appear to have the reverse of the problem described here. We have deep training in x86/MIPS assembly, C, Verilog, and Java SE languages. The problem most of my colleagues faced upon entering the workforce is that real work is done on top of a platform. Be it Java EE on WebSphere, .NET on IIS, Coldfusion on Tomcat, .NET Micro on ARM 9, or whatever. Imagine just knowing the Java SE 1.2 language: that doesn't make you a productive programmer. You need to know how to use the tools, designers, APIs, databases, and servers out there. Raw languages are just academic and don't help you solve your clients' business need. Am I making sense here?

                                      modified on Wednesday, October 14, 2009 7:05 PM

                                      A 1 Reply Last reply
                                      0
                                      • K Kirk Wood

                                        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.

                                        A Offline
                                        A Offline
                                        AspDotNetDev
                                        wrote on last edited by
                                        #84

                                        Kirk Wood wrote:

                                        I will never subject my kids to Basic. They can learn from a usable language

                                        QuickBasic is very usable, from a beginner perspective. Sure, you're not going to use that language in a real job, but it is fun for very small programs. And much of that programming transfers over to other languages. Not sure I would restrict a beginner student to a certain language just because it is more useful in the real world. Guess it also depends on what they want to do. If they want to make buttons and text boxes and such, C# might be the way to go. If they want to draw some pixels to the screen to make games or physics simulations, QuickBasic would be good. If they are older and interested in a career, something like C# would probably be more ideal. But if they are still in middle school or high school, no harm in having them play with programming for a while.

                                        Visual Studio is an excellent GUIIDE.

                                        1 Reply Last reply
                                        0
                                        • T TheGreatAndPowerfulOz

                                          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?

                                          P Offline
                                          P Offline
                                          Phil Vacca
                                          wrote on last edited by
                                          #85

                                          I'm confused. Other than the single line "The "scripting" languages that serve as entry-level tools for today's aspiring programmers -- like Perl and Python -- don't make this experience accessible to students in the same way." there is no mention of the easiest two entry points into programming I can think of. What exactly is wrong with either language? Most of the web is written in Perl... And how can you get any closer to the line numbered experience that the author so forlornly laments than the python interpreter?

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups