An Introduction to Microsoft Small Basic

Total Page:16

File Type:pdf, Size:1020Kb

An Introduction to Microsoft Small Basic AN INTRODUCTION TO MICROSOFT SMALL BASIC RUSTY KEELE UETN TECH SUMMIT 2019 INTRODUCTION TODAY’S PLAN • History lesson: BASIC language • What Small Basic is and isn’t • How to get Small Basic • A Demonstration • Resources for learning and teaching ABOUT ME • Work at UEN • Programming since 4th grade • BASIC (on Commodore 64) was my first programming language! A SHORT HISTORY OF BASIC BEGINNINGS AT DARTMOUTH • Early 1960s - 2 Math Professors • Wanted an easy language for non- science students • Beginner’s All-purpose Symbolic Instruction Code MICRO COMPUTERS AND MICRO-SOFT • 1975 – Gates & Allen’s first product • Built in or included with most home computers of the 1970s and 1980s TYPE-IN PROGRAMS • From magazines and books • 101 BASIC Computer Games • School text book examples: “Try It In BASIC” BASIC BASHING • GOTO and GOSUB created spaghetti code • Dijkstra’s infamous quote • "It is practically impossible to teach good programming to students that have had a prior exposure to BASIC.” • The rise of structured programming: Pascal and C THE DECLINE OF BASIC • More powerful home computers • Graphical environments • Increase in commercial and free software “WHY JOHNNY CAN'T CODE” • No easy way for kids to get hooked on programming • Searched for an easy to use BASIC • …ended up buying a Commodore 64! • Issued a challenge to Microsoft VIJAYE RAJI • Microsoft employee • Read Brin’s article • Created a new version of BASIC – Small Basic WHAT IS MICROSOFT SMALL BASIC? GOALS OF MICROSOFT SMALL BASIC • For beginners • A real (but simple) language • Fun CONSISTS OF THREE DISTINCT PIECES • The language • The programming environment • Libraries SMALL BASIC != SMALLBASIC • SmallBASIC • An open source BASIC • Available on SourceForge SMALL BASIC != QBASIC • QBasic = Microsoft’s Quick BASIC • For DOS operating system • Wasn’t object oriented • Had GOSUB! SMALL BASIC != VISUAL BASIC .NET • Microsoft’s Visual Basic .NET • Small Basic is a subset of VB • Small Basic is much simpler • Users can “graduate” and export code to Visual Basic .NET HOW TO GET/USE MICROSOFT SMALL BASIC DOWNLOAD SMALL BASIC FOR WINDOWS • Version 1.2 • Supports Windows 10 - Vista • Requires .NET Framework 4.5 • Version 1.0 • Supports Windows XP and older • Requires .NET 3.5 SP1 SMALL BASIC ONLINE VERSION • https://smallbasic- publicwebsite.azurewebsites.net/Pro gram/Editor.aspx • Currently using version 0.91 • Reference Documents mismatch DEMONSTRATION RESOURCES FOR LEARNING AND TEACHING THE OFFICIAL TUTORIAL • 11 chapters (70 pages) • Good intro, with sample code • Quick Links > Tutorial PROGRAMMING (E)BOOKS • 5 professional books • free sample chapters online • Quick Links > eBooks WIKI: SMALL BASIC PORTAL • Overview, Getting Started, How To’s, Advanced Tips • Lots more! • Quick Links > Wiki THE FREE CURRICULUM • 6 complete lessons (23 sessions) • View online or download nice PowerPoint slides • Quick Links > Wiki > Small Basic Curriculum SMALL BASIC BLOG • News, contests, code examples • Updated a couple times per month • https://techcommunity.microsoft.com /t5/Small-Basic-Blog/bg- p/SmallBasic YOUTUBE VIDEOS • Literally hundreds of videos • About all aspects of Small Basic • Of varying lengths (1 - 10+ mins) THE END REFERENCES • Dartmouth image: https://www.dartmouth.edu/basicfifty/basic.html • Wikipedia BASIC article: https://en.wikipedia.org/wiki/BASIC • Time article on BASIC: http://time.com/69316/basic/ • BASIC screen shot: https://tctechcrunch2011.files.wordpress.com/2014/05/atari-basic-graphics-0-screen-dli-not-activated-20130202.jpg?w=680&h=485 • book of games: http://2.bp.blogspot.com/-bDBA6lSo_rg/T8fz47kZUuI/AAAAAAAAAc8/XUXnWdyrB3k/s1600/101-basic-computer-games.jpg • Dijkstra picture: https://femgineer.com/wp-content/uploads/2012/09/programming.jpeg • Decline graph: https://www.cannamm.com/wp-content/uploads/2015/12/bigstock-D-Business-Decline-Graph-3683075.jpg • Why Johnny can't code: https://www.salon.com/2006/09/14/basic_2/ • David Brin photo: https://www.flickr.com/photos/57037724@N03/5261411769/in/album-72157632003421870/ • Vijaye Raji's first blogpost about Small Basic: https://techcommunity.microsoft.com/t5/Small-Basic-Blog/Hello-World/ba-p/335289 • What is Small Basic?: http://www.smallbasic.com/faq.aspx • Vijaye's picture: https://www.bizjournals.com/seattle/news/2017/12/05/facebook-job-interview-process-seattle-hiring.html • SmallBASIC image: http://smallbasic.github.io/images/screenshots/smallbasic_tetris.png • QBasic image: https://arfanart.files.wordpress.com/2011/10/input-pemograman3.jpg • Visual Basic image: http://learninghints.com/images/IDE.JPG • Small Basic splash: https://www.assignmenthelp.net/images/game/small-basic.png • That's All Folks image: https://i.ytimg.com/vi/G_yahranAnQ/maxresdefault.jpg QUESTIONS & COMMENTS? • Download slide deck at: • http://c64sets.com/slides/ • Conference site?.
Recommended publications
  • A Study of Computing in Education and Ways to Enhance Students’ Perceptions and Understanding of Computing
    SCHOOL OF DESIGN, ENGINEERING & COMPUTING MSc Enterprise Information Systems September 2013 Computing in Education: A study of computing in education and ways to enhance students’ perceptions and understanding of computing by Paul Albinson BSc (Hons), FdSc, MBCS Page 1 of 166 Abstract There is a huge demand for computing skills in industry due to computing becoming ubiquitous and essential for modern life. Yet despite this, industry struggles to find employees with suitable computing skills and similarly Further and Higher Education institutions have observed a lack of interest in their computing courses in recent years. This study looks at possible reasons for this lack of interest in computing, how computing is taught in education and ways to improve students’ perceptions and understanding of computing. It focuses around a case study of a university outreach event for secondary schools which investigated how interactive teaching methods can be used to enhance students’ perceptions and understanding of computing and to increase their computing knowledge. It includes the use of physical computing and was designed to make computing fun, motivational and relevant, and to provide examples of real-world applications. Surveys were used before and after the event to understand what students’ impressions and knowledge of computing is and to see if the event improved these. Observations were also used to see how well the students handled the event’s content and whether they appeared to enjoy and understand it. Results from the case study indicate that interactive teaching methods enhance computing education, and physical computing with electronics can enhance lessons and show the relevance of computing with examples of real-world applications, and can be fun and motivational.
    [Show full text]
  • Charles Munson
    Charles Munson Current Address Permanent Address France [email protected] Florida, USA http://www.JetWhiz.com OBJECTIVE To obtain a software development or web programming position that utilizes a wide range of computer languages. EDUCATION Georgia Institute of Technology GPA 3.8 Doctor of Philosophy in Electrical & Computer Engineering (Ph.D. in progress) The University of Florida – Gainesville, Florida GPA 3.8, w/ honors Bachelor of Science in Computer Engineering RELEVANT Environments: KNOWLEDGE Experienced in Linux, BSD and Windows environments Knowledgeable with Macintosh-based systems Programming: Expert experience with Perl (14 years), PHP (14 years), JavaScript (15 years), C/C++ (11 years) and SQL Skilled with C# (7 years), Java (10 years), JSON/AJAX (Web 2.0 design), shell scripting (*Nix and Windows) and mobile application development Experience with assembly programming for various processors and microcontrollers (such as the MSP430 and 68HC12), including SPI communication Knowledge with Python, VBScript, QBasic, Pascal, ABAP (SAP), ASP.NET, Haskell Graphical interface (GUI) and user interface design using Java AWT and Swing, and also in C with the GTK+ toolkit and Win32 API Markup Languages: Expert knowledge of HTML5, (X)HTML, DHTML and XML (incl. Atom and RSS) Highly experienced with document formatting and transformations using XSL/XSLT and CSS Hardware: Reconfigurable computing with FPGA and CPLD devices in conjunction with VHDL and schematic design (Quartus) Circuit board (PCB) layout using Altium Designer
    [Show full text]
  • Manualgambas.Pdf
    Introducción Este míni-manual esta pensado y orientado para los asistentes al taller de Gambas. Dado que, a priori, esperamos la asistencia de gente sin conocimientos previos de programación este texto va a ser escueto y muy elemental. Además de dar una formación teórica básica tiene el propósito de servir como chuleta para poder consultar las sintaxis más elementales como por ejemplo de las condicionales, bucles, etc. Nuestra herramienta: GAMBAS Vamos a usar Gambas, un lenguaje de programación visual similar al Visual Basic de Microsoft. Gambas dispone de su propio IDE. Un IDE, por sus siglas en inglés, es un entorno de desarrollo integrado. Gambas es lo que se conoce como un lenguaje de programación interpretado y como ocurre con GNU que es un acrónimo recurrente (Gnu No es Unix) Gambas significa Gambas Almost Means BASic, que traducido al castellano es Gambas Casi es BASic. Los IDE's son unos programas que aglutinan todo lo que necesitamos para programar. Tenemos un editor para picar (vamos a ir introduciéndonos en la jerga del programador) código, con resaltado por colores, autocompletado para ayudarnos en la edición, señalización de errores, etc. Un depurador para poder controlar la ejecución del programa y evaluar su comportamiento con sus inspectores de variables, objetos, etc. Un compilador para generar los binarios, bytecodes, ejecutables, etc. Un empaquetador para crear los instaladores. Además disponen de otras herramientas como gestores de servicios SVC para el control de versiones como GIT o similares. Editores de conexión a bases de datos, etc. Lo primero que vemos al ejecutar Gambas la ventana de bienvenida y nos da varias opciones, abrir un proyecto existente, crear uno nuevo o abrir recientes.
    [Show full text]
  • BASIC CODE 2010 Edition by the League of Minnesota Cities Duke Addicks, Special Counsel Rachel Carlson, Staff Attorney
    THE MINNESOTA BASIC CODE 2010 Edition By The League of Minnesota Cities Duke Addicks, Special Counsel Rachel Carlson, Staff Attorney Published by American Legal Publishing Corporation 432 Walnut Street, 12th Floor Cincinnati, Ohio 45202 Tel: (800) 445-5588 Fax: (513) 763-3562 E-Mail: [email protected] Internet: http://www.amlegal.com PREFACE TO THE MINNESOTA BASIC CODE, 2010 EDITION The Minnesota Basic Code This League of Minnesota Cities/American Legal Publishing (LMC/ALP) Minnesota Basic Code (MBC) is an effort to provide a modern and comprehensive code of ordinances for smaller Minnesota cities without the expense of a customized code of ordinances. Its provisions are also useful to all Minnesota cities that wish to have models for the basic city ordinances on the subjects contained in the code. The code reflects current state statutes, case law and rules through January, 2010. The MBC will be supplemented periodically to reflect legislative enactments and new case law and rules. The supplements will consist of new pages which will replace or be in addition to the pages contained in this edition. In addition, the supplements will contain new model ordinances that will be included into the MBC unless the city decides not to incorporate them into their code. Authors and Editors This Minnesota Basic Code is partly based on the Model Ordinance Code for Minnesota Cities, Revised Edition 1980, prepared by Orville C. Peterson, former Executive Director of the League of Minnesota Cities, and the 1989 Model Ordinance Code prepared by Thomas L. Grundhoefer, then Staff Attorney and now General Counsel for the League.
    [Show full text]
  • Baxedit Is an Editor for Programs in Basic Usable by Bax58c Compiler
    BaxEdit is an editor for programs in Basic usable by Bax58C compiler . © 2011 Pierre Houbert (21/11/2020) Page 1 SUMMARY Basic language ................................................................................ 3 The Menus .......................................................................................... 4 New ............................................................................................. 6 Open .................................................................................................. 9 Save .......................................................................................... 12 Print ............................................................................................. 13 Quit ................................................................................................. 15 Cut / Copy / Paste ..................................................................... 16 Find ......................................................................................... 17 Replace .......................................................................................... 18 Font .................................................................................................. 19 Colors ............................................................................................. 20 Language .............................................................................................. 21 About ............................................................................................. 22 File Explorer
    [Show full text]
  • Lindoo2019 Miami Xojo Presentation
    Back to the Basics, in an Two Effort to Improve Student distinct retention in Intro to schools Programming Classes CS Dr. Ed Lindoo Associate Professor Computer Information Systems (CC&IS) 3 year average CS and CIS Drop/Fail rate • 3 year average • 50+ percent drop/fail rate in intro to programming class Two CIS classes taught by CS • Specifically CC&IS students were failing at a 62% rate! • Big problem! • If they fail this course, they don’t continue in the program • Represents a huge loss of revenue to the school • Intro to programming class taught by CS department • I was asked by our Dean to “Fix it” • Computer Science students and Information Systems students • Performed extensive research on why students fail. (business students) took the class together. • After sifting through all the research, I decided to go back to • Business students don’t have the strong technical skills to the basics, BASIC programing that is. jump into a Java or C++ course • I started thinking back to my days of BASIC and QBASIC • Certainly not as an intro class • Remember BASIC? • But that’s what was happening • Well that wasn’t going to cut it! • Further research found a common theme • Visual Programming Environments • Easier to understand languages. DON’T START WITH C++ • I thought long and hard about it • Re-wrote the entire course, Intro to Programming based on Xojo • Even though I had done a lot of work in VB.net, I felt like that was too heavy for this course • Ahh, but there’s a catch…………………isn’t there always? • Then I remembered back to my days of using Real Basic, so I • Must pass a Java course once they pass this class.
    [Show full text]
  • Programming Manual Version 2.0
    www.tinybasic.de programming manual version 2.0 TinyBasic Programming Manual Version 2.0 April 2008 altenburg © 2006-2008 by U. Altenburg CHAPTER 1 Introduction.....................................................8 EDITOR, COMPILER, DOWNLOAD, CONSOLE, SCOPE CHAPTER 2 Preprocessor……….........................................12 #TARGET, #INCLUDE, #DEFINE, #UNDEF, #IFDEF, #IFNDEF, #ELSE, #ENDIF CHAPTER 3 Variables and Types.......................................14 CHAR, BYTE, WORD, INTEGER, LONG, FLOAT, DATA, READ, RESTORE, LOAD, STORE, INC, DEC CHAPTER 4 Maths and Expressions..................................19 +, -, *, /, <, >, <=, >=, <>, <<, >>, (), [], NOT, AND, OR, XOR, MOD CHAPTER 5 Control Flow...................................................22 IF, THEN, ELSE, ELSIF, ENDIF, DO, LOOP, FOR, NEXT, WHILE, WEND, EXIT, ON, GOTO, GOSUB, RETURN, WAIT, PAUSE TinyBasic Programming www.tinybasic.de 5 CHAPTER 6 Functions.......................................................28 LO, HI, MIN, MAX, LEN, POS, VAL, PI, SIN, COS, TAN, ATN, DEG, RAD, SQR, EXP, LOG, POW, ABS, INT, ROUND, POINT, PEEK, EOF CHAPTER 7 Input and Output...........................................33 PUT, GET, PRINT, INPUT, OPEN, CLOSE, FLUSH, FIND, INITGSM, SENDSMS, RECVSMS, ERR, CR, NL, CHR, HEX, SPC, TAB, USING CHAPTER 8 Date and Time................................................40 SETCLOCK, DATE, TIME, HOUR, MINUTE, SECOND, DAY, MONTH, YEAR CHAPTER 9 Displays and Graphics...................................42 SETDISPLAY, SETSYMBOL, CLS, FONT, COLOR, PLOT, MOVE, DRAW, FRAME,
    [Show full text]
  • Microsoft Small Basic
    Katolickie Gimnazjum i Liceum Ogólnokształcące im. Jana Pawła II w Łodzi Microsoft Small Basic Translated by Anna Wilk (klasa 2a 2009/2010) Wstęp Small Basic i programowanie Programowanie komputerowe jest zdefiniowane jako proces tworzenia oprogramowania komputerowego używającego języki programowania. Tylko jak mówimy i rozumiemy Anglików albo Hiszpana albo Francuzów, komputery mogą zrozumieć programy napisane w pewnych językach. To tzw. języki programowania. Na początku było niewiele takich języków, były proste i zrozumiałe. Z czasem oprogramowanie i komputery stały się bardziej skomplikowane i wyszukane, więc języki programowania również musiały ewaluować. W efekcie są to trudne do zrozumienia metody programowania, szczególnie dla początkujących. Small Basic przedstawia programowanie w przyjemny, niezwykle łatwy i ciekawy sposób, usuwa bariery, by każdy mógł wkroczyć w świat programowania. Small Basic - Środowisko Zacznijmy od przedstawienia interfejsu Small Basic’a i poruszania się w nim. Po pierwszym uruchomieniu zobaczycie właśnie takie okno: Obrazek 1 To jest Small Basic Środowisko, gdzie napiszemy nasze programy. Opiszemy każdy element zaznaczony numerem. 1. Edytor(1) to miejsce, w którym piszemy program. Otwierając przykładowy program lub poprzednio zapisany, pojawi się on w tym oknie. Możesz otworzyć i korzystać z kilku edytorów na raz. 2. Pasek narzędzi(2) nadaje komendy w edytorze. O różnych zadaniach nauczymy się później. 3. Powierchnia pod edytorem (3) to obszar na wszystkie okna edycji. Nasz pierwszy Program Już znasz podstawy, więc zacznijmy programować. Wpiszmy poniższą linijkę do edytora. TextWindow.WriteLine(„Hello World”) Jeżeli wszystko zostało wpisane poprawnie, to ujżymy coś takiego: Pierwszy Program Teraz, kiedy już napisaliśmy nasz pierwszy program, włączmy go. Możemy to zrobić klikajać na przycisk RUN w pasku narzędzi lub naciskając F5.
    [Show full text]
  • Microsoft Small Basic
    Microsoft Small Basic An introduction to Programming Chapter 1 An Introduction Small Basic and Programming Computer Programming is defined as the process of creating computer software using programming languages. Just like we speak and understand English or Spanish or French, computers can understand programs written in certain languages. These are called programming languages. In the beginning there were just a few programming languages and they were really easy to learn and comprehend. But as computers and software became more and more sophisticated, programming languages evolved fast, gathering more complex concepts along the way. As a result most modern programming languages and their concepts are pretty challenging to grasp by a beginner. This fact has started discouraging people from learning or attempting computer programming. Small Basic is a programming language that is designed to make programming extremely easy, approachable and fun for beginners. Small Basic’s intention is to bring down the barrier and serve as a stepping stone to the amazing world of computer programming. The Small Basic Environment Let us start with a quick introduction to the Small Basic Environment. When you first launch SmallBasic, you will see a window that looks like the following figure. Figure 1 - The Small Basic Environment This is the Small Basic Environment, where we’ll write and run our Small Basic programs. This environment has several distinct elements which are identified by numbers. The Editor, identified by [1] is where we will write our Small Basic programs. When you open a sample program or a previously saved program, it will show up on this editor.
    [Show full text]
  • The Journal of Computing Sciences in Colleges
    The Journal of Computing Sciences in Colleges Papers of the 29th Annual CCSC Rocky Mountain Conference October 9th-10th, 2020 Front Range Community College Westminster, CO Baochuan Lu, Editor Bin Peng, Associate Editor Southwest Baptist University Park University Pam Smallwood, Regional Editor Regis University Volume 36, Number 2 October 2020 The Journal of Computing Sciences in Colleges (ISSN 1937-4771 print, 1937- 4763 digital) is published at least six times per year and constitutes the refereed papers of regional conferences sponsored by the Consortium for Computing Sciences in Colleges. Copyright ©2020 by the Consortium for Computing Sciences in Colleges. Per- mission to copy without fee all or part of this material is granted provided that the copies are not made or distributed for direct commercial advantage, the CCSC copyright notice and the title of the publication and its date appear, and notice is given that copying is by permission of the Consortium for Computing Sciences in Colleges. To copy otherwise, or to republish, requires a fee and/or specific permission. 2 Table of Contents The Consortium for Computing Sciences in Colleges Board of Directors 5 CCSC National Partners & Foreword 7 Welcome to the 2020 CCSC Rocky Mountain Conference 8 Regional Committees — 2020 CCSC Rocky Mountain Region 9 Reviewers — 2020 CCSC Rocky Mountain Conference 10 Integrating Cloud-based File Storage and NoSQL Databases with Mobile App SQLite — Conference Tutorial 11 Robert Sjodin, Mohamed Lotfy, Regis University What I Have Learned About Teaching
    [Show full text]
  • B4X Booklets
    B4X Booklets B4X Getting started Copyright: © 2018 Anywhere Software Edition 1.4 Last update : 2018.11.28 Table of contents 2 B4X Getting started 1 B4X .............................................................................................................................................. 5 2 Getting started B4A..................................................................................................................... 6 2.1 B4A Trial version ................................................................................................................. 7 2.2 Installing B4A and Android SDK ........................................................................................ 8 2.2.1 Installing Java JDK .......................................................................................................... 8 2.2.2 Installing Android SDK ................................................................................................... 9 2.2.3 Installing B4A .................................................................................................................. 9 2.3 B4A Configure Paths in the IDE ........................................................................................ 11 2.4 Installation problem ........................................................................................................... 12 2.5 B4A Choice of the language .............................................................................................. 12 2.6 B4A Connecting a real device...........................................................................................
    [Show full text]
  • Windows Api Examples
    Windows Api Examples Petur J. Skulason. <mailto:[email protected]?subject=Windows Api Examples> http://www.est.is/~pjs/RealBasic/ http://u225.nett.is/~pjs/ All this is free to use in any application (commercial - shareware - freeware). Also to extract examples and post as examples from other websites. (I do not take any responsibility for how good this is, I dont call for any credit mony or anythink else ... ) These are few examples that I have found on lists, and by experimenting with Windows API calls and browsing MSDN website (http://msdn.microsoft.com/ ). Many text’s are copyed from MSDN website in this document are from MSDN website. Examples are tested on Win98 system, HP OmniBook XE2, compiled on PowerBook G3, PPC7300, LC475. Some of examples are working correctly. Most of examples are working, but some are not working, possible that i’am doing somthing wrong, but they are there. Comments, bugs, other samples welcome. Even requests for more samples. I might try to look at it and see if its possible. PS: In this document I have put some links to MSDN webpage’s. If you are running Internet Explorer then you might need to ‘disconnect java script’ couse then ie might show only part of page. Either run ie with *.js ‘OFF’ or use an other browser, like iCab or Netscape. (As of aug 30, 2000 then pages are displayed correct... problem might be solved... ) When declaring functions/subs then one is calling library, like user32.dll . Can omitt the name extension, use like Lib “user32” instead of Lib “user32.dll”.
    [Show full text]