Live data from Hacker News

Microsoft Small Basic

smallbasic.com

61–70 of 91 posts

Re: Microsoft Small Basic

#61
post #28

I'd like to be positive about this especially considering the thought behind it, but...this is bad. I read the tutorial PDF hoping not to find BASIC-style unstructured programming. I was disappointed. QBASIC was the first language that I learned as a kid, and I regret it to this day. Learning to solve all my programming problems using GOTO in such a formative time set me back months when I finally moved to structured…

You can only blame yourself for overusing goto in qbasic. It had functions, loops, block ifs, and all the other staples of structured programming.

> You can only blame yourself for overusing goto in qbasic. It had functions, loops, block ifs, and all the other staples of structured programming.

When talking explicitly about children beginning programming, I think "you can only blame yourself" is overly harsh. I would certainly say this of a seasoned developer; but a child just starting will—and, I think, should!—do whatever the language allows him or her to do, and it is too much to expect such a child to see, before the bad habit is ingrained, the price that he or she is paying for the apparently wonderful freedom of navigation that GOTO affords. An introductory language should, I think, be very opinionated in matters of underlying structure; just having good options is not enough, if they are not forced (or at least strongly impressed) on the novice who doesn't yet know to use them.

Re: Microsoft Small Basic

#62
I understand that a lot of programmers started with BASIC at a time when Smalltalk was out of reach, but now that we have free, open source distributions like Squeak and Pharo, what possible advantage could BASIC still offer, other than nostalgia?

Re: Microsoft Small Basic

#63
post #48

