This article originates with the question in the  Small Basic FAQ. We wanted to give the community a chance to answer this question in depth.

What are the unique features of Microsoft Small Basic?

We're dividing up the unique features by the four pillars of Small Basic: Simple, Social, Fun, and Gradual.


  • Imperative
    Just like the early variants of BASIC, Small Basic is imperative and doesn't use or expose beginners to concepts like scopes, types, object orientation, and more.
  • Size
    The Small Basic language consists of just 14 keywords
  • Text Operators - Ease of Use
    The language primarily uses text operators (AND, OR), rather than symbol operators like { }, &, and |
    (Small Basic still uses some straight-forward symbol operators, including +, -, and *.)
  • Type System
    There actually isn't one. You can create string and numeric constants and assign them to variables. Operations performed on these variables will be interpreted according to the content. 
  • Variables
    All variables are global and are always initialized. They can often be used before they're assigned. Even better, they are all of one type, rather than integers, strings, etc. 
  • Events
    You can create a sub-routine and assign it to an event. This will wire it up to an the event. 
  • Libraries / Extensibility
    The libraries provide static "Objects" that group operations, properties and events. New libraries can be created using other .Net Languages and added to the Small Basic runtime. For example, anyone can write a library in C# or VB and copy the DLL into the Small Basic "lib" folder and use those functions in the Small Basic language!   
  • IDE Colors
    Each type of code is assigned its own color, built right in the language's IDE. See Small Basic: IDE Colors.           
  • IntelliSense Redesigned
    Small Basic boasts a new incarnation of IntelliSense. Not only does it pop up and show you all your options as you type (which helps for learning, exploration, and spelling), but Small Basic's IntelliSense adds three new features to the Visual Studio IntelliSense: (1) You can scroll through your options in a fun and engaging way. (2) You see some basic Help content in the IntelliSense window, as you type. (3) Press the Control key to make IntelliSense transparent, so you can see your code underneath it!                       
  • Integrated Help
    Small Basic takes learning to the next level with a dedicated Help pane that changes and teaches you as you type and click your code! And IntelliSense also explains every object, method, and keyword as you pick your options. You don't have to click Help or leave your app! You learn while you program!                 
  • Error Line Coordination
    When you get syntax errors (during Compile), just click the error message to hop up to that line and spot in the code!                    


  • Easy to Share 
    Share programs easily with the "Publish" and "Import" buttons, which share programs to and from the Small Basic program share server ( Not only can you access/play the program online, but you can also access the code and easily import it locally into Small Basic (by clicking Import in Small Basic and entering the program ID). Example.
  • Embed Player
    Using the Embed Player from the online published gallery (example), you can post your games in your blog or website. 
  • Monthly Challenges
    The monthly forum challenges give you opportunities to stretch your Small Basic skills, learn new tricks, get support along the way, and learn from each other! See Small Basic: Challenge of the Month.
  • Monthly Small Basic Guru Competitions
    The Small Basic category of the monthly TechNet Guru Competition includes Gold, Silver, and Bronze winners, to celebrate the top Small Basic TechNet Wiki articles of that month. The judges include Microsoft employees who work on Small Basic. See TechNet Guru Contributions - Small Basic.



  • Graduate to Visual Basic 
    By clicking the "Graduate" button, you can move your program into Visual Basic and continue to learn programming, building the skills of a professional developer! 

See Also

Other Resources

Other Languages