Acceptance: I Think And Feel, Therefore Nothing

Life and Work No Comments

In the Anger Antidote, I spoke about how forgiveness and acceptance of myself, without anger, blame or shame, can clear the past of my regrets. Previous to that, I wrote about how in the end, it is the mental mass (of which, past regrets are a type of) that is the “real” important mass that weighs me down and should be the target for removal. At the end of that post, I briefly described a method to manage the fears of the present and the worries of the future (both are mental mass) by being aware of new thoughts and feelings and accepting them without attachment. I wanted to use this post to explore that method in greater depth.

About 4 years ago, I was reading a book, “The Not So Big Life” by Sarah Susanka, an architect and author. I had enjoyed her previous book, the “Not So Big House”, which suggests that a house is a home and that a smaller house that is designed around our lives is better. In the “The Not So Big Life”, Ms. Susanka was attempting to evolve that concept beyond architecture into the messy arena of life. When reading Chapter 9, I came upon a sentence, “I Am Not That Thought”, which caused me to re-examine some of my core beliefs.

Until then, I had believed in “Cogito ergo sum” (Descartes: “I think, there I am.”); basically, that my thoughts are me. Ms. Susanka’s sentence suggested the opposite, that my thoughts are not me. I began to question both premises and tried to be mindful of where my thoughts were coming from and their effect on me. I found that while some thoughts followed other thoughts (from “it’s nice to have a cat” to “we’ll need to get vet shots and cat food”), there were brand new thoughts that came from nowhere (while I’m playing tennis, I would think “a yacht would be hella cool to own” or “if I went into law, what happens if I fail the bar? That would suck big time”).

While watching my thoughts, I became aware that feelings exhibited the same behavior. Some feelings followed my thoughts (“if I fail the bar, I would feel bad”) and other feelings just appeared out of nowhere (“I’m sad and I can’t figure out why”). And if I attempted to explore why that feeling came into being, new thoughts were created from the feelings (“I’m pissed and it must be because of Fred forgetting about that”). My final observation is that thoughts and feelings came together, with varying strengths, and new thoughts and feelings may not have an origin.

Where do these new thoughts and feelings come from? I don’t really know; maybe from an overactive brain trying to make sense of random inputs? Where do they go? I have no idea either; back where they came from? All I can do is to figure out how to prevent the bad thoughts and feelings from sticking to me. And stick they did, especially to similar, older bad thoughts and feelings that were already stuck on me. And once stuck, they had a life of their own, basically my life.

With practice, I realized that I could observe my thoughts and feelings as they came into being. At first, I called it “the gap between stimulus and response”; later, just “the gap” because sometimes there was no stimulus and no response. At first, the gap was very small but with practice and time, it became larger. In that gap, I had the opportunity to decide how to react to each new thought and feeling. I’ve learned that that best action is to accept them, good or bad. To acknowledge their existence with true acceptance, not to have any attachment as to whether they are good or bad. They just are. They exist. If you judge them, reject/deny/oppose them as bad, attach to them as good, they will get energy from you. To deny something is to attach to that thing and give it continued existence. So just don’t.

You must learn to accept those thoughts and feelings, acknowledging their existence without judgment or attachment. Once you do, those thoughts and feelings will lose their power over you. They will come and they will go. Thoughts will cause feelings (“Bob backstab me in the back, I am so angry”), and feelings will cause thoughts (“why do I feel so angry? It’s because Bob backstab me in the back”). You must accept both thoughts and feelings, and their ancestors; which are similar old thoughts and feelings that are attached to you and get re-activated by your reaction to the new thoughts and feelings. As you use forgiveness and acceptance, the old thoughts and feelings will lose power and disappear. Over time, there will be less and less past “bad” thoughts and feelings to attract future “bad” thoughts and feelings.

You may think that it is okay to be attached to “good” thoughts and feelings. But there is a dark side to that. For example, you are happy that your friend called you on your birthday and make a judgment (“gee, what a great, conscientious friend. She really cares about me”). You get attached to this judgment and set an expectation concerning your friend. In the future, should she forget to call you on your birthday, that expectation is not met and the reverse judgment made be made (“she is not a good friend”) followed by “bad” feelings toward her. Instead, be happy that she called, and avoid attachments to that action. In the future, if she calls again, great, if not, no biggie.

True acceptance without any attachment is a tough skill to acquire and tougher to continue doing year after year. For help with learning what acceptance is, I suggest reading Byron Katie’s “Loving What Is”. Ms. Katie’s “The Work” is a helpful tool to explore what acceptance means. In the book, Ms. Katie uses Reality as a teacher. Most, if not all, of our attachments contradict Reality and cause friction between us and “What Is”. “The Work” involves questioning our attachments, letting them go, and accepting, even loving, Reality.

In the end, I decided that thoughts and feelings were a part of me, but they did not have to drive my behavior and being. I could think or feel something, but I didn’t have to act on it or let it affect my state of being permanently. Over time (almost a year), I learned to be okay with not knowing where new thoughts and feelings came from. I learned to let them go. I accepted their existence without attachment, briefly thought the thought and felt the feeling, decided how I would continue behaving or being, and then allowed them to stay or go as they please. If I fully accept my thoughts and feelings, don’t deny, resent, reject, or oppose them, they will usually leave as quickly as they came. Definitely, I am more than just my thoughts and feelings!

Along the way, I thought, wait a second, who is the “I” that is aware of my new thoughts and feelings? “I” seemed to exist independent of my thoughts and feelings. The “me” that observes the thoughts and feelings, and feels the sensations of my body, seemed to different and separate. I think that this “me” is my consciousness and self-awareness that I have read about, but have never examined directly until now.

It occurred to me that the reason I had gotten into trouble in the past was because I had not been conscious and aware of my thoughts and feelings. I had allowed them to drive me. I had been sleeping at the wheel and allowing my thoughts and feelings to wreck and ruin my experience of life. Sometimes life was good, sometimes it was bad, but most of the time, it was mediocre, because sleep walking is mediocre and that was what I had been doing. It was time for my awareness to take the driver’s seat.

I found that if I do not act on my fears of the present (by not reacting or attaching to thoughts and feelings), I avoided the worries of the future (which are projected fear). If I don’t fear the present, what is there to worry about in the future? Life got a lot better and freer. In Anger Antidote, I learned that true forgiveness leads to acceptance. And in the experience described by this post, I learned that true acceptance leads to freedom, where my self-awareness can act as it chooses without baggage (past regrets), attachments (judgments about present thoughts and feelings), or future concerns. With forgiveness and acceptance, I have learned a different, better way to like and love myself, and this has opened up a way to like and love others in the same manner.

Before I end this post, I would like to throw out some questions that are currently on my mind. Could my self-awareness be more? Could the “observer” be separate from the body and thoughts and feelings? Could the “observer me” exists once my body and its thoughts and feelings are gone? By awareness, could I be talking about my soul? And finally, what happens to the “observer” when I sleep and dream?

I Don’t Recall Agreeing To Pay For Curbside Painting!

What the Heck No Comments

Yesterday, as I was taking garbage out to the curb, a young man passed a flyer to me. The flyer announced that the house numbers on the curb were to be repainted and residents were being asked to contribute money towards that goal. The flyer had wording that falsely implied the following:

  • With an official sounding headline “Advisory Notice To All Residents” and references to “911″ and “postal-mail”, the flyer suggests a relationship with the city government; perhaps they are hired by the city. This is false; I doubt they are a real company (there was no telephone or website listed on the flyer) and definitely, the city did not hire them. The real story is that several years ago, the city did hire a company to repaint certain neighborhoods. After that, the city never repeated that initiative again.
  • The flyer asks for a contribution of $15 or “what is most comfortable for your budget”, implying that the city is asking for help to fund this initiative (if you believe they are affiliated with the city). This is false; you can bet that any money will go to their pockets, not the city’s.
  • If you do not wish to have your house number repainted on the curb, you must tape the flyer to the curb. Otherwise, they assume that you have agreed to the repainting. Of course, they don’t state on what day they would paint so there’s no guarantee that the flyer will still be there when they come.

At first, I was very annoyed. I didn’t want to pay to have my house number repainted on the curb. Now, I had to go get some sturdy tape so I can tape that darn flyer to the curb. Then I thought, these guys are marketing geniuses! They took the opt-out marketing idea from the Internet and added a bit of local patriotism (donate to help the city) to make a lot of money. For about 50 cents worth of spray paint (and an initial investment in number stencils), they could potentially get $15 back. Even if they just got a dollar, they would still be profitable! Most likely, they will get between 5 and 15 dollars from each house.

For those who don’t know about opt-out, it was a strategy initially used on the Internet by companies to quickly create email lists of customers. The trick is to assume that any time a customer provides an email address, the customer has agreed to receive emails from the company; for example, when you purchase an item and provide your email address for order/shipping updates. In order to not receive emails, the customer would have to explicitly opt-out of the mailings. Of course, most customers considered these company advertising emails to be spam.

Soon after, many web order forms (purchasing forms, download forms, information request forms, etc.) started to display checkboxes already pre-checked to subscribe the customer to the company mailist and even worse, to subscribe the customer to paid services. The latter is especially heinous because I have fallen victim to it several times. Years ago, after I had signed up for a 3-month special with Match.com and allowed it to lapse, I was surprised to see a charge on my credit card for another 3 months at full price. Evidently, Match.com opted me into an automatic re-subscription service (I do not recall seeing that checkbox on the signup form). Worst, Match.com refused to reverse the charges because I had “agreed” to the charge; I had not manually changed my account settings to disallow automatic re-subscription. A recent example is when I purchased a game from BigFishGames.com and found myself subscribed to their $6.99/month Game Club membership service; I quickly unsubscribed by calling their customer service number.

You will also see the opt-out strategy when installing software, especially free software. One of the many installation screens would have pre-checked boxes to install other software (such as browser toolbars, Google Earth, and Yahoo Messenger). This additional software will fill up your hard drive space (best case), slow down your computer with automatically-launched programs (worse case), and/or install viruses and spyware (worst case). Whenever I am diagnosing a computer because it was “too slow” or “acting weird”, my first action is to find and remove this unwanted software. I’ve seen browsers start with 5-6 toolbars, each with its own search input field. When asked about these toolbars, the user would invariably say, “I don’t know where they came from.”

Unsolicited company email is a nuisance and thankfully, there are mechanisms (“mark as spam” on Google or Yahoo Mail) that will eventually get that company email blacklisted. Extraneous software installations are the “payment” you make for free software; to avoid, just look carefully at every checkbox during installation. But companies that pull the opt-out paid service ploy are evil because they cost you your hard-earned money and time (which you spend trying to get out of the paid service). These companies get on my boycott list and they lose me, my family, and friends as customers.

My advice to companies is to not use opt-out because in the long run, they will lose their existing and new customers (once word gets around). However, the curbside painters are still geniuses because their use of the opt-out technique has very little downside. There is no need to retain customers as a repainting is not necessary again for years (though they imply that it is a yearly event) and there are many new neighborhoods filled with unsuspecting marks, I mean customers.

Jungian Cognitive Functions: The Solution to Misleading MBTI Personality Codes

Life and Work No Comments

I took the Myers-Briggs Type Indicator (MBTI) test years ago. It indicated that my personality type code was INTJ. I took the test again and got a different result, INTP. I read the portrait descriptions of both personality types (and other similar ones, ENTJ and ENTP). I was able to identify parts of myself in all four personality types, but none of them exactly fit me. Being human, it was very easy for me to read myself into each portrait, especially when they talked about the “positive” traits and behaviors. Frustrated, I decided that INTJ was good enough (I was a software engineer and that seemed to be the best match) and thought no more of it.

For several years, I thought I was an INTJ until I took a class about Tony Allessandra’s Personality Styles. At the end of the class, I was talking to the instructor and mentioned that I thought I was a Thinker. She replied that I was a Socializer (Feeling type). She said that she could easily tell from my face and body language what I was feeling. (I was always the joker in class.) That just blew me away; I thought I was a Thinker, but I’m actually a Feeler. With feedback from friends (very necessary to accurately determine your personality type), I finally identified myself as an INFP. Or at least, I’m more confident that I am an INFP than an INTJ; the portrait description for INFP seemed to match better.

I decided to revisit the MBTI and try to understand the theory so that I can understand myself better. Though I grew comfortable with what the MBTI type codes for N (Intuiting), S (Sensing), T (Thinking) and F (Feeling) meant, I could never quite “get” what I (Introverted), E (Extraverted), J (Judging), and P (Perceiving) meant. I always had vagueness in my understanding of what the meanings (in terms of behavior and traits) for these MBTI type codes were. There were certain parts of my personality which directly conflicted with some MBTI definitions for the type codes.

For example, I’m an INFP and I like to be on my own for periods of time, which explains why I am an “I” (Introvert). But sometimes, I want to be with people. When I’m out with my friends, I get energized from interacting with them. In fact, if you ask my friends, they will tell you that I’m an “E” (Extrovert) and the life of the party. Likewise, even though I’m a “P” (Perceiver) and like to have many open options, when I take on a task at home or work, I concentrate all my energy on completing the task, which is a very “J” (Judging) behavior. And, while I’m an emotional “F” (Feeling) at home, I am a coldly logical “T” (Thinking) at work. It seemed that I had a split personality.

Recently, I saw some videos about Carl Jung’s cognitive functions (thanks DaveSuperPowers!), which MBTI is based upon. When researching MBTI, I had seen mentions of the cognitive functions but had never explored them. Once I started looking into Carl Jung’s psychological types theory, I knew that I had to learn it. I could see that it was much more subtle than MBTI and suggested answers to the questions I had about my split personality.

The MBTI attempted to simplify Carl Jung’s psychological types theory. So there is a lot of overlap between the cognitive functions and MBTI in terms of definitions and type codes (which relate to function types N, S, T, J and each function’s I/E orientation). Unfortunately, the MBTI simplification only capture a part of Carl Jung’s theory and introduced standalone personality type codes I/E and J/P which can be misleading. I realized a deeper understanding of personality types can only be achieved by studying Carl Jung’s cognitive functions.

The Jungian cognitive functions consist of the N/S and T/F dichotomous (divided into two parts) functions, their strength of expression, and their I/E orientations (aka attitudes). N (Intuiting) and S (Sensing) are perceiving functions, used to collect data. T (Thinking) and F (Feeling) are judging functions, used to organize data and make decisions. The perceiving functions and judging functions are in dynamic balance, caused by different strengths of expression (Dominant, Auxiliary, Tertiary, and Inferior rankings) and orientation (Introverting or Extraverting) for each function. This dynamic balance provides a subtle, nuanced understanding of each personality type.

Note: While the Jungian cognitive functions N/S and T/F have direct matches with the MBTI type codes, there are no cognitive functions that match the J/P MBTI type codes. Similar, there are no cognitive functions that match the I/E MBTI type codes. In Carl Jung’s theory, the Introversion and Extraversion are orientation attributes applied to each cognitive function. The best correlation I can come up with is that the MBTI I/E and J/P type codes together can be used to determine the dominant and auxiliary functions (cognitive functions with the most powerful and second most powerful expressions in the personality) and their orientation.

To get a better understanding of the Jungian cognitive functions, let’s look at the four Jungian cognitive functions that match my INFP personality type:

My dominant (first) function is Introverted Feeling (Fi) meaning that my feelings are focused inward towards thoughts and ideas. I make decisions/judgments using an internal code of moral conduct, what feels right and avoids hurting others. Because I am focused inward, I am not emotionally expressive to people so they may think I’m reserved or a bit cold. A dominant Extroverted Feeling (Fe) type would be focused outward towards people and things, and would make decisions that preserve the social groups (family, community, etc) and cultural norms. A Fe type would be emotionally expressive, warm to people, and be more accepting of the general consensus. The above Fi and Fe types are descriptions of the extremes; we humans are on a gradient between the two and I am more towards the introverted feeling extreme.

My auxiliary (second) function is Extraverted Intuiting (Ne) meaning that my intuition is focused on getting subtle clues from my external world, with a focus on understanding people, patterns, relationships, and possibilities. An Introverted Intuiting (Ni) type would focus his intuition internally to build an abstract system of concepts and patterns. My Ne auxiliary function explains why when I’m with friends, I can be the life of the party; I’m expressing my auxiliary function more than my dominant. The Ne function helps me to get an idea of how people are feeling, and to match and improve their moods.

