Archive for August, 2009

Advantages of Disability

I am generally dissatisfied with the manner in which disability is handled in whatever society though that does not necessarily represent a deliberate effort to take less notice of disability per se. Such disparities manifest themselves in different ways such as the language that is spoken in the society and/or the facilities and assumptions that everyone automatically makes when he/she comes across a handicap/disabled person. Some of the words used to refer to disabled people are derogatory but more often than not is their tendency to emphasize the disability and thus create a certain mental image of someone who is less than he/she ought to be.

In the about section of this blog, I have proclaimed my pride in being handicap/disabled (the specific term does not mean that much to me as an individual handicap/disabled person) person. Today it occurred to me that I have not spent some thoughts in pointing out the advantages of a disability. For the sake of this post, a disability must be a condition to which there are currently no effective cure and specifically physical disability though some of the points that may be brought up can be extrapolated to cover other kinds of disability.

Living with a disability goes beyond the physical manifestation of the handicap since that manifestation will heavily influence how the person concern views life and goes on to live it. In a sense, the fact that a person is disabled means that they need to learn some life skills which are either taken for granted by the normal people who are on the whole irrelevant to them.

Planning & Strategizing

As a physically handicap person, the simplest thing that you can possibly go out of your way to carry out would require planning as there is need to make sure that everything is setup in such a manner as to ensure the success of the mission/task. For example, I have found myself looking for that extra information about the building where I am going (if I have never been there before) because it is important that I know before hand if the building is storied and if so if there are any lifts or stairs. In case there are stairs, then it becomes necessary to establish if there are handrails so that I am able to get to my destination. Of course in the middle of all these considerations, a key point remains what floor my destination is located. The details of the plan is developed for each new trip/mission/task will depend on the kind of disability.

The process of planning any new is accompanied with a desire to ensure that resources such as time and effort are used efficiently. So time and resources are planned to yield the highest possible return. I must admit that this does not always happen but for a handicap person maximizing the returns on any effort expended is always a priority.

Problem Solving

One of the things that handicap people in general are forced to confront is developing solutions that works for their particular situations. As a general rule that enables a better understanding of problems in any given situation and the accompanying effort required to ensure success. I generally avoid exposure to any buildings that are storied and lack stair cases but when I joined university, I had to figure out a way of scaling stairs with two crutches and a caliper. The solution to this particular problem had to assume both the presence of a good Samaritan at the base or top of the stair or the likely possibility that I will find myself alone. The solution I had come up with both addresses these problems but I also had to adjust the rest of my approach to attending classes; of particular interest is carrying back packs as these would increase the load that needed to be moved between floors.

The important skills learnt here as a result of living a handicap life is identifying a problem and defining it so as to develop solutions that address the problem adequately. Of particular interest is that there is a need to ensure a balance between the capabilities of the solution provider and the desired outcome. As in the aforementioned example, the first objective was to ensure that the handicap person retains as much independence as much as possible while solving the particular problem at hand. In any given business environment it would be particularly advantageous to have people who can solve problems within the confines of limited budget and resources. As mentioned in the above example, the solution to the stair case problem retains long term strategic relevance so the ability evaluate the effects on any given choice is much more heightened for a handicap person.

Team Spirit

A disabled person is already limited in one way or the other so he/she would need to depend on someone for support so it is in his/her lifestyle to know when to give control to more capable people. All organizations and employers are interested in team players and more so in team players who can recognize their own weaknesses and strengths and as such bring the whole team together as one continuous group that complement each other towards a common goal. Disability forces a person to see himself/herself in terms of his strengths which are essentially what comprises his/her identity as well as weaknesses which threaten the success of his/her efforts.

It is also important to point out that there are disabled people who may possess the potential for leadership. Leadership combined with a disposition towards team spirit can lead to a high performing group. A leader who is predisposed to engage the team will make decisions that are both beneficial to the team as well as delegate jobs and responsibilities to those who will have the most appropriate skills to bring the most return.

It goes without saying that dealing with organizations, there are other factors beyond the possession of leadership skills as well as a disposition to foster team spirit. Someone with leadership qualities would be much better placed to adapt to any new demands as and when they occur. For handicap persons, anticipating change and trying to account for it before it happens is almost second nature.

