Quantcast
Channel: Small Basic
Viewing all 669 articles
Browse latest View live

Beginning Microsoft Small Basic - Review by "Courtney Six"

$
0
0

It's time for a guest blogger!

Today's guest blogger is Leah (and her 12-year-old son, Charles) from Courtney Six!

  


 photo ComputerScienceForKidsProgrammingTutorialsLogo_zps071e1e50.jpg
One of the best things I'm finding about being a part of the Schoolhouse Review Crew this year is that I sometimes discover these gems of curriculum that I probably wouldn't have thought of trying otherwise.  That's the way we felt about this Computer Science for Kids course.

I knew Charles (my 12 year old) would have an interest in learning basic programming. So I was pleased when we had the opportunity to review the Beginning Microsoft Small Basic tutorial. (There is also a Computer Bible Games for Microsoft Small Basic that we had the opportunity to use.)

 photo Beginning-Microsoft-Small-Basic-1937161196-By-Philip-Conrod-and-Lou-Tylee-Cover-Small_zpsb94fb127.jpg
 

The program has eleven lessons, is designed for kids and adults ages 10 and up, and comes in several options:

1. A paperback text book and Ebook download for $59.95
2. A "download only" digital Ebook for $34.95
3. A school site license with unlimited use and E-book download for $199.95 (These prices are listed as temporary sale prices.)

We received the download only option. It was very easy to open the files and to install the Microsoft Small Basic program on my computer. There were very detailed instructions for this and further instructions as part of the first lesson. At first I wasn't quite sure of the best way to use it. I didn't want to print the lessons out because they were very long. I also couldn't pull them up to use on my computer along with the program because it was too confusing for Charles to click back and forth. I finally decided to send the files to his Kindle. He has the large Kindle and could prop it up next to the computer and read while he worked. I don't think this would work well with a small Kindle- like the Kindle app for a phone or ipod. I think if I were going to purchase the program, I would go for the print textbook.
 
The program is meant to be used at the rate of about 1 chapter per week. The lessons are designed to take 3-6 hours each. The first week, I assigned computer to Charles on his assignment sheet for two times for the week- just to see how it worked. I was a little concerned when I saw the size of the chapters. Even though Charles loves anything that has to do with computers, and even though he was very excited about the possibility of learning how to program, he does not like to read. He's required to read for school and can do it quite fluently and with
good comprehension. But he rarely picks up a book by choice. So, I wasn't sure if the large amount of reading would turn him off. I didn't need to worry.

 

He took off through the lessons. There were times when he did even more than two lessons for the week. The lessons were easy for him to comprehend for the most part. He worked through entirely self-directed. I will caution that there were two times he couldn't get his program to work, and at that point, I really couldn't help him without reading the entire lesson for myself. He was frustrated but okay with letting it go and moving on. I can see that a child who was more determined not to make a mistake might have been really frustrated. Of course, some parents probably know more about computer programming than I do and could step in and help solve the problem more easily.
 
Despite the amount of reading, he has had only good things to say about the program. He's very excited about all he's learning. And he often chooses to do the program even if I haven't assigned it for the day.

 

This has definitely been successful for us, and I'm glad we've had the opportunity to use it.

My son really enjoyed learning with your program. It came at a good time because he has such an interest in computers and programming right now. We both enjoyed using it, and I'm hoping my other kids will also.

 
 
Thanks to Philip Conrod and to Leah from Courtney Six!
 
   - Ninja Ed

Small Basic Guru - How to Make a Turtle Maze Game

$
0
0

Nonki Takahashi is our Small Basic TechNet Guru for June! See the TechNet Guru Contributions for June 2013.

  

Nonki Takahashi's avatar

  

About Nonki: I am an amateur programmer.  I used to program with one of BASIC language on an 8-bit micro computer when I was a college student.  In 2010, I started to program with Microsoft Small Basic.  And I'm interested in making Go program and conveying the fun of programming.

 

Here is Nonki's winning article:

Small Basic: How to Make a Turtle Maze Game

 

 

Here are all the June Small Basic winners:

Guru Award Small Basic Technical Guru - June 2013  

Gold Award Winner

 

Nonki TakahashiSmall Basic: How to Make a Turtle Maze GameRZ: "This is very cool. Nice layout, screenshots, and details instructions."
Ed Price: "I love this article! It's fun, and it takes you through the whole process in a fun and clear way, complete with great formatting, images, and code. Great job!"

Silver Award Winner

 

Jibba JabbaDevelopment Map for Becoming a Good Programmer using Small Basic and MSDNRZ "Very useful information. Content is nicely structured."
Ed Price: "This is an incredibly valuable resource!"

Bronze Award Winner

 