My tertiary (third) function is Introverted Sensing (Si) meaning that I perceive the present world in relation to my past experiences and reactions. I prefer to keep a concise internal view of the world and thus, I tend to be neat and a minimalist (I don’t care for owning things beyond the minimum). An Extraverted Sensing (Se) type would enjoy the physical world with all five senses. Se types love cool things and creature comforts. In extreme, a Se type could become a hoarder.

My inferior (fourth) function is Extraverted Thinking (Te) meaning that I prefer to think out loud. I can work on incomplete ideas by talking to someone (or by writing). An Introverted Thinking (Ti) type prefers to create an internal model where everything fits together perfectly. An extreme Ti type may ask you to pause talking while he internally processes an idea you have just introduced.

If you look carefully at the four cognitive functions, you can see that the fourth and third functions mirror the first and second functions, in that order. The mirror involves a switch to the other dichotomous function (N to S and T to F, and vice versa) and a change in orientation (introverted to extraverted, and vice versa) from first to fourth and second to third. In addition, the first and second functions must have opposite orientations (which results in the second and third, and the third and fourth, having opposite orientations). This is a useful shortcut because if you know a person’s dominant and auxiliary types and the orientation of either, the third and fourth functions (and all remaining orientations) can be determined using the constraints above.

Note: To map from MBTI personality type codes to Jungian cognitive functions, you can use the following rules: (a) the MBTI I/E indicates the orientation of the dominant cognitive function, (b) if MBTI “E” type, the J/P determines which is the dominant function, and (c) if MBTI “I” type, the J/P determines which is the auxiliary function. So for an ESTJ type, because it is an “E” type with “J”, the dominant function must be a judging function which is “T” and thus, the auxiliary is the remaining “S”. The resulting cognitive functions are Te, Si, Ne, Fi. And for an INFP type, because it is an “I” type with “P”, the auxiliary function must be a perceiving function which is “N” and thus, the dominant is the remaining “F”. So, the cognitive functions are Fi, Ne, Si, Te.

The inferior (fourth) function is special. Being the weakest, it is almost totally suppressed by the dominant. Most of the time, the dominant and auxiliary functions will be expressed (with the auxiliary playing a supporting role to the dominant), the tertiary function minimally expressed, and the inferior function barely expressed at all. Except, sometimes, the inferior becomes strong enough to suppressed the dominant function! When this happens, the mirror is flipped in that the inferior function becomes the dominant and the tertiary function becomes the auxiliary; the inferior and tertiary become expressed (with the tertiary playing a supporting role to the inferior) and the dominant and auxiliary almost totally suppressed. This is the sudden personality change! This explains why at work, my Extraverted Thinking (Te) function becomes dominant and I become an almost emotionless (suppressed Fi and Ne), talking egghead (expressed Te) who is a stickler for rules, processes, and details (expressed Si). I basically become the opposite of an INFP which is an ESTJ.

The order of the functions explained why I like to complete tasks as soon as I can. My dominant Fi is a judging function and creates the task by asking what should I do? Once I pick a task, my auxiliary Ne (with my tertiary Si), which is a perceiving function, explores options on how to best accomplish that task. My inferior function Te, which is a judging function, opposes the auxiliary Ne and tries to bring the task to closure/completion. Tasks are left incomplete if the Te is unable to bring the Ne to heel. Which is why when I start on a task, I try to complete it as fast as I can (without breaks), because the longer I left it go on, the more time is given to the Ne to become stronger than the Te.

According to the link above, the way an INFP approaches a task can be represented as a diamond with the dominant Fi at the top point, the auxiliary Ne representing the fat middle, and the inferior Te at the bottom point. In contrast, an INTJ’s approach would represent an hourglass with the dominant Ni at the top fat base (perceiving: what are all the possible things to do?), the auxiliary Te at the narrow middle (judging: pick something and do it), and the inferior Si at the bottom fat base (perceiving: Is the result good enough?). While the INFP may stop in the middle of a task without coming to a solution, the INTJ may take forever to perfect the solution.

Besides MBTI, other researchers, like John Beebe and Linda Berens, have introduced four additional cognitive functions, called “shadow functions”, to Carl Jung’s original four cognitive functions. These shadow functions have the same order as the cognitive functions but with opposite orientations. For INFP (Fi, Ne, Si, Te), the shadow functions are Fe, Ni, Se, Ti. While the cognitive functions are expressed by preference, the shadow functions can become expressed when we are under stress. In some situations, we may purposefully try to express a shadow function and while doable, we will find that it is tiring (versus energizing when expressing a preferred cognitive function). This may explain why non-Fe and non-Ne types can get tired when dealing with people.

I feel that I am just digging at the first layer of Carl Jung’s psychological types theory. I expect to make more realizations, some of which might invalidate what I wrote above. So take everything with a large grain of salt.

An Anger Antidote: Forgive Yourself

Life and Work No Comments

Have you ever gotten angry, really angry at something that happened to you or something that you did? I have, and sometimes the anger is so strong that I could barely control myself. When I was young, I couldn’t even do that. I would shout, scream, kick objects, and even punch the walls with my bare fist. As I become more matured, I realized it was stupid of me to hurt myself or my surroundings over sometimes very trivial things. Nothing would have changed for the better. Thankfully this loss of control did not happen often.

Anger is a strong emotion. It comes abruptly and overwhelmingly. And most of the time, unless reign in, it results in damage to oneself or others. Anger is not a “bad” emotion, it just “is”. How you react to anger determines whether you or others are hurt.

Anger changes with your age. When young, my anger was directed outwards; I was angry at others. It was the fault of others, they caused it. Or it was the environment, misfortune, the fates conspiring against me. It was never my fault, never my responsibility. As I matured, the anger turned inward; I was angry at myself. It was my fault, I was responsible. I trusted others blindly, I didn’t plan for the unexpected, or I was too weak and powerless.

When I got tired of beating myself over and over, I learned to forgive myself. To accept that I was an imperfect human, that there was no blame, and that I can only strive to do better. That was the key to handling and dissipating the anger. If you can truly forgive yourself, you will realize that you have come to accept yourself. Acceptance without blame and forgiveness without anger are two parts of the whole. Eventually acceptance will lead you to find that you really like who you are. Once you can honestly forgive yourself, you will discover that you can accept and forgive others.

Many of you may respond that you have always been able to forgive others. In the past, I would have claimed that same. However, when I think back, I realize that it was more of a judgmental and patronizing forgiveness with repressed anger. You have done wrong, but I forgive you. Would you believe such a statement if you said it to yourself? Does it feel like true forgiveness, with acceptance, without blame, without repressed anger? After forgiving someone or yourself, do you feel the release of something heavy (experience a lightness of being) or do you harbor a bit of resentment (he got off easy)? The former is a sign of true forgiveness.

Growing up, I was taught to forgive others without being taught to forgive myself. Somehow, the adults assumed that I would figure out how to do the latter myself. Geez, leave it to the kid to figure out the more difficult part. By nature, we think the best of ourselves. It’s obvious that we are not to be blamed. It is hard to admit that we have wronged someone and to apologize, especially if we hate that person. We are especially hard on ourselves when we think we are perfect. It is not easy to forgive ourselves. But if we never learn to forgive ourselves, how can we forgive others?

With practice, I have learned to forgive myself quickly. Immediate forgiveness is required to avoid accumulating more emotional baggage. I still take responsibility, but don’t blame myself. I even forgive myself for getting angry or irritated at the actions of myself and others. When a car cuts me off on the freeway, I forgive myself for that quick flash of anger and the urge to retaliate. I forgive the action. Maybe the other person is in a hurry due to an emergency. Or maybe it’s just a not-paying-attention boneheaded move, which I am also guilty of doing in the past. If I can’t forgive the other person, how can I forgive myself for doing the same thing?

It turns out that forgiveness is the method for clearing out regrets, mental mass from the past. Regrets are past incidences where we have not forgiven ourselves or others. Most likely, we or someone had somehow violated our own internal code of conduct. These incidences are unresolved and still contain emotions such as repressed anger. They have the energy to return to haunt us continually, like heavy chains wrapped around our very being.

To clear that past junk, revisit the regrets and forgive yourself for the anger you feel. Forgive yourself for the past decisions which you believe are mistakes (decisions might only become “bad” in hindsight) and forgive the actions of others that may have hurt you. Accept and eliminate all blame. Finally, forgive yourself for having past regrets and for beating yourself over and over with those regrets through the years.

