lynda.com

Don’t grab the time

June 9th, 2010 by windmaomao

room_052010_white
(a render lately of my current table and room, 80% finished :) )

Haven’t been updated this site for a while, wasn’t really busy, but trying to enjoy life a bit more than used to be.

What I’ve been searching for the cure of my heart made some progress lately. I’ve been told that everyone has some sort of battle to face in their regular life. Don’t know if this is universal, since I know one or two person who doesn’t take anything personal in any circumstances. I admire them, and I’m glad I can find them as my friend so that I know there’re some other life style in this world that is inspiring and rewarding.

However for me, I found I need to let go certain type of brief that built on in early stage of my life. By watching how seriously other people take personal what they’re looking for, you feel pity for them. That’s right. Nothing is really important at the current moment. You don’t have to give up your brief, it’s just that you have to be ok to know that you can’t fulfill your brief at the current moment. And that’s ok. You still can stay in this moment and enjoy being in this moment to take a look at how badly you aren’t fulfilling this brief. It’s not big deal. You want to have it, however you’re not getting it. It’s ok, maybe tomorrow you’re getting it, or maybe not. Not important, be happy with the feeling that you’re not having something. And enjoy that :)

What makes me this call is mostly due to the brief that I think everything might be in tune with certain type of time frame which is out of control by human. You don’t have the right to choose what’s now, but you can enjoy being what’s now, I don’t know who got the right to choose what’s now for me, but obviously it can’t be me :)

Hope above helps.

Fang

VN:F [1.6.4_902]
Rating: 0.0/10 (0 votes cast)
VN:F [1.6.4_902]
Rating: 0 (from 0 votes)

Less serious

April 27th, 2010 by windmaomao

sub_render_sign
(this render is inspired by an old post of mine )

Did anyone tell you being too serious isn’t a good thing ? More or less, it reflects you probably has narrow understanding and respect for the nature. Daoist says the three type of things that you can get most serious about are money, power and self. However, he states none of them are important to you, and he even states that paying too much attention to them are actually harmful to you.

Natural is at its own harmony, forces that are too strong tends to destroy things instead of grow with them. In singing, powerful vocal doesn’t come with strong push of sound, instead it’s build with comfortable breath flow that is only required for that pitch :) Same thing should be with everyday’s life. Thoughts and actions can be just effortless while the impact could be profound.

While thinking about profound effect, you don’t have to put too much thoughts and paying too much attention on them. They have their own harmony, once you find them, you’ll be there. The search is effortless if you know where to look for. And while you are under tension, most likely you’ll look in the wrong direction. With angry and agitate thoughts, hardly you can go anywhere afterwards.

An easy approach is to look down on things, none of them are as important as you being alive and breathing. Money, power and yourself won’t give you life and air. They are only one type of million things in this universe. So think about more about the raw motivation of life, ex. to see, to feel. You can achieve them any time you want, with any people around. Most of important, you do them effortless as you learning how to walk. Nobody asks you to walk perfect while most of us turn out to be very good walker :)

Fang

Reblog this post [with Zemanta]
VN:F [1.6.4_902]
Rating: 8.0/10 (1 vote cast)
VN:F [1.6.4_902]
Rating: 0 (from 0 votes)

Distance

April 12th, 2010 by windmaomao

(Didn’t get chance to make much graph these days, hopefully i can get back to that very soon)

well, I made the line last night, “either I suicide or I am just gonna ‘kill’ my self first”.

There’s no much common sense that how far you should go for pursuing your own interests on other peoples’ effort. Any relationship or partnership or workshop are based on levels or status. If you are under somebody, you normally just have to do whatever the other one is asking, independent to whatever you or his characteristic is, independent to how difficult that you or he think of this project, independent to how willing that you or he want to pursue this project.

This is just sad. Because I start to realize any project is trivial in terms of difficulty if the answer to above questions are answered properly first. Since they are hard to access and evaluate, people are just skipping it at the very beginning. Here’s where the uncertainty and stress build up. Because what you want to do isn’t important, only the feeling that you are willing to pursue your life and fulfill yourself matters, which leads to your happiness and freedom.

