Small Basic

Microsoft just released another .NET language: Small Basic, designed to get MS back into the business of teaching programming.

I have to laugh at parts of the release document. For example, the claim that programming languages started simple and easy to learn, and that the high-level concepts of modern languages discourage people from learning to code. “Hello World” is a one-liner only in a high-level language; it’ll take a beginner a few days of work and tons of documentation to accomplish in assembly. I also loved the section titled “Rules for naming Variables”: “[TODO]”

In general, this looks like a rehash of QBasic, of which all the warts are still present. The language lesson introduces GOTO long before talking about subroutines. Subs (not functions) access and modify global variables, and are limited to the current file’s scope. The major differences seem to be that most of the library functions have been rewritten in an object-oriented style and additional libraries for GUI stuff and Turtle programming have been added. Even though the library uses objects, the user has no way of writing their own.

I can see some junior coder at Microsoft doing this as a project for promotion points. It very much feels like a student project. However, I can’t see any programmer using it to actually teach programming. Small Basic might be useful if your ambition is to one day work up to Visual Basic as an enterprise programming language, but people interested in learning modern programming techniques would be better advised to look elsewhere for their first language.

Related Posts:

Visual Basic could be so much better…I recently had the opportunity to program with an old friend of mine, as he had an idea, simple in concept, that he was interested in working on. We used Visual Basic, as only programs as a hobby and never...

c++I check out of the Basic Combat Skills phase of flight training this Thursday, and have an expected wait of several months before I start training in whichever advanced aircraft I end up with. Naturally, a project was spontaneously created...

Python 3.0 Released3.0 is finally out. Go get it. Say you took all the programming languages I have ever encountered and put them into a table. If you were to assign a column to ease of use, a column to language power,...

How to parse Japanese grammar naturallyStart by learning Reverse Polish notation. Don’t just grasp the concept; use it to solve several real, complex problems. If you have any programming knowledge at all, implement a calculator which uses RPN input. This lays the foundation for understanding...