Forgiveness works for other emotions than anger. Supposed that my coworker, who is my good friend, is promoted to a level above me. It’s natural (at least for me) to feel a bit jealous and resentful. I try to quickly forgive myself for feeling jealous and resentful (without blame or shame), so that I can move on to be truly happy for my friend. Wouldn’t you want your friend to do the same when you are promoted?

We are emotional humans and thus, very imperfect and irrational. We have done and will do stupid things, sometimes immoral things, and we may intentionally or unintentionally hurt others. Forgive yourself, forgive others, accept, take responsibility, and promise to do better. That is the best that we can do.

Create WordPress Widget for the Yelp Bling

Internet 2 Comments

I was writing a Yelp review (log into Yelp and click the “About Me” tab) and noticed a small google map object on the Yelp page that showed the locations for my reviews one by one. At the bottom of that object was a link named “I want this bling on my blog”. So I clicked on it. It took me to a page where I could generate the HTML code for my very own Yelp Bling object. (I kept the default Javascript version and did not select the Flash version.)

To put the Yelp Bling on my blog, I decided that the cleanest way is to create a WordPress widget to contain all that bling. I inputted a border color (C33907), text color (000000) and background color (FFFFF) which matched my blog’s theme. To find the RGB (Red, Green, Blue) values from your theme, use the Windows Paint program per these instructions.

Follow these instructions to create your very own Yelp Bling widget:

  1. Create a text file named “yelpbling.php” with the following content:
    <?php
    /*
    Plugin Name: YelpBling
    Plugin URI: http://www.doitscared.com/
    Description: Yelp Bling widget
    Author: doitscared.com
    Version: 1
    Author URI: http://www.doitscared.com/
    */

     
    function yelpbling_widget() {
    ?>

    <!-- Paste generated Yelp Bling HTML code here -->

    <?php
    }
     
    function init_yelpbling() {
       register_sidebar_widget("YelpBling", "yelpbling_widget");    
    }
     
    add_action("plugins_loaded", "init_yelpbling");
    ?>
  2. Paste your Yelp generated HTML code into the file under the “Paste generated Yelp Bling HTML code here” comment.
  3. Copy the “yelpbling.php” file to your web server’s WordPress plugin directory, usually “wp-content/plugins”.
  4. Log into your website as an administrator and select the Plugins tab. You should see the YelpBling widget listed.
  5. Activate the YelpBling widget.
  6. Go to the Appearance->Widgets tab and drag the YelpBling widget from “Available Widgets” into the Sidebar.
  7. View your blog and you should now see the Yelp Bling object in the Sidebar.

You may need to adjust the CSS style directives in the generated HTML code to make the Yelp Bling object fit nicely in the Sidebar. For example, I deleted the <div> containing the “Recent reviews by …” headline link (to compensate, I adjusted the header height to 25px from 40px) and the <div> containing the “What’s this?” footer link.

In the end, I decided that the Yelp Bling object did not belong on my blog and removed it.

Use the Macbook Keyboard and Trackpad With Windows 7

Mac OS X, Windows No Comments

I have a 15in Macbook Pro that can boot into Windows 7. For portability’s sake, I do not use a separate PC keyboard/mouse, but instead have adapted to using the Macbook’s keyboard and trackpad with Windows 7. Below are some customizations I made to make the Macbook keyboard and trackpad more useful with Windows. These instructions pre-suppose that the Apple Boot Camp Windows drivers have already been installed.

Customize the Macbook Keyboard

You can use the AutoHotkey utility to remap keys on the Macbook keyboard to adjust to your usage style. For example, I tend to use the delete key more often than the backspace key, so I usually swap the backspace key (the Mac “delete” key) with the delete key (the Mac “fn+delete” combo key). Here’s how I do the swap:

  1. Install and run AutoHotkey. I downloaded the AutoHotkey_L installer.
  2. Create a script text file named “SwapBSDel.ahk” (the .ahk extension is mandatory) with the following content:
    Delete::Backspace
    Backspace::Delete
  3. Run the script by double-clicking on the “SwapBSDel.ahk” file to have AutoHotkey launch with it.

AutoHotkey is a very powerful tool. For example, here’s a way to add a menu to enable/disable the delete/backspace swap above.

Note: There are other key mapping utilities such as SharpKeys, but I prefer AutoHotkey because it is temporary and the key remaps only take effect when I run the script. If I want to apply the changes more permanently, I would configure the AutoHotkey script to run automatically during startup (put a shortcut to the script file in the Windows Startup folder).

Customize the Macbook Trackpad

Because I configured one-finger tap-to-click/drag and two-fingers tap-to-right-click/scroll functionality with Boot Camp, I encountered several issues and also found their workarounds. To configure the one-finger and two-fingers tap functions, do the following:

  1. Run the “Boot Camp Control Panel” and go to the Trackpad tab.
  2. Under the One Finger section, check the “Tap to Click” and “Dragging” boxes.
  3. Under the Two Fingers section, check the “Secondary Tap” box.
  4. Click the OK button.

The two-fingers scroll is so fast that it is not useable with documents and browsers. To slow down the scrolling speed, I had to do the following:

  1. Run Control Panel.
  2. Type “mouse” into the “Search Control Panel”.
  3. Click on “Change mouse settings” and then the Wheel tab.
  4. Under “Vertical Scrolling”, change “The following number of lines at a time:” value to be 1, instead of 3.
  5. Click on the OK button.

When doing a multiple item selection and then drag to move/copy items, the double-tap-to-drag will deselect the items. I had to hold down the Shift (move) or Ctrl (copy) key to preserve the multiple selection when doing the double-tap-to-drag.

When doing a double-tap-to-drag on items and even a window, there is a half second pause after the double-tap, before the drag action occurs. This pause may interfere with your intention and result in unpredictable behavior; i.e., the window gets resized or moved to a random position. I’ve taught myself to insert a manual pause before doing the drag action to avoid this issue. (The problem is a known issue with the Boot Camp driver; unfortunately, even at this late version, Apple has not corrected it.)

There is a free 3rd party Mac trackpad driver called Trackpad++ which may solve the above drag-pause problem. In addition, Trackpad++ may help to eliminate the accidental drag-n-drop actions (which I encounter now and then) and provide support for 3-finger and 4-finger gestures. I will try it out one of these days.

Note: If you do not use the one-finger and two-fingers tap functionality, you may not encounter the issues above.

Customize the Windows 7 Aero Behavior

Because my Macbook’s 1440×900 resolution is not that large, the Windows 7 Aero Snap behavior (where windows are automatically maximized or resized when dragged close to the edges of the desktop) occurs quite frequently. In almost all cases, performing an Aero Snap is not my intention. Here’s how I disable the Aero Snap feature:

  1. Run Control Panel.
  2. Click on the green “East of Access” header link.
  3. Click on the blue “Change how your mouse works” link.
  4. Check the “Prevent windows from being automatically arranged when moved to the edge of the screen” box.
  5. Hit the OK button.

Install Eclipse Indigo 64bit on Windows 7 64bit

Windows No Comments

I recently installed the latest version of Eclipse on Windows 7 64bit and noticed some changes which I wanted to document below. I will copy some tips from my previous posts concerning Eclipse (on Mac OS X and Windows) here for your convenience.

Install Eclipse

  1. Download the latest Eclipse. I chose the “Windows 64 Bit” download link for the “Eclipse IDE for Java Developers” package. (I downloaded a zip archive named “eclipse-jee-indigo-SR2-win32-x86_64.zip”.)
  2. Unzip the Eclipse zip archive using WinZip or 7-Zip (7-Zip is free). Do not use Windows’ built-in zip support as it will create a corrupt Eclipse installation.
    • When I attempted to run Eclipse after unzipping with the Windows’ built-in zip support, I got an error. In the error log file was this exception: “java.lang.IllegalStateException: Unable to acquire application service. Ensure that the org.eclipse.core.runtime bundle is resolved and started (see config.ini).” I was not able to find the “config.ini” file.
  3. Start Eclipse and select your workspace location. (If you select an old location which was used by an older version of Eclipse, make sure to delete the “.metadata” sub-directory there first; otherwise, your new Eclipse will display old plug-ins and IDE modes which may not be installed.)
  4. The latest Eclipse versions set the default search behavior to reuse the editor. This default behavior can be annoying because it prevents you from being able to simultaneously view more than one search result. Opening a new search result would reuse the editor tab and cause the previous search result to become unavailable. To configure Eclipse to open each search result in a new editor tab, do the following:
    • Go to menu “Windows->Preferences->General->Search”.
    • Uncheck the “Reuse editors to show matches” option.

