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

Small Basic August 2016 Challenges: Breakout Game, Find & Replace, Fixed Numbers, and more!

$
0
0

 

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 Small Basic.  Some will be easy, some will be hard – but they will all make you think, and more importantly be GREAT FUN!

Post your solutions here:

Please post your solutions / partial solutions / questions / feedback etc. into this thread that will remain ‘sticky’ for the month.  The only rule is that your solution must use standard Small Basic 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.

We may extend these challenges over into a second month if solutions and questions are still coming in.

Text Challenge

Write a program to perform a ‘find and replace’ feature for text in a file.

Maths Challenge

Write a program to calculate display numbers with either a fixed number of significant figures or fixed number of decimal places.

Game Challenge

Write a breakout type game

Check out the Community Suggestion Challenges also made sticky for a month

  • Optical Illusions (By Yvan) – LINK
  • Avatar Generator (By Nonki) – LINK
  • The Kodalith effect (By Yvan) – LINK

Do you have an idea for a future challenge? Please post it here!

 

Have a Small and Basic month!

  • LitDev &
  • Ninja Ed

Logo05_WhiteBorders

 

 


Small Basic Gurus, step up and be known!

$
0
0
August Gurus step up and show us your knowledge on the latest and the greatest technologies Microsoft have to offer!

And for your efforts, eminent leaders in your technology will evaluate your contributions and award real virtual medals!

All you have to do is add an article to TechNet Wiki from your own specialist field. Something that fits into one of the categories listed on the submissions page. Copy in your own blog posts, a forum solution, a white paper, or just something you had to solve for your own day’s work today.

Drop us some nifty knowledge, or superb snippets, and become MICROSOFT TECHNOLOGY GURU OF THE MONTH!

This is an official Microsoft TechNet recognition, where people such as yourselves can truly get noticed!

HOW TO WIN

1) Please copy over your Microsoft technical solutions and revelations to TechNet Wiki.

2) Add a link to it on THIS WIKI COMPETITION PAGE (so we know you’ve contributed)

3) Every month, we will highlight your contributions, and select a “Guru of the Month” in each technology.

If you win, we will sing your praises in blogs and forums, similar to the weekly contributor awards. Once “on our radar” and making your mark, you will probably be interviewed for your greatness, and maybe eventually even invited into other inner TechNet/MSDN circles!

Winning this award in your favoured technology will help us learn the active members in each community.

Below are June’s mighty winners and contenders!

Guru Award  Small Basic Technical Guru – June 2016 
GOLD Nonki Takahashi Small Basic: Mouse Ed Price: “I love this series! Nonki takes us end to end on using the mouse in Small Basic. I love the definition! Very strong See Also section.”
Michiel Van Hoorn: “Nonki again delivered a great article on a SB function (MOUSE). Very useful if you want to interact with mouse”
Carmelo La Monica: “I don’t know small basic, but this is good point to learn. Congrats.”
Alan Carlos: “”
SILVER Deva Small Basic Videos Carmelo La Monica: “Very good videos, good fo to learn Small Basic. Congrats for all videos.”
Alan Carlos: “Good guidance, very helpful!”
Michiel Van Hoorn: “Nice overview of available videos”
Ed Price: “Great to have this list on the Wiki! Thanks!”

 

Small and Basically yours,

  • Peter Laker (Microsoft MVP) &
  • Ninja Ed

Small Basic – Flipping Shapes

$
0
0

Today, I’ll introduce a sample program to flip a picture drawn with Shapes object.  The program ID is MMF211.

This program uses Shapes.Move(), Shapes.Zoom() and Shapes.Rotate() operations to flip the picture.  In this logic, a triangle must be symmetric (an isosceles triangle).

Flip01a1

After flipping

Small Basic – Characters for Games

$
0
0

There are some characters that can be used to create game programs.  Have fun with useful characters!

Wingdings and Webdings Fonts

Wingdings and Webdings fonts have graphical glyph in them.  Sample program ID is QZS270.

Screen shot of a program Wingdings and Webdings

Miscellaneous Symbols

There are Miscellaneous Symbols in Unicode U+2600 to U+26FF.  Sample program ID is RPZ143-2.

GetCharcter

Supplementary Multilingual Plane (SMP)