Organization & Patience

As a physically handicap person, there are things that will require more effort to accomplish hence the desire and push to plan and organize more is geared towards ensuring that when the first step is taken then every possible problem has been identified and contingency plans hinted at or at the very least put at an advanced state.

In my life, there are instance in which I detect a certain level of impatience with me with regard to this but the benefits one reaps in the long run as a result of planning and organizing before implementation is whole the slow start or the apparent lack of progress in the initial stages.

The ability to plan and organize leads to an interesting outcome as well in a sense that you are not hurried in whatever you choose to under take since there may be multiple pieces to the same puzzle and each of them will come into play at different times. So you wait for everything to fall into place and plans progress towards and objective.

Related to organization and patience is intolerance towards actions or activities that seemingly waste time and effort. Such intolerance can be well founded since planning and organization will inevitably lead to justifying the task at hand and examining more cost effective avenues of reaching the same goals. The end result of such a process is that whatever effort is put in place is always justifiable and as such would require all possible focus to ensure its success. It is not a perfect process and may not work that well in new situations but the intention is always to look for a chance and opportunity to do it much better and using much less effort to accomplish.


While a disability forces a different view of life out of necessity, the different perspective does have advantages which become both heighten and developed in handicap people. The aforementioned qualities are not certainly limited to handicap people but their lifestyle makes them important qualities to have and practice and as such they have been constantly and regularly fine tuned. Handicap people are human being as well and the aforementioned list may not be applicable to them all and it is entirely possible that some of them are not even aware that they exercise such qualities in their lives.


Programming Paradigms

In the past I enjoyed the concept and practice of programming because it provided an opportunity to explore a way of thinking about a problem without the usual constraints that one may face in the real world. The greater challenge (hence satisfaction) is in defining a model that will account for any potential failures and still be able to accomplish its intended purpose. As time passed, I have come to focused specifically on design and the resulting architecture. Designing anything is a process of creating a model that can account for the solutions to aspects of the problem specified. That is reductive in and of itself but there are much more insightful aspects of problem solving that need to be taken into account in designing and developing a solution.

In any design effort, the ability to abstract from the problem remains imperative while the generally accepted adage of too much of [take-your-pick] is a poison applies, abstraction done right can provide a practical solution to a multitude of problems. Programming paradigms have always been about creating models that either provide a way for us to give instructions to computers or a way for us to describe the world in a manner that a computer can comprehend and hence process. Programming languages remain a way for humans (programmers, software engineers, etc) to interact with a computer – giving it instructions on what to do and how to handle the particulars of our reality. The models that are implicitly encoded into programming languages represent our thinking as far as the machine-like view of the world or bringing the machine closer to the way we appreciate the world.

What are generally referred to as low level programming languages were essentially intended to enable us to communicate with computers and as such they bare close relationship to the way in which computers operate. Think of the assembly language and how you program in it.

With time, additional abstractions were added that allows us to focus more on giving computers instructions as opposed to prescribing the manner in which the computer carries out our instructions. This focus on instructions gave raise to what are generally referred to as procedural programming languages in which the emphasis was on results of the operations that need to be accomplished. The ability to focus on what you want done and how it is achieved in steps, obviously led to a greater interest in using computers to carry out what are essentially repetitive tasks that could easily be encoded in a number of functions which can then be executed and produce the desired result (or report errors, if any).

This focus on the procedures that are needed to accomplish a task leads to a huge codebase that is both hard to maintain and/or evolve to meet new and/or changing circumstances. This great problem would apparently seem to come from the fact that the procedural way of software development, does not adequately account for how the real world operates. In the real world, things exist and operate as a single unit – there is no difference between what something is and what it does.

Personally, I get the impression that this is the time when programming became a bit more philosophical in a sense that there is a deliberate effort to model the world in terms of its nature and its essence. The nature of the world, describes what the world is: in OOP, this is simply described as the state of the an object which is typically denoted by properties/attributes/fields, depending on the terminology of your platform of choice. You may notice that the nature of objects so defined does not need to change in order to make things happen because OOP relies on message passing to get Objects with the appropriate nature to carry out the intention of their essence as defined by their nature (what you do is defined by your nature and your nature defines what you do).