Nonki TakahashiSmall Basic: Did You Know?RZ: "Very useful information. Especially concerning known issues."
Ed Price: "Chances are that you didn't know that... which makes this article very valuable!"

 

I have a soft place in my heart for Small Basic, an investment for Microsoft to give to the community and to make programming so fun, social, and simple that 8 year olds love to learn it. I'm glad to see the new Small Basic category for June and that Jibba Jabba jumped in and gave Nonki a run for it! Thanks to both Nonki (with 6 great submissions) and to Jibba Jabba for their contributions! See all of Nonki's June contributions here.

 

 

And here's an excerpt from the article:

 

Overview

I wrote a Turtle Maze Game 1.56 (XHL585-5 ) as a Small Basic program.  In this article, I'd like to introduce how to create this kind of program.



I wrote this program with three phases.  Firstly I wrote a program just creates and shows a maze.  Secondly I wrote an AI (Artificial Intelligence) which solve the maze.  At last, I wrote an UI (user interface) to battle with the AI.

 

 

===========================

 

Read the rest here:

 Small Basic: How to Make a Turtle Maze Game

 

Thanks to Nonki Takahashi for your great contribution to the TechNet Guru contest! You can read about all the June winners here: TechNet Guru Award Winners - June 2013

 

Also, for the July Guru competition, see TechNet Guru Contributions for July 2013.

 

Are you a Wiki Ninja? http://technet.com/wiki

   - Ninja Ed

The Small Basic Environment

$
0
0

The Small Basic Environment

Small Basic provides you with an extremely simple yet powerful development environment with features like instant context-sensitive help.

  1. You write your Small Basic programs in the Editor.
  2. You can run various commands by clicking buttons on the Toolbar.
  3. As you write code, you can find information about commands in the Help window.

Small Basic Environment

 

Learn more about Small Basic here:

Small Basic Curriculum: Lesson 1.1: Introduction                                

 

 

Enjoy!

   - Ninja Ed

 

Featured Article - Developer Roadmap for Using Small Basic

$
0
0

Today's featured article comes from Jibba Jabba...

Development Map for Becoming a Good Programmer Using Small Basic and MSDN

 

Jibba Jabba's avatar

Jibba Jabba is Rick Murphy - He began with Small Basic in Dec 2012.  

 

Here is an except from the article:

  

Maintaining your enthusiasm

Learning requires the desire to learn. For as long as you’re learning to program you’ll need to regularly revise your goals and how you set about achieving them. This will help ensure your enthusiasm is always there. Maintaining your enthusiasm is vital so that you can go on to learn and gain a deep understanding of several different languages suitable for different purposes. This deep understanding of varying languages is essentially what a good programmer has. The best programmers will push the limits of a language using creative and simple methods and not necessarily spend all of their time learning all of them.

Setting and Using your Goals

Setting goals is your map to becoming a good programmer. A good goal is flexible, realistic and practical. Learn to become a ‘pragmatic programmer’ by first learning how to set useful goals.

Goals reflect ones ambitions and are closely followed by your approach. Try to keep your programs simple. Good programming is often the simplest and most direct solution to a problem.

Your goals will need continual fine tuning and adjustment. Often is the case when starting out that the time estimated to complete a task is underestimated. Adjustments also allow for unexpected related learning. For example you may need to refresh your algebra, trig and equation solving skills along the way. Goals will provide you with morale building feedback on how you’re going.

 

 

=====================================

 

 

 

You can find the full article here:

Development Map for Becoming a Good Programmer Using Small Basic and MSDN

 

 

Thanks again to Jibba Jabba!

Enjoy!

   - Ninja Ed 

Using Small Basic and MSDN (a self-paced Learning & Development Map)

$
0
0

Today's guest blogger is Jibba Jabba. Read his full article here...

Development Map for Becoming a Good Programmer Using Small Basic and MSDN

  

The following is an example of a self-paced Learning & Development Map using some free and available resources (listed below). It’s not intended to be the only way but may give you some ideas that may help you develop one suitable for yourself. Formal education and employment are generally considered to be the best sources of education and experience.

Practice and experience are what this map is trying to help you get started with. Getting in some regular practice time, whatever you can responsibly manage will be conducive to learning.

Setting completion times to accomplish your goals is a great way to assess your progress.

My map was as roughly as follows:

  • At the start of each month I would set my goal.
  • At the end of each month I would assess my progress by how much of the material I had covered and if I could successfully solve the monthly challenges and ‘show what you know’ exercises in the curriculum.
  • My self-assessment would then help me set my goals for the next month. For example:

 

Month

Reading & Doing

Method

One

Curriculum 1.1 to 1.5

Related Chapters in the Manual

Related threads on the forum

Wiki tips e.g. http://social.technet.microsoft.com/wiki/
contents/articles/15081.small-basic-programming-tips.aspx