In Unicode, U+10000 to U+1FFFF are called Supplementary Multilingual Plane (SMP).  SMP has such as Mahjong Tiles, Domino Tiles, Playing Cards and so on.  Program FSQ891-0 is Mahjong Tiles sample.

MahjongTiles

Program QBS151-0 is Playing Cards sample.

PlayingCards

Note that SMP is not supported by Text.GetCharacter() or other Text operations.  So each SMP character must be defined as literal.

See Also

The Small Basic Guru Awards – July 2016

$
0
0

The Small Basic Guru Awards celebrate the technical articles on TechNet, contributed from valued wiki authors like YOU!

Each month, the contributions are scored by a panel of judges, and the winners of each category are showered with love and attention.

 

 Small Basic Technical Guru – July 2016 
0640_NinjaAwardTinyGold  Nonki Takahashi Small Basic: Sample Code Ed Price: “Very helpful resource for finding what you’re looking for! Thanks!”
0841.NinjaAwardTinySilver  Deva Video: Installing, running Microsoft SmallBasic in Azure Cloud @ Azure DevTestLabs Ed Price: “Excellent video!”
7827.NinjaAwardTinyBronze  Nonki Takahashi Small Basic Sample: Directories Ed Price: “It’s cool to see how to do this. It would benefit from an explanation. Great See Also links!”
Michiel Van Hoorn: “Interesting scripting possibility for OS file directories. Not sure if one should to this with Small Basic but it is at least possible.”

 

Nonki pulls into the gold medal, with a great resource-driven article!

 

More about the TechNet Guru Awards:

TechNet Guru Competitions

 

Thanks to both our contributors for July!

– Ninja Ed

 

GUEST BLOG + VIDEO: Installing & Running Microsoft Small Basic in Azure

$
0
0

This is a guest blog post from . You can see Deva’s regular blog posts here:  https://blogs.msdn.microsoft.com/deva

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

Recently, i created a new Azure VM (virutal machine) in Azure DevTestLabs, tried burning my hands in installing Microsoft SmallBasic version 1.2.

Here is the related video:

So it works super fast. Now you’re good to do programming in Azure Cloud as well.

All the best for your cloud development.

Happy coding!!

– Deva

 

 

Small Basic – Dice Programs

$
0
0

In the past challenges of the months, I made three dice programs.  Today I will introduce these programs.

The first one was a development view of a die (MDB491) in April 2013.

Dice01

The second one was a 2-D dice program (MDB491-0) in December 2014.

Screen shot of a program Dice 0.3

The last one is a 3-D version (KWD991-0) in September 2016.

Screen shot of a program 3-D Dice 0.2

What will be the next dice program?

Small Basic Challenges of the Month – September 2016

$
0
0

Welcome to the September challenges, hosted by LitDev!

Please jump in with your solutions in this forum thread:

 

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 Small Basic.  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 this thread that will remain ‘sticky’ for the month.  The only rule is that your solution must use standard Small Basic 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.

We may extend these challenges over into a second month if solutions and questions are still coming in.

Turtle Challenge

Write program with buttons to move the Turtle in the GraphicsWindow.

Multitasking Challenge

Write a program to do several things at the same time.  There are two main ways to try to do this using event threads like the Timer or by time slicing (game loop).  Try to the find solutions that can be easiy extended.  Some of the thngs to do ‘in parallel’ below are harder than others.

Try to write a program to do as many of the following at the same time – no extensions.

  • Continually change the GraphicsWIndow backgrund colour every second between black and white
  • Get the Turtle to keep moving round the outside edge of the GraphicsWindow in a rectangle
  • Keep randomly repositioning the GraphicsWindow on the desktop every 2.5 seconds
  • Play the Click sound every 3.2 seconds
  • Add an ellipse shape that changes its colour every 0.5 seconds
  • Continually move an ellipse shape in the GraphicsWindow like a bouncing ball
  • Anything else you can think of

TextWindow Challenge

Create a program that accepts some text from the user and randomly does one the following with it.

  • Reverse all the letters
  • Echo with all vowels in red
  • Colour the words Red, Yellow, Red etc
  • Replace all numbers with an *

