, September 05, 2015
(view all comments by paynea)
How to use the “Developer’s Reference Guide to Small Basic”
First, it’s more than just a reference guide.
Kidware’s “Developer’s Reference Guide to Small Basic” is really an organizer - a way of presenting Small Basic as it was meant to be learned - as a cohesive set of tools to be employed by any serious programmer.
Small Basic is serious programming language, allowing professional results in both educational and recreational applications. It is designed to be used by beginners, but anyone visiting Microsoft’s web site can see how professional results are attainable to anyone who invests time learning Computer Science with Small Basic not as the subject, but as the tool. With the Kidware Developer’s Reference, the authors make Computer Science explicit to the nubile learner.
Microsoft's new Small Basic is a simplified version of the many BASIC (Basic All-Purpose Symbolic Instruction Code) programming languages of the past. But unlike other BASICs of the past, in Small Basic it makes sense to speak in Object-Oriented Programming terminology. Small Basic has only 14 keywords (premised upon pre-existing classes), each providing their own set of commands (methods) and variants (overloads).
The Small Basic language is simple enough to allow programs to be written with keyboard driven input and text-only output, but powerful enough to create eye-catching graphical user interface (GUI) applications where input may come from a keyboard, a mouse, or a touch-screen.
The Small Basic programming environment is very user-friendly, providing a context-sensitive command reference, so that the user learns the commands while typing. With Itellisense, each command has help on the side-bar providing an explanation of the syntax and the options available in order to complete the command.
Thus, while the Small Basic environment is ideal for the youngest programmer, this reference guide is written to complement Small Basic, to provide the best foundation for learning object-oriented programming concepts which are Computer Science.
Topics are ordered as they would be in any Computer Science course; right from the naming and declaration of variables, to data types, arrays, mathematical and logical operators, string functions, math functions, looping, decision making, and sub-routines. The specifics of Small Basic Objects; Programs, Text Window, Graphics Window, and Controls (buttons and textboxes), Clock, Text, ImageLists, Shapes, Mouse, Timers, Sound, and Files, are presented with proper emphasis on declaring (instantiating) objects of these classes, and accessing attributes and methods of each class. Thus, learners focus upon object-oriented concepts while mastering the classes which make up the Small Basic language.
Then, applications are drawn out for Input Validation, Date Arithmetic, Randomizing numbers (in card games), Charting (graphing techniques), Animation, check-boxes and radio buttons, Turtle graphics (allowing turtle-language “Logo”-like commands), and a Dictionary class.
While full solutions are provided, practical projects are presented in an easy-to-follow set of lessons explaining the rational for the solution, the layout of the GUI, coding design and conventions, and specific code related to the problem. The learner may follow the tutorials at their own pace while focusing upon context relevant information.
The finished product is the reward, but the student is fully engaged and enriched by the process. This kind of learning is often the focus of teacher training at the highest level. Every Computer Science teacher and self-taught learner knows what a great deal of work is required for projects to work in this manner, and with these tutorials, the work is done by an author who understands the experience of the classroom.
Graduated Lessons for Every Project. Graduated Learning. Increasing and appropriate difficulty. Great results.
By following the logical sequence of chapters provided in the Kidware Developer’s Reference, students are fully engaged and appropriately challenged to become independent thinkers who can come up with their own project ideas and design their GUI and do their own coding. Once the problem-solving process is learned, then student engagement is unlimited! Students literally cannot get enough of what is being presented.
These projects encourage accelerated learning - in the sense that they provide an enriched environment to learn Computer Science, but they also encourage accelerating learning because students cannot put the lessons away once they start! Computer Science provides this unique opportunity to challenge students, and it is a great testament to the authors that they are successful in achieving such levels of engagement with consistency.
My history with the Kidware Software products.
As a learner who just wants to get down to business, these lessons match my learning style. I do not waste valuable time ensconced in language reference libraries for programming environments and help screens which can never be fully remembered! With every Small Basic project, the pathway to learning is clear and immediate, and the topics in Computer Science remain current, relevant and challenging.
Quick learning curve by Contextualized Learning
“The Developer’s Reference Guide to Small Basic” encourages contextualized, self-guided learning.
Students may trust the order of presentation in order to have sufficient background information for every project. But the lessons are also highly indexed, so that students may pick and choose projects if limited by time.
Materials already condense what is available in the Small Basic context-sensitive help, so that students remember what they learn.
Meet Different State and Provincial Curriculum Expectations and More
Different states and provinces have their own curriculum requirements for Computer Science. With the Kidware Software products, you may pick and choose projects to suit your learning needs. Learners focus upon design stages and sound problem-solving techniques from a Computer Science perspective. In doing so, they become independent problem-solvers, and will exceed the curricular requirements of elementary and secondary schools everywhere.
Lessons encourage your own programming extensions.
Once Computer Science concepts are learned, it is difficult to NOT know how to extend the learning to your own Small Basic projects - and beyond!
Having my own projects in one language, such as Small Basic, I know that I could easily adapt them to other languages once I have studied the Kidware Software tutorials. I do not believe there is any other reference material out there which would cause me to make the same claim! In fact, I know there is not as I have spent over a decade looking!
I thank Kidware Software and its authors for continuing to stand for what is right in the teaching methodologies which not only inspire, but propel the self-guided learner through what can be a highly intelligible landscape of opportunities.
Alan Payne, B.A.H. , B.Ed.
Computer Science Teacher
T.A. Blakelock High School