Live data from Hacker News

Python is the new BASIC

coffeeghost.net

1–10 of 137 posts

Re: Python is the new BASIC

#2
As a javascript fan,

console.log("Hello World")

seems pretty simple. Sure, when you get into async it might confuse young kids (or experienced programmers), but most beginner stuff won't need callbacks.

Re: Python is the new BASIC

#4
A pretty good counter argument: http://prog21.dadgum.com/203.html

Javascript doesn't require setting up apache, etc. for a kid to learn like the submission says; you can just use a static html file on your file system or dropbox etc.

edit: ignore the above about apache, missed that that was in the next bullet point about PHP, not javascript

Re: Python is the new BASIC

#5

As a javascript fan, console.log("Hello World") seems pretty simple. Sure, when you get into async it might confuse young kids (or experienced programmers), but most beginner stuff won't need callbacks.

True, though there are some inconsistencies in the language. For first language it probably makes most sense to use a language that seems to be carefully designed.

Re: Python is the new BASIC

#6
post #4

A pretty good counter argument: http://prog21.dadgum.com/203.html Javascript doesn't require setting up apache, etc. for a kid to learn like the submission says; you can just use a static html file on your file system or dropbox etc. edit: ignore the above about apache, missed that that was in the next bullet point about PHP, not javascript

Python doesn't require Apache either. The submission doesn't suggest that it does. It only mentions Apache in reference to PHP.

In face, Javascript _does_ (until Node came along) generally require a browser, and some HTML to go with it. Python gets along just fine as a single file from the command line, much like Basic.

Re: Python is the new BASIC

#7
post #5

As a javascript fan, console.log("Hello World") seems pretty simple. Sure, when you get into async it might confuse young kids (or experienced programmers), but most beginner stuff won't need callbacks.

True, though there are some inconsistencies in the language. For first language it probably makes most sense to use a language that seems to be carefully designed.

Or maybe the one that comes pre-installed everywhere (like BASIC back in the day).

Re: Python is the new BASIC

#8
When my friends ask me what language they should get started in when they want to learn to program without a specific application in mind, I usually suggest Python for all the reasons the article so convincingly presents. So certainly in one sense it's a good modern BASIC equivalent.

However, I don't think that what made BASIC so magical was just that it was easy -- it was easy and you could make the computer do the things you were interested in. And while the capabilities of Python are vastly greater than BASIC of yore, I think a beginner's expectations of what they should be able to do have grown even more quickly.

These days, typically someone who wants to learn to program wants to do one of two things: (1) make a website or (2) create an app. For a lot of types of sites Python is still a great choice (Flask is definitely one of the easiest frameworks out there to pick up, and I'm actually teaching my wife to program by making a basic Flask app with her). However, for other interests Javascript or even Java or Swift may be more appropriate first languages.

I guess that what I'm trying to say is that the best first language is the one that ignites your imagination with its possibilities, rather than the one that's the absolute easiest to learn.

Re: Python is the new BASIC

#9
I remember trying to program some BASIC back in 1st grade, which was 31 years ago. I was terrible at it, but I was hooked.

Fast forward to today: my 4th grader asked me the other day which language he should learn, and I was stumped. I ran through the languages I know well in my head: Java, PHP, Perl, Python, Ruby, Javascript, Go, Swift... Wasn't sure what to tell him. His expectations are fairly high, due to Minecraft and video games and whatever.

So, on one level I agree with the author: Python (or Ruby) is probably the closest to the original feel of BASIC. You can dive into simple statements without wrapping it in a class. You don't need to worry about functional vs. OOP or methods or functions. You can just write some code.

But, as I thought about it, I realized my son already _is_ programming. He's just using Minecraft's red stones. It isn't turing complete, but it has basic input and output.

What I'd love to see is something like Minecraft, but with a more accessible programming environment. There are a few tools out there that do it, but the gap between the visual building experience and the programming experience is way to wide. I want him to click on a block and write 3 lines of code to change the color and give it some behavior.

tl;dr - Minecraft is the new BASIC for most kids today. It just isn't a very good BASIC.

Re: Python is the new BASIC

#10
post #6
post #4

A pretty good counter argument: http://prog21.dadgum.com/203.html Javascript doesn't require setting up apache, etc. for a kid to learn like the submission says; you can just use a static html file on your file system or dropbox etc. edit: ignore the above about apache, missed that that was in the next bullet point about PHP, not javascript

Python doesn't require Apache either. The submission doesn't suggest that it does. It only mentions Apache in reference to PHP. In face, Javascript _does_ (until Node came along) generally require a browser, and some HTML to go with it. Python gets along just fine as a single file from the command line, much like Basic.

For kids learning programming, browsers are more generally available than commandlines with python installed. Doubly so if they want to share what they make like kids used to do with basic on floppies.
Post reply on HN