The distance between peoples are getting very far in terms of answering the above questions, whereas the distance is too close in terms of asking other people to do things for you. Everybody is thinking they’re doing more good to other people by asking others to do granted things. This is just not true. In China, there’s a good saying “friends shouldn’t get too close”, there’s no need to make the distance between people too close, especially when it comes to marriage/collaboration/friendship. People needs space to breath, to grow, to think, to be happy. No two monkeys you see actually holds together tightly as no tomorrow. They help each other, but they only play together when they’re willing to and be able to. And normally this happens spontaneously, without pressure, and especially without reasoning.

So, it’s an art to develop a distance for all relationships to a comfortable extent. Some people naturally do good on this, while some people lacks this ability badly. However, if you think it’s too much, there’s always a mode you can think of to get you out of all the mess, “shutting yourself down completely” for couple of seconds, or days or months, depending how short this distance becomes. The shorter, the longer you shut yourself, this way the distance will grow automatically. Remember the goal isn’t to keep all relationship perfect, instead, you want to keep them in a comfortable distance that you can enjoy them while you are breathing, alive.

Moreover once you are in that comfort state, the direction of where you should head to appears naturally. It might be the very difficult thing you ever dare to touch. However in that state, you know you’re destined to it, you are confident as long as you stay in that state. It’s not fairy tale, but you have to keep in that state to be brave, strong, to support yourself. No one else will help in terms of that, since no one can tell you how to be happy. So screw them, screw everything and screw any support. There’s none of them that can support you. Just focus on that state, you will be yourself.

Once you’ve been in that state, you can come back and merge with the noisy reality, all shit but real. You might become scared a little but eventually you’ll be happy you can be with this shity world, since you know you can get out of there to pursue whatever you want at any time if you want to. This should be your best support that you can ever have. God bless you from this day. How peaceful does this sound ? Just don’t wait for others to realize your future,

“Either you suicide, or you ‘kill’ yourself first” - Fang Jin

VN:F [1.6.4_902]
Rating: 0.0/10 (0 votes cast)
VN:F [1.6.4_902]
Rating: 0 (from 0 votes)

Build an OpenGL GUI application in Mac OSX

April 2nd, 2010 by windmaomao

I had a school project that I need to build a visualization application to plot some scientific dataset in 3D on my snow leopard. While I had some experience in terms of plotting in Windows, building a 3D application in Macintosh environment is fairly new to me. So I kinda spent couple of weeks researching and experimenting couple of components that are needed to proceed .

Canvas

Basically, you need to setup a screen canvas to draw 3D objects, which can be achieved by using OpenGL API . The library takes care of setting up the graphic hardware, creation of objects, and projection them to 2D screen pixel on the canvas, all sorts of basic functionalities in 3D world. Normally this process is fixed, but a shader language (normally comes with OpenGL) can let you adjust how you represent object and how to draw them into pixels at run time through some scripts. This really adds the overall flexibility, and effects can achieved very easily by writing some shader and plug into the pipeline.
To see how apple supports OpenGL and shader, you can check out GLSLShowpiece application from apple reference library ( it comes with a executable file). You can test your shader easily using OpenGL shader builder (in XCode folder) where you can test all sorts of functionality of shader without writing any code.

Engine

To make 3D rendering job a bit easier, I’d also like to have a backbone engine that deals with scene loading, objects/material management, camera handling in a black box, so I can concentrate on the application logic. Here’s a list of engines/libraries that I came across, some are more favoring game, and some are to the visualization (the difference between game and visualization lies in where their interests first originates, IMO). To name a few,
1) NSOpenGLView control in Mac XCode
2) Ogre 3D, game engine, open source
3) Unity 3D, game engine, commercial
4) OpenScenGraph, open source, visualization
5) VTK, open source, scientific visualization

First of all, NSOpenGLView is a native control developed by Apple to have openGL embedded in a native view, which is very nice, and you can find couple of ready to built demos from Online Reference Library, OpenGL section.

While NSOpenGLView is a good place to start, the design is pretty basic at this moment. So I checked some game engine, ex. Ogre 3D. It got very decent resource management, scene construction and utilities that you’ll find handy in 3D space. To be able to use it as a native view in XCode, you need to direct the rendering output to NSView as described in this post and more examples can be found here here, ex. mouse control, etc.
ogre_nsview_color

unity icon
I mentioned Unity 3D here because I’ve used it for another of my project before. It’s a commercial game engine, very robust, cross platformed, and objects can be controlled through script language. Personally I like it a lot except the fact that it lacks the native GUI controls on OSX. And for this project, it could be very time consuming.

OpenSceneGraph and VTK are two visualization packages that are available to the open source community. Though I didn’t get chance to test them, from what I read from introduction, they contains lot of visualization processing libraries that will come handy if your data needs to be manipulated before plotting.

All in all, for this project, I chose Ogre. And this post will be keep updated as the project unfolds.

Fang

Reblog this post [with Zemanta]
VN:F [1.6.4_902]
Rating: 0.0/10 (0 votes cast)
VN:F [1.6.4_902]
Rating: 0 (from 0 votes)

Deserve

March 27th, 2010 by windmaomao

tuya_artrage
(trying to learn to draw, but obvious, I suck :)

This is a topic of self acceptance. Do you deserve what you got, or what you’re after.

Maybe you are in a stage of changing, or looking for different life style, or sharpening your skills. But wait a second, do you respect what you’re doing, do you expect what you’re after, can you imagine you’re the one who deserve this type of work, can you imagine the day when you are getting it finally. Are you treating yourself good while working on it ? Can you feel the accomplishment aftermath ?

Accept your current status no matter what it is. Accept your goal and the possibility of getting it. Feel the respectful thoughts that you deserve who you are and who you want to be. You’re doing the right thing, so let’s spend a respectful time doing it.

You deserve this, and the moment doing it. How wonderful is this ? Having it when doing it.

VN:F [1.6.4_902]
Rating: 0.0/10 (0 votes cast)
VN:F [1.6.4_902]
Rating: 0 (from 0 votes)

Free

March 24th, 2010 by windmaomao

room_render_sign
(This rendering is a draft of apartment similar to what I lived before, only a bit more stylish :)

Regrets,
Fear,
or
Free,

Well, I chose free. Let me write this article. Really, free my hand to write it. Just let me write it so I can be free.

Freedom isn’t something that you ask for it. Once you’re with it, you know it’s something that emerges from deeper inside of your heart. You know your heart has no boundary, and you don’t need assertion from others, you know where you go though you don’t have a map.

It’s something you let it happen without too much reasoning. Unwillingness kills your tiny bit of sense that follows the freedom path. Loose it when you don’t know where you’re going, so you can go without knowing it. Fighting for freedom isn’t necessary since nothing in this world can actually bounds you to be who you are. You created yourself, and you can improve yourself to be whoever you want to be. However the answer lies deeper in your heart, only when you let it go, it’ll show you the way.

Irony as it sounds, freedom isn’t something you can fight for, it’s something you allow yourself to acquire, same as happiness. Just let it happen and and you can let it happen now.

VN:F [1.6.4_902]
Rating: 0.0/10 (0 votes cast)
VN:F [1.6.4_902]
Rating: 0 (from 0 votes)

Appreciation

March 11th, 2010 by windmaomao

square_sphere_sign
(A simple concepture illustration designed for an introduction article on QPlot.org which just launched couple days ago. I put a bit variation on this one )

As usual, this place documents lots of my thoughts and growth to where I believe to be freedom, of my heart, at least. And today’s topic is about appreciation, especially the appreciation of the present, the things around you, and the thing you are doing right now.

We might have ambition, and things that we want to do to make ourselves stand out of crowd, or things to do that can benefit our future. But I start to realize that the most precious thing happened everyday is what I am doing. Think it a moment that how amazing that I can do what I’m doing, ex. surfing the web, and writing this article. What if tomorrow I won’t be able to do what I’m doing, which lights up what I’m doing right away :)

“Any man who can drive safely while kissing a pretty girl is simply not giving the kiss the attention it deserves.” This is what Einstein says about focusing on the present, you just can’t ride two horses at the same time, or you are just not appreciating the presence of any of them. From appreciation, not only you acknowledges their existence, but also you demonstrates naturally the compatibility between you and them.

Focus on the present, focus on what you’re doing, be happy what you’re doing at the moment, and appreciate cherish the chance that you can do it. The longer you persists, the better it gets ;)

VN:F [1.6.4_902]
Rating: 0.0/10 (0 votes cast)
VN:F [1.6.4_902]
Rating: 0 (from 0 votes)

Forgive spontaneously

March 6th, 2010 by windmaomao

tumor_hypoxic_hole
spectrum_tumor_viability
tumor_color_map2
(Finally added the color mapping onto the surface driven by data, experimented with color dimension as well :)

Keeping the promise isn’t going to help finding the truth

Two seconds can be so independent to each other because you can can’t control all the possibilities that happened in this two seconds, leave along the task of making an identical copy of one second onto another one. So sharp memory probably isn’t going to help in terms of forgiveness. Sharp vision and memory just make you too good in remember things and especially your responsibility and promise.

It might be a good practice to start loose this tension if things isn’t going the right direction. Forget the configuration at the moment, and let the tension gradually move to the next equilibrium state while no extra force (memory) to hold on to it. Forgive spontaneously whenever there’s a tension or struggle, because you are the one who responsible for your health and life, and no other factor should govern that. Bad things could happen to you, but to make yourself comfortable could be irrelevant to things that happen to you and going to happen to you if the only goal is to make yourself comfortable and happy :)

Unconditional happiness, forgive spontaneously, cooperation with the society. Think about it, hehe.

VN:F [1.6.4_902]
Rating: 0.0/10 (0 votes cast)
VN:F [1.6.4_902]
Rating: 0 (from 0 votes)

Being generous

March 2nd, 2010 by windmaomao

chilly_bronze
(Messed around the new design in Modo, pretty sexy, eh :)

Definition of generous |ˈjenərəs|: 1) (of a person) showing a readiness to give more of something, as money or time, than is strictly necessary or expected : she was generous with her money. 2) showing kindness toward others . 3) (of a thing) larger or more plentiful than is usual or necessary

Well the definition says it all. Today is about being generous, don’t be a pampered boy/girl. Be generous to yourself, and be generous to others. There’s no that much things to corner yourself into tiny bit of gains here and there. God damn it, the world is so big to explore and don’t be a timid person not want to see the world, nor want to led by others to see the world.

When you are having trouble, when you are looking for help, just think a moment to yourself, damn, this is not a big deal at all, come on, I can do it, there’s no much hurt any way, god damn it. What a tiny bit of sh**y that I need help with. Please forgive me, I’m grown up already, let me indulge in the world instead. Instead of being pampered, let me be generous now.

Go explorer everyday, be adventure, and be generous.

Haha.

VN:F [1.6.4_902]
Rating: 0.0/10 (0 votes cast)
VN:F [1.6.4_902]
Rating: 0 (from 0 votes)

Breath, how hard can it be ?

March 1st, 2010 by windmaomao

tumor_vessel_art
(above picture is modeled and rendered in Maya as a tumor vessel shot)

Funny as it sounds, I start to realize that I have a bad habit of breathing, especially when I am in the middle of some thinking process. My breath is interrupted and stopped in the middle, so that I’m actually holding my breath, and then it goes back to the beginning of the cycle of the breathing so that I am only breathing out half of the air that supposed to be breathed in. Another way of saying it is that I only finish half of the cycle of the breathing, instead of full cycle, therefore only process half of the air.

How bad can it be other than a dumb observation ? Well, I have to tell you, this interferes with my relaxing system. By holding your breath, I didn’t let my muscles finish the full cycle of breath, therefore the final sense of relax isn’t delivered to the body. Therefore after one and one of these half cycle breath, your body becomes more tense.

What cause it, if you ask. I guess, it’s the anxiety factor and the thoughts that triggers it, when you are thinking about something, because the uncertainty it brings, it makes you suspicious of the condition that you are in, so you’re afraid of doing a full cycle breath, because you sensed there might be something dangerous ahead of you. So the cycle is interrupted by this thoughts.

What can I do about it ? Well, once you are in the mood of comfort, you’ll let it go, and go back to your full cycle of breath naturally. If you can’t, like a habbit I had right now, you need to adjust the way of thinking.

Whatever you are doing, important or not, right or wrong, you need to do it affirmatively. Since anyway you are gonna do it, even the result might turn out to be wrong, you can correct it and when you do the wrong thing, you still could do it affirmatively. Finish the full cycle, lift, and put it down, just finish the full cycle without doubt. Anyway you’ll do it, do it with confidence. Only after you finish this cycle, then you start the next, no rush.

Fang

VN:F [1.6.4_902]
Rating: 0.0/10 (0 votes cast)
VN:F [1.6.4_902]
Rating: 0 (from 0 votes)

Feel the expected

