What does is mean to be in a post BASIC world? This is the question that comes to mine when I read about an article titled How are students learning programming in a post-Basic world? I think that for most of the people in the discussion it means that we are no longer in an era where all computers come with a programming language such as they all used to come with BASIC. It’s not so much about BASIC having gone by the wayside, although some would like to see that happen, as it is not having that excitement , that thrill, that joy of learning enough programming to create that first program to solve a real problem. (A good insight into that is a related article Midnight programming, 1979 vs. 2011) In the early days when computers came with BASIC (most often written by some guy named Gates who had a little software company selling BASIC interpreters to lots of computer companies like one in California called Apple) lots of people were teaching themselves programming.
In some sense one had to teach oneself. Oh there were books to help but computer science programs in universities were rare, in high schools rarer still and before high school pretty much nonexistent. But while the BASIC language was simple so were our aspirations of what we could accomplish with computers. I still remember learning about loops by creating a program that printed out the times tables from 1 to 12. I could impress people with the result believe it or not. Oh how times have changed! But does this really mean we are in a post BASIC world? I’m not so sure.
First off while few systems come with a good BASIC (or similar tool) installed there are plenty of good free tools that are available as a download. Event the article that kicked this off lists several of them such as Small Basic, Visual Basic 2010 Express, Scratch and Alice and more. There are command line compilers included with some open source OS distributions as well though in all honestly I don’t think a command line compiler is the best thing for an absolute beginner. That is another way things have changed – people expect GUI development tools that create GUI applications. This is one reason why Python, as great as it is for many things, is not my first choice. It’s easy enough to get all these tools but I do wish that they came standard with every operating system. That simple act of discovery or rather of not stumbling on it when playing with the OS is a stumbling block.
I also don’t think that BASIC is dead by any means. I love BASIC. Visual Basic is my personal favorite but I think for total beginners Small basic is a great way to start. It is simple and easy to use – like the BASIC interpreters so many of us stumbled upon. It is friendly, there are turtle graphics, it is easy to start with, there are samples and documentation. It is very accessible. Yet it is powerful enough to do real applications. Possibly best of all there is that “Graduate” button that creates a Visual Basic project so you can move to the next level.
I never bought the line that BASIC was somehow bad for you. I’ve said it before and I will say it again. Visual Basic is as good an OOP language as any other. Small Basic is a nice step in that direction without the professional tool complexity that stifles some beginners. Get a tool, explore programming, have fun with it. You can learn to do powerful things with BASIC without weird looking semi colons, curly braces or having to be rigid about white space. Get hooked on programming like I am so many others have. Yes, this is not your father’s BASIC and not it did not come pre-installed on your computer. But stretch a little. It may change your life.
Related posts – mostly by other people:
- How Are Students Learning Programming in a Post-Basic World? post at the Ideas for Teaching Computer Technology to Kids blog where I found the first link
- tech pundit and science fiction author David Brin’s September 2006 article decrying Basic's passing in Salon.com, "Why Johnny Can't Code"
- Why Johnny Can't Code – my 2006 post regarding David Brin’s article
- Response: Visual Studio should be part of Windows – Dan Fernandez on why Visual Studio Express editions are not included with Windows