How would you program this? (not just program-related; philosophical topic)

Kyriakos

Creator
Joined
Oct 15, 2003
Messages
78,218
Location
The Dream
As a metaphor for the mind, an ongoing (and expanding) code is generally as good as any, in my view. So, if you had a code that apparently had as one of its core ends to keep being seamless/not visible, how would you program it?

For example imagine a program that does various stuff, but a major goal of the programmer is to keep those secret. So if some other coder opens the program, they should have great difficulty in moving past the surface. On the surface (again presenting a metaphor here) the program might just seem to mirror parts of the room the person who runs it has in their sight.

Of course there is another catch in this parallelism: the only actual "second" programer who would try to find what the program is, is the person whose mind the program is a metaphor of.

Anyway, in my view there always are ways to go beneath the surface, when a vast process is running it can remain invisible for only so long.
 
This doesn't sound like it relates to actual programming in any sense.
 
This doesn't sound like it relates to actual programming in any sense.

Could help if programers gave some info, though; i mean it did in other forums i asked the same :)
Naturally no parallelism is sustainable after some level, but the good thing with the mind is that inherently it contains anything one is able to think of, so starting with code as a metaphor really is just as good as any other start imo.
 
So, if you had a code that apparently had as one of its core ends to keep being seamless/not visible, how would you program it?

It depends. Depending on the language(s) the program is written in, what type of program it is, what level of access the 2nd programmer has, etc. there are a variety of options to hide the code of a program.

If you give someone an executable file and have them try to find the original source code it's going to be practically impossible.

You can grant or revoke read/write/execute access through a software management program which would be managed by an administrator.

The program could call a web service, a programming function available over the internet. The person calling the web service can only see the inputs/outputs and the name of the function but not how it is implemented.
 
Well... I think the fundamental problem is that our consciousness is not an "outside force". It is actually the other way around, it is ("we are") embedded in the larger system of our brain. The code is not "hidden within us", it is outside "us", because "we" (the consciousness) are not our brain, we are an interface between brain and reality. We are a construct that has been created by our brain to serve a specific function; sentience has most likely evolved to filter the ever-growing sensory information that has become available to the more complex lifeforms.

If we actually stick with programming, I would say our consciousness is more like an AI Script that's running within a program. We're fundamentally doing what we do with a set of variables that are consciously updated to us by the overall system (general sensory information), other information we can request when the situation demands it (memories, knowledge, etc.), but then there's information that we just can't access, and a lot of code that's just running parallel to the code of our consciousness. Like, if we're an AI in Civ 5, we can never know what units hide in the fog of war, because the program (our brain) just doesn't allow us to access that information.

Fundamentally, in everyday life we just run the general code that our consciousness has grown into over and over again, but if we take a second and reflect on who we are, we might gain some insight that we had not considered before. But at the same time, we will never be able to "conquer our mind", because that's just not what we have evolved for. We may increase our understanding of our mind, and by doing so we get more "in sync" with our mind, but that process can only go so far.
 
It depends. Depending on the language(s) the program is written in, what type of program it is, what level of access the 2nd programmer has, etc. there are a variety of options to hide the code of a program.

If you give someone an executable file and have them try to find the original source code it's going to be practically impossible.

You can grant or revoke read/write/execute access through a software management program which would be managed by an administrator.

The program could call a web service, a programming function available over the internet. The person calling the web service can only see the inputs/outputs and the name of the function but not how it is implemented.

But in this parallelism the second programmer is already (inherently) inside the program which is running, thus the running of the program is ongoing and also physically linked to the second programmer. So one has to infer (going by psychology too) that at some point at least some levels of the code as sensed as distinct from just an exe running without revealing any code working :)
 
But in this parallelism the second programmer is already (inherently) inside the program which is running, thus the running of the program is ongoing and also physically linked to the second programmer. So one has to infer (going by psychology too) that at some point at least some levels of the code as sensed as distinct from just an exe running without revealing any code working :)