February 23rd, 2010 by windmaomao

daomu_hk_draft
(The above illustration draft, co-authored with Zhengquan Kuang lately, is designed for a novel that talks about lots of ancient tombs and treasure hunters.)

Well, this post is not about how we made this model. Instead, let me start with something else.

You might look for things to be done in the way you like. However, unless you were taught to do this from childhood, you somehow need to look for ways to achieve this after you grow up. Or you just have to be angry of nothing is working the way you wanted all the time ;) which doesn’t sounds pretty. Nobody wants to work with a man who needs anger management.

Ok, so you started to explorer what you want. Tried once, you failed, it was’t what you wanted, then second time, you were encouraged to do it again, and you got a bit better, but it was still not what your dream lies. Somehow your expectations starts to bite you in the ass that you just can’t make yourself try it again, mostly because the fear starts to kick in naturally. “You’re wasting your time, your talent doesn’t lie here, come on, put time on where you supposed to be.” Your dads’ voice annoys you since you’re not get approved by doing what you failed doing. Once is ok, twice is alright, third time you are scared, fourth time you know you’re not gonna make it.

The more you want it might just increase the chance you fail. As irony as it sounds, it’s inevitable. You failed even before luck starts to play any roles here. You failed. Sooner or later, this feeling of defeated will carry on till you realize it’s time to face this beast before you can do anything constructive.

This is what this post is about, my two cents of dealing with fear. Once you realize the existence of the fear, try fill your heart with the feeling you already grasped the thing you want, and how you gonna taste it or play with it after you get it. Don’t fall into the trap of constantly thinking about what if you can’t make it. It’s dead circle, you’re not gonna make it if you continue this circle. Be creative to jump out of this never ending circle.

Second, try to diverse your attention to things around you, people, buildings, flowers, anything. Get to know more about them, what they do, what they’re happy for and what they’re unhappy for, and get involved with your surroundings other than the thoughts that you want to achieve tiny bit of something for yourself.

In a word, merge your interests in people and the world around you, get interested, get involved, and then your imagination will lead you to wherever you want peacefully ;)

VN:F [1.6.4_902]
Rating: 0.0/10 (0 votes cast)
VN:F [1.6.4_902]
Rating: 0 (from 0 votes)

There’s only that much time to be unhappy :)

February 18th, 2010 by windmaomao

maggie_displacement
(above picture is taken by my gf from her displacement simulation project, looks wild)

Put many thoughts on the childish these days, since I start to realize that most of my behavior was not much different from my childhoods’. Once I realized that, it seems lots of what I worry about is non-sense, and I’ll be a lot more happy if I weren’t this childish.

Well, once I realized that I had a conclusion there’s only that much time to worry things every day, for example, ten minites, after that, I’m done. Since there’s always things to worry, and things to make you unhappy, independent of what you do. Then there’s always things to make you happy and make you worry-free. So why spend so much time worrying and feel unhappy.

Damn, whatever now, I’ll just use the time I have to make myself happy from now on :) since I’m not child anymore, and I don’t have to stick with my childish behavior, just be happy. LOL

VN:F [1.6.4_902]
Rating: 0.0/10 (0 votes cast)
VN:F [1.6.4_902]
Rating: 0 (from 0 votes)

Dropbox, a better plan for internet storage

February 9th, 2010 by windmaomao

dropbox is out

Internet space is becoming more and more important, not only the fun in sharing your photos with your friend, but also in the confidence that you can work anywhere of the world and anytime you choose to.

I used to pay $100 for 20GB using apple MobileMe, no offense of the price, but I have a better plan here. Check out Dropbox where they offer you 2GB for free instantly when you sign up. The software lets it merge with your operation system and be one of the folder. And you get a nice notifier monitoring the usage of this folder as well.

[updates] The sync feature is well implemented, whenever you put file in dropbox folder, it enters an query to be uploaded to the server, and the icon indicates if the file is updating. And when the server gets the updated file, it’ll notify all connected computer to update them into latest version. The drawback you can see from here is that all computers has a copy of all files in your local hard drive. And if you just want to transfer a file from this machine to another one, it’s better to do a direct ssh if available.

As for the charge, they let you to refer to your friends to earn extra free space, after you fills up all referrer program, you can have up to 5.2GB free storage space to play with. And if you really like their service and want to extend it, they offer $100 for 50GB as a start. Very attractive IMHO.