Install Javascript Development Tools (JSDT)

  1. Run Eclipse.
  2. Go to the Eclipse menu “Help->Install New Software…”
  3. Click on the dropdown arrow for the “Work with:” box and select “Indigo – http://download.eclipse.org/releases/indigo”. (If you don’t see this entry, just type in the URL manually.) The table will populate with a bunch of Indigo-compatible plugins (it may take a couple of minutes to do so the first time).
  4. Type “javascript” into the “type filter text” field to show only the Javascript related plugins.
  5. Check the “JavaScript Development Tools (JSDT)” (under “Programming Languages”) and click Next, Next, accept the license, Finish.
  6. Click on “Restart Now” to restart Eclipse.

Install PHP Development Tools (PDT)

To install the PDT, repeat the steps above with the following modifications:

  1. Type “PHP” into the “type filter text” field to show only the PHP related plugins.
  2. Check the “PHP Development Tools (PDT)” (under “Programming Languages”) and click Next, Next, accept the license, Finish.

Install Subversion Integration (Subclipse)

  1. Run Eclipse.
  2. Go to the Eclipse menu “Help->Install New Software…”
  3. Type “http://subclipse.tigris.org/update_1.8.x” into the “Work with” field and the table will be updated with installation packages available at that location.
    • You can look up the latest Eclipse update site URL for Subclipse here.
  4. Check the “Subclipse” package and click Next, Next, accept the license, Finish.
  5. If the Security Warning dialog about the “unsigned content” appears, click Ok to accept.
  6. Click on “Restart Now” to restart Eclipse.

Note: If you install a command line Subversion client and put it in the Windows search path (%PATH% environment variable), make sure that the Subversion client version is compatible with Subclipse. Otherwise, Subclipse will stop working. For example, Subclipse 1.8 is compatible with Subversion 1.7.

Problem: I Cannot Pin Eclipse to the Taskbar!

If you find that you cannot pin the running Eclipse icon (right-click menu doesn’t have the option) to the Windows 7 taskbar, it may be because Eclipse is using the JRE (“C:\Windows\System32\java.exe”), instead of the JDK. Even if you find the Eclipse.exe file directly and pin it (using the right-click menu), when you run Eclipse, the running Eclipse icon will be a separate, second icon in the taskbar. The solution is to install the JDK (Java SDK 1.6 or newer), set the %JAVA_HOME% environmental variable to the JDK directory, and set the %PATH% to have “%JAVA_HOME%\bin” as the first entry. This will ensure that Eclipse will use the JDK and you will then be able to pin the running Eclipse icon to the taskbar.

The 3 Types of Mass That Can Weigh You Down

Life and Work 2 Comments

Seven years into my working adulthood (after getting a job and making enough cash to buy stuff), I realized that physical possessions gave me a heavy feeling that weigh me down. The bigger and bulkier the item, the heavier it got. I felt that my possessions possessed me. In a way, they limited my future possibilities. I had obligations to take care of them (after all, I did spend my hard-earned cash on them), provide good homes for them if I didn’t want them (love craigslist and freecycle), and at the end of their lifetime, to dispose of them properly (save the environment!). I felt that I couldn’t easily change directions without taking care of these obligations first.

I’m sure the above sounds weird to the majority of readers. From observation, most folks don’t feel as I do. They use their fragile possessions “hard” and when broken, toss them into the trash without a second thought. And I’ve known people with a ton of possessions who don’t seem to be bothered at all and, I imagine, could just leave everything behind without a care as to what will happen to them. I don’t know why I feel as I do, I just do. I tell my friends that my goal is to be able to throw everything I own into my car and take off. Just imagining the possibility makes me feel lightweight and relieved.

As a result, I live a minimalist life. I only buy necessities and avoid purchasing conveniences. Once I had my physical possessions under control, I realized that I had mental “possessions” which needed to be gotten rid of also. And recently, I’ve had an inkling that there might exist spiritual “possessions” that I need to take care of as well. It looks like this journey is leading me somewhere… with my luck, I imagine a desolate desert location… and I’m kind of excited to see where it all ends.

Physical Mass

Strangely, by nature, I often have strong urges to collect things… to complete a set of something. Not the best trait for a minimalist. In college, I became an anime fan and would collect all the fan-subtitled animes on video tape that I could get my hands on. These were VHS video tapes so they took up quite a bit of space. More strange, with the exception of one, I didn’t re-watch them. Why collect them at all? I don’t know why I did it; it was a compulsion that I didn’t think too deeply about at the time. All I know was that I dragged them from place to place, shipped them across the USA once I graduated, and kept them for years after that without re-watching them.

I grew up a bookworm. I read voraciously as a child but amazingly, did not collect books. I think this was because I didn’t have the money to buy books and more importantly, there were always the public libraries. After seeing all the books in the library, I realized early on that it was impossible for me to collect them all. So I gave up. I remember dreaming about owning a home with a huge personal library room with a ton of books… thankfully that dream died a quick death. Public libraries also explained why, with the exception of a few, I never re-read books. There are just so many books to be read that it seemed a shame to waste time re-reading. The few books that I own, I kept with me. I dragged them, along with all my heavy college books, several years into my early working life. I kept imagining re-reading my college books to fill the holes in my understanding that I didn’t have time to do during college; but I never opened any of the college books again. They were very expensive and I should have resold them back to the school.

Digital Mass

With the rise of the Internet, came the digital age. It was the collector’s dream. I could have a hundred anime episodes and a thousand songs in the palm of my hand (think hard drive). No hassles to transport. Where was the downside? I started digitizing my music CDs and downloading anime from fan websites (before US companies started buying distribution licenses). Even crazier, I began to look into how to convert my VHS video tapes into digital movie files.

Soon the hard drive wasn’t big enough (this is in the days of 20-50GB hard drives) and I purchased a CD burner when it first became available. Though hard drive size grew fast (I kept buying bigger hard drives), the movie file sizes grew even faster (as quality improved, think high-definition video). When DVD burners appear, I had to get one (I remember when a blank DVD cost more than a dollar). I was on the bleeding edge of digital storage media; in addition to the CD/DVD burner, I had both 100MB and 1GB Zip drives and a 230MB MO (magneto-optical) drive.

Like the video tapes and books, once saved to digital media, I rarely ever accessed the content again.

Mental Mass

I thought that going digital would allow me to save everything because there is only small physical mass involved. But I was wrong, digital mass took up my mental space. There was so much digital media, it was impossible to consume it all. I had anime episodes saved to DVD that I hadn’t even watched yet. The unconsumed media sat in my mind like a big todo list. It wouldn’t have been so bad, but I had many other todo lists in my head (or stored on my computer or notebooks) concerning books to read, movies to watch, video games to play, hobbies to pick up, projects to complete, places to visit, activities to do with family and friends, etc. They were all at the edge of my awareness and those unfulfilled dreams/desires started to become burdens because they grew and over time, I realized I could never hope to finish them all in my lifetime. Too much of a good thing is well, not good.

I came to realize that mental mass came with both physical and digital possessions. In the end, mental mass is what I needed to handle. It was what weigh me down so very heavily. I needed to actively prune to give myself room to grow. Like a hoarder’s house, if the mind is stuffed full, there isn’t room for new thoughts, new experiences, and new endeavors. When I encounter something new, instead of getting excited about doing the new thing right away, I had to add it to the end of the todo list (what a downer). I decided that I had to get medieval on the mental.

Eight years into my working life, I had the above realization and with it, came a strong urge to make a change. Because I didn’t know what the best way to effect the change was, I decided to do the easy stuff first. I gave away some video tapes and threw the rest into the trash. I sold a couple of college books (thanks to half.com) and donated all but a few books to the public library. I shredded and threw away binders full of my digital media (CDs, DVDs, Zip disks, MO disks). If it didn’t fit on my current hard drive, it or something else had to be deleted to make space. Finally, I ruthlessly pruned todo items and even deleted whole todo lists.

