Be platform-independent!

This is something I wrote a couple of years ago..:

 

One of the amazing features of the GUC paradigm is its ability of making Students platform-independent.

 

And because in the GUC you always discover new things about what is performed on you as a Student, I just discovered this feature lately. Actually I didn’t realize it until we learned about the different features of the object-oriented paradigm. Then I did some pattern matching (GUC as you know combines several paradigms), and this feature did match with the object-oriented paradigm.

 

But how is this feature achieved? (If you are one of those who think in a logical way, you can stop here in order to avoid any errors, because here begins the procedural explanation, and I know you are concerned with the what and not with the how..)

 

One of the methods called for this purpose is making the Students’ memory capable of storing any amount of information given as input without overriding any already stored information and, at the same time, without causing a stack overflow (notice that there is no garbage collection).

 

For me as a sub-class of 4thSemester, this method is used by the Concepts class, but you can also apply it to any of your classes with classCount >=1.

 

This is of course one very good way to get the desired result, but when used alone, it doesn’t get it in the most efficient way.

 

That’s why another method called on the Object Student makes its processing time for performing any task tend to zero. This way it can assure a maximum performance for the execution of the Object Student, as its CPI consequently tends to infinity.

 

Of course in this case you can expect side effects, because as you know Students are Objects and not primitive data types.

 

This kind of time-invariance is unique to the Students in GUC, not to any other kind of Human Object.

 

Another important attribute GUC had to manipulate to achieve platform independence was the environmental sensitivity.

As you know, any Human Object is an environmental variable, i.e. its performance can be affected by the environment it is in.

But in the case of Students in the GUC paradigm this problem was solved by using the so-called IceAge Effect.

Its aim is to make them environment-independent.

This effect is applied in all lecture halls and in most classes (if you don’t sit directly under the source code or you are not smart enough to try and catch the Security Exception Handler).

Especially the transitions between the different environments (like the transition between the Ice Age Effect and the hot sun source outside) make their physical components ready and reliable to work under any environmental conditions.

 

This effect is amplified by the attendance policy.

The fact that if any physical component stops functioning at any time that this would definitely lead the Student to lose some attendance’s, quizzes’, assignments’ and projects’ grades makes each Student try his best to be as environment-independent as possible to avoid resetting his semester variable.

 

This effect, however, can only be ensured to work on campus.

But what about their environment at home?

Don’t worry, as you may have guessed, GUC took care of this, too!

 

GUC provides other alternatives to the IceAge Effect which can be applied anywhere.

 

Whether there is a religious feast, an event celebrated by all Egyptians (like the victory of the Egyptian team), a wedding celebrated by the family or a birthday celebrated by a group of normal Human friends, sad occasions like the “Al-Salam 98”or the extension of the “ Kanoon el Tawarek”, or even natural disasters like the Tsunami, Students should still be able to continue processing with the same performance as if nothing was happening around them.

In addition, their threads should be ready to sleep at any time, and for any period independently of the surrounding circumstances.

 

This, of course, also has some side effects on the other Human Objects living with them. However, the concept of the GUC is also to make sure that Students.setVisible(false) to the other Human Classes.

That’s why their instance variables were declared as private to prevent the access from any other class outside the GUC.

 

Combining all the above mentioned methods (and many others) is a very efficient way to make Students platform-independent.

 

You see how this paradigm is amazing? It has achieved what all programmers were dreaming of for ages!

That is why I deeply believe that in several years GUC Students will be invading the markets with no concurrence!

 

Thank you, dear GUC, for making me platform-independent!

I may have not survived the hard life outside without you..

(But please for the new constructed Students in the future, try to continue working on reducing the side effects ..)

 

(written in the bus on the way home after a Concepts lecture..)

 

String firstName= “Laila”;

String middleName=”Hussein”;

String lastName= “Shoukry”;

int semester=4;

String major = “MET”;

boolean stillAlive= true;

 

Advertisements

2 Responses to “Be platform-independent!”

  1. Yasmine Magdi Says:

    Laila ya Laila 🙂 I read this before, but now I am reading it with a totally different attitude.. 3ashan last semester, I was teaching concepts 😀 😀 w 3ala fekra the side effects exist for tutors too 🙂
    Welcome back to blogging ya Laila.. and I am so much excited to read more of your thoughts and tips.. luv uuuu 🙂

  2. lailame Says:

    Yassooo!!! I am so happy you can still relate :D.. I reposted this especially for Amr Labib who wants to make a version for TAs 😀 .. miss you dear


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: