My son asked if there was an easy language to pick up and do some foundational programming with. I thought QuickBasic at first, but then thought I should just show him VB. I downloaded Visual Basic Express 2008, but I am completely lost. Where is the object toolbar? Where is the form? Where is the property pane?
Instead it's Business Intelligence and Analysis Services. Where's the simply Beginner's All purpose Symbolic Instruction Code?
It's there. You must have downloaded SQL Server Express, cause that is what gets installed.
Get the right stuff at http://www.microsoft.com/Express/VB/
I think that probably Visual Basic as it stands is not really the BASIC of our child hood. As with all things it has cast off the bindings of its parent and stands at the dawn of adulthood. Unfortunately with that, you've lost the ease of use and shallow learning curve. Such is life but anyway it is probably not the language you are looking for now.
In my own not so humble opinion, I think that for a suitably motivated youngster, it probably doesn't matter what language you start out with. With talent and infinite time, they will be able to endlessly amuse and edify themselves in ways that we might not, so maybe the search for a "beginners" programming language is unnecessary. My own child is not yet at the stage I can test that out yet, so probably I am completely wrong. Therefore I did a search in SO and came up with some interesting results:
You might try Small Basic:
http://msdn.microsoft.com/en-us/beginner/ff384126.aspx
It's a real simple (only 14 keywords) basic-like IDE designed to teach beginning programming concepts.
.NET Happened
Small Basic might be something to look into. It's not classic Basic, but it provides a good introductory environment to learn programming.
I have two different languages I'd recommend your son learn instead of BASIC.
I've become a fan of How To Design Programs with scheme for introductory programmers. It doesn't have the baggage that comes with learning Java. The book is online, free, at htdp.org.
Another more traditionally imperative language to try might be Python. I don't, unfortunately, have a textbook I can wholeheartedly recommend. Perhaps somebody else does.
I suppose, though, you're possibly more interested in just having something to poke about it and maybe make a few neat flashy apps. I've been thinking about this in an "intro to CS" way more than a "high-tech macaroni and craft paper" sort of thing.
There's also FreeBasic. It claims to have syntax similar to QuickBasic, so it may be more familiar to you.
If you are set on using a dialect of Basic, there are many choices, some of which have already been mentioned by others. I'll throw in another: XBasic. (The link is a short Wikipedia article with further links for XBasic resources and downloads, as well as a chart at the bottom showing some other Basics as well.)
However, along the lines of 1800 INFORMATION's answer, I would suggest you not limit yourself to Basic. (I'm upvoting his answer because of the great resources he's collected on teaching programming to beginners.) My personal recommendation is Python. This is one of the easiest languages to learn, yet "scales up" extremely well to very advanced programming.
1) download Commodore C64 emulator
2) put Icon on Desktop
3) teach your son how to write code.
VB 2/3/4/6 is still available from MSDN subscriber downloads. So is QuickBasic 4.5 if you want to start with classic old basic.
That said, if you want to use modern tools why not get him started on C#? The 'getting started' hurdle for VB.NET and C# is roughly the same but after that there's a lot of benefit to using C#. But that's another story...
If I recall correctly, BASIC turned into Pascal while Pascal was busy turning into Delphi. It's quite shocking.
In some ways, learning to program has gotten harder. But in other ways it's gotten easier. Maybe the first few weeks seem intimidating, but after that you get to use all these nice libraries people have built.
I think the best way to learn the foundations of programming now is to play with a Python interpreter (you have your choice--CPython, IronPython, or Jython).
I just took a look at this set of comparisons between old VB and new. Holy crud.
I know Java is a PITA and people dislike it for all sorts of reasons, but if you use the Beanshell interactive shell, you get the ability to learn Java sort of from scratch. You can pop up dialogs, add content, all interactively, and save it all back to disk for future use. I've been using it lately to debug new functionality in APIs I've never used before.
If you want something really simple try Decimal BASIC. It's as simple to get into as the BASICs of yore but has a nice IDE that does not take a week to figure out and it has lots of modern features and control statements.
I would recommend JustBasic... that's what they used to introduce us to programming in my college intro to computer science class... Not only is it totally free to download and use, but they are VERY helpful in their forums...
I started out with AMOS on my Amiga which was a perfect language to learn, it was a dialect of BASIC but had unique features in that it was fast for an interpreted language and had many multimedia-based functions that allowed you to create something artful and visual very easily (far more captivating than Forms and OS GUIs). At the same time it allowed you to grow giving you quite a lot of higher capabilities, even allowing embeded Assembler routines. You didn't need to worry about chipsets, includes or compilers to get started, as it just ran code that you typed in it's own environment at the press of a hotkey.
Sadly I don't know of anything since that has the flexibility, quick set-up, or the shallow learning curve.
In my opinion, and I may be slated by those 'real programmers' out there, the best way to get started in this generation is to start with scripting. Others have mentioned Python, which is a great language, but most implementations I've seen are command-line based, and even the IDEs tend to be formal and based around projects, modules and classes which is a barrier to getting up an running. Also Python's no-braces approach makes it look rather different to most of the other main-stream languages out there (closer to original basic flavours however, so you may prefer).
I believe the easiest scripting language to learn currently is JavaScript, it's interpreted, it has a wide range of applications, you only need a text editor and a browser to get up and running. It has a vast amount of information available for it online, to the point of practically never needing to read a book... Not only is it a good learning language, it is still a very useful language to know in regard to getting jobs and will remain so as both client-side and server-side JavaScript become more important. It can handle graphical (canvas) and form based (dom) coding easily (not so great for OS-based coding however atm) and it never requires complicate programming constructs, although you can create very powerful systems. The other added benefit, in being a web-based language, you can put your creations up for the world to see — which for me is a very inspiring side of web development.
With regard to good JavaScript resources, the ones I can recommend are:
- https://developer.mozilla.org/en/docs/JavaScript
- https://developer.mozilla.org/en-US/learn/javascript
- http://www.html5rocks.com/en/
- http://www.youtube.com/user/GoogleDevelopers?feature=watch
- http://www.quirksmode.org
- http://ejohn.org/category/blog/
- https://stackoverflow.com/search?q=search+for+a+question+about+javascript
Obviously a learner shouldn't stop there, and once they have the basics, should move on. The more languages and concepts you learn, the more caring-a-coder you become :) Other languages that all coders should have a basic grounding in, all because they each have unique concepts to offer:
- Python
- every coder/kid should know about Monty Python, and the language doubly-so, even if only for it's flexibility of application.
- Java
- not a personal favourite but it has a unique way of looking at things, including Androids
- C++
- the power behind so many systems, first memories of actually calling an OS window into existance manually.
- Lisp
- is like the Latin/Elvis of coding.
- Assembler
- helps with the fundementals of how computers work.
- PHP/Perl/Ruby/ASP
- any form of server side language to help understand servers and the web.
- Processing
- Ok I don't even know this one, but I want to...
来源:https://stackoverflow.com/questions/1015986/is-there-a-simple-easy-basic-for-beginners-what-happened-to-vb-2-0