With these actions, I initially felt much lighter. But with a more sensitive awareness of the weight of mental mass, I could see that there was a lot left to explore and hopefully, jettison.

The Unbearable Lightness of Being

It turned out that the mental mass from physical and digital possessions was the easy, light-weight stuff to get rid of. The “real” mental mass potentially has density greater than a neutron star and gravitational pull short of a black hole. I’m talking about the regrets of the past, fears of the present, and worries of the future. They get even worse when we are dealing with scars from relationships gone bad with significant others, family, friends, coworkers (including bosses), acquaintances, and maybe even strangers (road rage?).

Regrets, who doesn’t have some… need some? If only I hadn’t made that rash decision, my life would be so different. If only that hadn’t happened to me, my situation would be so much better. If only I hadn’t said those angry words to my parents… and on and on. Many regrets cause us to excessively criticize and question ourselves. Regrets feed into fears of the present and worries about the future. Am I in a dead-end job? What if this is the wrong decision? Will I still be a loser in 5 years? When will my sister talk to me again? If I do this, will I be hurt in the end? What if I end up alone? Will it be painful?

All I can say is regrets, fears, and worries have got to go. This mental mass weighs down on my life and prevents me from going outside my comfort zone (to try scary new, unknown experiences). I have better things to do with my time on this Earth (I dearly hope so). But what to do? Being a very private person, I can’t imagine airing my dirty laundry in front of a professional like a psychologist, much less family or friends. The only solution for me is self help. Doctor, heal thyself!

This type of mental mass accumulates and re-enforces itself. It will require a lot of hard digging to find and remove, and then constant viligance to prevent the addition or return of. I will need the rest of my life to handle this nasty stuff.

Why Don’t You Be In the Moment While I Kick Your Behind?!

I am in the middle of a multi-year research into how to get rid of this mental mass and how to stop accumulating more. First, I believe we should look at how to prevent more damage from occurring. Along that thought, I’ve explored and tried several options. The most effective so far derives from the new age movement, epitomized in the statement “Be in the Moment”. Evidently, if you can be in the moment, you won’t have time for regrets (past) or worries (future). If you are really in the transient moment, you won’t even have time for fears. But do you know what? Being in the moment is freaking hard, and impossible for more than a couple minutes. I don’t think the normal human mind is designed for such a sustained focus.

The reason it is hard to maintain such a state is because there is a lot of stuff happening in our mind. Concentrating on staying in the moment takes tremendous will power and the moment you get distracted, you are out of it. Our senses (five or more) are constantly bombarding us with a torrent of information. Thoughts and feelings are instantly appearing left and right, sometimes triggered by reaction to our senses, memories, and probably just from random noise. What’s a poor brain to do? If our brain didn’t organically evolve into this chaos, then god (or whatever entity designed the brain) must have a wicked sense of humor.

(I’m not going to explain the following well because I’m still don’t understand it fully myself.) The method I’m currently using is not to be constantly in the moment, but to be aware of the creation of new thoughts and feelings. If you are conscious of these new thoughts and feelings, you will have the opportunity to handle them before they start a chain reaction that results in you doing or saying something which you may regret (and which then feeds back into the cycle, increasing your mental mass further). Basically, be in the moment for that split second when a new thought or feeling comes into being. Believe that the thought or feeling is totally random (don’t try to figure out why it came into being), accept its existence without judgement (this is very important because if you resist/deny, you will give it more power), and then decide whether or not to take action on that thought or feeling. Easy as pie, right? All I can say is that after a year of constant practice, it should get much easier; though constant practice is still required to prevent relapse into unawareness of new thoughts and feelings.

I plan to provide more details on this method and the method I use to clean out the existing mental mass in future blogs. Hopefully, someone out there will read this blog and say, “Thank goodness, I thought I was the only one going crazy from this!” If not, then I must be totally and uniquely bonkers.

Related reading:

Triple Boot Mac OS X 10.6, Windows XP, and Windows 7

Mac OS X No Comments

The Boot Camp software on my Macbook Pro allows me to dual boot between Mac OS X 10.6 and Windows 7. However, I also wanted the option to boot into Windows XP because I test software that needs to run under both Windows XP and 7. Unfortunately, Boot Camp does not support more than one Windows OS. Thank goodness the open source movement provided the solution in the form of rEFIt.

rEFIt is Da Bomb!

rEFIt is a boot menu tool which allows you to triple boot on Intel Macs. If you have ever activated Boot Camp by holding the Option key on startup and have been offered a selection of two icons (for Mac OS X and Windows), rEFIt can provide a similar menu but with three icons.

I managed to get the triple boot working by following instructions found in a forum post named Triple Boot Mac OS X + XP + 7 (search for the reply from “simscada”). I did not follow the sequence of steps exactly because I wanted to save my existing Windows 7 Boot Camp installation. I was unsuccessful but still got the triple boot working in the end.

The first thing I did was to download and install rEFIt under Mac OS X. I then had to reboot twice before I saw the rEFIt menu on bootup. The rEFIt boot menu will always appear on startup by default. During the process of setting up the triple boot, sometimes I saw extraneous boot icons for the hidden EFI partition (aka Mac OS X system boot partition), a “Boot Legacy OS” (don’t know what that is), and the DVD-ROM drive. At the end, those extraneous boot icons went away. So just ignore them if you see them.

Note: The hidden EFI partition is really the first partition. The Mac OS X partition is the second partition. However, to avoid the confusion (or maybe to add to it), I will ignore the hidden EFI partition and will refer to the Mac OS X partition as the first partition.

Epic Failure: Attempt To Save Existing Windows 7 Boot Camp

Even though the post stated that Windows XP needed to be installed in the last partition, I decided to see if it would work otherwise. I shrunk the Mac OS X partition to make space for Windows XP between the Mac OS X partition (first partition) and the existing Windows 7 Boot Camp partition (last partition). I then installed Windows XP and after rebooting, found that neither the new Windows XP or the existing Windows 7 would successfully boot.

  • Windows XP gave me this error: “Windows could not start because the following file is missing or corrupt: \system32\ntoskrnl.exe. Please re-install a copy of the above file.”
  • Windows 7 gave me this error: “NTLDR is missing”.

Supposedly, some commercial partition tools for Mac OS X would have allowed me to free space at the end for Windows XP (without destroying the existing Windows 7), but I didn’t want to spend the money.

First: Create Windows 7 and XP Partitions

To prepare the hard drive for triple boot, I had to shrink my Mac OS X partition (first partition) and delete my existing Windows 7 Boot Camp partition in order to create two new partitions, one for Windows 7 (second partition) and the other for Windows XP (third and last partition).

My Macbook Pro had a 320GB hard drive and I decided to size them like so:

Partition Size OS
1 140GB Mac OS X 10.6
2 140GB Windows 7
3 40GB Windows XP

The above size allocations reflect my predicted usage pattern and accounts for the minimal installation size for each OS. A bare installation of Windows 7 takes 25GB and a bare installation of Windows XP takes 5GB. Microsoft Office 2007 takes an additional 15GB. I will be using Windows XP mostly for testing so don’t plan to install much software on it. I plan to use Windows 7 and Mac OS X equally.

Note: Per simscada’s instructions and my experiment otherwise, you must install Windows XP in the last partition on the hard drive in order for the triple boot to work.

I created the partitions using the Disk Utility which comes with Mac OS X. I did not need to re-install Mac OS X (per simscada’s instructions) because Disk Utility allowed me to resize the existing Mac OS X partition without destroying the OS on it.

