5 ms·
> The industry does not want you programming or creating, the industry wants you to be consuming For this to be true, logically the tools to create smartphone
by rocket_surgeron 3y ago
> The industry does not want you programming or creating, the industry wants you to be consuming
For this to be true, logically the tools to create smartphone programs would be fiercely protected and only available to the chosen few and smartphone OS developers would never in a million years promote learning how to program on their devices.
From my end it looks like the opposite of all of that is happening.
I went to a school in "THE GOLDEN AGE" of 8-bit micros and I was the only one out of 1,100 who used the single room of Apple IIs to type in BASIC programs.
My daughters went to a school that has classes on programming, including Android development.
Turbo Pascal used to be so expensive I couldn't afford it.
Android studio is $0.00 and the (free) resources for development that apple and google openly distribute make many of my college classes look pathetic.
- dTal 3y ago>For this to be true, logically the tools to create smartphone programs would be fiercely protected and only available to the chosen few In a way, they are. They are gatekept in a way that is transparent to you because you find yourself on the correct side of the gate. Apple's gatekeeping is overt, while Google's is more covert: 1) They require a desktop computer - a powerful one at that. Apple requires a Mac. It would be trivial to release an app builder that ran on the phone, but they don't. Apple even outright forbids such apps, or any kind of interpreted environment. Apple also forbids installing things on stock iPhones without passing through Apple servers, and they require you to pay $99 and be over 18 for that privilege. This completely kneecaps the development of any kind of "demoscene". 2) They are ridiculously baroque. I mean awful. Look at this[0] Hello World - "the simplest Android app". Note the wall of perplexing XML, and complex directory tree. Note the phrase "You don't need to understand this code fully." This is not irreducible complexity, this is the result of an attitude that the only people who should be developing apps are professionals with a lot of experience and patience. There is 0 room for casual exploration in the app ecosystem. Hell, I enjoy programming, I can knock up a fun demo in LOVE in under a minute, I carry a smartphone everywhere, and yet I've never written a smartphone app. Not once. It's too much of a pain. You wrote BASIC programs for fun in school? So did I, on my calculator, at a rate of maybe 1 a day. Show me the kid who writes smartphone apps like that. [0] https://code.tutsplus.com/tutorials/the-simplest-android-app-hello-world--cms-35175 https://code.tutsplus.com/tutorials/the-simplest-android-app...
- easrng 3y agoI agree with most of this post, but "Apple requires a Mac. It would be trivial to release an app builder that ran on the phone, but they don't. Apple even outright forbids such apps, or any kind of interpreted environment." isn't actually correct. They have a first-party app called Swift Playgrounds that lets you write apps on iPads, and other interpreters are allowed (Pythonista, Scriptable, iSH) But yeah, native GUI dev is a mess. I wrote webapps all the time when I was in school though. Programming on a phone is kinda a pain because of the small keyboard and lack of browser devtools but it's definitely doable.
- zamnos 3y agoFor some reason we all read the question and limited our answers to an on-device BASIC prompt like it's still the 80's. It's not the 80's though and we have the Internet and you mentioned webapps - why don't we count cloud IDEs as something that "encourages you to learn programming right away?" There was no requirement in the original question as worded that it be an on-phone development happen on the phone, and yet we all read it that way. On my phone, I open the web browser, enter a VScode web Github Codespace, and a print ("hello world") later I'm off to the programming races, running my code on server on the other end. Trying to answer to question but excluding resources on the Internet is like trying to program without the Internet. It's very much possible, but only for some bizarre purity test. Between Stack Overflow, Google, and even ChatGPT, never mind that documentation is all online these days (developer.apple.com; devdocs.io); it's hard to imagine programming without the Internet. Why then not include Cloud IDEs as part of the answer? What sort of purity test do they fail? Sure, they rely on resources not on the device, but to the broader question - "encourage you to learn programming", I'd say they very much qualify.
- wiseowise 3y agoHello world is literally one line nowadays. Your resource is ridiculously outdated. > setContent { Text("Hello world!") } https://developer.android.com/jetpack/compose/tutorial https://developer.android.com/jetpack/compose/tutorial
- 3y ago