This sounds like a sci-fi scenario where the "second programmer" is a user who inhabits a computer generated virtual world created by their thoughts, sort of a cross between Inception and The Matrix. Is that close to what you had in mind?

In the normal world, what the program exposes to the user is entirely at the discretion of the original programmer. In this scenario (assuming I have the right idea) where the user is physically linked to the computer, you could potentially theorize that there is some physiological/psychological response to the program running but I doubt it would manifest itself as anything resembling source code that a programmer would recognize, unless you are "The One" of course.
 
This sounds like a sci-fi scenario where the "second programmer" is a user who inhabits a computer generated virtual world created by their thoughts, sort of a cross between Inception and The Matrix. Is that close to what you had in mind?

In the normal world, what the program exposes to the user is entirely at the discretion of the original programmer. In this scenario (assuming I have the right idea) where the user is physically linked to the computer, you could potentially theorize that there is some physiological/psychological response to the program running but I doubt it would manifest itself as anything resembling source code that a programmer would recognize, unless you are "The One" of course.

I mean that in the example, given the code is a metaphor for hidden procedures in the non-conscious part of the mind, the person (second programmer) is still tied to those, and thus the code has to be in a way accessible (though remain seamlessly hidden; accessible in theory but in practise usually just hidden). :)

I am asking how, if you had to allow for such a potential for the code being partly revealed/accessed, you would still make it impossible for the second programmer to actually make much use of the revealed part so as to keep going deeper into the code.
 
I don't understand, what is the perspective of the observer? Is he using the executable/program/whatever? Or does he have the entire source code?
 
I don't understand, what is the perspective of the observer? Is he using the executable/program/whatever? Or does he have the entire source code?

The observer is inherently linked (but not in other ways aware of) to the source code, cause in this metaphor the code is the unconscious workings of the observer's brain.
Essentially the quest is for coming up with a way - in the used example of a code - that most of the code will remain hidden, despite the crucial and continuous link between code and second programmer, aka observer.

Eg in another forum someone suggested a few tricks, like making parts of the code be used for different stuff and then fade to the background or used immediately for other stuff, thus fooling the observer into thinking they have a set and known to him purpose (and thus the observer not looking more into them, so nothing much is revealed). I agree with that; it just isn't enough, though :D
 
yeah but this has nothing to do with real world programming. You can't be linked in that way. Though the closest approximation would be like an api, whether it's a web service or linked library of a code module where the observer has a list of some functions, but then the library is reprogrammed and deployed and those functions change, and some are no longer supported and new ones are. The api could also have a function to enumerate available functions so it's all pseudo dynamic. But really code/apis don't just change. In terms of AI programming, what it does is keep building a decision tree to recognize patterns and make choices, but an api into the AI doesn't change. Apis are supposed to stay static so both sides know what to call and what inputs/outputs are expected or nothing would work.
 
yeah but this has nothing to do with real world programming. You can't be linked in that way. Though the closest approximation would be like an api, whether it's a web service or linked library of a code module where the observer has a list of some functions, but then the library is reprogrammed and deployed and those functions change, and some are no longer supported and new ones are. The api could also have a function to enumerate available functions so it's all pseudo dynamic. But really code/apis don't just change. In terms of AI programming, what it does is keep building a decision tree to recognize patterns and make choices, but an api into the AI doesn't change. Apis are supposed to stay static so both sides know what to call and what inputs/outputs are expected or nothing would work.

But what if this was custom built just for use by one person only? :) (like the brain of a person is only used by said person; no one else has access to it).
Afterall, our consciousness (including random stuff picked up) forms one level of what is going on, at least on the surface, and is the basis for any study of what there is on deeper levels of one's mind as well. But everything one picks up is already formed crucially by the abilities and procedures found in their own mind. Nothing you think or sense or feel can be, by definition, outside your potential for having those mental sensations.
 
I am unsure why secrecy is an important element here, when people say things and do things, their motives are typically fairly obvious.