Here’s how I added the Windows 7 and XP partitions:

  1. Run the “Disk Utility” application under Mac OS X. Select the hard drive on the left and click on the “Partition” tab on the right. You will see a nice graph of the hard drive with the Mac OS X partition as a rectangle.
  2. Delete the existing Boot Camp partition if you have one. The Mac OS X partition rectangle in the graph will grow to reclaim the unused space.
    • Note: We will be doing resize and add partition operations using the graph. Changes are not applied until you hit the Apply button to the bottom right. You can revert changes at any time by hitting the Revert button. However, if you remove an existing partition (like a Boot Camp partition) by selecting it and hitting the minus sign (at the bottom of the graph), the remove operation will be applied immediately!
  3. Select the Mac OS X partition and click the plus sign under the graph to create a new partition. This new partition will take up portions of the free space or unused partition space.
  4. Select the new partition and click the plus sign again to create another new partition. Both new partitions will have the same size.
  5. Resize the three partitions by clicking on the right-bottom corner of their rectangles and dragging up/down. Alternatively, you can just select the partition and input the desired size (in GB) in the “Size” field to the right of the graph. Note: Adjusting the second partition size will re-adjust the third partition size accordingly.
  6. For the new Windows partitions, I updated the “Name” field to be “Win7″ or “WinXP” (make sure Windows XP is the last partition) and the “Format” field to be “MS-DOS (FAT)”. The names will help later to identify the partitions. When installing Windows, we will reformat the MS-DOS format to NTFS.
  7. Once you are satisfied with the partition sizes (make sure to leave some free, non-purple space in the Mac OS X partition), click on the Apply button. Input your admin password when prompted for.
  8. The Mac OS X partition resize took a while to apply (like 20-30 minutes). The new partition creations were very fast (a few seconds).

Second: Install Windows 7

Here are the steps I took to install Windows 7:

  1. Inserted the Windows 7 Installation DVD and reboot the Mac computer. On restart, hold down the “C” key to boot from the DVD. You will see a brief message “Press any key to boot from CD” appear and disappear, and then the Windows 7 startup screen.
  2. During the Windows 7 installation, I was prompted with the following partitions:
    Partition Size Type Note
    Disk 0 Partition 1 200.0MB Primary This is the hidden EFI partition.
    Disk 0 Partition 2 130.4GB Primary This is the Mac OS X partition which we confusing refer to as the first partition.
    Disk 0 Unallocated Space 128.0MB This is some leftover space from creating the partitions.
    Disk 0 Partition 3: WIN7 130.3GB System The Windows 7 partition which we refer to as the second partition.
    Disk 0 Partition 4: WINXP 37.0GB Primary The Windows XP partition which we call the third partition.
  3. Prepare the Windows 7 partition by formatting it as NTFS: Select the WIN7 partition, click on “Drive options (advanced)”, and click “Format” to format the WIN7 partition as NTFS. The format will cause the partition to lose the “WIN7″ label.
  4. When the format is done, the Next button will then become enabled. Click Next to finish the install.
  5. Windows will reboot once and maybe twice.
  6. Note: When rebooting, in the rEFIt menu, choose the Windows icon to boot with. The Windows icon will be named “Boot Windows from Partition 3″ (don’t forget that because of the hidden EFI partition, our second Windows 7 partition is actually the third partition… confused yet?). If you don’t select anything within 20 seconds, rEFIt will boot the Mac OS X automatically. If that happens, just restart manually and make sure to select the Windows 7 partition to boot from.

In order to fully use the Mac hardware under Windows, I had to install the Boot Camp drivers, the outdated version of which are conveniently located on the Mac OS X installation DVD (…what, download the drivers from the Internet? That is so not the apple.com way). While running Windows 7, do the following:

  1. Oh my gosh, I can’t insert the Mac OS X DVD because the Windows 7 DVD is in the hard drive and the Mac slot drive has no Eject button (well, there is an Eject button on the Mac keyboard but that doesn’t work without the Boot Camp driver).
  2. Don’t worry, Microsoft has you covered under Windows 7: open Explorer, select the DVD drive, and click Eject on the top action menu. (Unfortunately, this doesn’t work under Windows XP. Read on to find how to do it under Windows XP. This is how I use suspense to keep you riveted.)
  3. Insert the Mac OS X Install DVD, run the “setup.exe”, and accept the default install options to install the Boot Camp drivers for the Mac hardware.
  4. If you like to tap instead of click (and two fingers tap for right-click), here’s how to configure the trackpad to accept taps:
    • Run “Boot Camp” (you can run it directly or click on the dark grey diamond Boot Camp icon in the system tray and select “Boot Camp Control Panel…”).
    • Click the Trackpad tab.
    • Check the “Tap to Click” and “Dragging” options under the “One Finger” section.
    • Check the “Secondary Tap” option under the “Two Fingers” section.
    • Note: One issue I noticed is that when I double-tap to drag, I have to double-tap, wait a half second before I am able to drag. It is a Boot Camp driver issue that Apple hasn’t fixed yet (if ever).
  5. You can run the “Apple Software Update” to update the Boot Camp software now or later.

The last and very important action is to use Windows 7 to mark the last Windows XP partition as bootable (aka make it “Active”):

  1. Run “Computer Management” (or right-click on Computer and select Manage).
  2. Go to “Storage->Disk Management” tab.
  3. Select the WinXP partition, right-click, and select “Mark Partition as Active”. You will see the label “Healthy (Primary Partition)” change to “Healthy (Active, Primary Partition)”. You are basically marking the partition as a bootable partition containing an operating system.
  4. While you are here, you can rename the label for the Windows 7 partition (look for “C:” drive) to be something like “Win7″. (You might notice that the Boot Camp driver installation had renamed the partition as “Boot Camp” previously.)

Third: Install Windows XP

Finally, install Windows XP into the last partition.

  1. Before rebooting, remove the Mac OS X Installation DVD and insert the Windows XP Installation CD.
  2. On bootup, hold the “C” key to boot from the Windows XP CD. You will see a brief message “Press any key to boot from CD” appear and disappear before the Windows XP installation screen displays.
  3. During Windows XP installation, I was prompted with the following list of partitions:
    Drive Label Partition Size Note
    G: Partition1 [Unknown] 200 MB Hidden EFI partition
    H: Partition2 [Unknown] 133514 MB Mac OS X
    Unpartitioned space 129 MB Leftover space
    E: Partition3 (WIN7) [NTFS] 133513 MB Windows 7
    C: Partition4 (WINXP) [FAT32] 37889 MB Our target Windows XP partition
  4. Select the “Partition4 (WINXP)”, hit the Enter key, and then select “Format the partition using the NTFS file system (Quick)” option. Per another reply in the forum post, do not select the “Leave the current file system intact (no changes)” option.
  5. Once the Windows XP installation completes and reboots, I now see two Windows icons (in addition to the Mac OS X icon) in the rEFIt menu. I selected the second Windows icon (named “Boot Windows from Partition 4″) to start up Windows XP. It booted into Windows XP successfully! Yippee! After some configuration, Windows XP will reboot a second time.
  6. On the second reboot (or if you miss it, just manually reboot), select the first Windows 7 icon so you verify that Windows 7 can still be started and also, so you can eject the Windows XP CD. (I couldn’t find a way to eject a CD under Windows XP because I couldn’t access the right-click menu with the one-button Mac trackpad. And I didn’t have a normal USB mouse available. Bummer.)
  7. Reboot into Windows XP, insert the Mac OS X Installation DVD, and install the Boot Camp drivers so you can configure the Mac hardware. Follow the instructions under the Windows 7 section above to configure right-click tap functionality for the Mac trackpad.

You can use “Computer Management” under Windows XP (or Windows 7) to rename the Windows XP partition to something like “WinXP”.

Fourth: Prevent Windows 7 chkdsk From Breaking Windows XP Permissions

I found this out the hard way. If any file gets corrupted (say from a power outage), Windows 7 will do a chkdsk (check disk) operation on its own partition and the Windows XP partition. Unfortunately, Windows 7 chkdsk does not like the Windows XP permission settings on files in the XP partition and will “correct” them, breaking the Windows XP installation. This will happen if on Windows 7 startup, you were unable to cancel the chkdsk in time and you see a bunch of chkdsk messages like “Deleting an index entry with id 311 from index $SDH of file 9″ and “Replacing invalid security id with default security id for file filename #1093″; the latter message could occur from 10,000 to 100,000 times and will take 15-20 minutes to complete.

To prevent Windows 7 from automatically running a chkdsk command on the Windows XP partition, do the following:

  1. Start Windows 7.
  2. Run “Command Prompt”.
  3. Type this command:
    chkntfs /X D:

    (where D: is the drive letter assigned to the Windows XP partition)

I suggest doing the same under Windows XP to prevent Windows XP chkdsk from being run on the Windows 7 partition (not sure if anything bad will happen but let’s not find out).