[more updates] Dropbox raised the referrer program to 10.2GB Max free space, which is really nice. And I found out they keep track of the files version, so if you want to go back to old version of any single file you overwrote before, just follow this help tip.

VN:F [1.6.4_902]
Rating: 0.0/10 (0 votes cast)
VN:F [1.6.4_902]
Rating: 0 (from 0 votes)

When it comes, it comes

January 30th, 2010 by windmaomao

machine_gun_draft
(The above modeling is done by following a modo tutorial step by step, pretty awesome huh :)

Just realize most of things probably doesn’t need extra force to accelerate. It happens when the time is right, and the reason why it happens might just because all the piece that makes the thing happen are all ready. To find out all the pieces and make each one ready takes effort and persistence.

No need to piss off things not going on the right direction. Things get out of shape or out of order naturally all the time. No need to get personal about that. It’s not you or anybody else fault. When it happens, you just need to fix it if you would love to. But do realize, to get them back in order takes effort.

Depending on your expectation on how things should go, your effort could be high. But no get anxious. You just need to manage as much as you can to get to where you want. If the goal is a bit hard to reach, lower your expectation. You only have that much of time every day, and most of important, you only have that much of energy to put on the things you like most. Do your best.

When high expectation is increased on certain aspect, you need to realize that more effort needs to be spent on that subject, therefore other expectations need to be adjust to accommodate the situation. No anxious or stress needs to be raised if you’re aware of this. Things you want won’t fall upon sky naturally, only shit happens every second. You just have to manage through. That’s all.

Don’t wait for the things to happen, redistribute your expectations, put more effort on things you like most. Get close to the sh** thing and clean them up one after one right after they happen. Remember you are just managing through. It’s not for baby, it’s a battleground. Bullet hurts you, but no need to cry, it’s not personal, just pull it off and continue :) Everyday gonna be like this, until

When it comes, it comes.

VN:F [1.6.4_902]
Rating: 0.0/10 (0 votes cast)
VN:F [1.6.4_902]
Rating: 0 (from 0 votes)

Political life

January 16th, 2010 by windmaomao

Recently I got a chance to take a vacation back to my home town. It’s amazing experience that I never had before. Brighter and brighter things got everyday, the more family members I went visit. None of them offers me one-to-all solution to my current life, but piece by piece, that I realized the key missing part in my life, which I saw in some of my friends, but just missing in me. Here it is.

World isn’t black or white, an item can’t be just defined by one or two sentence and categorized by one or two tags. Same as human being, they can’t be viewed by their current image, history plays major part of who they are and who they’re willing to become. Relationship isn’t just mapped with one word relationship. Sometimes they just can’t be expressed by words even when tried hard. Maybe a better word that I can come up with right now is, politics, a word I used to hate, surprising as it is, life seems like a small version of politic world to me now.

Though it was a negative word in my dictionary, it might be the best word, since politics is never black and white in any way. Moreover, gray is the region we’re living in, and gray is the motive that drives us, and gray is what defines us. Even in the sunny day, you are trying to capture gray, the color bridges the world of black and white, the pure version of it might only appears in TV or ads which arises your heart whenever you see them.

The real life is made of happiness, negotiation, compromise, and dedication to your dream. Nonetheless, it’s not helpful or necessary to push yourself to a corner in any ways. You’re not getting all of the best part of it anyway, however, life is still full of interesting moments at any time, you just have to switch your attention to the one that fascinates you at that moment or contributes more to the one that favors the situation. If you really stuck, not really, just go explore more options, by reading, by talking to people, by visiting your family members, by playing with the one you love, by visiting the world that you never been before, just continue exploring the possibilities, since they leads to more solutions to all types of your problem that you are dealing with or might need to deal with soon enough in the future.

I’m proud of being chinese these days, and I’m proud of being in USA for a while as well, culture expands my view of life and expands my possibilities of living.

I never viewed the life as politics, but since happiness can’t be isolated to an environment includes you only, it must be a social activity. And nothings qualifies better as social activity as politics, isn’t it ?

VN:F [1.6.4_902]
Rating: 8.0/10 (2 votes cast)
VN:F [1.6.4_902]
Rating: +1 (from 1 vote)
Share and Enjoy:
  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • Blogplay
  • email
  • LinkedIn