While OOP allows for a better abstraction from the real world, the manner in which it has been implemented thus far has a serious short coming. All the OOP languages that I have come across are rather verbose as the design process need to describe any application elements of the problem space in code. With increasingly large programs, it comes much more challenging to maintain large programs or ensure that they are tested to the satisfaction of end users. So, testing frameworks have mushroomed around OOP languages such as Java with JUnit (among so many others).

For all intends and purposes, OOP still bears some lingering association with how a machine would go about processing instructions. The so-called Fourth Generation Languages (4GL) like the Structured Query Language (SQL) has shown us to go about expressing our intention to the machine and have the machine figure out the means of getting to our intentions or at the very least least as close to it as possible. The oft-referenced Moore’s law continues its march into ever more powerful machines albeit in a slightly different way. With powerful processors, driving our computers we do not have to be chained to the vagaries of machine type thinking.

Another more poignant point to consider is the increased use of computers for entertainment (gaming etc), business and socializing. The nature of the problems that face social networking applications are markedly different from what have faced businesses at the advent and development of the current mainstream programming language. A business environment invariably has some kind of structure around it which is encoded in policies, procedures, organization structure and the processes that the organization run. Starting from such a foundation, it is then possible to formulate a few procedures which can be executed at regular or ad hoc basis to great effect. However, consider the way in which social networking sites are used – a single person would have a Facebook account, a Twitter account, YouTube account in addition to web mail accounts. These applications have become people centric and the number of people involved an quickly become a challenge for social networking sites that have managed to garner a big enough following.

The social network craze reveals an interesting dimension of how programming languages have evolved over time. At the outside, a few academicians used computers to help with research and then the business world caught on and now we have to face the reality that perhaps programming languages need to be less rigid. Often when discussing IT related subjects, less rigid may easily lead to less secure though in this context less rigid but more robust would be the best outcome in the evolution of programming languages. Objects are good as way to model the world but they lack a certain degree of expressiveness in effectively illustrating and modeling the state of the world as a seen a person who cares more about getting things done and less about the steps taken to get to the end.

1 Comment

Evil (being nothing?) must presuppose Good

How possible is it to be nothing? That is the question that has been going through my mind for the better part of the day. Don’t get me wrong, it is an interesting question in and of itself for the meta-physical ramifications are quite interesting to say the least. Before, I go any further, I am not suggesting any kind of formal training in philosophy but thinking about the meaning and reason of things interests me.

In common usage, nothing generally means the absence of something. So the being of nothing is that it is not something. I am not entirely sure if nothing is evil or not so let me spend some thought on being evil; what exactly does being evil mean? Some time ago I was going through an introductory book on theology and I had a mentor so to speak with whom I held discussions after reading the book. The idea that evil does not really exist struck me as odd – evil is a part of life as everyone well know: droughts, famine, epidemics, war etc. So saying that it does not exist seems like a contradiction of terms.

The explanation for asserting that evil does not exist comes from the premise or observation that anything evil is always a corruption of something that is good – either too much of it or too little of it. Hence the aforementioned list would read like insufficient rain (rain is good in the right quantities), insufficient food (food is a good), absence of a cure to a disease that destroys perfectly good cells, using lethal weapons to engage with other people instead of exploring more peaceful means.

In a sense, then evil could be a corruption of something good but it also begs the question of why such corruption of good is common and pervasive? In all these the main actor(s) remains a rational being, like in the case of war and perhaps even drought and famine. There are countries on this earth where their ability to produce food is exceptionally phenomenal but even within their own borders there is still hunger. I doubt the world lacks the ability to feed itself.

So, evil is nothing hence it is not able to sustain itself in a pure form but supposedly good can sustain itself without any evil in it – I suppose that is what God is then. However, how does that contribute to idea of being nothing? The phrase “being nothing” is rather meaningless in itself in a sense that the moment you talk of being, you are already asserting an existence and so you cancel it out by stating that the being is not? I keep hoping to make sense of a much higher abstraction than the notion of being nothing in a sense that nothing can exist hence the foundation seems rather shaky.

1 Comment