There are ways one can encrypt code so that one cannot read the instructions, but upon observation of the software's behavior, it typically is fairly obvious what it's doing.
 
^I have to suppose that it would be relatively easy to make it so that a number of functions (and maybe a rather huge amount; i mean the parallel is to the brain) can alter in the specific case that the second programmer merely observes them. Or just uses them. Moreover they could alter in more ways than one. In general it does seem quite logical to assume that one of the core principles of how the brain works is that there must be at any given time only a tiny fraction of access to it by the person (else you would get flooded with so much information that you wouldn't be able to function as a human being anymore).

Even on the level of immediate consciousness you see functions having multiple use. Eg the term "One", and any singularity/grouping, can be used for any number of subgroups and overgroups. We say "one chair", but also "one room" where the chair is in, "one house" where the rooms are etc etc. In deeper procedures of the brain one can assume that such multiple roles of the same object/variable/element are a lot more numerous and multi-faceted.

edit: hm, just noticed, i am now the one with the most posts in this site. Hurry up, Perfection, and take that cursed role back ;)
 
Junk code. Exists in both the metaphorical and literal sense in programming.
 
Junk code. Exists in both the metaphorical and literal sense in programming.

Ok, but junk is junk as long as it is identified on the uppermost (or near to it) levels. I mean... even literal junk breaks up into molecules in deeper (in terms outside the metaphor: microscopic) levels, so at some point serves other function and is of similar complexity to everything else; let alone that in this example it would be in Oneness with everything else in the code, while literal junk doesn't have to exist in an enviroment which is also a Oneness.
 
To me it seems like you are trying to equate programming with a person's brain, both the conscious parts but also the subconscious parts, those parts buried in secrecy as you put it. The problem is that computers do not work that way. AI does not work that way. Even though AI is capable of thinking in the sense that it can learn and solve new problems, it doesn't do it in the same manner as a human brain does. All of it's decisions and pattern recognition can be traced backwards, unlike human intuition and subconsciousness. You simply cannot replace that or replicate it.

Our brains are not computers, and computers are not brains, nor will they ever be. Even if somehow computers become self aware, or superior or whatever, their brains still won't work like human brains. It'll be a different type of intelligence.
 
Once during a lecture the professor of astrophysics presented a fairly tough task, and asked: "what would you do?"

I suggested: "give up"

This is much the same
 
To me it seems like you are trying to equate programming with a person's brain, both the conscious parts but also the subconscious parts, those parts buried in secrecy as you put it. The problem is that computers do not work that way. AI does not work that way. Even though AI is capable of thinking in the sense that it can learn and solve new problems, it doesn't do it in the same manner as a human brain does. All of it's decisions and pattern recognition can be traced backwards, unlike human intuition and subconsciousness. You simply cannot replace that or replicate it.

Our brains are not computers, and computers are not brains, nor will they ever be. Even if somehow computers become self aware, or superior or whatever, their brains still won't work like human brains. It'll be a different type of intelligence.

I agree. Yet the point was to ask how would you model the code in the example, in order to at least show some sign of similarity to the object it is set to be a metaphor of in the example (the brain). Of course computers aren't brains; they don't have any sense at all. I didn't argue that there are similarities between computers and the brain (in fact i am very much against such an opinion; eg i don't believe there can be actual computer intelligence in machines not linked to some dna). I asked how would you go building an allegory, if you were asked to use as a basis the code, to speak about the divide between conscious and unconscious.

Ok, it likely is very difficult, but allegories tend to be cryptic and work with allusion, not a fully built model. Perhaps the fact that i am approaching it in a literary way was a bit misleading :)

That said, i also can accept Lohren's stance of just giving up ^_^

tldr: i think the reason for the misunderstanding is the lack of focus on the defining term in the OP; "metaphor". An allegory is essentially a long-winded metaphor. And an allegory isn't the same type of text as a treatise would be, so it can allow for more space to build up nests of ambiguity, while still retaining some semblance of a tie to the object you mean to write a cryptic metaphor about.
 
Back
Top Bottom