Change Status bar message using JavaScript

on December 03, 2010 0 comments
  
JavaScript can be used to display messages in the status bar using window.status. For example, you can display a javascript status bar message whenever your users hover over your hyperlinks.

To do this, use the following code:
<a href="status.html"
  onMouseover="JavaScript:window.status='Status Bar Message goes here'; return true"
  onMouseout="JavaScript:window.status=''; return true">Hover over me!</a>

Doesn't Work for You?

Most (newer) major browsers disable status bar messages by default. If your status bar doesn't change when you hover over the link, it's probably because of this. You can enable status bar messages by changing your browser settings as shown below,

In Firefox:
  1. Go to Tools > Options
  2. Click the Content tab
  3. Ensure that the JavaScript option is checked
  4. Click Advanced (next to the Enable JavaScript option)
  5. Check the Change status bar text option
  6. Click OK to save this screen
  7. Click OK again
In Internet Explorer:
  1. Go to Tools > Internet Options
  2. Click the Security tab
  3. Ensure that the Internet option is selected/highlighted
  4. Click Custom Level... (this launches the security settings for the Internet zone)
  5. Scroll down until you see Allow status bar updates via script (under the Scripting option). Click Enable
  6. Click OK to save this screen
  7. Click OK again
Note that, because this is the default setting in most browsers, there's a good chance that most of your users won't see your status bar message.
  

How to hide addressbar using Javascript in Firefox

on December 01, 2010 4 comments

Many of us are aware of how to open a popup window using javascript. The below code can be used to open a pop-up window using javascript,

<a href="#" onclick="window.open('pop.html','Popup','width=800,height=600,status=no,toolbar=no,
location=no,menubar=no');">Click</a>

When we use window.open() to create new browser windows have the option of specifying which chrome features appear on the window (menu bars, toolbars, the status bar, etc.) and what window functionality is present (whether it’s resizable, whether it has scrollbars, etc.).

The above code will work properly in all browsers except Firefox. Because hiding the locationbar is disabled by default in Firefox3(and later versions) due to security reasons.

We can hide/show the addressbar in Firefox by setting the below preference,
      Dom.disable_window_open_feature.location

Below are the possible values for this preference and their effects,
True:
Ignore "location=no" in the window features argument of window.open() and prevent popups from hiding the Location Bar. (Default in Firefox 3 and later versions)

False:
Allow popups to hide the Location Bar. (Default in Mozilla Suite/SeaMonkey and prior to Firefox 3)

You can modify this preference in two ways, about:config or user.js file. The below method shows how to change this preference using about:config option,

1) Type ‘about:config’ into the address bar and press enter
2) Filter for ‘dom’
3) Set ‘Dom.disable_window_open_feature.location‘ to false

There are also a bunch of other DOM options such as stopping new windows from opening with out the menubar (Dom.disable_window_open_feature.menubar), scrollbars (Dom.disable_window_open_feature.scrollbars) and such. You can find them here.
  

The 7 Habits of Highly Effective People By Stephen Covey

on November 19, 2010 0 comments
    
Stephen Covey husband, father, grandfather and author of the number-one best-seller The 7 Habits of Highly Effective People, shares secrets to building a strong, close family.

HABIT 1: BE PROACTIVE