Attempt related monthly challenges

Read and do the curriculum and it’s samples. Attempt the show what you know, then check and do it as done in the curriculums solution.

While doing the above check the manual for related material. (there’s some great samples and more depth there).

While doing this check the forum for any related threads and ask questions on anything I didn’t understand.

Do and post my solutions to related monthly challenges. Post comments there on any problems I had and invite feedback when needed.

Read the samples of other people’s solutions to the challenges, with an open mind. If someone did it differently to me then I wanted to know why, and often found out why by doing it that way myself.

Proceed to the next Chapter of the curriculum once I was convinced I understood all of it and could do the exercises and related challenges.

 

Two

Curriculum  2.1 to 2.4

Take a peek at Curriculum 3.5

And same as above

Same as above

Three

Curriculum  2.4 to 3.3

Stacks & Arrays: visit LitDevs web page and download the Samples. Start reading and do some of the Arrays sample.

And same as above

Same as above

Four

Curriculum  3.4 to 3.6

Redo Curriculum 3.2

Continue LitDevs Arrays sample

Same as above

Keep working through LitDevs Arrays samples

See next month for Curriculum 3.4

Five

Curriculum  4.1  Curriculum  3.4 ‘Show what you know’

Same as above

Curriculum  3.4 ‘Show what you know’ exercise at the end. The sample solution to this is very difficult to follow.

Do some of the easier challenges as well

 

The curriculum:  download a copy of the curriculum to your hard drive (just in case the link fails).

http://social.technet.microsoft.com/wiki/contents/articles/16299.small-basic-curriculum.aspx

The reference manual:  An introduction to Programming. This is located in the Small Basic program directory. C:\...\Small Basic\IntroducingSmallBasic.pdf

The Small Basic forum:http://social.msdn.microsoft.com/Forums/en-US/home?forum=smallbasic 

 

Thanks again to Jibba Jabba.

 

Read the rest of the article here:

Development Map for Becoming a Good Programmer Using Small Basic and MSDN

 

Enjoy!

   - Ninja Ed 

Beginning Microsoft Small Basic - Review by Michele

$
0
0

It's time for a guest blogger!

Today's guest blogger is Michele (and her 11-year-old son) from Family, Faith, and Fridays.

 

 

 photo ComputerScienceForKidsProgrammingTutorialsLogo_zps071e1e50.jpg

 

I will admit it- I have a love hate relationship with my computer.  Well, not just mine, but any.  I am just not a high tec kind of girl it seems.  Luckily for my children, I DO want them to be high tech kind of kids.  Enter Computer Science For Kids, a company devoted to teaching kids basic computer programming.  We recently were able to use the Beginning Microsoft Small Basic program (recommended ages 10 plus) for our 11 year old son with great success.  Luckily for me, my husband took on the role as teacher and walked him through the lessons each week.  Not that I could not have done it, but, hey, they probably had more fun together than my son would have had with me. 

So out of the mouth of my husband...

Downloading the Microsoft Small Basic program is pretty simple and so is the curriculum.  I really liked how the 11 chapters were broken up and could be saved and viewed as Word documents or Adobe PDFs.  I was able to review the lesson beforehand and then bring it up with my son on the computer screen as we went through the material.  Another plus was the format.  Each lesson started off with some basic programming information and then moved to a simple program designed to show the student how to use what was learned earlier in the lesson.  I really like this hands-on approach as it speaks to my learning style and I think my son was able to grasp the material without having too much further instruction.

In addition to the chapters/notes for each lesson, the curriculum included over 20 example Small Basic programs for us to study and modify as needed.  I even had my son create his own program based on my 6 year old's favorite question.  "When I am 10 years old how old will my brother/sister be?"  Our program now allows him to type in an age and it will show him how old each member of the family will be.  This was not part of the curriculum and is a pretty simple program but it did show my son how he could "see the need" and create a program for the computer to do the work (math in public) for him.

I will say that I have had some basic programming instruction and so has my son so we were able to move fairly quickly through each lesson.  It was also helpful to have the lesson and Small Basic both up on the screen where it was easier to copy and paste some code instead of waiting for the 11 year old who doesn't type find his way around the keyboard. 

All in all we enjoyed using Computer Science For Kids and discovering what Microsoft Small Basic could do.  I would recommend using this program to get your youngster started as a computer programmer or at least give them the exposure and knowledge that there's more to that pretty little icon that sits on your desktop. :-)

Reviewing a lesson
Our age program

A note from the momma-
I know that not everyone has the luxury of dad being able to teach a school subject, but occasionally we are blessed with that luxury.  It was fun to see these two work together to solve a problem and even more fun when they would call the rest of our family in to show us the latest program they had created.  I am eager to see what they will program next as they continue these lessons together.