Community Suggestion Challenges

  • 2D or 3D dices rolling simulation (By YLed) LINK
  • Sun vs Betelgeuse (By YLed) LINK
  • Draw a Face (By Nonki) LINK
  • Photograms (By YLed) LINK


Screen shot of a program Draw Arc 0.2

Do you have an idea for a future challenge? Please post it here!

Thank you for your contributions, as we all learn together!

 

Small and Basically me,

– Ninja Ed


Hey Small Basic expert! Help us to help you and become globally known for being awesome at what you do!

$
0
0

September has finally arrived, traditionally a strong month for TechNet Guru contributions.

Maybe it is because our professionals have returned from a well deserved Summer break refreshed and inspired?

Maybe it’s because they have had some quality time to think of something good to contribute?

Also it is common for this time of year to bring in some new authors. New contenders! New legends!

Could that be you? Do you want some accolade or acknowledgement that you “know your stuff” ?

TechNet Guru winners can go on to be MVPs and high profile technical evangelists within the Microsoft community and work place!

All you have to do is add an article to TechNet Wiki from your own specialist field. Something that fits into one of the categories listed on the submissions page. Copy in your own blog posts, a forum solution, a white paper, or just something you had to solve for your own day’s work today.

Drop us some nifty knowledge, or superb snippets, and become MICROSOFT TECHNOLOGY GURU OF THE MONTH!

This is an official Microsoft TechNet recognition, where people such as yourselves can truly get noticed!

HOW TO WIN

1) Please copy over your Microsoft technical solutions and revelations to TechNet Wiki.

2) Add a link to it on THIS WIKI COMPETITION PAGE (so we know you’ve contributed)

3) Every month, we will highlight your contributions, and select a “Guru of the Month” in each technology.

If you win, we will sing your praises in blogs and forums, similar to the weekly contributor awards. Once “on our radar” and making your mark, you will probably be interviewed for your greatness, and maybe eventually even invited into other inner TechNet/MSDN circles!

Winning this award in your favoured technology will help us learn the active members in each community.

August’s entries are still with the judges, but below are July’s mighty Small basic winners!

 Small Basic Technical Guru – July 2016 
0640_NinjaAwardTinyGold Nonki Takahashi Small Basic: Sample Code Ed Price: “Very helpful resource for finding what you’re looking for! Thanks!”
0841.NinjaAwardTinySilver Deva Video: Installing, running Microsoft SmallBasic in Azure Cloud @ Azure DevTestLabs Ed Price: “Excellent video!”
7827.NinjaAwardTinyBronze Nonki Takahashi Small Basic Sample: Directories Ed Price: “It’s cool to see how to do this. It would benefit from an explanation. Great See Also links!”
Michiel Van Hoorn: “Interesting scripting possibility for OS file directories. Not sure if one should to this with Small Basic but it is at least possible.”

 

Small and Basically basic,

– Ninja Ed

 

Small Basic – Synchronous and Asynchronous Type Operations

$
0
0

The challenge of this month has Multitasking Challenge.  In Small Basic, there are two types of operations.  One is synchronous type, the other is asynchronous type.  Most of operations are synchronous type that wait the operations done before starting the next step.  But some operations are asynchronous type that don’t wait the operations done.

Asynchronous Type Operations

Following operations are asynchronous type:

  • Shape.Animation()
  • Sound.Play()
  • Sound.PlayBellRing()
  • Sound.PlayChime()
  • Sound.PlayChimes()
  • Sound.PlayClick()

Synchronous Type Operations

Other operations than listed above are synchronous type.  Especially, following operations may need much time.

  • File.ReadContents()
  • Flickr.GetRandomPicture()
  • ImageList.LoadImage()
  • Network.GetWebPageContents()
  • Sound.PlayMusic()
  • Turtle.Move()

If you want to do something while running synchronous type operations, you should use events such as timer, mouse, keyboard or controls events.  On the other side, be careful to use these slow asynchronous type operations in an event handler subroutine.  The next event will occur while running the last event handler.

Small Basic has 2.4 Million Installations (plus 10 other factoids)

$
0
0

