|
|
|
|
|
by interpol_p
3802 days ago
|
|
You can code on iOS devices. You can code in many different programming languages on IDEs available directly on the device. The code can be executed, and so programming is not inhibited. What you are referring to is deployment. You want to be able to deploy or distribute your programs freely through the official channels. And because that is locked down, you consider it "programmable by permission." I would argue that this is not the case. All I care about is the logic and elegance of programming. I don't care how my program runs — whether I write ARM code that is simulated through some App Store app. Whether I write Lua code that is run through an iOS game engine, or whether I deploy it directly to the hardware. That is immaterial because I still get to enjoy the art of programming. Apple's phones and tablets are programmable computers and they can be programmed through officially and unofficially distributed apps. Both free and paid, open and closed source. Just because the official distribution model doesn't suit your personal preference does not make these devices any less programmable computers. Also note that Xcode is free and you can freely deploy apps from Xcode to your devices. So I am not sure I understand your criticism here. Nor do you need to even use the closed-source IDE (Xcode) when the compiler and language are open source. |
|
The real issue is how easily you can code. 8-bit micros hit the sweet spot. No system available today comes close.
You powered up the machine, and the first thing you saw was a BASIC line editor. There was nothing else to distract you. It was instant-on with no setup.
You had to write code to use the machine at all. You even had to write code - albeit one line - to load a game from a tape.
For the gifted, BASIC led naturally to machine code and to graphics made by writing bytes into memory.
No modern environment has anything like the same simplicity, directness, or sense of natural progression.
Xcode, gcc, anything with a build system (never mind a package manager) are insanely complicated in comparison. They're so complicated professionals have to write books explaining them to other professionals.
Even Python - possibly the best candidate for a successor to BASIC - has a quirky IDE and two and a half different popular versions, and a lot of other complications that a BASIC cursor doesn't.
JavaScript? You really have to learn CSS and HTML and jQuery and $(infinitely long list of frameworks goes here) and - oh look, is that the time?
There is a huge difference between encouraging programming by making access to it friction-free and trivially easy, with a learning space that's comprehensibly small but not dumbed-down and toy-like, and making programming possible for users who don't mind hurdling a lot of obstacles.
That first category is completely empty today. It shouldn't be, but it is.