Author here. I made Small Basic when I was in MS in 2008. My goal then was to remove programming language ceremony (imports, defs, etc.) and get to instant gratification. There are several others that are keeping it alive with a well maintained blog ( https://social.msdn.microsoft.com/Forums/en-US/home?forum=sm... ) and a friendly forum that welcomes programmers of all age and expertise. There's even a strong communi…

Since you're the creator, I'd like to ask you, why BASIC and not Smalltalk? You mention a desire to eschew boilerplate and provide instant gratification--doesn't Smalltalk provide that as well if not better than BASIC?

Re: Microsoft Small Basic

#64
post #33
post #29

Earlier quoted context omitted.

Yeah, it would be interesting to learn about pure functions and referential transparency before basic algebra.

It would be easy to understand algebra in school.

It certainly does! Having "programmed" since I was ~5, the concept of variables and that level of indirection was second nature. I was truly astounded when other kids had trouble.

Even cooler, these days, is Dragon Box. It teaches kids symbolic manipulation via a cute and fun game. Starts off with little creatures you move around, then simply changing the drawings from creatures to numbers and letters makes a seamless transition.

Re: Microsoft Small Basic

#65
post #48

Author here. I made Small Basic when I was in MS in 2008. My goal then was to remove programming language ceremony (imports, defs, etc.) and get to instant gratification. There are several others that are keeping it alive with a well maintained blog ( https://social.msdn.microsoft.com/Forums/en-US/home?forum=sm... ) and a friendly forum that welcomes programmers of all age and expertise. There's even a strong communi…

Since you're the creator, I'd like to ask you, why BASIC and not Smalltalk? You mention a desire to eschew boilerplate and provide instant gratification--doesn't Smalltalk provide that as well if not better than BASIC?

Smalltalk doesn't translate as cleanly between common mathematical notation and code.

Variants of BASIC are among the oldest, most minimal languages: https://en.wikipedia.org/wiki/Tiny_BASIC

Re: Microsoft Small Basic

#66
post #55
post #29

Earlier quoted context omitted.

Yeah, it would be interesting to learn about pure functions and referential transparency before basic algebra.

I'm not sure if this is sarcasm, but it's not clear to me that it's not actually a potentially good idea, in two ways. The first, important, way is that a tool that offers solid theoretical foundations does not (necessarily) require those foundations. You mention algebra, for example, and it's fair to assume that most school students (and probably their teachers!) don't really appreciate the theoretical grounding of…

Was it the "Yeah" that made the tone seem sarcastic? I didn't really mean it that way, I genuinely do think it would be interesting to see what happens. Sometimes I wish I had been taught math from a more theoretical perspective. When I was younger, math seemed really boring, just problems to solve; how much money is left after this series of transactions, what is the area of this shape, etc. When I did learn simple algebra, it only seemed useful for those kinds of problems.

I've only found mathematics really interesting within the past few years, realizing how useful it is for creative things, like making music and art, or understanding programming at a higher level. If I had learned about functions in a more interactive way, maybe being able to create art on a computer screen, or write up physics systems in games, I think I would have been fascinated, and maybe the concepts would have stuck.

Re: Microsoft Small Basic

#67

Earlier quoted context omitted.

Since you're the creator, I'd like to ask you, why BASIC and not Smalltalk? You mention a desire to eschew boilerplate and provide instant gratification--doesn't Smalltalk provide that as well if not better than BASIC?

Smalltalk doesn't translate as cleanly between common mathematical notation and code. Variants of BASIC are among the oldest, most minimal languages: https://en.wikipedia.org/wiki/Tiny_BASIC

Variants of BASIC are also unstructured and teach bad habits, such as the construction of goto-laden messes. Smalltalk by contrast is both simple (for example, having only three levels of precedence) yet also a modern, pure OO language coupled with a graphical, live programming environment.

Re: Microsoft Small Basic

#68
post #2

I like the idea of a lightweight programming language/environment dedicated to entry level learners. Perhaps what would also be interesting is having a basic-esq L/E for whatever programming paradigm that is useful (procedural, oop, functional, etc.)

Smalltalk is that, at least for OO (though it does have lambda objects too).

Re: Microsoft Small Basic

#69
post #48

Author here. I made Small Basic when I was in MS in 2008. My goal then was to remove programming language ceremony (imports, defs, etc.) and get to instant gratification. There are several others that are keeping it alive with a well maintained blog ( https://social.msdn.microsoft.com/Forums/en-US/home?forum=sm... ) and a friendly forum that welcomes programmers of all age and expertise. There's even a strong communi…

Since you're the creator, I'd like to ask you, why BASIC and not Smalltalk? You mention a desire to eschew boilerplate and provide instant gratification--doesn't Smalltalk provide that as well if not better than BASIC?

This was a subjective decision. While I agree it's less succinct, syntactically, I feel Basic reads easier than Smalltalk - especially to someone with no programming exposure.

Re: Microsoft Small Basic

#70

Earlier quoted context omitted.

same here. My first run into with Basic was when I was 6 with an MSX. I was captivated by it but didn't understand what the white letters against the blue background meant. (MSX was ironically more popular in Asia than America where it was built by Microsoft). Pretty soon I got my own but it was a Korean version of MSX with only games on it. My friend had the MSX with keyboard and he showed me how to type stuff on it…

Wow I really wish I had gone to your high school. The late 1990s at my high school were just like the late 1980s - each classroom had a computer but we were all too busy doing assignments on paper to ever use it. I didn't get to see VB until college. I used to write games and utilities on my TI-83. It was generally frowned upon, because teachers were afraid they would be used for cheating. Even writing your own progr…

I'm really just tripping on nostalgia right now but fuck it someone might appreciate these details so I'm going to continue. I also remember playing so many good stuff on the Ti-83. We used to download Bubble bobble and even 3d wolfenstein and just slack off. Students did cheat using the Ti-83 by putting formulas and cheat notes. I'm not sure why they didn't ban it. It was expensive at the time too and I lost or broke mine twice.

I'm not sure if all Canadian high schools were like ours but we had dedicated courses for learning everything from Qbasic to Maya. I was mad jealous of kids that were creating crazy 3d animations with 3ds max but the class was always filled very fast :(. Had I learned the stuff I might have become a computer graphics artist or something in that area. The course I took taught Visual Basic and then QBasic towards the end (I was like dayum I already know this at age 10, let me play web games while teacher is not looking). At lunch time computer graphics lab hosted Counter Strike (1.3 back then) where you paid a dollar to play for 45 minutes and sometimes after school it would go until for several hours. Like jam packed with 20 people screaming and shouting when somebody got knifed. You couldn't curse tho because the instructor was a hard ass and kicked people out for typing swear words in the chat. Damn, we even had Battlefield 1942 tournaments.

Ironically, being in a poorer school meant ton of corporate endorsements and goodies (free Vancouver Grizzlies tickets & free lunch). During the mid 90s when I was in elementary school, our school had everything from Apple II to Imac. Like almost every Mac from different timeline. One of my favorite was a black & white tiny monitor Apple that had Hypercard on it and I used to create something like dragonball Z stick figure animation (obviously inspired by stickdeath.com) on it. Fuck those were good times especially since I didn't have a computer back then and the school provided all these things.

In grade 6, our teacher was super supportive of us using technology (he was into tech, even bought a monochrome projector off ebay so he could teach material from the computer). Looking back I can see how fortunate it was to have experienced all these things. I was especially fond of playing games like Lode Runner and Lemonade Stand on the Apple II. Pretty much all of my recess and lunchtime was spent on figuring out 1) find games in dusty bins in school gym 2) figure out how to run it. Our school used to host Zip Zap Map Canada (tetris meets geography) tournaments. At home my dad taught me how to create my own website (so 1997 or 1998) using Netscape Composer (on win 95 or 98) and uploading it to a free host. Used to brag about it and impressed my teacher a lot. I picked up a book on HTML for dummies from the library and started reading about Javascript and Java but these books were in Korean and I had a tough time. Eventually geocities came along and it was day dreaming about making a popular website ( never happened :( ).

During this time, we got fresh new iMacs and it was off to the races to find games to run on it, Bugdom, Nanosaur, Sim City Classic & 2000, weird game where you walk around a dungeon and kill monsters and level up. We were also trying to run some weird emulation that supposedly allowed us to play windows games but at super low fps.

Everything was going good until one day thieves came in stole all 6~10 iMacs from our classroom. It was shitty but it was also a shitty neighborhood (think Compton without any rap song about it). My grade 6 teacher was really crushed. We got another batch of iMacs and this time we had cables to hold down the iMacs in case someone tried to jack it again and they came in with cable cutters and made off with it AGAIN. Finally they created a dedicated iMac lab on the second floor classroom where thieves couldn't break into.

Quite a long thread stemming from BASIC lol.

Post reply on HN