Here are some high-level basics about Small Basic:

  1. Head to SmallBasic.com to download Small Basic and get started!
  2. Small Basic is great for students, age 8 to 108!
  3. It is a custom concise language based on .NET, with only 14 keywords.
  4. It features IntelliSense® for beginners
  5. It features an Always-open Help pane
  6. It is Social: Simple publishing to share games & code and collaborate on code
  7. The Graduate button migrates programs to Visual Studio Code to learn VB, Java, C#, Python, & more!
  8. It has been Extended to support Kinect, Lego Mindstorms, Arduino, Oculus Rift, & 3D Graphics!
  9. Small Basic teaches programming concepts starting with the fundamentals and moving up. Small Basic is based on .NET and what is learned can be applied to other object-oriented programming languages.
  10. Small Basic has 2.4 million installations!
  11. Small Basic has 10+ published books / ebooks available, including the book I wrote!

 

That’s Small and Basically it,

– Ninja Ed

Multitasking in Small Basic

$
0
0

Key Point of Multitasking

What is the difference between single tasking and multitasking?

If two or more tasks work at the same time, some (hardware or software) resources should be shared among them.  The resources may be mouse, timer, variables, or object properties.

LDCall Object in LitDev Extension

There is a useful object LDCall in LitDev extension for multitasking in Small Basic.  YLed wrote a good sample of LDCall object.  This program shows beautiful pictures and play music simultaneously.

BeeCollectingPollen

DamselflyBlueEyes

EasternTailedBlueButterfly

I modified his program and published as ZMN750-0.  The original ZMN750 has a little problem that the sub task (music) ends faster than the main task (slides) and shows “The End” message with larger font.  When the sub task shows the message, it changes GraphicsWindow.FontSize.  After that, the description for photos are displayed with the larger font.  This property is the software resource the two tasks should be share.

Thank you very much YLed for sharing fantastic program.  And also thank you litdev for providing nice challenges and the extension.

See Also

 

Featured Small Basic Wiki Article: Read and Write CSV Files

$
0
0

Here is a classic article from Florian that examines how to use CSV files in Small Basic.

Read the full article here:

And here is an excerpt:

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

What is CSV?

Comma separated values (CSV) is a file format that is used to exchange data between programs. It uses commas to separate values and requires equally many values on each line.

Example

For a game we want to save the best player’s score, its name and the date on which the score was achieved.
The format we choose therefore is: [player’s name], [score], [date]

Bob,12,2013-01-02

This means that bob scored 12 points at 2013-01-02. We can easily store multiple scores by writing them one below another.

Alice,15,2013-03-04
Bob,12,2013-01-02
Charlie,9,2013-05-06

Observation:  CSV files can hold one to many records or lines with values.

 

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

Read the full article here:

 

TechNet Wiki articles about Small Basic are gifts that keep giving, years later!

Have a Small and Basic week,

– Ninja Ed

Features of Small Basic Array

$
0
0

Array in Small Basic has following features.

  • associative array
  • flexible length
  • index is case-insensitive
  • null value removes the index
  • multiple dimension

Associative Array

In Small Basic, an index of an array does not have to be an integer number.  A text such like “id” can be used as an index.  Generally this kind of array is called associative array.  This allows to use an array (ex. tortoise[“x”]) like an object property (ex. Turtle.X).  And also allows that the indices are not continuous.

Flexible Length

Both lengths of an index and a value in an array are flexible.  Some program languages have fixed length for each entry of array.

Index is Case-Insensitive

For example, star[“γ”] and star[“Γ”] is the same.

Null Value Removes the Index

Substituting null value (“”) to an entry of an array causes removing the entry.  This feature is sometimes useful for performance.  A large array may slow down the program speed.  Removing no need entry shrinks the array and may improve the performance.

For example, chessboard is not fully filled with chessmen.  Imagine to count chessmen on a chessboard.   If the empty squares are removed in the chessboard array, chessmen can be easily count with Array.GetItemCount() operation.  Like this chessboard array, the array which has many empty entry is called sparse array.   So this feature is useful for sparse array.  Actually the program PRL427-1 uses sparse array to represent the Menger Sponge.  That has improved the performance of this program.

Screen shot of a program Menger Sponge 0.2

Multiple Dimension

1-D array can be written such as day[26].  2-D array can be written such as chessboard[row][col].  3-D array can be written such as block[z][y][x].  And so on.

See Also

