Submitted by lupius_mohnschein t3_zmsveg in Futurology
Programming is the driving skill behind the development of the internet. And yet, it is currently learnt by only a few. With magic systems that teach people how to program, a basic understanding of computer science could be brought to large parts of society, empowering people to participate in the development of the web instead of being only consumers.
This broader distribution of computer science knowledge could for one put pressure on big tech companies to open up their programs for active alteration of functionality by the user like the creation of the app store by apple, and, at the same time, drive new, decentralized technologies and products, leading ultimately to the evolution of the web.
But why magic systems? Essentially, it’s about making programming more approachable through a new narrative: the narrative that programming is similar to the magic found in works of fantasy fiction and that it can be learnt through them. Level 4 magic systems could enable this narrative.
​
What are Level 4 Magic Systems?
In my earlier post, I categorized magic systems into four levels of spell-complexity:
-
No Spells: In the fantasy world magic exists and can be controlled but it is not defined how it is used exactly
-
Single Spells: Magic can be controlled with discrete (meaning standing somewhat on their own) actions, which can be executed one after the other
-
Spell-Sequences/Combination of Spells: Spells can be combined to do different things and can be cast in groups
-
Turing Complete Spell-Sequences: Spell-Groups can be combined with constructs of programming that make them just as powerful as computer programs. Sections can be repeated, there can be conditional spells and values can be stored and loaded.
The most popular fantasy novels of the last decades all incorporated magic systems of the first three categories.
But it is only natural to assume that this cannot be the end of it. That it is only a matter of time, until Turing-complete magic systems will come. And when this is the case, they could become a central part of learning programming, or at least, introducing people to it.
​
How Level 4 Magic Systems could be used for learning programming
Level 4 Magic Systems could in the future serve as a low-level entry to programming. If stories based on them would reach mainstream, one could just read a couple of fantasy books and have a basic understanding of programming.
This would certainly be an improvement to the current situation, because currently, there is a rather big threshold to overcome for acquiring “actual” programming knowledge. Usually people overcome this threshold at an early age or never at all.
Magic systems could reduce this threshold significantly and enable more people to learn programming.
In the future, it could be not a question of whether one has an understanding of programming or not but how much. Making it from a leap of faith to a journey, which you might go further along or not, just as you see fit. Not everybody needs to have a “hard” understanding of programming but at least a basic one to use simple means of programming like low code or visual programming and to participate in conversation of technical advancements would certainly be useful for everyone.
But this threshold can only truly be overcome with the help of level 4 magic systems. With their help the entry to acquiring actual programming knowledge could be much more low-level. Would this then mean that all the other great fantasy novels of the past are of no use anymore and can be discarded? Quite the opposite: they can also be a part of this learning process.
In the future, it could possibly look like this: it starts with your parents telling you fairy tales when you are little, on to reading Harry Potter to you when you grew up. Then you start reading The Name of the Wind or Mistborn on your own and went over to reading your first level 4 story (whatever that may be). And then you come into contact with actual programming and decide that you want to do that for a living.
Now it won’t have to be like this for everyone. In fact, it would be totally fine to stop at any point of this process. But it would be an advantage that this process would in this smoothness even be possible.
The ultimate goal should be that everyone with an access to internet could get a low-level entry to programming if they want to. To make it seamlessly. And from which they then can go on to learning actual programming, for which plenty of resources are already available on the internet. This could be the new way of the internet to teach people programming!
But for this to be possible, there needs to be an at least to some degree popular level 4 magic system so that people can make the leap to actual “hard” programming.
doctorhino t1_j0cwvqn wrote
Have you played game builder garage for switch? Nintendo has a really interesting high level flow chart type language in it.
Overall these are fine for grasping the concept but programming is no small task and it takes an attention to detail and engineering mindset to be able to actually build with it versus just read it. A lot of people just don't have the patience for it.