7 ms·
I learned Basic at 10, and I would argue that Python is a better choice today. But regardless of which one, the most important thing about basic was that for a
by phkahler 3y ago
I learned Basic at 10, and I would argue that Python is a better choice today. But regardless of which one, the most important thing about basic was that for a while every computer came with some flavor of Basic. It's what got a generation hooked on tech.
Why oh why doesn't Windows and macOS come with Python and Idle out of the box? Or does Mac, I forget.
- Cockbrand 3y agoThe Mac does come with Python, but of course it’s easier to get started from zero when the first thing you see after switching on the computer is a BASIC prompt.
- antod 3y agoNot just that, usually the computer came with a printed manual for BASIC too.
- musicale 3y agoHaving an onramp to programming is nice. I also imagine there was more of an incentive to write your own programs when there weren't a million games and other apps already available in app stores.
- leetrout 3y agoMac like other bsd/linux includes a system python but not idle.
- radicalbyte 3y agoI also started with BASIC at 10 (C64 in 1990) and I'm going to teach my kids to code in Python. It's simple (low abstraction) and integrates well with other things (IoT) and they can use a REPL. It's disappointing that Windows doesn't release with an accessible interpreted language. They ship with a couple of games so why not drop some kind of super integrated and simple programming environment? Most of my generation cut their teeth on Microsoft Basic after all.
- colonelpopcorn 3y agoI think most tech companies rely on ignorance to sell their "simple" solutions. If everyone could solve their own problems their own way, then nobody would buy "simple" solutions.
- zaphar 3y agoTech companies sell convenience. Most people don't want to to do the work required to "solve their own problems their own way". They aren't buying simple. They are buying: "It's Already Built".
- krallja 3y ago`Win+X I` brings up a PowerShell window. It’s supremely integrated - it can do ANYTHING a compiled .NET language can do, including calling into unmanaged COM, etc.. And it’s super simple - you can get started with simple string processing and file manipulation in just a few characters. It’s just not popular in the same way BASIC was.
- 7thaccount 3y agoAgree with everything you've said about Powershell. It's pretty cool. Buuut...the common Basic computers of the time had commands that let you do built-in graphics in a very simple manner. Not anything as crazy complex as the .NET charting and GUI stuff available to Powershell now. It's a real shame there isn't a built-in DSL that could allow normal users (i.e. not full time developers) to build some really simple games in like half a page of code.
- Someone 3y ago> the common Basic computers of the time had commands that let you do built-in graphics in a very simple manner. I don’t remember Commodore Basic for the VIC-20 and Commodore 64 doing graphics other than through a series of POKEs.
- 3y ago
- blowski 3y agoApple encourages you to use Swift with Playgrounds on macOS and iPadOS.
- mavhc 3y agoBASIC is smarter than Python, don't need :, and it can work out the difference between = and == by itself
- SoftTalker 3y agoOne of the advantages of a classic BASIC for a beginner was its very small feature set. It was easy even for a kid to get it all in his or her head. Python not so much, especially the idiomatic stuff. BASIC is very clear: 10 PRINT "HELLO" 20 GOTO 10 If you understand that the computer will execute lines in numerical order, it's very easy to understand that. The equivalent in Python of just that simple thing would not be so clear. It's great as an introductory language IMO. I disagree with Dijkstra that it will do any permanent damage -- if anything it will help the programmer appreciate the advantages of structured or object-oriented code when they are ready for it.
- Brian_K_White 3y agoRight? I was just about to say that Windows ships with power shell these days, but then immediately realized how poorly that maps. It used to ship with qbasic and a nice editor held over from dos. That was pretty good, though it was essentially hidden. It was there, but there was no icon for it and no docs or directions said to use it, let alone boot right to it as your primary interface. Basically the driving force behind the production of Windows is the parts of MS that make money from it, not the developers who would write stuff for other developers if they could. They want users that consume, not produce, and they absolutely do not want users who tinker and poke and modify. They offer development systems only because they still have to, and they make even those into managed inscrutable products you merely use like powerpoint as much as possible.
- troupe 3y ago> I disagree with Dijkstra that it will do any permanent damage Dijkstra's quote about people who learned programming with BASIC being beyond repair is obviously hyperbole, but given the number of programmers he taught, I'd assume he was seeing some significant difference that was important enough to prompt his statement.
- tempodox 3y agomacOS-10.14 (Mojave) has python-2.7 + idle still bundled, but macOS-13 (Ventura) not any more. You'll have to install it via MacPorts, but at least you'll have a choice which version to install.
- Cockbrand 3y agoMy Mac with Sonoma aka macOS 14 has Python in /usr/bin/python3, so I assume it's been installed with the system. It might have been installed with Xcode, though.
- jasomill 3y agoThat's not Python; it's just a hard link to a generic shim for every program in /usr/bin that ships with the developer tools, $ find /usr/bin -inum $(stat -f %i /usr/bin/python3) | wc -l 76 $ cp /usr/bin/python3 /tmp/IEFBR14 $ /tmp/IEFBR14 IEFBR14: error: sh -c '⋯/Xcode.app/⋯/xcodebuild -sdk ⋯/Xcode.app/⋯/MacOSX.sdk -find IEFBR14 2> /dev/null' failed with exit code 17664: (null) (errno=No such file or directory) xcode-select: Failed to locate 'IEFBR14', requesting installation of command line developer tools. $ and then if you're in a GUI session it pops up a dialog box[1] offering to download and install the developer tools (even if they're already installed; the example above is from a Sonoma box with both Xcode 15.1 and the latest command line developer tools installed). [1] https://jasomill.at/IEFBR14.png https://jasomill.at/IEFBR14.png
- Cockbrand 3y agoI do have Xcode installed, and for me it's just Python $ /usr/bin/python3 [ 12:18:42 ] Python 3.9.6 (default, Nov 10 2023, 13:38:27) [Clang 15.0.0 (clang-1500.1.0.2.5)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> So I guess it depends on whether Xcode and developer tools are installed or not. Too bad it's not installed by default any more anyway.
- bigbillheck 3y ago> Why oh why doesn't Windows and macOS come with Python and Idle out of the box? Because they have something better: a web browser with a javascript console.
- phkahler 3y agoEven I don't know how to use that ;-)