Small Basic October 2016 Challenges of the Month – Spinning Top, Tic Tac Toe, Calculating Change, and more!

$
0
0

Hello Small Basic people!

Post your solutions here, in this Small Basic Forum thread:

 

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 Small Basic.  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 this thread that will remain ‘sticky’ for the month.  The only rule is that your solution must use standard Small Basic 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.

We may extend these challenges over into a second month if solutions and questions are still coming in.

Text Challenge

  • Write a program to format numbers 1 to 100 in a neat 10 by 10 grid in the TextWindow
  • Modify the program to colour numbers divisible by 5 red, and numbers divisible by 7 yellow.

Graphics Challenge

  • Make an animation of a spinning top rotating and moving in the GraphicsWindow

Colourful Spinning Top - Discontinued

Game Challenge

  • Write a noughts and crosses (tic tac toe) game to play against the computer
  • Perhaps add some nice graphics and sound effects to the game

Maths Challenges

  • Write a program to calculate the change in the correct coinage of your currency.  Perhaps randomly set a price of something and ask the user to enter the money given and the program works out the correct change.

For example:

Item costs £2.65 and user gives £5.

The change is:

1 £2 coin

1 20p coin

1 10p coin

1 5p coin

  • Write a program to calculate the sum of the first 100 prime numbers

Community Suggestion Challenges

  • 12 bit 4096 colors (By YLed) LINK
  • Draw a Leaf (By Nonki) LINK


Do you have an idea for a future challenge? Please post it here!

 

Big thanks to LitDev for running this!

Remember to be Small and Basic!

– Ninja Ed


Small Basic – Kinect Sensing

$
0
0

Once I wrote about Kinect for Small Basic Extension and a sample code for KinectWindow object.

Today I’d like to introduce more samples for KinectBodyList and KinectFaceList objects.

Program ID JTH778 is a KinectBodyList sample program.

Screen shot of a program KinectBodyList Sample Code

Program ID LGR919-0 is a KinectFaceList sample program.

Screen shot of a program KinectFaceList Sample Code

More details are described here in TechNet Wiki.

Calling all Small Basic Gurus. October readers need feeding!

$
0
0

Logo05_WhiteBorders

Feed the readers!

Hey you!

Want to be a real-life virtual guru? (pun intended)

Do you want to win the love and admiration of the community you work in?

You can win REAL virtual medals and prove your skills, in a competition that is judged by real Microsoft judges!

Gurus who continue to shine soon get noticed!

Oh yes! We’re talking inner circles! Nominations! New horizons!

Step up and stand out!

All you have to do is add an article to TechNet Wiki from your own specialist field. Something that fits into one of the categories listed on the submissions page. Copy in your own blog posts, a forum solution, a white paper, or just something you had to solve for your own day’s work today.

Drop us some nifty knowledge, or superb snippets, and become MICROSOFT TECHNOLOGY GURU OF THE MONTH!

This is an official Microsoft TechNet recognition, where people such as yourselves can truly get noticed!

HOW TO WIN

1) Please copy over your Microsoft technical solutions and revelations to TechNet Wiki.

2) Add a link to it on THIS WIKI COMPETITION PAGE (so we know you’ve contributed)

3) Every month, we will highlight your contributions, and select a “Guru of the Month” in each technology.

If you win, we will sing your praises in blogs and forums, similar to the weekly contributor awards. Once “on our radar” and making your mark, you will probably be interviewed for your greatness, and maybe eventually even invited into other inner TechNet/MSDN circles!

Winning this award in your favoured technology will help us learn the active members in each community.

More about TechNet Guru Awards

Thanks in advance!

  • Pete Laker, TechNet Wiki Community Council Member, Azure MVP, Wiki Ninja & TechNet Guru!
  • Ninja Ed, A guy who does things.

Small Basic – Arduino Sample Programs

$
0
0

This March LitDev introduced about Arduino on this blog.  Today, I’d like to introduce my Small Basic programs using Arduino.

The first one is the IR Turtle controller (HLT038).

Screen shot of a program Turtle Controller

The circuit is like (GZN399):

Screen shot of a program OSOYOO UNO R3 0.1

The Arduino program irdemo.ino is from osoyoo.com.  More details about this program are described here.

