__________________________________

Wednesday, January 7, 2009

Hate programming? Well, Small Basic is here!



Small Basic is a project that's aimed at bringing "fun" back to programming. By providing a small and easy to learn programming language in a friendly and inviting development environment, Small Basic makes programming a breeze. Ideal for kids and adults alike, Small Basic helps beginners take the first step into the wonderful world of programming.
  • Small Basic derives its inspiration from the original BASIC programming language, and is based on the Microsoft .Net platform. It is really small with just 15 keywords and uses minimal concepts to keep the barrier to entry as low as possible.
  • The Small Basic development environment is simple, yet provides powerful modern environment features like Intellisense™ and instant context sensitive help.
  • Small Basic allows third-party libraries to be plugged in with ease, making it possible for the community to extend the experience in fun and interesting ways



Small Basic FAQ 


What is Small Basic?
Small Basic is a project that is focused at making programming accessible and easy for beginners. It consists of three distinct pieces:
  • the Language
  • the Programming Environment
  • Libraries
The Language draws its inspiration from an early variant of BASIC but is based on the modern .Net Framework Platform. The Environment is simple but rich in features, offering beginners several of the benefits that professional programmers have come to expect of a worthy IDE. A rich set of Libraries help beginners learn by writing compelling and interesting programs.
Who is Small Basic for?
Small Basic is intended for beginners that want to learn programming. In the trials, results with kids between the ages of 10 and 16 were successful. However, it's not limited to just kids; even adults that had an inclination to programming have found Small Basic very helpful in taking that first step. 
How do I learn Small Basic?
Download (Here) and install the Small Basic software. You can then use the friendly "Introducing Small Basic" document to help you get started with Small Basic.
How is it different from QBASIC?
  • Unlike QBASIC, Small Basic is based on .Net and can consume (not produce) "Objects".
  • It supports distinct Operations, Properties and Events.
  • It doesn't have GOSUB :)
How is it different from VB.Net?
  • Small Basic is small - much smaller than VB and supports just a subset of what VB.Net supports.
  • You can actually write a compiler using VB.Net
What are the unique features of the Small Basic language?

  • 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, etc.

  • Size

    The Small Basic language consists of just 14 keywords.

  • 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 be used before they're assigned.

  • Events

    You can create a sub-routine and assign it to an event. This will wire the it up to an the event.

  • Libraries

    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.
What about Scratch, Alice?
Both Scratch and Alice are great tools that help beginners learn the concepts of programming. They are doing so by enabling people to write "codeless" programs. Small Basic is taking a different approach by introducing code as a first class concept.
What about KPL?
KPL (now known as Phrogram) was a great concept that used to focus purely on beginners (and hence the name, Kids Programming Language). In the last couple years, it seems to have now extended its vision to support intermediate and advanced users too. Small Basic focus purely on the beginners; there are tons of other options for the intermediate and advanced users.
What are the limitations of Small Basic?
Small Basic is small and intuitive as possible. It's okay to limit Small Basic from being the language of choice for solving every conceivable problem. For example, while it's theoretically possible to write a Small Basic compiler using Small Basic, it's probably not a good idea.
What is the evolution strategy for the language?
One of the most important visions of this project is to focus on the beginner persona. This is very important, features that doesn't cater to this type of persona was highly avoided. 

Was Busy the Whole time!

Hey! Sorry for that long gap! I was busy with several stuff. Exams, Sessions, Elections and so many more. Again, I would like to describe the most exciting events since November after the Goa trip.
  • Chak De: AIESEC Coimbatore's first event! It was an awesome event. It was an Olympic-Like event for the orphaned children. Events like races, Shot-put, lemon races, "Boat races" (Skolling with Water :P) etc were conducted. Around 500 children turned up for that event and it was very colorful and exciting. 
All the kids and the Organizing Committee. :)
  • EXAMS!: Truly the examinations were very exciting and thrilling. It was a unique opportunity for me to express.... Nothing
This is what I did during the examinations! Take Snaps :) Now you know why it was thrilling!
  • Holidays: Holidays? Whats that? I had a F*cking Arrear! But still I yenjaayed! I went to Coonoor and had fun with my friends out there.
At some high point. Breath taking views.
  • AIESEC LCP Election: Yeah LCP stand for Local Committee President. Shiva was elected the Local Committee President! It was held at Jenny Club. We were in kemplete formals. It was a good ceremony. Nice dinner though :)
Shivakumar Ashokan - The new LCP of AIESEC Coimbatore. (Now called as Obama :P)

  • New Years!: Zzzzzzzzzzzzz...... Oh yeah Wish you a Happy New Year! :)