If you were affected by this chkdsk issue, there is a way to recover. Just let the Windows 7 chkdsk complete. Once chkdsk is done, follow these steps to reset the Windows XP permissions:

  1. Start Windows XP and log in as the “administrator” user.
  2. If you see only the mouse cursor and an empty desktop, do the following:
    • Hit Ctrl-Alt-Del (with the Macbook keyboard, you will also need to hold down the Fn key) to launch the Task Manager.
    • Go to menu “File->New Task”, type in “explorer”, and hit Ok. The start bar and desktop icons should appear.
  3. Open “My Computer”.
  4. Go to menu “Tools->Folder Options->View” and uncheck “Use simple file sharing (Recommended)”. This is necessary so you can see the Security tab in the properties for drives and folders. Hit Ok.
  5. Back in “My Computer”, right-click on the C: drive and select “Sharing and Security…”.
  6. Click on the Security tab and then the Advanced button near the bottom-right.
  7. Double-check that the “Administrators” group has “Full Control” permission set. If not, then set it. (If your normal user account is not an administrator account, you may need to recreate it once these steps are completed.)
  8. Check the “replace permission entries on all child objects with entries shown here that apply to child objects” box.
  9. Hit Apply and say Yes to the security warning popup dialog. The permissions on all the folders and files on the C: drive will now be reset to give full control to Administrators.
  10. Once the permission reset is complete, test that permissions are valid by right-clicking on “My Computer”, selecting Manage and then Disk Management. It should show you the drives and partitions.

Windows 7 may also break the Windows XP Recycle Bin. If this occurs, on startup, Windows 7 will prompt you with “The Recycle Bin on D:\ is corrupted. Do you want to empty the Recycle Bin for this drive?” Answer yes or no. The fix for this is to delete the Windows XP Recycle Bin (Windows XP will re-create it):

  1. While running Windows 7, launch the Command Prompt.
  2. Type the following commands to delete the Windows XP Recycle Bin, supposing that the D: drive is the Windows XP partition.
    D:
    rmdir /s /q $RECYCLE.BIN
    rmdir /s /q RECYCLER

You can also do the above while running Windows XP in Safe Mode; just don’t switch to the D: drive because that would probably be the Windows 7 partition under Windows XP.

Leftovers

Surprisingly, Mac OS X 10.6 can read the NTFS drives and Windows XP and 7 can read the Mac’s HFS+ drive. The latter is enabled by the Boot Camp driver installation on Windows. Unfortunately, write access is not allowed for either case.

If you are using VMware Fusion and was able to load the old Windows 7 Boot Camp installation (which we deleted as part of the triple boot process) previously, you can load the new Windows 7 partition with a simple change. Before running VMware Fusion, delete the outdated subfolder (which has a strange name like “%2Fdev%2Fdisk0″) under the “~\Library\Application Support\VMware Fusion\Virtual Machines\Boot Camp” folder. When VMware Fusion next runs, it will regenerate the necessary info to be able to load the new Windows 7 partition. (I’m not sure if there is a way for VMware Fusion to load the new Windows XP partition also.)

I found a hint that the rEFIt boot icon labels can be renamed. So instead of “Boot Windows from Partition 3″, the icon could say “Windows 7″. And instead of “Boot Windows from Partition 4″, the icon could say “Windows XP”. Unfortunately, I couldn’t find the specific instructions anywhere on how to accomplish this.

I wish you success in getting your Mac computer to triple boot.

Sync an iPod Touch to Two Computers

Mobile Devices No Comments

I use both a Macbook and a Windows desktop and wanted to see if I could sync the same iPod Touch to both machines. Below is one method I found to do this and some caveats about the method.

Some background on how an iPod Touch pairs with an iTunes library

When you install iTunes on any computer, iTunes gets assigned a unique identifier. When you sync an iPod Touch to that same computer, the iPod Touch will store that unique identifier. If you attempt to sync the iPod Touch with another computer, the stored identifier won’t match that of the other computer’s iTunes library and the iPod Touch will refuse to sync. To get the iPod Touch to sync with the other computer, you would have to agree to overwrite the stored unique identifier and content of the iPod Touch with that of the new iTunes library.

Syncing to more than one machine

I found several websites that contained instructions on how to sync an iPod Touch (or iPhone or iPad) to more than one computer. However, the instructions did not work for the latest iTunes 10.5 version. In the comments of How to sync an iPhone with two (or more) Computers, I found a method which worked. While the old method was to change the unique identifier in two files (“iTunes Library.itl” and “iTunes Music Library.xml”), the new method only required changing one file (iTunes Music Library.xml).

  1. On the first computer (which the iPod Touch currently syncs to), locate the iTunes directory.
    • On Windows XP: \Document and Settings\username\My Documents\My Music\iTunes
    • On Windows 7: \Users\username\Music\iTunes
    • On Mac OS X: /Users/username/Music/iTunes
  2. Open the “iTunes Music Library.xml” file in your favorite text editor, search for the “Library Persistent ID” key, and copy the key value (a hex string that looks like “8ACF35DDCB78FEB1″).
  3. On the second computer, locate the iTunes directory.
  4. Open the “iTunes Music Library.xml” file, search for the “Library Persistent ID” key, and overwrite its value with the value from the first computer.
  5. Rename (or delete if you are brave) the “iTunes Library.itl” file.
  6. Run iTunes on the second computer, it will throw a warning that the “iTunes Library.itl” file is missing and it will then generate a replacement.
  7. Because the iTunes Library was re-generated, you will need to re-add any apps, music, videos, etc. To re-add the content, go to the menu “File->Add File to Library” or “File->Add Folder To Library” and choose the file or folder to add. (The application files with extension “.ipa” are located in the “iTunes Media/Mobile Applications” subdirectory under the iTunes directory.) iTunes will automatically recognized what is being imported.

The iPod Touch is now sync’able against both computers. But wait, the information (music, video, contacts, notes, etc.) and applications on both computer are likely not identical. If that is the case, you will want to manually control how the sync works on either computer. You can start by configuring iTunes to not automatically sync.

Run iTunes on both computers and do the following:

  1. On Mac OS X, go to menu “iTunes->Preferences”. On Windows, go to menu “Edit->Preferences”.
  2. Select the Devices tab and check the “Prevent iPods, iPhones, and iPads from syncing automatically” option.
  3. Optionally, if you would like to control the location where your music and video files are stored, select the Advanced tab and uncheck the “Keep iTunes Media folder organized” and “Copy files to iTunes Media folder when adding to library” options.
  4. Optionally, if you would like to prevent automatic downloads from the iTunes store, select the Store tab and uncheck every option (including “Always check for available downloads”).

Doing the above does not solve the whole issue of having different content on the two computers. The problem is that the iPod Touch has its own configuration on what to sync (Apps, Music, Movies, TV Shows, Photos, and Info). To see those sync options (they show as tabs in the device details), connect the iPod Touch to the computer and click on the iPod Touch device in iTunes. If you configure the iPod Touch to sync Music, the same setting is used for both computers and if you don’t have the same music on both computers, then you have an issue.

The workaround I use for the above is manually intensive. Before syncing, I double-check the sync options on the iPod Touch. If I only have music on my first computer, I make sure to check “Sync Music” before syncing; while on the second computer, I make sure to uncheck “Sync Music” before syncing. (Strangely, the “Sync Info” options are not persisted for both computers, but this might be a Mac OS X and Windows side effect.) If I’m careful and don’t get confused, it works. Of course, if I mess up and accidentally get the music wiped from the iPod Touch, it is easy to re-sync the music back.

Of course, you can avoid the above complexity by having the same content exist on both computers. In that case, instead of following the steps above to get sync working with both computers, you might consider copying the “iTunes Library.itl” file over to the second computer and deleting the “iTunes Music Library.xml” file on the second computer. On startup, iTunes will regenerate the “iTunes Music Library.xml” file with the library identifier from the “iTunes Library.itl” file. The content info (stored in “iTunes Library.itl”) will show up in iTunes on the second computer; you will need to have the actual content files, like mp3 music files, exist in the same directory locations. I also read that you could just copy the whole iTunes directory from the first to the second computer, but I have never tried this so don’t know if it will work.

Alternatively, there is a way to sync the content from the iPod Touch to the second computer. This is possible according to Sync iPhone to iTunes – Transfer iPhone to iTunes synchronization. I haven’t tried this, but it looks very interesting and opens up new possibilities.

I hope that the above info will help you to get the most from your iPod Touch.

« Previous Entries