The second one is a thermometer (KKK886).

Screen shot of a program Thermometer

The circuit is like (GZN399-0):

Screen shot of a program OSOYOO UNO R3 0.2

The Arduino program is as follows.

//TMP36 Pin Variables
int sensorPin = 5; // the analog pin the TMP36's Vout (sense) pin is connected to
                   // the resolution is 10 mV / degree centigrade with a
                   // 500 mV offset to allow for negative temperatures
float lastTemp;    // last temperature

/*
 * setup() - this function runs once when you turn your Arduino on
 * We initialize the serial connection with the computer
 */
void setup()
{
  Serial.begin(9600);  // Start the serial connection with the computer
                        // to view the result open the serial monitor 
}

void loop()                     // run over and over again
{
  //getting the voltage reading from the temperature sensor
  int reading = analogRead(sensorPin);  

  // converting that reading to voltage, for 3.3v arduino use 3300
  int mV = map(reading, 0, 1023, 0, 5000);

  // now print out the temperature
  float temperatureC = (mV - 500) / 10.0 ;  //converting from 10 mV per degree with 500 mV offset
                                            //to degrees ((voltage - 500mV) times 100)
  if (temperatureC != lastTemp) {
    Serial.println(temperatureC);
    lastTemp = temperatureC;
  }
  delay(1000);                                     //waiting a second
}

Arduino can be connected with many types of sensors or actuators.  So, with this device, we can explore Small Basic world more and more interesting!

Happy Birthday Small Basic – The 8th Anniversary

$
0
0

667D55F8-13D6-4615-8A28-0C4C6E3C73CB

Can you read the message on the LCD in this photo?  Happy Birthday, Small Basic!

Today’s Small Basic program is

' Send Text to Serial Port
' Version 0.1
' Copyright © 2016 Nonki Takahashi. The MIT License.
 
TextWindow.Title = "Send Text to Serial Port"
Init()
While "True"
  txt = TextWindow.Read()
  LDCommPort.TXString(txt + LF)
EndWhile
 
Sub Init
  LF = Text.GetCharacter(10)
  status = LDCommPort.OpenPort("COM3",9600)
  LDCommPort.SetEncoding("Ascii")
EndSub

And the Arduino sketch is

// LCD control via I2C from serial port

#include <Wire.h>
#include <LiquidCrystal_I2C.h>

// Variable definition
const int r = 2;                      // rows
const int c = 16;                     // columns
LiquidCrystal_I2C lcd(0x3F, c, r); // set the LCD address to 0x3F
String inputString = "";              // received string
boolean stringComplete = false;       // received?

void setup()
{
  lcd.init();                         // initialize the lcd 
  lcd.backlight();
  Serial.begin(9600);
}

void loop() {
  if (stringComplete) {
    int len = inputString.length();
    lcd.clear();
    if (len <= c) {
      lcd_print(inputString);
    } else {
      lcd_print(inputString.substring(0, c));
      lcd.setCursor(0, 1);
      lcd_print(inputString.substring(c));
    }
    inputString = "";
    stringComplete = false;
  }
}

// Print string to LCD
void lcd_print(String str) {
  int len = str.length();
  for (int i = 0; i < len; i++) {
    lcd.print(str.charAt(i));
  }
}

// Serial event handler
void serialEvent() {
  while (Serial.available()) {
    char inChar = (char)Serial.read();  // read 1 byte
    if (inChar == '\n') {
      // flag on if reseived newline
      stringComplete = true;
    } else {
      inputString += inChar;  // append it to the string
    }
  }
}

See Also

Road to Small Basic 1.3 Blog #2 – New Mascots

$
0
0

Logo05_WhiteBorders

Welcome to the road to Small Basic 1.3!

It’s a long road that’s several months off, but we’ll start updating you with where we’re headed!

First, you can see that we’ve done that with the new logo above. We also expanded on that journey we took with the logo, in the blog post here: https://blogs.msdn.microsoft.com/smallbasic/2016/07/29/small-basic-exploring-new-logos-part-1

 

That blog above is the first in this series of the road to Small Basic 1.3. And so this makes our second blog post!

Similarly, we’ll take you on the mascot exploration journey!