Fine details-
The course requires XP-SP2, Vista, or Windows 7, ability to view and print  documents saved in Microsoft Word format, and the Microsoft Small Basic  development environment (Version 0.9 or higher).

  

 
  
Thanks to Philip Conrod and to Michele from Family, Faith, and Fridays!
 
   - Ninja Ed

Dots and Lines Game - Small Basic Featured Program

$
0
0

Today's featured program comes from Behnam Azizi:

 

Behnam Azizi's avatar                

Behnam's Website: sfu.ca/~bazizi

 

 

Here is an introduction to the game in his own words:

 

A Dots and Lines Game developed using Microsoft Small Basic. This time I didn't spend much time on the program, and it was done for learning purposes. So the program might not be free of bugs. For example a simple bug that it has is that you should click next to each line to draw the line (not exactly on the line), otherwise it won't draw a new line. 

This game can be played with a friend. The program does not automatically declare a winner, and scores can be changed manually by players (so watch out that your opponent doesn't cheat in the game!!!!)

-------------------------------------------------------

Challenges that I had while developing this game:

I had to divide each square into 4 triangular sections. then based on where the user clicks on the screen the program finds out in which of the 4 triangular sections the user has clicked. To accomplish this the program finds the equations for lines that create those 4 triangles, and accordingly decides where to draw each line. Look at the Small Basic code for line equations.

 

It can be played online at: SNM509

Or downloaded from TechNet Gallery: TechNet Gallery

 

 

Like always don't expecpt to get a very amazing game. This was done by an intermediate programmer for learning purposes.

 

 

=================================================

 

Thanks Behnam!

Does anyone have any questions or comments for Behnam? Have you tried this game?

 

   - Ninja Ed

Small Basic August Community Challenges!!!

$
0
0

The challenges are put together by our awesome forum Moderator, LitDev! You can enter the challenge during the month of August 2013 in this forum thread.

In his words...

 

These challenges are intended for people who are learning to program for the first time or for those returning to programming who want to start using SmallBasic.  Some will be easy, some will be hard - but they will all make you think, and more importantly be GREAT FUN!

Please post your solutions / partial solutions / questions / feedback etc. into in this forum thread, which will remain 'sticky' for the month.  The only rule is that your solution must use standard SmallBasic methods (no extensions).

It would be good if people could post their problems with these challenges so that a discussion can start so that everyone can learn from each other.

Also post feedback on the kind of challenges that you want to see more of in the future.

Curriculum Challenge 2.2

  1. Use the turtle to draw a 5 pointed star.
  2. Use the turtle to write your name.

Basic Challenges

  1. Write a program to count the words in a text file.
  2. Write a simple binary number converter between decimal and binary numbers (both ways).
  3. Write a simple code that takes an input and converts it to a code (numbers or text).  The program should also be a able to decode a message.
  4. Write a program to draw a backgammon board.
  5. Write a program to calculate the sum of all whole numbers between 2 user input values.

Game Challenge

Write a DuckShoot game.

Interface Challenge

Write a fancy Game Opening screen for DuckShoot game - see above.

Maths Challenges

  1. Write aLissajous figures program.
  2. Calculate and draw a histogram of the frequency of results for the sum of 5 random numbers between 1 and 100.  Perhaps  10000 values.

Community Suggestion 1 (By Nonki)

  1. Create a simple command prompt with dir (list directory) command and cd (change directory) command.
  2. Draw a picture of color cube which has 216 web safe colors.

Community Suggestion 2 (By Jibba Jabba)

  1. A calculator with some neat features.  Using either Control Buttons or an Array Table to set out the buttons.
  2. A visually appealing stop watch with Start, Stop, Reset, Lap and memory to file.
  3. An improved clone of Curriculum 4.1's See Saw exercise. A sample I did MPK879-0

 

Do you have an idea for a future challenge? Please post it in this forum thread.


Small Basic Game Gallery

$
0
0

This is an exhaustive list of the Small Basic games coming from our community of developers!

 

Small Basic Games

Action

Basketball - by NaochanON

Basketball Science - by Nonki Takahashi

Block Smasher V2 (info) by Behnam Azizi

Brick Wall (info) - by Stendec

Catch Game - by NaochanON

Click the Button - by Timo Sö

Darts - by NaochanON

Football Pong (P1 use S+D; P2 use K+L) - by Nonki Takahashi

Naochan Pong - by NaochanON

Stay Away from the Blue Ball - by Todd

Super Pong - by Litdev

Mazes

3D Color RayCaster Maze - by Old Basic Coder

3D Maze - by Old Basic Coder

3D Maze (B&W) - by Pathdrc

Chomper (Packman) - by Anthony Yarrell/QBasicLover

Pacman Labyrinth - by LitDev

Smiley Maze - by Nik Coughlin

SnakeBite - by Davey Wavey

Snow Man Maze (Big) - by NaochanON

Snow Man Maze (Small) - by NaochanON

Star Catcher - by NaochanON

Turtle Maze (info) - by Nonki Takahashi

Shooters

1942 - by Laurent20

Alien Barrage (info) - by LitDev

Asteroids V2 - by Jason Jacques + Community

Invader Game - by NaochanON (play locally for proper framerate)

Invaders - by JKrueg

Soda Pop Showdown - by JKrueg

Space Invaders - by Davey Wavey

Strategy/Puzzle

Chess Board - by Nonki Takahashi

Color Memory Game - by Martmen

Go Simulator - by Nonki Takahashi

Gorillas - by Rushworks

Minesweeper - by Nonki Takahashi

SBCraft - by Ardiezc Quazhulu

SokoCUTE - by kts99

TanCraft - by Behnam Azizi

Tankinator - by Zock77& Cobra355

Tetris - by Kenneth Kasajian

Tic Tac Toe (with menu) - by Nonki Takahashi

Tic Tac Toe (with tough AI) - by NaochanON

Tower of Hanoi - by Alex 2000

Get Started with Small Basic - Featured Article

$
0
0

Get Started with Small Basic

Microsoft Small Basic puts the fun back into computer programming. With a friendly development environment that is very easy to master, it eases students of all ages into the world of programming.

 
 
 
 
 
 
 

 

You can find this article in its latest form here:

Get Started with Small Basic

 

Have fun!

   - Ninja Ed

Small Basic - Control Statements (featured article)

$
0
0

Check out another great article from Nonki:

Small Basic: Control Statements

 

 

Here's an excerpt from it:

 

If statement

If statement or If clause is for making conditional branch.  If you'd like to show "AM" or "PM" by checking clock, following code and chart are for that.  There is another keyword "ElseIf" for this clause.  For detail about "ElseIf", see the next section.

' Start
hour = Clock.Hour             ' Get hour
If hour <12 Then             ' hour < 12?
  TextWindow.WriteLine("AM")  ' Yes: Write "AM"
Else
  TextWindow.WriteLine("PM")  ' No: Write "PM"
EndIf
' End

 

============================

 

 

And check out the full article here:

Small Basic: Control Statements

 

 

Enjoy!

   - Ninja Ed

Small Basic Overview on TechNet Wiki

$
0
0

Noah gave a pass on writing up a Small Basic overview article, so I'd like to share it with you:

 

Small Basic

 

It's already been translated into two other languages!

 

Small Basic

 
Microsoft Small Basic is a beginner .NET language, derived from QuickBasic. It was first launched as a public beta in 2008, and version 1 launched in 2010. It is very international, and is available in over 20 languages.  Small Basic is actually a toned down version of Visual Basic.NET, running on the .NET 3.5 framework.
 

Extensions

If you can't find a function you need to use in a program in Small Basic's main library, you can write an extension for it in any other .NET language (VB.NET and C# tutorials).  If you do not wish to create your own extension you can download some other extension, such as PowerExtension or LitDev's Extension. A list of extensions is available here.
 

Community

It currently still has an active community of users in its forums @ http://social.msdn.microsoft.com/Forums/en-US/smallbasic/threads
 

Let's Start

If you are interested in learning to program, Small Basic is a great way to start! Get it at http://smallbasic.com/.


Additional Resources

Web Pages

Blogs

 

Social Media

 


 

Other Languages

This article is also available in the following languages:

Japanese (ja-JP)

Italian (it-IT)

 

Nonki Takahashi's Shapes Editor - Small Basic Guru for July

$
0
0

Nonki Takahashi is our Small Basic TechNet Guru for July! See the TechNet Guru Contributions for July 2013.

 

Nonki Takahashi's avatar

  

About Nonki: I am an amateur programmer.  I used to program with one of BASIC language on an 8-bit micro computer when I was a college student.  In 2010, I started to program with Microsoft Small Basic.  And I'm interested in making Go program and conveying the fun of programming.

  

Here is Nonki's winning article:

Small Basic: Shapes Editor

 

Here are the judges remarks:

 

Guru Award Small Basic Technical Guru - July 2013  

Gold Award Winner

 

Nonki TakahashiSmall Basic: Shapes EditorRZ: "This is an amazing program. Nonki deserves to be the winner!"
Peter Laker: "There can only be one... :D"
Ed Price: "I can't get over how Nonki made an application that's basically better than Paint. And this article really compliments the application. As Jibba Jabba says in the comments: "This is amazing, Nonki. Really informative sample.""

 

A shame we only had one entry for Small Basic for July. Let's hope we can drum up some more interest from the SB community for August! However, it was still a fantastic article and deserved to win!

 

 

And here's an excerpt from the article:

 

Usage

These instructions are for Shapes 1.5b.

Import

Import as program ID XFZ657-15, remove comment from lines with File objects and save the program as "Shapes1_5b.smallbasic".

Pen and Brush

Click Pen Width menu and change the pen width.  Click Pen Color menu and select pen color.  Click Brush Color menu and select brush color.

Shapes

Click Rectangle, Ellipse, Triangle or Line menu and drag on the window to draw these shapes.  Created shapes can be re-sized or rotated to drag one of the pinches on the shape.  Click twice on the menu to add shapes consecutively.

 

 

 

 

===========================

 

Read the rest here:

Small Basic: Shapes Editor

 

Thanks to Nonki Takahashi for your great contribution to the TechNet Guru contest! You can read about all the July winners here: TechNet Guru Awards - July 2013

 

Also, for the August Guru competition, see TechNet Guru Contributions - August 2013.

 

 

Are you a Wiki Ninja? http://technet.com/wiki

    - Ninja Ed

Duck Shoot - Featured Small Basic Challenges

$
0
0

In the August Challenges...

Game Challenge

Write a DuckShoot game.

 

Interface Challenge

Write a fancy Game Opening screen for DuckShoot game - see above.

 

We'll start with the opening screens...

 

 Nonki Takahashi's opening screen features a moving crosshairs: TLR995.

Screen shot of Opening for DuckShoot

 

And NaochanON also had a good opening screen:

See the animation here.

Next, Jibba Jabba took a first pass at a Duckshoot game. In his words...

Here's my 1st build for the Duck Shoot Challenge. Runs well in the browser or local.

http://smallbasic.com/program/?CTJ510-0

I've kept it simple (not all the details) so that I can build in some more features like multiple ducks and rapid fire. Then i'll add some nice colours, scores and some sound effects. Has on screen game play instructions (please) and captions for late nite play or hard of hearing.

 

And thanks to LitDev or making the challenges!

  - Ninja Ed

Graduate to C# from Small Basic - Featured Article

$
0
0

LitDev wrote this fantastic article about graduating to C# from Small Basic:

Small Basic: Graduate to C#

 

 

Here is an except from that article:

 

 

Conversion

First we create a Small Basic exe and then convert it to a Visual Studio project.

Create a Small Basic exe

The first thing we need is a compiled Small Basic exe.  For this example I use quite a complex one using the LitDev extension; the sample creating a 3D maze game.  You can do this with any Small Basic exe, but I chose a large complex one for demonstration and test purposes.

To create the Small Basic exe, simply save and run the program in the Small Basic IDE.  Once compiled, there will be an exe created in the same directory as your Small Basic *.sb source code.  For this example the exe file is LD3DMazeGame.exe.

Convert to VS project

Next start ILSpy and open the generated Small Basic exe using File->Open and navigate to the exe (LD3DMazeGame.exe).  You can also just drag the exe into the left pane of ILSpy from Windows Explorer.

The code for the opened .Net file will be available for viewing in ILSpy, but we just want to export the whole thing as a Visual Studio project.

Ensure that the code visualisation is set to C# (the default), select the exe project on the list of .Net assemblies (left pane).

Then click File->Save Code... to save it somewhere.  I suggest a new folder somewhere.

Once saved, ILSpy then gives you the option to open this folder, which you can do, or navigate to it in Explorer.  There should be 2 files here:

  • _SmallBasicProgram.cs
  • LD3DMazeGame.csproj

It is convenient at this stage to also copy all required extension dlls and SmallBasicLibrary.dll to this folder.  These dlls can be found in the same folder as your compiled Small Basic exe.  In my case this is just 2:

  • SmallBasicLibrary.dll
  • LitDev.dll

 

 

==================================

 

 

Thanks again to LitDev for this great contribution. Go check out the full article:

 

Small Basic: Graduate to C#

 

 

Enjoy!

 

   - Ninja Ed

 


Small Basic - How to Create an Extension Using VB.NET

$
0
0

It's time for another guest blogger! This one is from Noah Buscher.

Find the latest version of this article on TechNet Wiki: Small Basic: How to Create an Extension Using VB.NET

 

This article is about how to create a simple extension that you can build on for Small Basic (Microsoft). To get started you will need Small Basic, .NET Framework 3.5, and Visual Basic.NET 10. If you wish to see a tutorial for writing an extension in C#, click here.
 

STEP 1: Create an Extension


  1. Open Visual Basic and click on "Create New Project"
  2. Click on "Class Library" and name it "MyFirstExtension"
  3. After the project has loaded, delete all the code from Class1, and paste in the following code:
  4. ImportsSystem
    ImportsMicrosoft.SmallBasic.Library
    ImportsSystem.Threading
    ImportsSystem.IO
    <SmallBasicType()> _
    PublicModule FirstModule
     
        PublicFunction ShowMessage(ByVal MsgTxt As Primitive) As Primitive
            MsgBox(MsgTxt.ToString)
        EndFunction
    EndModule
  5. Open the Solution Explorer and right-click on "MyFirstExtension" and go down to "Add Resource"
  6. After the dialog opens click on the "Browse" tab and go to your Small Basic folder and click on "SmallBasicLibrary.dll"
  7. That should take away all the errors

STEP 2: Make it Work


To allow the extension to work in Small Basic, we need to change the Target Framework to .NET 3.5.
  1. Click on the Save button at the top of the screen
  2. Go to Projects>MyFirstExtension Properties
  3. Click on the "Compile" tab
  4. Click on "Advanced Compile Options" at the bottom
  5. Click on the drop-down for "Target Framework" and select .NET 3.5
  6. Click "OK" and when the dialog pops up, click "Yes"
  7. You can reopen the extension by opening the Solution Explorer and double-clicking on "Class1.VB"
  8. Now, build the .dll by going to the top of the screen and clicking on Debug>Build MyFirstExtension
  9. This will build the .dll to the "bin>Release" folder in the project
  10. Go to the "bin>Release" file in File Explorer and copy all the files, except all the ones named "SmallBasicLibrary.dll" and "SmallBasicLibrary.xml"
  11. Open Small Basic's folder and create a "lib" folder if there is already not one there
  12. Open the "lib" folder and paste the programs inside YOU MAY NEED ADMIN PRIVILEGES TO DO THIS
  13. Close Small Basic if it is open and re-open it
  14. Now, all you have to do to use the extension is type in FirstModule.ShowMessage("YourMessageBoxTextHere")

STEP 3: Moving On


To create more functions in the FirstModule, all you have to do is add more functions. If you need to get any variables from the user, just separate the ByVal YOURVARIABLE with commas. If you need to return a function, just put return before it like:

PublicFunction NetOpen() As Primitive
     ReturnMy.Computer.Network.IsAvailable
 EndFunction

If you would like a Small Basic Extension with tons of functions, just visit 
List of SmallBasic Extensions  to get it! Remember, the Small Basic community is active, so feel free to ask questions. Good luck!

Other Languages

See Also

Beginning Small Basic Review - by Lisa and Amber

$
0
0

It's time for a guest blogger!

 

Today's guest blogger is Lisa McClanahan from The McClanahan 7. Her daughter, Amber, learned Small Basic...


 

 photo ComputerScienceForKidsProgrammingTutorialsLogo_zps071e1e50.jpg
In this day and age everything is run by a computer. I'm sure that will continue into the future & more than likely my kids will have to use them in their career fields. For the past month Amber has been learning about more than using a computer she has been learning how to create programs with Beginning Microsoft Small Basic programming tutorial from Computer Science For Kids.


 photo Beginning-Microsoft-Small-Basic-1937161196-By-Philip-Conrod-and-Lou-Tylee-Cover-Small_zpsb94fb127.jpg


When the Schoolhouse Review Crew receives items that come as a download we are told what day the vendor should email the product. The day we were suppose to receive our Microsoft Small Basic, Amber could not wait. As soon as she got up she wanted to know if I had checked my email. It wasn't there & she was not very patient that day. About every 30 minutes or so she wanted to check my email again. It finally arrived & I started the download. Once it was finished I was in the middle of helping one of the younger girls with their math. I told Amber that I would look at it that evening & she could start it the next day. She was so excited that she asked if she could try and figure it out on her own. She pulled up the Small Basic program & the PDF containing the instructions and got to work right away. I'm not sure how long she worked on this every day, but I never had to remind her about it. She had a blast & every little bit she would holler at everyone to see what she had done.

 
 

Beginning Microsoft Small Basic programing tutorial teaches very basic programming and is written for children ages 10 and up or adults who have never tried their hand at computer programming. It is divided into 11 chapters (sample chapter) and is self-paced. The Table of Contents will show you that although it is for a beginner it contains a lot of information in the 500 pages. Amber started out creating easy things like having her name appear on the screen & adding numbers. She even made a program where she could draw with the mouse. Of course we all had to try it & it wasn't that easy.

 
Amber didn't even give me the chance to print the PDF file for her, she just brought up read it on the computer and put them side by side whenever she needed to. 
 
 

The directions were very easy for her to understand. The only time she needed any help was when she had made a mistake in her typing and couldn't find it. If you have worked with computer programing at all you know that a typo can cause the program to have an error. As she progressed through the program she would save her work in a folder so that she could go back to them whenever she wanted to. The appendix contains codes for a lot of colors so while Amber worked through the program she could change her display to just about any color.

 

Amber loves working with the Small Basic program and she is already asking for more. This is a great program for a beginner programmer. It was easy enough for her to use & she was very excited with the results of her work.

 

  
Thanks to Philip Conrod and to Lisa McClanahan from The McClanahan 7!
 
   - Ninja Ed

Beginning Small Basic - Review by Lisa N and her 3 kids from Golden Grasses

$
0
0

It's time for a guest blogger!

 

Today's guest blogger is Lisa N from Golden Grasses! Her three kids, Feeche (12th grade), Cub (7th grade), and Flower (5th grade) learned it with no programming experience. In Lisa's words...

 

 

 photo ComputerScienceForKidsProgrammingTutorialsLogo_zps071e1e50.jpg

 

Having the chance to test drive Beginning Microsoft Small Basic from Computer Science for Kids has been one of the highlights of our spring semester. This is a super easy to use, easy to succeed at, beginning programming course for your homeschool student! I've been looking for something like this for a long time and was not disappointed!

BEGINNING SMALL BASIC PROGRAMMING TUTORIAL

TABLE OF CONTENTS

1. Introducing Small Basic
2. Small Basic Program Basics
3. Your First Small Basic Program
4. Small Basic Program Design, Input Methods
5. Debugging, Decisions, Random Numbers
6. Small Basic Looping, Subroutines
7. More Small Basic Looping, Arrays
8. Small Basic Graphics, Mouse Methods
9. Timers, Animation, Keyboard Methods
10. More Programs
11. Introduction to Advanced Programming Languages
Appendix I. Small Basic Colors

Both Feeche (12th grade) and Cub (7th grade), with no previous programming experience have spent hours delving into this curriculum. After just a few weeks they are both almost done with the first semester, with high hopes of having the 2nd semester available to them soon! Flower (5th grade) started it and has been moving through it at a more reasonable pace, but enjoying it just the same. Cub is farther along then anyone, and occasionally has to ask Feeche for help, but it's simple enough to figure out that they continue moving along at light speed.

Programming is just learning another language, a needed language for the 21rst century, and Computer Science for Kids makes success at computer language acquisition available even for those who have no previous programming experience. 

If your kids are like mine, go ahead and purchase both at once; they'll love it, cruise through it, and beg for more! A must have for any conscientious homeschooling family.
Content- excellent
Organization - excellent
Presentation - excellent
 
 
 
 
Thanks to Philip Conrod and to Lisa N from Golden Grasses!
 
   - Ninja Ed

Small Basic Featured Article - IDE Colors

$
0
0

I'm featuring an article from Nonki:

Small Basic: IDE Colors

 

That was based on this thread from Danair and Nonki:

http://social.msdn.microsoft.com/Forums/en-US/52988d5b-dd97-46f4-bedf-4fef24aa7437/small-basic-ide-colors

 

 

These are text colors and the background color used in Small Basic IDE (Integrated Development Environment).

#7777FF for Keywords

#800000 for Operators and “the dot between Object and Properties/Events/Operations”

#000000 for Variables, Subroutines, Labels and "the brackets of Arrays"

#DD6633 for Numbers

#006060 for Objects

#CC6633 for Strings

#802020 for Properties, Events and Operations

#008020 for Comments

#F8F8F8 for Background

#5C5C5C for Line Numbers

 

 

You can see the latest version of this article here:

Small Basic: IDE Colors

 

 

Thanks to Nonki for turning this into a Wiki article!

   - Ninja Ed

Starfield Simulator - Small Basic Featured Program

$
0
0

It's time to feature a new program!

 

Florian Auer created this Starfield Simulator:
 
 
 
Florian's profile image:
Avatar of Florian Auer
 
 
 
You can increase/decrease the speed with the UP/DOWN key up to 60. And if you get to 31, then you enter hyperspace! And don't go to 51 if you have epilepsy! =^)
 
 
 
 
And in this version, bigdaddyo made a tweak:
 
 
 
bigdaddyo added just two lines of code, so that the stars move slowly from the center and speed up
as they pass you:
' Original code 'star_x[i] = star_x[i] + 
Math.Round(speed * (star_x[i] / distance)) 
' star_y[i] = star_y[i] + 
Math.Round(speed * (star_y[i] / distance)) 
' Modified code star_x[i] = star_x[i] + speed 
* star_x[i] * distance 
* 0.0001 star_y[i] = star_y[i] + speed 
* star_y[i] * distance * 0.0001
 
 
Let Florian know what you think in this Small Basic forum thread::
 
 
 
 
As LitDev mentions in that thread, Florian's program runs so smoothly because it is well structured with arrays and subroutines.
 
 
 
Thanks to Florian and BigDaddyO!
 
   - Ninja Ed
Viewing all 669 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>