It is so easy to be reactive! You get caught Lip in the moment. You say things you don’t mean. You do things you later regret. And you think, "If only I had stopped to think about it, I never would have reacted that way!"
Family life would be a whole lot better if (people acted according to their values instead of reacting to the emotion or circumstance of the moment It's possible to develop a habit of learning to pause and give wiser responses. Proactively is the ability to act rather than react.
I have a friend who makes a powerful proactive choice every day. When she comes home from work, she sits in her car in the driveway and pauses. She takes a minute to think about the members of her family and what they are doing inside the house She considers what kind of feeling she wants to help create when she goes, inside. She says to herself, "my family is the most enjoyable, the most pleasant, the most important part of my life. I'm going to go into my home and feel and communicate my love for them."
Just think of the difference this makes in her family. And another friend told me this story, which shows Habit 1 in action:
While my wife was out of the room, my three-year-old son Brenton emptied a one-and-a-half-gallon jug of water from the fridge-most of it onto the kitchen floor. My wife's initial reaction had been to yell at him. Instead, she stopped herself and said patiently, "Brenton, what were you trying to do?"
"I was trying to be a helping man, Mom," he replied proudly.
"What do you mean?" she asked.
"I washed the dishes for you."
Sure enough, there on the kitchen table were all the dishes he had washed with the water from the jug.
"Well, honey, why did you use the water from the fridge?"
"I couldn't reach the water from the sink."
"Oh!" my wife said. Then she looked around. "Well, what do you think you could do next time that would make less of a mess?"
He thought about it for a minute. Then his face lit up. "I could do it in the bathroom!"
"The dishes might break in the bathroom," she replied. "But how about this? What if you came and got me and I helped you move a chair in front of the kitchen sink so you could do the work there?"
"Good idea!" he exclaimed.
As my wife was telling me what had happened, I realized how important it was that she had been able to catch herself between stimulus and response. She had made a proactive choice.
One useful way to communicate the idea of proactivity is through an analogy I call the "emotional bank account." This account is like a financial one in that you can make "deposits"-things that build trust in the relationship-or "withdrawals" - things that decrease the level of trust. The balance in the account determines how well you can communicate and solve problems with another person.
One of the great benefits of being proactive is that you can choose to make deposits instead of withdrawals. No matter what the situation, there are always things you can choose to do that will make relationships better.
Little kindnesses go a long way toward building relationships of trust and unconditional love. just think about the impact in your own family of saying "thank you," "please" or "you go first." Or performing unexpected acts of service such as phoning to see if there's anything you can pick up at the store on your way home. Twelve hugs a day-that's what people need. Hugs can be physical, verbal, visual or environmental. And each one is a deposit in the emotional bank account.
You would be hard pressed to come up with a deposit that has more impact than making and keeping promises. just think about it! How much excitement, anticipation and hope is created by a promise?
Our daughter Cynthia shared this memory:
When I was twelve, Dad promised to take me with him on a business trip to San Francisco. I was so excited! After Dad's meetings, we planned to go to Chinatown for dinner, see a movie, take a ride on a trolley car, then go back to our hotel room for hot fudge sundaes from room service. I was dying with anticipation.
The day finally arrived. The hours dragged by as I waited at the hotel. Finally, at 6:30 p.m., Dad returned with a dear friend and influential business acquaintance. My heart sank as this man said, "I'm so delighted to have you here, Stephen. Tonight, Lois and I would like to take you to the wharf for a seafood dinner, and then you must see the view from our house." I could see my hopes and plans going down the drain.
I will never forget the feeling I had when Dad said, "Gosh, Bill, I'd love to, but this is a special time with my daughter. We've already got it planned to the minute."
We did absolutely everything we had planned. I don't think any young girl ever loved her father as much as I loved mine that night.

HABIT 2: BEGIN WITH THE END IN MIND

With Habit 2, you create a clear, compelling vision of what your family is-and where you want to go together. The most profound, significant and far-reaching application of Habit 2 is the family mission statement. This is a combined, unified expression from all family members of what it is your family really wants to do and be-and the principles you choose to govern your family life.
When children are young, they generally love to be included in the process of creating a mission statement. They love helping to create something that gives them this sense of family identity.
Our daughter Catherine, who's now grown and has children of her own, said:
Before my husband and I were married, we talked about what we wanted our home to be like, especially when we had children. It was out of these discussions that we wrote our family mission statement.
We have three children now, and although our mission statement has remained fundamentally the same, it has changed a little with each child. After we had two children, we had more perspective, and we were able to realize better how we wanted to raise our kids together-how we wanted them to be upstanding citizens in the community and so on.
The children have added things to our mission statement as well. Our oldest is six. She wants to make sure we tell lots of jokes in our family, so we have added that in for her.
Every New Year's Eve we work on our mission statement and write out our goals for the coming year. Our kids are very excited about the whole process. We post our mission statement and the children refer to it often. They say, "Mom, you're not supposed to raise your voice. Remember-'happy, cheerful tones in our home."' It's a big reminder.
Here's how to create a mission statement in your family.
Step One: Explore what your family is all about. Call a family meeting to introduce the idea and start the process. Keep it short: Ten fun minutes a week over a period of several weeks will be much more effective than one or two long, philosophical discussions.
Be explicit with the idea that you want the mission statement to serve as a unifying and motivating influence for everyone in the family. Ask questions such as: What things are truly important to us as a family? What are our family's highest priority goals? What kind of relationships do we want to have with each other? What are our responsibilities as family members?
Step Two: Write your family mission statement. The process of writing crystallizes your thoughts and distills learning and insights into words. It also reinforces learning and makes the expression visible and available to everyone in the family.
Whatever you come up with at first will be a rough draft. Family members will need to work with it until everyone comes to an agreement: "This is our mission. We believe it. We buy into it. We are ready to commit to live it."
It doesn't have to be some magnificent verbal expression. It may be a word, a page, a document, even a song or a drawing. The only real criterion is that it represents everyone in the family and inspires you and brings you together.
Step Three: Stay on track. A mission statement is meant to be the constitution of your family life, the foundational document that will unify and hold your family together for decades-even generations-to come.
One father told me:
For our blended family, having a mission statement has been tremendously helpful. It gives us some common values and a common focus on where we're going. It reads: "Our family mission: To always be kind, respectful and supportive of each other, to be honest and open with each other, to keep a spiritual feeling in the home, to love each other unconditionally, to be responsible to live a happy, healthy and fulfilling life, to make this house a place we want to come home to."
We put the statement in a beautiful frame and hung it over the fireplace, and every week we have somebody share what one of those words or sentences means to him or her. It only takes two or three minutes, but it makes the mission statement come alive. We're also setting goals around the mission statement, making it a central part of our lives.

HABIT 3: PUT FIRST THINGS FIRST

There's no way we can be successful in our families if we don't prioritize them in our lives. And this is what Habit 3 is about.
There is probably no single structure that will help you to prioritize more than a weekly family night. On a typical night in our own family over the years, we would review our calendar of upcoming events, hold a council to discuss issues and problems, have a talent recital so the kids could show us how they were coming along with their music or dance lessons, do a short lesson and a family activity and serve refreshments. In this way, we'd accomplish what we've come to feel are the four main ingredients of a successful family night: planning, problem-solving, teaching and fun.
The second absolutely foundational family structure is the one-on-one bonding time. These one-on-ones are where most of the real work of the family is done. This is where the most significant sharing, the most profound teaching, the deepest bonding takes place.
A mother of five sons said:
The other day, I took My 22-year-old son out to lunch. As we ate together, we talked about his life, including his classes at school, his plans for the future, and so on.
We had a wonderful time just being together. As I thought about it later, 1 realized this is something that didn't just happen. I started this one on-one tradition when the boys were in elementary school, and it's really made a difference. I don't think I could have this kind of time with my son now if we hadn’t started doing it when he was younger.
HABIT 4: THINK "WIN-WIN"

As we move toward our destination as a family, we're sometimes thrown off track by external forces. But the force that does the greatest damage is the climate created within the family by negative emotions-competition, criticism, blaming, anger.
The key to handling these challenges is to cultivate a family culture of mutual respect, understanding and creative cooperation. This is the essence of Habits 4, 5 and 6.
One father told this story:
Our two boys were very competitive and squabbled frequently. Finally, I confronted the older boy about it. He abruptly announced, "The thing you don't get is that I can't stand my brother." 1 was shocked by the intensity of his feelings.
Then I asked the older boy to tell his brother what he'd told me. The younger boy was hurt by the cutting words. Blinking back tears, he looked down and quietly said, "Why?"
His brother was quick with his answer: "Because you're always saying things that make me mad. I just don't want to be around you."
The younger brother sighed. "I do that because every time we play a game you always win."
"Sure I do," the older boy quickly replied. "I'm better than you."
With that, the little boy could hardly speak. But he said, "Yeah, but every time you win, I lose. So I say things to bug you. I just cant stand to lose all the time."
These tearful words reached the heart of the older brother. The tone of his words softened as he said, "I'm sorry. But will you please just stop saying and doing the stupid things that make me so mad at you?"
"OK," the younger boy replied. "And will you stop feeling that you always have to win?"
I know I'll never forget my young son’s words. Losing all the time, or even most of the time, can make any of us say and do stupid things that bug others and even ourselves.
No one likes to "lose" _especially in close family relationships. So win-win is the only solid foundation for effective family interaction. It's the only pattern of thinking and interacting that builds long-term relationships of trust and unconditional love. And all it takes to change the situation is for one person to think win-win.

Thinking win-win means you have this spirit of win-win in all family interactions. You always want what's best for everyone involved.
Of course, there will be times when you'll have to say no to children. This doesn’t feel like a win to them. But if you cultivate the spirit of win-win whenever you can, children will better understand and accept those decisions that sometimes seem to them to be win-lose. There are several ways to achieve this.
* Let them win in the little things. In our family, if children want to go outside, get their clothes dirty or leave a cardboard fort in the house for weeks, we generally let them do it. We try to distinguish between matters of principle and matters of preference, and only take a stand on things that really count.
* Talk with them about the big things. That way they'll know you have their welfare in mind. Try to involve them in the problem and work out the solution together.
*Take steps to offset the competition focus. Recently, 1 went to watch our granddaughter play in an important soccer match, which ultimately ended in a tie. Her team was demoralized, and the coach was deeply disappointed also.
So I began to say enthusiastically, "Great game, kids! You had five goals-to try your best, to have fun, to work together as a team, to learn and to win. You accomplished four and a half of those goals. That's ninety Percent! Congratulations!"
You could just see their eyes brighten up. And it wasn't long until players, coach and parents were celebrating the four and a half goals these kids had achieved.
HABIT 5: SEEK FIRST TO UNDERSTAND ... THEN TO BE UNDERSTOOD

There's simply no way to have rich, rewarding family relationships without real understanding. Most mistakes with our family members are not the result of bad intent. It's just that we don't understand. We don't see clearly into each other's hearts.
Really listening to get inside another person's mind and heart is called "empathic" listening. It enables you to see as someone else sees-and it also helps family members feel safe in sharing, gets to the real issues and helps people connect with their own unique gifts.
Suppose that for several days, your teenage daughter has seemed unhappy. One night, while you're washing dishes together, she finally begins to open up: "Our family rule that I cant date until I'm older is embarrassing me to death. All my friends are dating. I feel like I'm out of it."
An empathic response would attempt to reflect back what your daughter feels and says, so that she would feel that you really understand. For example: "You kind of feel torn up inside. You understand the rule, but you feel embarrassed when you have to say no to dates. Is that what you mean?"
She might say yes and go on deeper into her feelings. Or she may say,
"Well, not exactly. What I really mean is..." When you give an understanding response, you make it safe for her to open up. You make it comfortable for her to air the problem so that together you can search for solutions. And you build the relationship.
There are other expressions of empathy besides summarizing and reflecting. Sometimes total silence may be empathic; sometimes a nod or a single word is empathic. Empathy is a very flexible, sincere and humble process.
But there's more to Habit 5. It doesn't mean seek only to understand. It simply means that you listen and understand first. This is the key to .being understood and influencing others. When you are open to their influence, you'll almost always have greater influence with them.
One woman shared this:
My husband and I did not see eye to eye on spending. He wanted to buy things I felt were unnecessary and expensive. 1 couldn't explain to him the pain I felt as our debt mounted.
Final I decided to find a different way to express myself and influence the situation. I realized that my husband sometimes just didn't see the connection between his spending decisions and their consequences. So when he said, "lt. would really be nice to have (something)," I'd say, "You know, it would. Let's see what would happen if we bought that." I would take out the budget and say, "Now if we spend this, we won't have money to do that." When he truly saw the consequences of spending decisions, he often came to the conclusion himself that we were better off not buying the item in question. I also discovered that with some of the purchases he wanted to make, the benefits really did outweigh the drawbacks.
When people know they will have an opportunity to be fully heard, they can relax. They don't have to become over-reactive, because they know that their time to be understood will come. This dissipates negative energy and helps people develop internal patience and self-control.
This is one of the great strengths of Habit 5. Remember, the key is in the sequence: First you seek to understand another person's point of view; then you share your own. It's not just what to do. It's also why and when.
HABIT 6: SYNERGIZE

Synergy is the magic that happens when one plus one equals three-or more. It comes out of the spirit of mutual respect and understanding you've created and produces a brand-new way to solve a problem.
A friend recently told me a story that captures the essence of Habit 6:
After one week of practice, my son wanted to quit the high school basketball team. I was very disappointed. I worried that if he quit basketball he would just keep quitting things. My son didn't want to hear me at all. I was so upset I walked away.
Over the next two days, I wondered just what had made him want to quit. Finally, I decided to talk to him again. [Habit 5: seeking to understand.] At first he didn't even want to discuss it, so I asked him about other things. After some time, he began to tear up and he said,
"Dad, I know you think you understand me, but you don't. No one knows how rotten I feel."
I replied, "Pretty tough, huh?" [Habit 5: empathic listening.]
He then literally poured his heart out. He expressed his pain at constantly being compared to his brothers and said he felt I favored them, He also told me about the insecurities he felt- not only in basketball, but in all areas of his life. And he said he felt that he and I had somehow lost touch with each other.
His words really humbled me. I had the feeling that what he said about the comparisons with his brothers was true. I acknowledged my sorrow to him [Habit 1: proactivity, and-with much emotion--I apologized.
But I also told him that I still thought he would benefit from being on the team. He listened patiently, but he would not budge from his decision. Finally, I asked him if he liked basketball. He said he loved it, but he disliked all the pressure associated with playing for the school team. He said that instead, he would really like to play for the church team-but that team's coach had just moved away.
I found myself feeling good about what he was saying. I was still a little disappointed that he wouldn't be on the school team, but I was glad that he still wanted to play [Habits 4 and 5: win-win thinking and effort to understand].
At that point, almost by magic, a new idea came into both of our minds at the same time. In unison we said, "I/You could coach the church team!" [Habit 6: synergy and a new alternative solution]. The weeks I spent as the coach of that team were among the happiest of my athletic experiences. And they provided some of my most memorable experiences as a father.
This father and son seemed locked in a win-lose situation. But then the father made an important shift. He sought to really understand his son. Together they came up with a better way-an entirely new solution that was a true win for both.
The key to synergy is to celebrate the difference. It's not enough to simply tolerate differences in the family. To have the kind of creative magic we're talking about, you must be able to say sincerely, "The fact that we see things differently is a strength-not a weakness-in our relationship."
Synergy also helps you to create a culture in which you can successfully deal with any challenge you might face. The culture created by Habits 4, 5 and 6 is like an immune system. It protects your family so that when mistakes are made, or when you get blindsided by some physical, financial or social challenge, you don't get knocked out. You can deal with whatever life throws at you and use it to make the family stronger.
HABIT 7: SHARPEN THE SAW

If done properly, consistently and in a balanced way, Habit 7 will cultivate all of the other six habits and keep them strong and vibrant. How? Simply by using them in renewing activities-especially, family traditions. That's what we mean by "sharpening the saw."
Traditions give family members a sense of belonging, of being understood, of being supported, of being committed to something that's greater than self. And the family renews the emotional energy of a tradition every time they revisit it.
Think of all the opportunities for fulfilling traditions:
* Family dinners. You may have only one good meal together each week, but if it is meaningful and fun, the family table can become more of an altar than an eating counter.
* Family vacations. Planning for a vacation, anticipating it and thinking about it-as well as laughing about the fun times and the dumb times we had on past vacations-are enormously rewarding to our family.
*Extended and intergenerational family activities. Aunts, uncles, grandparents, cousins and other extended family members can have a tremendous positive influence. Broaden almost any activity, such as Sunday dinner, to include them.
*Worshipping together. Research shows that shared worship is one of the characteristics of healthy, happy families. It can create context, unity and mutual understanding- much in the same way that a family mission statement does.
*Serving together. This tradition can be tremendously renewing. Can you imagine anything more bonding, more unifying, more energizing than working together to accomplish something that is really meaningful and worthwhile?
*Working together. There are many ways to create the tradition of working together, at home or in a parent's place of business-and many benefits of doing it. Our daughter Catherine remembered:
One tradition we had in our family was the "ten-minute program." That meant that everyone would work really hard for ten minutes to clean up the house. We all knew that if we had eighteen hands working, it would go a lot faster than two.
We also had "work parties." We'd work really hard for three or four hours to get something done, but we'd have food and laugh and talk as we worked. We'd also do something fun after, like go to a movie. Everyone expected they'd have to work. It was just part of life. But it was so much better with these little treats.
As your family works together on Habit 7 and all the other habits, remember: Like a new pair of glasses or a new, more accurate map-the 7 Habits framework can help you to see and communicate more clearly, and will help you to arrive where you, as a family, want to go.
Stephen R. Covey, co-chairman of Franklin Covey Company, is an internationally respected leadership authority family expert, teacher and organizational consultant. He and his wife Sandra and their family live in Utah. 
   

How to Win Friends and Influence People - Dale Carnegie

on November 11, 2010 0 comments

How to Win Friends and Influence People is one of the first bestselling self-help books ever published. Written by Dale Carnegie and first published in 1936, it has sold 15 million copies world-wide.

Twelve Things This Book Will Do For You

  1. Get you out of a mental rut, give you new thoughts, new visions, new ambitions.
  2. Enable you to make friends quickly and easily.
  3. Increase your popularity.
  4. Help you to win people to your way of thinking.
  5. Increase your influence, your prestige, your ability to get things done.
  6. Enable you to win new clients, new customers.
  7. Increase your earning power.
  8. Make you a better salesman, a better executive.
  9. Help you to handle complaints, avoid arguments, keep your human contacts smooth and pleasant.
  10. Make you a better speaker, a more entertaining conversationalist.
  11. Make the principles of psychology easy for you to apply in your daily contacts.
  12. Help you to arouse enthusiasm among your associates.
The book has six major sections. The core principles of each section are quoted below.

Fundamental Techniques in Handling People

  1. Don't criticize, condemn, or complain.
  2. Give honest and sincere appreciation.
  3. Arouse in the other person an eager want.

Six Ways to Make People Like You

  1. Become genuinely interested in other people.
  2. Smile.
  3. Remember that a person's name is to that person the sweetest and most important sound in any language.
  4. Be a good listener. Encourage others to talk about themselves.
  5. Talk in terms of the other person's interest.
  6. Make the other person feel important – and do it sincerely.

Twelve Ways to Win People to Your Way of Thinking

  1. The only way to get the best of an argument is to avoid it.
  2. Show respect for the other person's opinions. Never say "You're Wrong."
  3. If you're wrong, admit it quickly and empathically.
  4. Begin in a friendly way.
  5. Start with questions to which the other person will answer yes.
  6. Let the other person do a great deal of the talking.
  7. Let the other person feel the idea is his or hers.
  8. Try honestly to see things from the other person's point of view.
  9. Be sympathetic with the other person's ideas and desires.
  10. Appeal to the nobler motives.
  11. Dramatize your ideas.
  12. Throw down a challenge.

Be a Leader: How to Change People Without Giving Offense or Arousing Resentment

  1. Begin with praise and honest appreciation.
  2. Call attention to people's mistakes indirectly.
  3. Talk about your own mistakes before criticizing the other person.
  4. Ask questions instead of giving direct orders.
  5. Let the other person save face.
  6. Praise every improvement.
  7. Give the other person a fine reputation to live up to.
  8. Use encouragement. Make the fault seem easy to correct.
  9. Make the other person happy about doing what you suggest.

Letters That Produced Miraculous Results

In this chapter, notably the shortest in the book, Carnegie analyzes two letters and describes how to appeal to someone's vanity with the term "do me a favor" as opposed to directly asking for something which does not offer the same feeling of importance to the recipient of the request.

Seven Rules For Making Your Home Life Happier

  1. Don't nag.
  2. Don't try to make your partner over.
  3. Don't criticize.
  4. Give honest appreciation.
  5. Pay little attentions.
  6. Be courteous.
  7. Read a good book on the sexual side of marriage.
 Please click here to read the book. Source: Wiki

Triple Filter Test for Truth

on November 08, 2010 0 comments

In ancient Greece, Socrates was reputed to hold knowledge in high esteem. One day an acquaintance met the great philosopher and said, “Do you know what I just heard about your friend?”

“Hold on a minute,” Socrates replied. “Before telling me anything I’d like you to pass a little test. It’s called the Triple Filter Test.”

“Triple filter?”

“That’s right,” Socrates continued. “Before you talk to me about my friend, it might be a good idea to take a moment and filter what you’re going to say. That’s why I call it the triple filter test. The first filter is Truth. Have you made absolutely sure that what you are about to tell me is true?”

“No,” the man said, “Actually I just heard about it and...”

“All right,” said Socrates. “So you don’t really know if it’s true or not. Now let’s try the second filter, the filter of Goodness. Is what you are about to tell me about my friend something good?”

“No, on the contrary...”

“So,” Socrates continued, “You want to tell me something bad about him, but you’re not certain it’s true. You may still pass the test though, because there’s one filter left: the filter of Usefulness. Is what you want to tell me about my friend going to be useful to me?”

“No, not really...”

“Well,” concluded Socrates, “If what you want to tell me is neither true nor good nor even useful, why tell it to me at all?”

Pebbles and Sand

on November 05, 2010 0 comments

A philosophy professor stood before his class and had some items in front of him. When class began, wordlessly he picked up a large empty mayonnaise jar and proceeded to fill it with rocks right to the top, rocks about 2" diameter.

He then asked the students if the jar was full. They agreed that it was.

So the professor then picked up a box of pebbles and poured them into the jar. He shook the jar lightly. The pebbles, of course, rolled into the open areas between the rocks. The students laughed.

He asked his students again if the jar was full. They agreed that yes, it was.

The professor then picked up a box of sand and poured it into the jar. Of course, the sand filled up everything else.

"Now," said the professor, "I want you to recognize that this is your life. The rocks are the important things - your family, your friends, your health - anything that is so important to you that if it were lost, you would be nearly destroyed.

The pebbles are the other things in life that matter, but on a smaller scale. The pebbles represent things like your job, your house, your car. The sand is everything else. The small stuff.

If you put the sand or the pebbles into the jar first, there is no room for the rocks. The same goes for your life. If you spend all your energy and time on the small stuff, material things, you will never have room for the things that are truly most important.

Pay attention to the things that are critical in your life.
Play with your children.
Take your partner out dancing.
There will always be time to go to work, clean the house, give a dinner party and fix the disposal.
Take care of the rocks first - the things that really matter.

Set your priorities. The rest is just pebbles and sand.

Three Words That Make Relationships Better

on November 03, 2010 0 comments

Three-Word Phrases, can be tools to help develop every relationship.

There are many things that you can do to strengthen your relationships. Often the most effective thing you can do involves saying just three words. When spoken sincerely, these statements often have the power to develop new friendships, deepen old ones and even bring healing to relationships that have soured.

The following three-word phrases can be tools to help develop every relationship.

Let me help:
Good friends see a need and then try to fill it. When they see a hurt they do what they can to heal it. Without being asked, they jump in and help out.

I understand you:
People become closer and enjoy each other more when the other person accepts and understands them. Letting your spouse know - in so many little ways - that you understand them, is one of the most powerful tools for healing your relationship. And this can apply to any relationship.

I respect you:
 Respect is another way of showing love. Respect demonstrates that another person is a true equal. If you talk to your children as if they were adults you will strengthen the bonds and become closer friends. This applies to all interpersonal relationships.

I miss you:
Perhaps more marriages could be saved and strengthened if couples simply and sincerely said to each other “I miss you.” This powerful affirmation tells partners they are wanted, needed, desired and loved. Consider how important you would feel, if you received an unexpected phone call from your spouse in the middle of your workday, just to say “I miss you.”

Maybe you’re right:
This phrase is very effective in diffusing an argument. The implication when you say “maybe you’re right” is the humility of admitting, “maybe I’m wrong”. Let’s face it. When you have an argument with someone, all you normally do is solidify the other person’s point of view. They, or you, will not likely change their position and you run the risk of seriously damaging the relationship between you. Saying “maybe you’re right” can open the door to explore the subject more. You may then have the opportunity to express your view in a way that is understandable to the other person.

Please forgive me:
Many broken relationships could be restored and healed if people would admit their mistakes and ask for forgiveness. All of us are vulnerable to faults, foibles and failures. A man should never be ashamed to own up that he has been in the wrong, which is saying, in other words, that he is wiser today than he was yesterday.

I thank you:
Gratitude is an exquisite form of courtesy. People who enjoy the companionship of good, close friends are those who don’t take daily courtesies for granted. They are quick to thank their friends for their many expressions of kindness. On the other hand, people whose circle of friends is severely constricted often do not have the attitude of gratitude.

Count on me:
A friend is one who walks in when others walk out. Loyalty is an essential ingredient for true friendship. It is the emotional glue that bonds people. Those that are rich in their relationships tend to be steady and true friends. When troubles come, a good friend is there indicating “you can count on me.”

I’ll be there:
If you have ever had to call a friend in the middle of the night, to take a sick child to hospital, or when your car has broken down some miles from home, you will know how good it feels to hear the phrase “I’ll be there.” Being there for another person is the greatest gift we can give. When we are truly present for other people, important things happen to them and us.

We are renewed in love and friendship. We are restored emotionally and spiritually. Being there is at the very core of civility.

Go for it:
We are all unique individuals. Don’t try to get your friends to conform to your ideals. Support them in pursuing their interests, no matter how far out they seem to you. God has given everyone dreams, dreams that are unique to that person only.

Support and encourage your friends to follow their dreams. Tell them to “go for it.”

I love you:
Perhaps the most important three words that you can say. Telling someone that you truly love them satisfies a person’s deepest emotional needs. The need to belong, to feel appreciated and to be wanted. Your spouse, your children, your friends and you, all need to hear those three little words: “I love you.” Love is a choice. You can love even when the feeling is gone.

10 Principles for Peace of Mind

on November 01, 2010 0 comments

1. Do Not Interfere In Others’ Business Unless Asked:

Most of us create our own problems by interfering too often in others affairs. We do so because somehow we have convinced ourselves that our way is the best way, our logic is the perfect logic and those who do not conform to our thinking must be criticized and steered to the right direction, our direction. This thinking denies the existence of individuality and consequently the existence of God. God has created each one of us in a unique way. No two human beings can think or act in exactly the same way. All men or women act the way they do because God within them prompts them that way. Mind your own business and you will keep your peace.


2. Forgive And Forget:

This is the most powerful aid to peace of mind. We often develop ill feelings inside our heart for the person who insults us or harms us. We nurture grievances. This in turn results in loss of sleep, development of stomach ulcers, and high blood pressure. This insult or injury was done once, but nourishing of grievance goes on forever by constantly remembering it. Get over this bad habit. Life is too short to waste in such trifles. Forgive, Forget, and march on. Love flourishes in giving and forgiving.


3. Do Not Crave For Recognition:

This world is full of selfish people. They seldom praise anybody without selfish motives. They may praise you today because you are in power, but no sooner than you are powerless, they will forget your achievement and will start finding faults in you. Why do you wish to kill yours if in striving for their recognition? Their recognition is not worth the aggravation. Do your duties ethically and sincerely.


4. Do Not Be Jealous:

We all have experienced how jealousy can disturb our peace of mind. You know that you work harder than your colleagues in the office, but sometimes they get promotions; you do not. You started a business several years ago, but you are not as successful as your neighbor whose business is only one year old. There are several examples like these in everyday life. Should you be jealous? No. Remember everybody’s life is shaped by his/her destiny, which has now become his/her reality. If you are destined to be rich, nothing in the world can stop you. If you are not so destined, no one can help you either. Nothing will be gained by blaming others for your misfortune. Jealousy will not get you anywhere; it will only take away your peace of mind.


5. Change Yourself According To The Environment:

If you try to change the environment single-handedly, the chances are you will fail. Instead, change yourself to suit your environment. As you do this, even the environment, which has been unfriendly to you, will mysteriously change and seem congenial and harmonious.


6. Endure What Cannot Be Cured:

This is the best way to turn a disadvantage into an advantage. Every day we face numerous inconveniences, ailments, irritations, and accidents that are beyond our control. If we cannot control them or change them, we must learn to put up with these things. We must learn to endure them cheerfully. Believe in yourself and you will gain in terms of patience, inner strength and will power.


7. Do Not Bite Off More Than You Can Chew:

This maxim needs to be remembered constantly. We often tend to take more responsibilities than we are capable of carrying out. This is done to satisfy our ego. Know your limitations. . Why take on additional loads that may create more worries? You cannot gain peace of mind by expanding your external activities. Reduce your material engagements and spend time in prayer, introspection and meditation. This will reduce those thoughts in your mind that make you restless. Uncluttered mind will produce greater peace of mind.


8. Meditate Regularly:

Meditation calms the mind and gets rid of disturbing thoughts. This is the highest state of peace of mind. Try and experience it yourself. If you meditate earnestly for half an hour everyday, your mind will tend to become peaceful during the remaining twenty-three and half-hours. Your mind will not be easily disturbed as it was before. You would benefit by gradually increasing the period of daily meditation. You may think that this will interfere with your daily work. On the contrary, this will increase your efficiency and you will be able to produce better results in less time.


9. Never Leave The Mind Vacant:

An empty mind is the devil’s workshop. All evil actions start in the vacant mind. Keep your mind occupied in something positive, something worthwhile. Actively follow a hobby. Do something that holds your interest. You must decide what you value more: money or peace of mind. Your hobby, like social work or religious work, may not always earn you more money, but you will have a sense of fulfillment and achievement. Even when you are resting physically, occupy yourself in healthy reading or mental chanting of God’s name.


10. Do Not Procrastinate And Never Regret:

Do not waste time in protracted wondering ” Should I or shouldn’t I?” Days, weeks, months, and years may be wasted in that futile mental debating. You can never plan enough because you can never anticipate all future happenings. Value your time and do the things that need to be done. It does not matter if you fail the first time. You can learn from your mistakes and succeed the next time. Sitting back and worrying will lead to nothing. Learn from your mistakes, but do not brood over the past. DO NOT REGRET. Whatever happened was destined to happen only that way. Why cry over split milk?

How Computer Viruses Work

on October 10, 2010 0 comments
   
Computer viruses are well-named: their behavior bears a striking resemblance to how real-life biological viruses work, and the ways of dealing with them can be quite similar as well! A biological virus infects a host (a creature), using it as a vehicle for life. It reproduces rapidly; one of its primary goals is to spread to other creatures and thereby perpetuate itself. It also tends to move from person to person and eventually, months later, comes back to reinfect the same people again.

Computer viruses work in the same way, including the way they tend to go around from PC to PC and then occasionally return to reinfect months or years later (in fact, there are viruses that have been circulating around since the early days of the PC that, thanks to backward compatibility, still "run" on the latest machines). Computer viruses however, differ from biological viruses in several ways: they are man-made for one thing, and they are easier to get rid of. Also, biological viruses cause symptoms as a side-effect, they do not exist to make people miserable. Most computer viruses do exist specifically to make people miserable.

There are three major types of viruses, each very different from the other. Of course, there are many subcategories within each group as well (and to make matters worse, there are virus hoaxes to confuse the issue):
  • Boot Sector Infectors: Also sometimes called boot record infectors, system viruses, or boot viruses, these programs attack the vulnerable boot program that is stored on every bootable floppy disk or hard disk. This code is executed by the system when the PC is started up, making it a juicy target for virus writers: by installing themselves here they guarantee that their code will be executed whenever the system is started up, giving them full control over the system to do what they wish. They are spread most commonly through infected bootable floppy disks.
  • File Infectors: These viruses directly attack and modify program files, which are usually .EXE or .COM files. When the program is run, the virus executes and does whatever it wants to do. Usually it loads itself into memory and waits for a trigger to find and infect other program files. These viruses are commonly spread through infected floppy disks, over networks, and over the Internet.
  • Macro Viruses: The newest type of virus, these clever programs make use of the built-in programming languages in popular programs such as Microsoft Word and Microsoft Excel. These programs allow users to create programs that automate tasks, called macros. As the macro languages have become more powerful, virus writers have created malevolent macros that, when opened unwittingly, duplicate themselves into other documents and spread just like a conventional virus would. These programs can cause just as much damage as regular viruses, despite the fact that they are very different: regular viruses are low-level machine language programs, while macro viruses are actually high-level interpreted BASIC programs! The most common type of macro virus right now infects Microsoft Word documents.
As time goes on and virus writers get more clever, new strains and variations show up. For example, there are some viruses, termed multipartite, that infect both boot sectors and files. There are some things that are fairly universal, however: a virus is a program, and it therefore can only exist in a form that allows it to be executed as a program by the PC in some form. This means that, in general, viruses cannot exist in data files.

There are a lot of myths about viruses that infect graphics pictures or email messages or recipe files. Just remember that a virus cannot do anything unless you run it, so unless you have a PC that can execute pictures or email messages somehow, it's doubtful that these can contain a virus. (Of course, you can have a virus in a program that is attached to an email message. But here again, this is a program, just in encoded form.)

There are also now viruses that target the BIOS program stored on the motherboard, on systems that employ a flash BIOS. These viruses can overwrite the system BIOS program and leave the PC in an unbootable state. (Some motherboards have jumpers that you can set to disable BIOS flashing except when you want to do it.)


                                                     
Here is the general way that viruses work:
  1. An infected program is run. This is either a program file (in the case of a file-infecting virus) or a boot sector program at boot time. In the case of a Microsoft Word document the virus can be activated as soon as the document that contains it is opened for reading within Microsoft Word. If the "NORMAL.DOT" document template is infected (and this is the most common target of these viruses) then the virus may be activated as soon as Microsoft Word is started up.
  2. The infected program has been modified so that instead of the proper code running, the virus code runs instead. This is usually done by the virus modifying the first few instructions to "jump" to where the virus code is stored. The virus code begins to execute.
  3. The virus code becomes active and takes control of the PC. There are two ways that a virus will behave when it is run: direct-action viruses will immediately execute, often seeking other programs to infect and/or exhibiting whatever other possibly malicious behavior their author coded into them. Many file-infector viruses are direct-action. In contrast, memory-resident viruses don't do anything immediately; they load themselves into memory and wait for a triggering event that will cause them to "act". Many file infectors and all boot infectors do this (boot infectors have to become memory resident, because at the time they are executed the system is just starting up and there isn't that much "interesting" for them to do immediately.)
  4. What exactly the virus does depends on what the virus is written to do. Their primary goals however include replication and spreading, so viruses will generally search for new targets that they can infect. For example, a boot sector virus will attempt to install itself on hard disks or floppy disks that it finds in the system. File infectors may stay in memory and look for programs being run that they can target for infection.
  5. "Malevolent" viruses that damage files or wreak havoc in other ways will often act on triggers. There are viruses that will only activate on particular days of the year (such as the infamous "Friday the 13th"), or act randomly, say, deleting a file every 8th time they are run. Some viruses do nothing other than trying to maximize their own infection to as many files and systems as possible.
As virus authors have become more "creative", they have devised increasingly more sophisticated viruses that work in different ways. In particular, newer viruses get smarter and smarter in avoiding detection. In most cases these viruses are not necessarily more hazardous than older ones, but they are harder to detect and remove using anti-virus software. Some of the tricks that authors use:
  • Polymorphing: Some viruses are designed so that each time they infect, their appearance and size changes. These thwart simplistic virus scanners that look for predefined patterns and make detection much more difficult.
  • Stealth: A stealth virus actively hides the changes it has made to the hard disk so that it appears that it has not infected the system. For example, a file infector might stay memory resident and misreport the size of infected files so they don't appear to be infected. Boot sector viruses can trap attempts to read the boot sector and return forged data that makes them appear to be "clean".
  • Disassembly Protection: Many newer viruses are designed using programming tricks that make them hard to disassemble (the process of interpreting the code into a form that is easier to analyze so that the virus can be combated.)
  • Directory Viruses: Some viruses now seek to avoid detection by avoiding modifying the file they infect directly. Instead, they change the cluster pointer in the directory entry of the file to point to the virus instead of the actual program. The virus runs its code and then executes the target program afterwards. The virus is thus able to "infect" the program without actually modifying it.
 

How Bits and Bytes Work

0 comments
       
If you have used a computer for more than five minutes, then you have heard the words bits and bytes. Both RAM and hard disk capacities are measured in bytes, as are file sizes when you examine them in a file viewer.
You might hear an advertisement that says, "This computer has a 32-bit Pentium processor with 64 megabytes of RAM and 2.1 gigabytes of hard disk space". In this article, we will discuss bits and bytes so that you have a complete understanding.

Decimal Numbers:

The easiest way to understand bits is to compare them to something you know: digits. A digit is a single place that can hold numerical values between 0 and 9. Digits are normally combined together in groups to create larger numbers. For example, 6,357 has four digits. It is understood that in the number 6,357, the 7 is filling the "1s place," while the 5 is filling the 10s place, the 3 is filling the 100s place and the 6 is filling the 1,000s place. So you could express things this way if you wanted to be explicit:


     (6 * 1000) + (3 * 100) + (5 * 10) + (7 * 1) = 6000 + 300 + 50 + 7 = 6357


Another way to express it would be to use powers of 10. Assuming that we are going to represent the concept of "raised to the power of" with the "^" symbol (so "10 squared" is written as "10^2"), another way to express it is like this:
   (6 * 10^3) + (3 * 10^2) + (5 * 10^1) + (7 * 10^0) = 6000 + 300 + 50 + 7 = 6357

What you can see from this expression is that each digit is a placeholder for the next higher power of 10, starting in the first digit with 10 raised to the power of zero.

­That should all feel pretty comfortable -- we work with decimal digits every day. The neat thing about number systems is that there is nothing that forces you to have 10 different values in a digit. Our base-10 number system likely grew up because we have 10 fingers, but if we happened to evolve to have eight fingers instead, we would probably have a base-8 number system. You can have base-anything number systems. In fact, there are lots of good reasons to use different bases in different situations.

Computers happen to operate using the base-2 number system, also known as the binary number system (just like the base-10 number system is known as the decimal number system). Find out why and how that works in the next section.

The Base-2 System and the 8-bit Byte

The reason computers use the base-2 system is because it makes it a lot easier to implement them with current electronic technology. You could wire up and build computers that operate in base-10, but they would be fiendishly expensive right now. On the other hand, base-2 computers are relatively cheap.
So computers use binary numbers, and therefore use binary digits in place of decimal digits. The word bit is a shortening of the words "Binary digIT." Whereas decimal digits have 10 possible values ranging from 0 to 9, bits have only two possible values: 0 and 1. Therefore, a binary number is composed of only 0s and 1s, like this: 1011. How do you figure out what the value of the binary number 1011 is? You do it in the same way we did it above for 6357, but you use a base of 2 instead of a base of 10. So:

(1 * 2^3) + (0 * 2^2) + (1 * 2^1) + (1 * 2^0) = 8 + 0 + 2 + 1 = 11 
 

You can see that in binary numbers, each bit holds the value of increasing powers of 2. That makes counting in binary pretty easy. Starting at zero and going through 20, counting in decimal and binary looks like this:
 
0 =     0
 1 =     1
 2 =    10
 3 =    11
 4 =   100
 5 =   101
 6 =   110
 7 =   111
 8 =  1000
 9 =  1001
10 =  1010
11 =  1011
12 =  1100
13 =  1101
14 =  1110
15 =  1111
16 = 10000
17 = 10001
18 = 10010
19 = 10011
20 = 10100

When you look at this sequence, 0 and 1 are the same for decimal and binary number systems. At the number 2, you see carrying first take place in the binary system. If a bit is 1, and you add 1 to it, the bit becomes 0 and the next bit becomes 1. In the transition from 15 to 16 this effect rolls over through 4 bits, turning 1111 into 10000.

Bits are rarely seen alone in computers. They are almost always bundled together into 8-bit collections, and these collections are called bytes. Why are there 8 bits in a byte? A similar question is, "Why are there 12 eggs in a dozen?" The 8-bit byte is something that people settled on through trial and error over the past 50 years.

With 8 bits in a byte, you can represent 256 values ranging from 0 to 255, as shown here:
 
0 = 00000000
  1 = 00000001
  2 = 00000010
   ...
254 = 11111110
255 = 11111111


The Standard ASCII Character Set

Bytes are frequently used to hold individual characters in a text document. In the ASCII character set, each binary value between 0 and 127 is given a specific character. Most computers extend the ASCII character set to use the full range of 256 characters available in a byte. The upper 128 characters handle special things like accented characters from common foreign languages.

You can see the 127 standard ASCII codes below. Computers store text documents, both on disk and in memory, using these codes. For example, if you use Notepad in Windows 95/98 to create a text file containing the words, "Four score and seven years ago," Notepad would use 1 byte of memory per character (including 1 byte for each space character between the words -- ASCII character 32). When Notepad stores the sentence in a file on disk, the file will also contain 1 byte per character and per space.
Try this experiment: Open up a new file in Notepad and insert the sentence, "Four score and seven years ago" in it. Save the file to disk under the name getty.txt. Then use the explorer and look at the size of the file. You will find that the file has a size of 30 bytes on disk: 1 byte for each character. If you add another word to the end of the sentence and re-save it, the file size will jump to the appropriate number of bytes. Each character consumes a byte.

If you were to look at the file as a computer looks at it, you would find that each byte contains not a letter but a number -- the number is the ASCII code corresponding to the character (see below). So on disk, the numbers for the file look like this:
     F   o   u   r       a   n   d        s   e   v   e   n
    70  111 117 114  32  97 110 100  32  115 101 118 101 110
By looking in the ASCII table, you can see a one-to-one correspondence between each character and the ASCII code used. Note the use of 32 for a space -- 32 is the ASCII code for a space. We could expand these decimal numbers out to binary numbers (so 32 = 00100000) if we wanted to be technically correct -- that is how the computer really deals with things.

The first 32 values (0 through 31) are codes for things like carriage return and line feed. The space character is the 33rd value, followed by punctuation, digits, uppercase characters and lowercase characters.

Byte Prefixes and Binary Math

When you start talking about lots of bytes, you get into prefixes like kilo, mega and giga, as in kilobyte, megabyte and gigabyte (also shortened to K, M and G, as in Kbytes, Mbytes and Gbytes or KB, MB and GB). The following table shows the binary multipliers:


Name
Abbr.
Size
Kilo
K
2^10 = 1,024
Mega
M
2^20 = 1,048,576
Giga
G
2^30 = 1,073,741,824
Tera
T
2^40 = 1,099,511,627,776
Peta
P
2^50 = 1,125,899,906,842,624
Exa
E
2^60 = 1,152,921,504,606,846,976
Zetta
Z
2^70 = 1,180,591,620,717,411,303,424
Yotta
Y
2^80 = 1,208,925,819,614,629,174,706,176

Binary math works just like decimal math, except that the value of each bit can be only 0 or 1. To get a feel for binary math, let's start with decimal addition and see how it works. Assume that we want to add 452 and 751:




452
+ 751
  ---
 1203
To add these two numbers together, you start at the right: 2 + 1 = 3. No problem. Next, 5 + 5 = 10, so you save the zero and carry the 1 over to the next place. Next, 4 + 7 + 1 (because of the carry) = 12, so you save the 2 and carry the 1. Finally, 0 + 0 + 1 = 1. So the answer is 1203.
Binary addition works exactly the same way:


010
+ 111
  ---
 1001
Starting at the right, 0 + 1 = 1 for the first digit. No carrying there. You've got 1 + 1 = 10 for the second digit, so save the 0 and carry the 1. For the third digit, 0 + 1 + 1 = 10, so save the zero and carry the 1. For the last digit, 0 + 0 + 1 = 1. So the answer is 1001. If you translate everything over to decimal you can see it is correct: 2 + 7 = 9.

To sum up, here's what we've learned about bits and bytes:
  • Bits are binary digits. A bit can hold the value 0 or 1.
  • Bytes are made up of 8 bits each.
  • Binary math works just like decimal math, but each bit can have a value of only 0 or 1.
There really is nothing more to it -- bits and bytes are that simple.
     

What is an IP address?

on September 08, 2010 0 comments
      
Every machine on the Internet­ has a unique identifying number, called an IP Address. A typical IP address looks like this:


  • 216.27.61.137
­To make it easier for us humans to remember, IP addresses are normally expressed in decimal format as a "dotted decimal number" like the one above. But computers communicate in binary form. Look at the same IP address in binary:

  • 11011000.00011011.00111101.10001001
­­The four numbers in an IP address are called octets, because they each have eight positions when viewed in binary form. If you add all the positions together, you get 32, which is why IP addresses are considered 32-bit numbers. Since each of the eight positions can have two different states (1 or 0) the total number of possible combinations per octet is 28 or 256. So each octet can contain any value between 0 and 255. Combine the four octets and you get 232 or a possible 4,294,967,296 unique values!
Out of the almost 4.3 billion possible combinations, certain values are restricted from use as typical IP addresses. For example, the IP address 0.0.0.0 is reserved for the default network and the address 255.255.255.255 is used for broadcasts.

The octets serve a purpose other than simply separating the numbers. They are used to create classes of IP addresses that can be assigned to a particular business, government or other entity based on size and need. The octets are split into two sections: Net and Host. The Net section always contains the first octet. It is used to identify the network that a computer belongs to. Host (sometimes referred to as Node) identifies the actual computer on the network. The Host section always contains the last octet. There are five IP classes plus certain special addresses:

  • Default Network - The IP address of 0.0.0.0 is used for the default network.
  • Class A - This class is for very large networks, such as a major international company might have. IP addresses with a first octet from 1 to 126 are part of this class. The other three octets are used to identify each host. This means that there are 126 Class A networks each with 16,777,214 (224 -2) possible hosts for a total of 2,147,483,648 (231) unique IP addresses. Class A networks account for half of the total available IP addresses. In Class A networks, the high order bit value (the very first binary number) in the first octet is always 0.

Net
Host or Node
115.
24.53.107

  • Loopback - The IP address 127.0.0.1 is used as the loopback address. This means that it is used by the host computer to send a message back to itself. It is commonly used for troubleshooting and network testing.

Other IP Classes

  • Class B - Class B is used for medium-sized networks. A good example is a large college campus. IP addresses with a first octet from 128 to 191 are part of this class. Class B addresses also include the second octet as part of the Net identifier. The other two octets are used to identify each host. This means that there are 16,384 (214) Class B networks each with 65,534 (216 -2) possible hosts for a total of 1,073,741,824 (230) unique IP addresses. Class B networks make up a quarter of the total available IP addresses. Class B networks have a first bit value of 1 and a second bit value of 0 in the first octet.
  • Net Host or Node
    145.24. 53.107
  • Class C - Class C addresses are commonly used for small to mid-size businesses. IP addresses with a first octet from 192 to 223 are part of this class. Class C addresses also include the second and third octets as part of the Net identifier. The last octet is used to identify each host. This means that there are 2,097,152 (221) Class C networks each with 254 (28 -2) possible hosts for a total of 536,870,912 (229) unique IP addresses. Class C networks make up an eighth of the total available IP addresses. Class C networks have a first bit value of 1, second bit value of 1 and a third bit value of 0 in the first octet.
  • Net Host or Node
    195.24.53. 107
  • Class D - Used for multicasts, Class D is slightly different from the first three classes. It has a first bit value of 1, second bit value of 1, third bit value of 1 and fourth bit value of 0. The other 28 bits are used to identify the group of computers the multicast message is intended for. Class D accounts for 1/16th (268,435,456 or 228) of the available IP addresses.
  • Net Host or Node
    224. 24.53.107
  • Class E - Class E is used for experimental purposes only. Like Class D, it is different from the first three classes. It has a first bit value of 1, second bit value of 1, third bit value of 1 and fourth bit value of 1. The other 28 bits are used to identify the group of computers the multicast message is intended for. Class E accounts for 1/16th (268,435,456 or 228) of the available IP addresses.
  • Net Host or Node
    240. 24.53.107
  • Broadcast - Messages that are intended for all computers on a network are sent as broadcasts. These messages always use the IP address 255.255.255.255.

IPv6

Internet Protocol Version 6 (IPv6) is a version of the Internet Protocol that is designed to succeed Internet Protocol version 4 (IPv4). IPv4 is the first publicly used Internet Protocol and has been in operation since 1981.

IPv6 is an Internet Layer protocol for packet-switched internetworking and provides end-to-end datagram transmission across multiple IP networks. As a datagram service it does not guarantee reliability, a function provided at the Transport Layer. The main driving force for the redesign of Internet Protocol was the foreseeable IPv4 address exhaustion. IPv6 was developed by the Internet Engineering Task Force (IETF), and is described in Internet standard document RFC 2460, published in December 1998.


IPv6 uses a 128-bit address, whereas IPv4 uses only 32 bits. The new address space supports 2128 (about 3.4×1038) addresses. This expansion provides considerable flexibility in allocating addresses and routing traffic. It also eliminates the primary need for network address translation (NAT), which gained widespread deployment as an effort to alleviate IPv4 address exhaustion.

For more information on this, please refer here.
     

How VoIP Works - IV

0 comments

 

VoIP Call Monitoring


VoIP has its distinct advantages and disadvantages. The greatest advantage of VoIP is price and the greatest disadvantage is call quality. For businesses who deploy VoIP phone networks -- particularly those who operate busy call centers (customer service, tech support, telemarketing, et cetera) -- call quality issues are both inevitable and unacceptable. To analyze and fix call quality issues, most of these businesses use a technique called VoIP call monitoring.

VoIP call monitoring, also known as quality monitoring (QM), uses hardware and software solutions to test, analyze and rate the overall quality of calls made over a VoIP phone network. Call monitoring is a key component of a business's overall quality of service (QoS) plan.
Call monitoring hardware and software uses various mathematical algorithms to measure the quality of a VoIP call and generate a score. The most common score is called the mean opinion score (MOS). The MOS is measured on a scale of one to five, although 4.4 is technically the highest score possible on a VoIP network. An MOS of 3.5 or above is considered a "good call".

To come up with the MOS, call monitoring hardware and software analyzes several different call quality parameters, the most common being:
  • Latency -- This is the time delay between two ends of a VoIP phone conversation. It can be measured either one-way or round trip. Round-trip latency contributes to the "talk-over effect" experienced during bad VoIP calls, where people end up talking over each other because they think the other person has stopped speaking. A round-trip latency of over 300 millisecond is considered poor.
  • Jitter -- Jitter is latency caused by packets arriving late or in the wrong order. Most VoIP networks try to get rid of jitter with something called a jitter buffer that collects packets in small groups, puts them in the right order and delivers them to the end user all at once. VoIP callers will notice a jitter of 50 msec or greater.
  • Packet loss -- Part of the problem with a jitter buffer is that sometimes it gets overloaded and late-arriving packets get "dropped" or lost. Sometimes the packets will get lost sporadically throughout a conversation (random loss) and sometimes whole sentences will get dropped (bursty loss). Packet loss is measured as a percentage of lost packets to received packets.
There are two different types of call monitoring: active and passive. Active (or subjective) call monitoring happens before a company deploys its VoIP network. Active monitoring is often done by equipment manufacturers and network specialists who use a company's VoIP network exclusively for testing purposes. Active testing can't occur once a VoIP network is deployed and employees are already using the system.
Passive call monitoring analyzes VoIP calls in real-time while they're being made by actual users. Passive call monitoring can detect network traffic problems, buffer overloads and other glitches that network administrators can fix in network down time.

Another method for call monitoring is recording VoIP phone calls for later analysis. This type of analysis is limited, however, to what can be heard during the call, not what's happening on the actual network. This type of monitoring is usually done by human beings, not computers, and is called quality assurance.
    

How VoIP Works - III

0 comments

 

VoIP: Codecs

A codec, which stands for coder-decoder, converts an audio signal into compressed digital form for transmission and then back into an uncompressed audio signal for replay. It's the essence of VoIP.
Codecs accomplish the conversion by sampling the audio signal several thousand times per second. For instance, a G.711 codec samples the audio at 64,000 times a second. It converts each tiny sample into digitized data and compresses it for transmission. When the 64,000 samples are reassembled, the pieces of audio missing between each sample are so small that to the human ear, it sounds like one continuous second of audio signal. There are different sampling rates in VoIP depending on the codec being used:
  • 64,000 times per second
  • 32,000 times per second
  • 8,000 times per second
A G.729A codec has a sampling rate of 8,000 times per second and is the most commonly used codec in VoIP.
Codecs use advanced algorithms to help sample, sort, compress and packetize audio data. The CS-ACELP algorithm (CS-ACELP = conjugate-structure algebraic-code-excited linear prediction) is one of the most prevalent algorithms in VoIP. CS-ACELP organizes and streamlines the available bandwidth. Annex B is an aspect of CS-ACELP that creates the transmission rule, which basically states "if no one is talking, don't send any data." The efficiency created by this rule is one of the greatest ways in which packet switching is superior to circuit switching. It's Annex B in the CS-ACELP algorithm that's responsible for that aspect of the VoIP call.
The codec works with the algorithm to convert and sort everything out, but it's not any good without knowing where to send the data. In VoIP, that task is handled by soft switches.
E.164 is the name given to the standard for the North American Numbering Plan (NANP). This is the numbering system that phone networks use to know where to route a call based on the dialed numbers. A phone number is like an address:
    (313) 555-1212 313 = State 555 = City 1212 = Street address
The switches use "313" to route the phone call to the area code's region. The "555" prefix sends the call to a central office, and the network routes the call using the last four digits, which are associated with a specific location. Based on that system, no matter where you're in the world, the number combination "(313) 555" always puts you in the same central office, which has a switch that knows which phone is associated with "1212."
The challenge with VoIP is that IP-based networks don't read phone numbers based on NANP. They look for IP addresses, which look like this:
    192.158.10.7
IP addresses correspond to a particular device on the network like a computer, a router, a switch, a gateway or a telephone. However, IP addresses are not always static. They're assigned by a DHCP server on the network and change with each new connection. VoIP's challenge is translating NANP phone numbers to IP addresses and then finding out the current IP address of the requested number. This mapping process is handled by a central call processor running a soft switch.

The central call processor is hardware that runs a specialized database/mapping program called a soft switch. Think of the user and the phone or computer as one package -- man and machine. That package is called the endpoint. The soft switch connects endpoints.
Soft switches know:
  • Where the network's endpoint is
  • What phone number is associated with that endpoint
  • The endpoint's current IP address

VoIP: Soft Switches and Protocols

 The soft switch contains a database of users and phone numbers. If it doesn't have the information it needs, it hands off the request downstream to other soft switches until it finds one that can answer the request. Once it finds the user, it locates the current IP address of the device associated with that user in a similar series of requests. It sends back all the relevant information to the softphone or IP phone, allowing the exchange of data between the two endpoints.

Protocols
As we've seen, on each end of a VoIP call we can have any combination of an analog, soft or IP phone as acting as a user interface, ATAs or client software working with a codec to handle the digital-to-analog conversion, and soft switches mapping the calls. How do you get all of these completely different pieces of hardware and software to communicate efficiently to pull all of this off? The answer is protocols.
There are several protocols currently used for VoIP. These protocols define ways in which devices like codecs connect to each other and to the network using VoIP. They also include specifications for audio codecs. The most widely used protocol is H.323, a standard created by the International Telecommunication Union (ITU). H.323 is a comprehensive and very complex protocol that was originally designed for video conferencing. It provides specifications for real-time, interactive videoconferencing, data sharing and audio applications such as VoIP. Actually a suite of protocols, H.323 incorporates many individual protocols that have been developed for specific applications.



H.323 Protocol Suite


Video


Audio


Data


Transport


H.261
H.263


G.711
G.722
G.723.1
G.728
G.729


T.122
T.124
T.125
T.126
T.127


H.225
H.235
H.245
H.450.1
H.450.2
H.450.3
RTP
X.224.0

As you can see, H.323 is a large collection of protocols and specifications. That's what allows it to be used for so many applications. The problem with H.323 is that it's not specifically tailored to VoIP.
An alternative to H.323 emerged with the development of Session Initiation Protocol (SIP). SIP is a more streamlined protocol, developed specifically for VoIP applications. Smaller and more efficient than H.323, SIP takes advantage of existing protocols to handle certain parts of the process. Media Gateway Control Protocol (MGCP) is a third commonly used VoIP protocol that focuses on endpoint control. MGCP is geared toward features like call waiting. You can learn more about the architecture of these protocols at Protocols.com: Voice Over IP.

One of the challenges facing the worldwide use of VoIP is that these three protocols are not always compatible. VoIP calls going between several networks may run into a snag if they hit conflicting protocols. Since VoIP is a relatively new technology, this compatibility issue will continue to be a problem until a governing body creates a standard universal protocol for VoIP.

VoIP is a vast improvement over the current phone system in efficiency, cost and flexibility. Like any emerging technology, VoIP has some challenges to overcome, but it's clear that developers will keep refining this technology until it eventually replaces the current phone system.

On the next article, we'll talk about VoIP call monitoring.
   

How VoIP Works - II

0 comments

    

VoIP: Packet Switching

A packet-switched phone network is the alternative to circuit switching. It works like this: While you're talking, the other party is listening, which means that only half of the connection is in use at any given time. Based on that, we can surmise that we could cut the file in half, down to about 4.7 MB, for efficiency. Plus, a significant amount of the time in most conversations is dead air -- for seconds at a time, neither party is talking. If we could remove these silent intervals, the file would be even smaller. Then, instead of sending a continuous stream of bytes (both silent and noisy), what if we sent just the packets of noisy bytes when you created them?
Data networks do not use circuit switching. Your Internet connection would be a lot slower if it maintained a constant connection to the Web page you were viewing at any given time. Instead, data networks simply send and retrieve data as you need it. And, instead of routing the data over a dedicated line, the data packets flow through a chaotic network along thousands of possible paths. This is called packet switching.
While circuit switching keeps the connection open and constant, packet switching opens a brief connection -- just long enough to send a small chunk of data, called a packet, from one system to another. It works like this:
  • The sending computer chops data into small packets, with an address on each one telling the network devices where to send them.
  • Inside of each packet is a payload. The payload is a piece of the e-mail, a music file or whatever type of file is being transmitted inside the packet.
  • The sending computer sends the packet to a nearby router and forgets about it. The nearby router send the packet to another router that is closer to the recipient computer. That router sends the packet along to another, even closer router, and so on.
  • When the receiving computer finally gets the packets (which may have all taken completely different paths to get there), it uses instructions contained within the packets to reassemble the data into its original state.
Packet switching is very efficient. It lets the network route the packets along the least congested and cheapest lines. It also frees up the two computers communicating with each other so that they can accept information from other computers, as well.

Advantages of Using VoIP

­
Click "Play" to see how packet switching works.
VoIP technology uses the Internet's packet-switching capabilities to provide phone service. VoIP has several advantages over circuit switching. For example, packet switching allows several telephone calls to occupy the amount of space occupied by only one in a circuit-switched network. Using PSTN, that 10-minute phone call we talked about earlier consumed 10 full minutes of transmission time at a cost of 128 Kbps. With VoIP, that same call may have occupied only 3.5 minutes of transmission time at a cost of 64 Kbps, leaving another 64 Kbps free for that 3.5 minutes, plus an additional 128 Kbps for the remaining 6.5 minutes. Based on this simple estimate, another three or four calls could easily fit into the space used by a single call under the conventional system. And this example doesn't even factor in the use of data compression, which further reduces the size of each call.
Let's say that you and your friend both have service through a VoIP provider. You both have your analog phones hooked up to the service-provided ATAs. Let's take another look at that typical telephone call, but this time using VoIP over a packet-switched network:
  1. You pick up the receiver, which sends a signal to the ATA.
  2. The ATA receives the signal and sends a dial tone. This lets you know that you have a connection to the Internet.
  3. You dial the phone number of the party you wish to talk to. The tones are converted by the ATA into digital data and temporarily stored.
  4. The phone number data is sent in the form of a request to your VoIP company's call processor. The call processor checks it to ensure that it's in a valid format.
  5. The call processor determines to whom to map the phone number. In mapping, the phone number is translated to an IP address (more on this later). The soft switch connects the two devices on either end of the call. On the other end, a signal is sent to your friend's ATA, telling it to ask the connected phone to ring.
  6. Once your friend picks up the phone, a session is established between your computer and your friend's computer. This means that each system knows to expect packets of data from the other system. In the middle, the normal Internet infrastructure handles the call as if it were e-mail or a Web page. Each system must use the same protocol to communicate. The systems implement two channels, one for each direction, as part of the session.
  7. You talk for a period of time. During the conversation, your system and your friend's system transmit packets back and forth when there is data to be sent. The ATAs at each end translate these packets as they are received and convert them to the analog audio signal that you hear. Your ATA also keeps the circuit open between itself and your analog phone while it forwards packets to and from the IP host at the other end.
  8. You finish talking and hang up the receiver.
  9. When you hang up, the circuit is closed between your phone and the ATA.
  10. The ATA sends a signal to the soft switch connecting the call, terminating the session. 
Probably one of the most compelling advantages of packet switching is that data networks already understand the technology. By migrating to this technology, telephone networks immediately gain the ability to communicate the way computers do.
It will still be at least a decade before communications companies can make the full switch over to VoIP. As with all emerging technologies, there are certain hurdles that have to be overcome.

Disadvantages of Using VoIP

The current Public Switched Telephone Network is a robust and fairly bulletproof system for delivering phone calls. Phones just work, and we've all come to depend on that. On the other hand, computers, e-mail and other related devices are still kind of flaky. Let's face it -- few people really panic when their e-mail goes down for 30 minutes. It's expected from time to time. On the other hand, a half hour of no dial tone can easily send people into a panic. So what the PSTN may lack in efficiency it more than makes up for in reliability. But the network that makes up the Internet is far more complex and therefore functions within a far greater margin of error. What this all adds up to is one of the major flaws in VoIP: reliability.
  • First of all, VoIP is dependent on wall power. Your current phone runs on phantom power that is provided over the line from the central office. Even if your power goes out, your phone (unless it is a cordless) still works. With VoIP, no power means no phone. A stable power source must be created for VoIP.
  • Another consideration is that many other systems in your home may be integrated into the phone line. Digital video recorders, digital subscription TV services and home security systems all use a standard phone line to do their thing. There's currently no way to integrate these products with VoIP. The related industries are going to have to get together to make this work.
  • Emergency 911 calls also become a challenge with VoIP. As stated before, VoIP uses IP-addressed phone numbers, not NANP phone numbers. There's no way to associate a geographic location with an IP address. So if the caller can't tell the 911 operator where he is located, then there's no way to know which call center to route the emergency call to and which EMS should respond. To fix this, perhaps geographical information could somehow be integrated into the packets.
  • Because VoIP uses an Internet connection, it's susceptible to all the hiccups normally associated with home broadband services. All of these factors affect call quality:
                                    - Latency
                                    - Jitter
                                    - Packet loss  
  • Phone conversations can become distorted, garbled or lost because of transmission errors. Some kind of stability in Internet data transfer needs to be guaranteed before VoIP could truly replace traditional phones.
  • VoIP is susceptible to worms, viruses and hacking, although this is very rare and VoIP developers are working on VoIP encryption to counter this.
  • Another issue associated with VoIP is having a phone system dependent on individual PCs of varying specifications and power. A call can be affected by processor drain. Let's say you are chatting away on your softphone, and you decide to open a program that saps your processor. Quality loss will become immediately evident. In a worst case scenario, your system could crash in the middle of an important call. In VoIP, all phone calls are subject to the limitations of normal computer issues.
One of the hurdles that was overcome some time ago was the conversion of the analog audio signal your phone receives into packets of data. How it is that analog audio is turned into packets for VoIP transmission? The answer is codecs.


In the next article, we will see more about codecs.