Our mascots come from the same artist as our logos, our designer, Kodanda, nicknamed “Ram”. So we owe him a big thanks!

Let’s get started!

First we had a classical illustrated turtle that included the logo…

Mascot Version #1:

SmallBasic_MascotVersion01

But we wanted to have the logo separate from the mascot. Because the truth is that Small Basic is also for adults and for teenagers and others. So we wanted to be able to brand more around the logo and less around the mascot, as needed.

About this time, I also experimented with another style of turtle, so this is an added bonus:

Turtle_Grad

Back to the first version… We also wanted to see what it would look like to include the logo in the turtle’s shell!

Mascot Version #2:

SmallBasic_MascotVersion02

We see that we now have a “Code” staff and the turtle shell with the “SB” logo in the shell! We’re also decoupled from the logo, as this is a mascot that could be shown near the logo, or could be not shown with the logo. This turtle is looking pretty nefarious! =^)

Next, we wanted to explore what a more “cool” and younger version of that turtle would look like…

Mascot Version #3:

SmallBasic_MascotVersion03

We have color and cool! But perhaps we also found the fifth Ninja Turtle? What would his name be? Rembrandt? Botticelli? Correggio? So maybe we need something not as muscular/masculine and that appeals more universally. Also, there’s Ram’s signature!

And why a boy? Why not a girl? Why not both? Originally, mascots were often boys (Tony Tiger, Kool-Aid Man, etc.). Often times mascots are made to be neutral, but they are still interpreted as boys or as girls. Why not have both? Then we’re being inclusive by including both sexes (which is a literal interpretation of the word “inclusive”). What would that be like?

Mascots Version #4: 

SmallBasic_MascotVersion04

Now that is interesting! A two headed mascot. To be honest, I’m not entirely sure why we didn’t stop with the two-headed mascot. Maybe it was giving some people nightmares. =^)

Also, we wanted one of the staffs/scepters to be a huge paintbrush, to show how we have turtle graphics (an original concept from Logo programming… see Small Basic: The History of the Logo Turtle).

Mascots Version #5:

SmallBasic_MascotVersion05

Now we have the logo incorporated on their shells and uniforms. We also have the paint brush. And we have two mascots instead of the two-headed mascot. If you think about it, there aren’t a lot of two mascots, especially a boy and girl. That could be fun to have them interacting.

There was some discussion that the art style above seemed too young (for too young of an audience). Also, what if we switched the scepters?

The words they’re saying, “Kids Can Code!” and “Every Girl Can Code!” corresponded to our efforts to (1) Build out our top feature requests, bug fixes, extensions, and add languages to move Small Basic forward (“Kids Can Code”), and also (2) To focus on what kind of features, tutorials, and inclusivity on the mascots and logo that would be great to help teach girls how to code (“Every Girl Can Code”).

Mascots Version #6:

SmallBasic_MascotVersion06

Interestingly, this seemed a bit older and younger, at the same time. We now have a solid rendering. What if the boy’s eyes weren’t as wide, and the Mohawk was closer forward?

Mascots Version #7:

 

SmallBasic_MascotVersion07

And what if we made their skin green?

Mascots Version #8:

SmallBasic_MascotVersion08

And there you go! That’s where we’re at.

Here is just the boy turtle:

 

SmallBasic_MascotVersion08_BoyTurtle

And here’s just the girl turtle:

SmallBasic_MascotVersion08_GirlTurtle

There you go! It’s been a fun journey so far, and we’re grateful to our designer, Ram, for taking us on it! We know that a lot of adults use Small Basic to learn on, so that’s part of the reason why the logo isn’t tied to the mascots (only in theme and style)… it’s so we can have some separate branding, information, content, tutorials, and sites/pages that are aimed at adults and/or teenagers learning, and that exclude any mascots.

Let us know what you think! Next, we’ll take a deeper look at our update to the website experience for Small Basic 1.3.

See you then!

 

That’s Small and Basically it,

– Ninja Ed

 

See Also

This is part 1 in a blog series that takes us down the road toward Small Basic 1.3!

  1. Road to Small Basic 1.3 Blog #1 – Exploring New Logos
  2. Road to Small Basic 1.3 Blog #2 – New Mascot – This blog!
Viewing all 201 articles
Browse latest View live


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